Sunt din ce în ce mai convins că abordarea uneltelor Unix, de a avea o mulțime de unități funcționale concentrate, compozibile, care pot fi folosite izolat sau ca parte a unui pipeline mai larg, este de asemenea cea mai bună abordare pentru uneltele agenților de codare. Problema cu încercarea de a crea un sistem mare și unificat care să facă totul este că oamenii au propriile fluxuri de lucru și moduri de a dezvolta, iar de obicei este prea greu să faci un proiect unic care să poată acomoda asta fără să devină o complexitate vastă care nu funcționează bine în practică. Așa că am un instrument pentru corespondența agenților, un instrument pentru managementul sarcinilor (mărgelele lui Steve Yegge), un instrument pentru selecția sarcinilor (bv), un instrument pentru căutarea istoricului trecut (cass), un instrument pentru poliglot linting și detectarea bug-urilor (ubs), unul pentru gestionarea comenzilor sensibile (slb), unul pentru gestionarea tmux și sesiunilor agenților (ntm), unul pentru memorie (csm) etc. Și poți folosi una dintre ele, unele sau toate. Și sunt parțial integrate una cu cealaltă, dar întotdeauna opțional. Astfel, SLB poate folosi Agent Mail dacă îl ai configurat, dar funcționează și independent. Și NTM poate afișa informații din BV, dar nu este forțat. Ele devin ca niște mici blocuri Lego pe care le poți folosi pentru a construi orice sistem dorești, și devine ușor să-ți creezi propriile unelte pentru a adăuga funcționalitatea dorită. Apoi fișierul tău AGENTS dot md devine ca un sistem de operare unde "instalezi" uneltele în memoria de lucru a agentului și le configurezi descriind cum, când și de ce să le folosești (ciudat, acum trebuie să te îngrijorezi să convingi mașina să folosească uneltele!) Așadar, poți avea toate uneltele configurate pe calculator, dar să activezi doar pe cele specifice, în funcție de proiect, incluzând doar prezentările relevante care explică uneltele pe care vrei să le folosești.