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

BareAgent হলো Node.js-এর জন্য একটি হালকা, শূন্য-নির্ভরতা এজেন্ট অর্কেস্ট্রেশন লাইব্রেরি যা AI এজেন্টদের জন্য think→act→observe লুপ সরবরাহ করে। LangChain, CrewAI বা AutoGen-এর মতো ভারী ফ্রেমওয়ার্কের বিপরীতে, BareAgent একচেটিয়া ফ্রেমওয়ার্কের পরিবর্তে কম্পোজেবল বিল্ডিং ব্লকগুলিতে মনোনিবেশ করে, যার মূল অংশ কোনো নির্ভরতা ইম্পোর্ট করে না। মূল ক্ষমতাগুলির মধ্যে রয়েছে: - **লুপ**: কেন্দ্রীয় think→act→observe চক্র যা লক্ষ্য সম্পূর্ণ না হওয়া পর্যন্ত চলে, যেখানে নীতি পরিচালনা, প্রসঙ্গ প্রকৌশল এবং ট্রান্সক্রিপ্ট ছাঁটাইয়ের জন্য ঐচ্ছিক seams রয়েছে। - **Planner ও runPlan**: লক্ষ্যগুলিকে একটি step DAG-এ ভেঙে দেয় এবং নির্ভরতা সচেতনতা ও প্রতি-ধাপ retry সহ সমান্তরাল waves-এ ধাপগুলি কার্যকর করে। - **recurse (RLM)**: একটি পুনরাবৃত্তিমূলক ডিকম্পোজিশন প্রিমিটিভ যা কঠিন কাজগুলো ভেঙে দেয়, উপ-কাজগুলোতে ফ্যান-আউট করে, ফলাফল যাচাই করে এবং চূড়ান্ত উত্তর সংশ্লেষ করে। মডেল-চালিত spawning, বাধ্যতামূলক fan-out এবং ডেটা-চালিত পার্টিশনিং সমর্থন করে। মডেল-ঘোষিত সংখ্যার উপর নির্ভর না করে scan-ভিত্তিক retrieval-এর মাধ্যমে কোড-গণনা করে কর্পোরার উপর সৎ গণনা অন্তর্ভুক্ত। - **মেমোরি**: Store ইন্টারফেসের (JSON, SQLite, বা litextx) মাধ্যমে সেশন জুড়ে স্থায়ী স্টোরেজ এবং পুনরুদ্ধার। - **গভর্ন্যান্স**: ঐচ্ছিক bareguard ইন্টিগ্রেশন সমস্ত LLM এবং টুল কলের উপর একক নীতি গেট সরবরাহ করে, সাথে অডিট লগিং, বাজেট ক্যাপ এবং মানব অনুমোদন চেকপয়েন্ট। - **রেজিলিয়েন্স**: ব্যাকঅফ ও জিটার সহ retry, সার্কিট ব্রেকার এবং প্রোভাইডার ফেইলওভার। - **প্রোভাইডার**: OpenAI-সামঞ্জস্যপূর্ণ API, Anthropic, Gemini, Ollama, CLIPipe এবং কাস্টম প্রোভাইডার সমর্থন করে। সবকটি প্রম্পট-ক্যাশ টিয়ার রিপোর্টিংসহ সৎ token/cost মেট্রিকসহ একটি স্বাভাবিক আকৃতিতে ফেরত দেয়। - **টুলস**: যেকোনো ফাংশন একটি টুল হতে পারে। অন্তর্নির্মিত ওয়েব ব্রাউজিং (barebrowse), মোবাইল নিয়ন্ত্রণ (baremobile), এবং শেল এক্সিকিউশন। MCP Bridge IDE কনফিগারেশন থেকে MCP সার্ভার স্বয়ংক্রিয়ভাবে আবিষ্কার করে। - **ক্রস-ল্যাঙ্গুয়েজ**: Python, Go, Rust, Ruby বা Java থেকে stdin/stdout-এর উপর JSONL-এর মাধ্যমে সাবপ্রসেস হিসেবে চলতে পারে। - **স্ট্রিমিং**: রিয়েল-টাইম অগ্রগতির জন্য কাঠামোবদ্ধ JSONL ইভেন্ট। - **Evaluator ও refine**: প্রিডিকেট, রুব্রিক বা এজেন্টিক ক্রিটিক দিয়ে আউটপুট বিচার করুন, সাথে একটি সীমাবদ্ধ generate→evaluate→regenerate লুপ। - **শিডিউলার**: ক্রন বা আপেক্ষিক ট্রিগার এবং রিস্টার্ট জুড়ে কাজের অধ্যবসায়। - **চেকপয়েন্ট**: আপনার নিজস্ব ট্রান্সপোর্টসহ মানব অনুমোদন গেট। - **Spawn**: ভাগ করা অডিট লগ এবং বাজেটসহ চাইল্ড এজেন্ট ফর্ক করুন। - **Defer**: ওয়েকার দ্বারা পরবর্তী কার্য সম্পাদনের জন্য কাজগুলো কিউ করুন। - **SkillRegistry**: মেটা-টুল ক্যাটালগের মাধ্যমে চাহিদা অনুযায়ী দক্ষতা প্রদর্শন করুন। - **stash**: লাইভ কনটেক্সট উইন্ডোর বাইরে সম্পন্ন কাজ কমপ্যাক্ট করুন বা টোকেন চাপে স্বয়ংক্রিয়ভাবে ভাঁজ করুন। লাইব্রেরিটি যথেষ্ট হালকা হওয়ার জন্য ডিজাইন করা হয়েছে যাতে সম্পূর্ণরূপে বোঝা যায়, আবার চাকা নতুন করে উদ্ভাবন এড়াতে যথেষ্ট সম্পূর্ণ। এটি শূন্য প্রয়োজনীয় নির্ভরতা নিয়ে আসে; ঐচ্ছিক পিয়ারগুলির মধ্যে রয়েছে গভর্ন্যান্সের জন্য bareguard, SQLite স্টোরেজের জন্য better-sqlite3 এবং শিডিউলিংয়ের জন্য cron-parser। Apache 2.0 লাইসেন্সের অধীনে।