প্রকল্প সম্পর্কে
pi_agent_rust হলো Rust-এ লেখা একটি উচ্চ-ক্ষমতাসম্পন্ন, শূন্য-অনিরাপদ-কোড AI কোডিং এজেন্ট CLI। এটি Mario Zechner-এর Pi Agent-এর একটি নেটিভ পোর্ট, যা Electron বা Node.js-এর মতো ম্যানেজড রানটাইমে তৈরি ধীরগতির, বেশি রিসোর্স-নির্ভর বিকল্পগুলোকে প্রতিস্থাপনের জন্য ডিজাইন করা হয়েছে।
**মূল বৈশিষ্ট্য:**
- **৩৬টি বিল্ট-ইন টুল** পাঁচটি স্তরে বিভক্ত: অপরিহার্য কমান্ড (read, write, edit, bash, grep, find, ls, web_search), আবিষ্কারযোগ্য টুল (ast_grep, ast_edit, lsp, debug, memory টুল), ব্যাকগ্রাউন্ড ইউটিলিটি (jobs, hub), এবং সেটিংস-গেটেড অতিরিক্ত (ব্রাউজার অটোমেশন, কম্পিউটার/ডেস্কটপ নিয়ন্ত্রণ, image/tts/media হ্যান্ডলিং)
- **স্ট্রিমিং রেসপন্স** এবং এক্সটেন্ডেড থিংকিং ব্লক সাপোর্ট, বাস্তব নেটওয়ার্ক পরিস্থিতির জন্য টিউন করা একটি কাস্টম SSE পার্সারের মাধ্যমে
- **লোকাল মডেল সাপোর্ট** Ollama, llama.cpp (llama-server), এবং mistralrs-এর জন্য সরাসরি — কোনো API কী প্রয়োজন নেই
- **স্ট্রাকচার্ড কনকারেন্সি** asupersync রানটাইমের মাধ্যমে, পূর্বানুমেয় বাতিলকরণ ও রিসোর্স পরিষ্কারের জন্য
- **ক্যাপাবিলিটি-গেটেড নিরাপত্তা মডেল**: দুই-পর্যায়ের এক্সটেনশন exec প্রয়োগ, বিপজ্জনক শেল প্যাটার্নের (রিকার্সিভ ডিলিট, ডিস্ক রাইট, রিভার্স শেল) কমান্ড-স্তরের ব্লকিং, চার-স্তরের ট্রাস্ট লাইফসাইকল (pending → acknowledged → trusted → killed), হোস্টকল-লেন কিল-সুইচ নিয়ন্ত্রণ, এবং ট্যাম্পার-এভিডেন্ট রানটাইম রিস্ক লেজার
- **সীমাবদ্ধ-রিসোর্স আর্কিটেকচার** দীর্ঘমেয়াদী সেশনের জন্য, SQLite সেশন ইনডেক্সিং সহ একটি v2 সাইডকার ব্যবহার করে O(index+tail) রিওপেন পাথ
- rich_rust দিয়ে তৈরি সমৃদ্ধ টার্মিনাল UI, যা Python Rich লাইব্রেরির একটি Rust পোর্ট
**ইনস্টলেশন:**
```bash
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/pi_agent_rust/main/install.sh?$(date +%s)" | bash
```
**দ্রুত ব্যবহার:**
```bash
# ইন্টারঅ্যাকটিভ সেশন
pi
# প্রাথমিক প্রম্পটসহ
pi "Summarize the architecture in src/"
# একটি ফাইল সংযুক্ত করুন
pi @src/main.rs "Explain startup flow"
# সিঙ্গল-শট স্ক্রিপ্টিং মোড
pi -p "List likely regression risks for this diff"
# শেষ সেশন চালিয়ে যান
pi --continue
```
**কনফিগারেশন:** API কী এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে সেট করা হয় (যেমন, `ANTHROPIC_API_KEY`)। লোকাল প্রোভাইডারগুলো কী ছাড়াই কাজ করে। `pi --fetch-models <provider> --refresh-models --persist-models` দিয়ে মডেল ক্যাটালগ রিফ্রেশ করা যায়। প্রোভাইডার ও মডেল কনফিগারেশন `~/.pi/agent/models.json`-এ থাকে।
প্রকল্পটি সমস্ত বিল্ড ও কোয়ালিটি চেকের জন্য Doodlestein Self-Releaser (DSR) ব্যবহার করে; অবদানকারীদের সরাসরি Cargo ইনভোকেশন থেকে দূরে থাকতে বলা হয়। বেঞ্চমার্ক প্রমাণ কঠোর আর্টিফ্যাক্ট কন্ট্র্যাক্ট দ্বারা নিয়ন্ত্রিত, যেখানে রিলিজ-সংক্রান্ত দাবি প্রকাশের আগে provenance-মিলিত ফলাফল প্রয়োজন।
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.