Sulla scia del mio percorso con gli agenti di coding AI, sono felice di annunciare AgentSync, un global .NET tool sperimentale, progettato per gestire gli asset di GitHub Copilot in modo più strutturato. Se lavorate con agent personalizzati, skill, prompt e istruzioni, probabilmente conoscete già i problemi principali: file duplicati, dipendenze mancanti e configurazioni diverse tra repository e macchine utente multiple. AgentSync è disponibile nel repository GitHub agents-sync-tool. Nel repository trovate codice sorgente, documentazione dei comandi, un esempio di catalogo e note di implementazione.
Perché questo progetto è utile
Ispirato da The Library Meta-Skill e dall'idea di avere un modo strutturato per condividere agent, skill e prompt tra progetti e team, AgentSync è stato creato per rendere questo processo ripetibile e più semplice da mantenere. AgentSync è utile quando voi o il vostro team avete bisogno di un modo condiviso e controllato per distribuire le personalizzazioni di Copilot. Alcuni vantaggi principali:
- Workflow catalog-first con
catalog.jsoncome fonte di verità - Operazioni di installazione e sincronizzazione sia in scope repo sia in scope user
- Installazioni con dipendenze tramite riferimenti
requirestipizzati - Workflow di importazione per migrare asset non gestiti nel catalogo
- Workflow di push per inviare aggiornamenti locali verso la fonte originaria
In breve, spostate la condivisione degli asset da copia-incolla manuale a operazioni esplicite e verificabili. Se volete, potete vederlo come un package manager per agent, skill, prompt e istruzioni Copilot: così come NuGet organizza i pacchetti per .NET, qui il catalogo definisce i pacchetti e AgentSync gestisce installazione, aggiornamenti e tracciamento.
Come funziona
Ad alto livello, AgentSync segue questo ciclo:
- Carica e valida
catalog.json. - Risolve i target di piattaforma e scope.
- Esegue i workflow dei comandi (
use,install,sync,import,add,remove,push). - Salva lo stato di installazione per tracciare nel tempo gli asset gestiti.
Questo modello separa lo stato desiderato (catalogo) dallo stato installato gestito, aspetto importante per workflow di refresh e manutenzione sicuri.
Superficie comandi tipica:
AgentSync list: elenca asset del catalogo e relativo statoAgentSync search: cerca nel catalogo con filtriAgentSync use: installa un asset e le sue dipendenze nello scope targetAgentSync install: installa tutti gli asset del catalogo nello scope targetAgentSync sync: aggiorna gli asset gestiti tracciatiAgentSync import: importa asset non gestiti nello stato tracciatoAgentSync add: aggiunge nuovi asset al catalogoAgentSync remove: rimuove asset dal catalogoAgentSync push: invia aggiornamenti locali alla sorgente
Come organizzare un catalogo privato
Potete organizzare il catalogo nel modo più adatto a voi e al vostro team. I cataloghi possono essere pubblici o privati e possono referenziare come sorgenti sia percorsi locali sia repository GitHub remoti. Un catalogo è un repository Git. Potete trovare un catalogo di esempio su GitHub nel repository repository agents-catalog. L'ideale è partire semplice e crescere nel tempo, aggiungendo asset e organizzandoli secondo i vostri casi d'uso. Una struttura minima di catalogo può essere questa, ma potete organizzarla in modo diverso purché le entry in catalog.json referenziano correttamente i file asset:
agents-catalog/
catalog.json
agents/
agent-1.agent.md
agent-2.agent.md
skills/
skill-1.skill.md
skill-2.skill.md
prompts/
prompt-1.prompt.md
prompt-2.prompt.md
instructions/
instruction-1.instruction.md
instruction-2.instruction.md
Potete trovare un esempio di catalog.json nel repository di esempio. Il file catalog.json è la fonte di verità del catalogo e definisce asset, tipi, sorgenti e dipendenze. Ogni file asset (ad esempio agent-1.agent.md) contiene il contenuto effettivo di quell'asset, seguendo un formato markdown specifico in base al tipo (agent, skill, prompt, instruction).
Esempio quick start
# Elenca gli asset del catalogo
AgentSync list --catalog C:\Projects\agents-catalog --local .
# Installa un asset e le dipendenze tipizzate
AgentSync use agent-architect --type agent --catalog C:\Projects\agents-catalog --local .
# Aggiorna gli asset gestiti tracciati
AgentSync sync --catalog C:\Projects\agents-catalog --local .
Se avete già contenuti non gestiti, partite da import, poi potete usare --add-unmapped per registrare in catalog.json gli asset trovati.
Prossimi passi e come contribuire
AgentSync è ancora nelle fasi iniziali, sperimentale e in evoluzione. Provatelo: feedback e contributi sono molto benvenuti nel repository GitHub agents-sync-tool. Condividete anche i vostri casi d'uso, i punti critici e le funzionalità che vorreste trovare!