Još jedan Agent projekat je rođen, Python verzija PaiCLI sličan Claude Code terminalni Agent
Trenutno PaiCLI ima Java verziju, TypeScript verziju i Python verziju, tri verzije su u potpunosti konzistentne u osnovnoj arhitekturi, razlika je samo na nivou jezika.
Prvo da se odbranimo, sposobnost Harness PaiCLI i Claude Code ima veliku razdaljinu, ali cilj da svi mogu da ručno implementiraju komplet tehnološki stack AI Agent-a može se ostvariti.
Nakon što završiš ovaj projekat, otkrićeš da ReAct, MCP, Memory ovi visoki koncepti, u kodu zapravo nisu tako komplikovani kako zamišljaš.
Kod je sinhronizovan sa gitcode.
https://gitcode.com/javabetter/PaiCLI-Python

01, Zašto raditi Python verziju?
U AI eri, programski jezik više nije prag za učenje programiranja, jer Python/Java/TypeScript/Go koje ne vladaš dobro, Claude Code/Codex ovi Agent-i vrlo dobro vladaš.
Python je takođe jezik koji mnogi prijatelji najviše vole za učenje AI Agent razvoja, zato smo i napravili Python verziju.

PaiCLI-Python ima 6 ključnih zavisnosti.
httpx, asinhroni HTTP klijent. Najveća razlika od requests je prirodna podrška za async/await, Agent poziva veliki model API može da postigne ne-blokirajući striming izlaz.
Sva komunikacija PaiCLI sa modelom ide kroz httpx AsyncClient, SSE striming analiza je takođe urađena pomoću njega.

prompt-toolkit, interaktivni okvir za unos terminala. Podržava sintaksno osvetljavanje, automatsko dopunjavanje, uređivanje više redova, istoriju. Terminalno iskustvo PaiCLI-ja zavisi od njega, pritisni strelicu gore za istoriju, Tab dopuni komandu, ovo sve ne treba od nule implementirati.
Rich, biblioteka za renderovanje terminala. Markdown renderovanje, sintaksno osvetljavanje, traka napretka, tabela, panel, sve spremno. Agent kada izlazi fragmente koda može direktno u terminalu da prikaže sa osvetljavanjem, nije gomila čistog teksta.
Typer, CLI framework. Automatski generiše analizu parametara komandne linije na osnovu Python tipova napomena, pola manje koda nego argparse. Svi podkomandi PaiCLI-ja definisani su kroz Typer.
MCP SDK, zvanični MCP SDK Anthropic. PaiCLI direktno koristi zvanični SDK da se integriše u MCP ekosistem, podržava dva transportna protokola stdio i HTTP, ne treba da implementiraš protokol sloj.
SQLite, trajno skladištenje sistema memorije i indeksiranja koda. Ne treba dodatno instalirati bazu podataka, Python standardna biblioteka dolazi sa sqlite3 modulom, dugoročna memorija Agent-a i RAG kod indeks postoje u lokalnom SQLite fajlu.

Ovih 6 biblioteka pokriva pet pravaca: mrežna komunikacija, terminal interakcija, analiza komandne linije, protokol integracija, perzistencija podataka.
U međuvremenu spomeni, ceo projekat koristi uv za upravljanje paketima, hatchling za build backend.
02, Šta funkcionalnosti je implementirano
Funkcionalnosti PaiCLI-Python mogu se podeliti po ključnim sposobnostima Agent-a. Svaki modul dole je nezavisan, želiš da učiš koji ćeš videti kog izvornog koda.
ReAct. Primi korisnički unos → pozovi veliki model za zaključivanje → oceni da li treba alat → izvrši alat -> rezultat vrati modelu → nastavi zaključivanje.
15 ugrađenih alata. Čitanje fajla, pisanje fajla, izvršenje komande, pretraga fajla, Glob podudaranje, pretraga koda, čitanje pisanje memorije, kreiranje obnavljanje snapshot-a, veb pretraga, veb fetch, LSP dijagnostika. Svaki alat je označen da li je samo-za-čitanje, da li je konkurentno bezbedan, Agent može na osnovu oznake vršiti paralelno planiranje.

Integracija MCP protokola. Povezuje se sa spoljnim alat serverima kroz MCP SDK, podržava dva transportna protokola stdio i Streamable HTTP. Konfiguracijski fajl napiše adresu servera i start komandu, PaiCLI pri startovanju automatski učitava spoljne alate. Implementirano otkrivanje alata, pozivanje, čitanje resursa, preuzimanje Prompt templejta i sve MCP klijentske sposobnosti.
Tro-slojni sistem memorije. Kontekst razgovora je kratkoročna memorija, SQLite perzistentni unakrsni sesijski podaci su dugoročna memorija, podržava pretragu istorijske memorije po ključnim rečima.
RAG pretraga kodne baze. Izvorni kod projekta se deli po redovima i čuva u SQLite, podržava AND pretragu više ključnih reči. Kada Agent odgovara na pitanja vezana za kod, prvo koristi RAG da locira specifični fajl i broj reda, zatim čita kontekst.

Podrška za više modela. Odmah podržava 5 proizvođača: DeepSeek, OpenAI, GLM (Zhipu), Kimi (YueMianMian), Step (StepYueXing). DeepSeek posebno adaptirano na million token kontekstni prozor i prefiks keš. Promena modela samo menja provider i model polja u konfiguracijskom fajlu.
Bezbednosna strategija. Tri linije odbrane: komandni interceptor filtrira opasne komande (rm -rf, formatiranje diska itd.), path guard ograničava opseg čitanja pisanja fajlova da ne prelazi projekat direktorijuma, revizion log beleži kompletu trasu poziva alata. Visokorizični poziv alata će pokrenuti ljudsko odobrenje (HITL), terminal iskače potvrdu, korisnik saglašava pa se izvršava.
Snapshot snapshot. Pre izvršenja zadatka automatski čuva projekat snapshot, ako se desi problem može jednim klikom rolati nazad na bilo koji istorijski čvor. Snapshot se imenuje po vremenskoj oznaci i fazi zadatka, čuva se u ~/.paicli/snapshots/ direktorijumu, ne zagađuje git istoriju.
Runtime API. Pruža HTTP interfejs, drugi programovi mogu kroz API pozvati PaiCLI sposobnost, podržava pozadinski red zadataka i asinhrono izvršenje.
03, Kako napisati PaiCLI u životopis
U poređenju sa trenutnim AI Agent pozicijama JD na tržištu, moduli PaiCLI funkcionalno pokrivaju skoro sve. Dole je templejt opisa projekta koji se može direktno koristiti u životopisu.
Naziv projekta: PaiCLI-Python terminal Agent CLI (2026.05 - 2026.07)
Opis projekta: Sličan Claude Code terminal Agent komandna linija alat (Python verzija), podržava ReAct zaključivanje, Multi-Model promenu, MCP protokol integraciju, tro-slojnu memoriju, RAG pretragu koda, Snapshot rollback, može u terminalu kroz prirodni jezik voziti razvoj i debug koda.

Tehnološki stack: Python 3.11+, httpx, MCP SDK, prompt-toolkit, Rich, Typer, SQLite
Ključne odgovornosti:
- Na osnovu httpx AsyncClient implementirao više-model LLM adapter sloj, koristeći Python prirodni async/await radi ne-blokirajućeg striming zaključivanja, unificirao DeepSeek, OpenAI, GLM, Kimi, Step pet proizvođača SSE striming interfejs, DeepSeek adaptirao million token prozor i uključio prefiks keš
- Implementirao ReAct zaključivanje petlju, maksimalno 20 krugova samostalne odluke, podržava paralelno planiranje 15 ugrađenih alata, svaki alat označen samo-za-čitanje i konkurentno bezbednošću za planer da prosudi
- Na osnovu prompt-toolkit konstruisao interaktivni terminal, implementirao sintaksno osvetljavanje, automatsko dopunjavanje, uređivanje više redova, istoriju i druge funkcije, kombinujući Rich radi Markdown renderovanja i kod osvetljenog izlaza, koristeći Typer automatski generisati CLI analizu parametara na osnovu tipova napomena
- Integrisao MCP protokol klijent, na osnovu Anthropic zvaničnog MCP SDK podržava stdio i Streamable HTTP dvostruki transport protokol, implementirao otkrivanje alata, udaljeno pozivanje, čitanje resursa, preuzimanje Prompt templejta i sve klijentske sposobnosti
- Dizajnirao tro-slojnu memoriju arhitekturu, kratkoročna memorija upravlja trenutnim kontekstom razgovora, dugoročna memorija na osnovu Python standardne biblioteke sqlite3 perzistira i izolira projektni prostor po scope-u, podržava memoriju pretragu više ključnih reči AND
- Konstruisao RAG modul pretrage koda, indeksira izvorni koda projekta po redovima u SQLite, pokriva 20 vrsta sufiksa fajlova, automatski preskače ne-kod direktorijume, Agent prvo pretražuje pa precizno čita kad locira kod
- Implementirao bezbednosnu strategiju tri kompleta, komandni interceptor sprečava opasne operacije, path guard ograničava opseg pristupa fajlovima, revizion log beleži kompletne pozive alata, visokorizične operacije pokreću ljudsko odobrenje potvrde
- Koristio uv za upravljanje paketom, hatchling za build backend, struktura projekta sledi Python standardni src layout, podržava
pip install -e .lokalni razvojni mod
ending
Tehnološki stack AI Agent-a je toliko, ReAct, Tool Use, MCP, Memory, RAG, na prste se može prebrojati.
Bilo da implementiraš kroz Javu, TypeScript ili Python, osnovni mehanizam je isti.
Jezik nije barijera, razumevanje mehanizma je prava konkurentska prednost.
[Naravno, PaiCLI nije perfektnan Agent, ali dovoljno da svi mogu ručno da dodirnu svaki ključni modul.]
Srećno, braćo i sestre. Vidimo se sledeći epizodi.
