Sono sempre più convinto che l'approccio degli strumenti Unix, che prevede una serie di unità funzionali focalizzate e componibili utilizzabili in isolamento o come parte di una pipeline più grande, sia anche il miglior approccio per gli strumenti per agenti di codifica. Il problema nel cercare di creare un grande sistema unificato che faccia tutto è che le persone hanno i propri flussi di lavoro e modi di sviluppare, e di solito è troppo difficile cercare di realizzare un progetto che si adatti a tutti senza che si trasformi in una complessità dilagante che non funziona bene nella pratica. Quindi ho uno strumento per la posta degli agenti, uno strumento per la gestione dei compiti (le perline di Steve Yegge), uno strumento per la selezione dei compiti (bv), uno strumento per la ricerca nella cronologia passata (cass), uno strumento per il linting poliglotta e la cattura di bug (ubs), uno per la gestione dei comandi sensibili (slb), uno per gestire tmux e le sessioni degli agenti (ntm), uno per la memoria (csm), ecc. E puoi usare uno di essi, alcuni di essi o tutti. E sono parzialmente integrati tra loro, ma sempre in modo opzionale. Quindi slb può utilizzare la posta degli agenti se l'hai configurata, ma funziona anche in modo autonomo. E ntm può visualizzare informazioni da bv, ma non è obbligatorio. Diventano come piccoli mattoncini Lego che puoi usare per costruire il sistema che desideri, e diventa facile creare i tuoi piccoli strumenti per aggiungere la funzionalità che desideri. E poi il tuo file AGENTS dot md diventa in un certo senso come un sistema operativo in cui "installi" gli strumenti nella memoria di lavoro dell'agente e li configuri descrivendo come, quando e perché usarli (stranamente, ora devi preoccuparti di convincere la macchina a usare gli strumenti!) Quindi puoi avere tutti i tuoi strumenti configurati sulla tua macchina, ma attivare solo quelli specifici a seconda del progetto includendo solo i blurb pertinenti che spiegano gli strumenti che vuoi usare.