প্রকল্প সম্পর্কে

Shoggoth হল একটি স্ব-হোস্টেড এজেন্টিক ডেভেলপমেন্ট মাল্টিটুল, ব্যক্তিগত ব্যবহারের জন্য তৈরি, যা K3s-এ কনটেইনারাইজড সার্ভিসগুলি দিয়ে গঠিত এবং কনফিগারযোগ্য ডোমেইন (s.local ডিফল্ট) এর মধ্যে পৌঁছানো যায়। প্রকল্পটি পরীক্ষামূলক এবং প্রাথমিক অবস্থায় বর্ণনা করে, যা সুরক্ষা প্রাধান্য না রেখে লোকাল নেটওয়ার্কে উপযোগী, এবং Ubuntu/C++/Python স্ট্যাক এবং IDE ছাড়া সমস্ত কোড করা কাজের জন্য ডিজাইন করা হয়েছে। এর লক্ষ্য হল একটি পরিবেশ যেখানে কোডিং এজেন্ট দলের সদস্য হিসাবে কাজ করে, নির্ধারিত কাজ সম্পাদনা করে এবং কোড রিভিউতে অংশ নেয়, এবং সমস্ত উপাদান ওপেন সোর্স, স্ব-হোস্টেড এবং সাদৃশ্য সফটওয়্যার দিয়ে প্রতিস্থাপনযোগ্য। README-এ এটি ক্যানব্যান-শৈলী এজেন্টিক কোডিং টুলের সাথে তুলনা করে, বলে যে এটি তৃতীয় পক্ষের উপাদানগুলির সাথে একত্রীকরণের উপর গুরুত্ব দেয় এবং বিস্তৃত কার্যক্ষমতা প্রদান করে, যেখানে এজেন্টিক ওয়ার্কফ্লোগুলি অন্যান্য বিকল্পগুলির চেয়ে কম উন্নত। বর্ণিত সার্ভিস গ্রুপ: নেটওয়ার্কিং - WireGuard VPN সার্ভার এবং ওয়েব ম্যানেজমেন্ট UI, Angie TLS-টারমিনেটিং রিভার্স প্রক্সি যা VPN UI এর HTTPS অ্যাক্সেস প্রদান করে, এবং CoreDNS ডোমেইন অ্যালিয়াসিং এবং DNS ব্ল্যাকলিস্টিংয়ের জন্য। ক্যাশিং - Debian/Ubuntu apt ক্যাশিং প্রক্সি, zot কনটেইনার রেজিস্ট্রি পুল-থ্রু ক্যাশিংয়ের সাথে, একটি Python প্যাকেজ ক্যাশিং প্রক্সি এবং ccache/sccache বিল্ড ক্যাশ, যেগুলি Angie দ্বারা সরবরাহ করা হয়। ডেভেলপমেন্ট - Gitea সুইট (Git সার্ভার, Git Pages স্ট্যাটিক হোস্টিং, Actions রানার), Kestra ওয়ার্কফ্লো অর্চেস্ট্রেশন, Docker-in-Docker স্লেভ সার্ভিস যা ttyd, tmux এবং Qwen Code এর উপর ভিত্তি করে ইন্টারঅ্যাক্টিভ ওয়েব টার্মিনাল প্রদান করে, এবং CDash টেস্ট-রেজাল্ট ড্যাশবোর্ডের জন্য। প্রজেক্ট ম্যানেজমেন্ট - Redmine সার্ভার। LLM এবং কোডিং এজেন্ট - LiteLLM প্রক্সি এবং MCP গেটওয়ে, LocalAI স্থানীয় মডেল সার্ভার, Gitea MCP সার্ভার এবং Basic Memory MCP সার্ভার। অবসার্ভেবিলিটি - Grafana সুইট LGTM স্ট্যাক ব্যবহার করে: Loki লগ, Tempo ট্রেস, VictoriaMetrics মেট্রিক এবং OpenTelemetry কলেক্টর পাইপলাইন ইনজেস্ট করতে। আইডেন্টিটি এবং সেক্রেট - OpenLDAP ডিরেক্টরি ওয়েব ইন্টারফেস এবং OpenBao সেক্রেট ম্যানেজমেন্টের জন্য। আর্কিটেকচার এবং অপারেশনস: সিস্টেমটি K3s ম্যানিফেস্ট দিয়ে গঠিত, যা shoggoth/k3s ফোল্ডারে রয়েছে, এবং দূরবর্তী কন্ট্রোলের জন্য Makefile টার্গেট (up, down, log, ssh, sync_restart) দিয়ে প্রকাশিত উপাদানগুলি, এবং ক্লায়েন্ট মেশিনে চালানো সেটআপ স্ক্রিপ্ট যা কনফিগারেশন ফাইল তৈরি করে, Docker ক্যাশিং প্রক্সি এবং রেজিস্ট্রি কনফিগার করে, /etc/hosts আপডেট করে, apt ক্যাশ সেটিংস ইনস্টল করে এবং API গেটওয়ে টোকেন পায়। স্লেভ কনটেইনারটি ccws বিল্ড পরিবেশ, কম্পাইলার এবং স্ট্যাটিক অ্যানালাইসিস টুল, Qwen Code টার্মিনাল এজেন্ট এবং shoggoth-স্পেসিফিক উপাদানগুলি একত্রীকৃত করে, এবং প্লেইন CI/CD, অন-ইন্টারঅ্যাক্টিভ এজেন্টিক ফ্লো (যেমন কোডিং বা রিভিউ) এবং ইন্টারঅ্যাক্টিভ ডেভেলপমেন্টের জন্য উপযোগী। অনুমতি প্রদানে OpenLDAP ব্যবহার করা হয়, যাতে তিনটি অ্যাকাউন্ট রয়েছে (admin ডিরেক্টরি প্রশাসনের জন্য এবং Grafana অ্যাডমিন লগইনের জন্য, sldapauth সার্ভিস বাইন্ড অ্যাকাউন্ট হিসাবে, sslave CI এবং অটোমেশনের জন্য), এবং দুটি গ্রুপ (admins, যা OpenBao-এ shoggoth-admin নীতির সাথে ম্যাপ করা হয়, এবং shoggoth-auth সার্ভিস বাইন্ড অ্যাকাউন্টের জন্য)। OpenBao পাসওয়ার্ডের সোর্স অফ থিথার, প্রথম রানে স্বয়ংক্রিয়ভাবে তৈরি হয়, এবং LDAP-বেসড সার্ভিসগুলি যেমন Gitea, Redmine, CDash এবং OpenBao নিজেই এই স্থানে রয়েছে। দেখানো সতর্কতা অন্তর্ভুক্ত করে যে gitea এবং redmine CLI ক্লায়েন্টগুলি কেবলমাত্র পরিবেশ ভেরিয়েবল দিয়ে কনফিগার করা যায় না, zot অন-ইন্টারঅ্যাক্টিভ সিঙ্ক বন্ধ হওয়ার পরে স্টেজিং ডিরেক্টরিগুলি বাকি রেখে যায় (initContainer দিয়ে ক্লিনআপ করা হয়), এবং পরিচিত LiteLLM OpenTelemetry কলব্যাক এবং Tempo WAL ওয়াচার সমস্যা রয়েছে।