defineSkill
Definisci le skill degli agenti IA
defineSkill
Definisci le skill degli agenti IA
Le skill definiscono istruzioni e capacità riutilizzabili che gli agenti IA possono utilizzare all’interno del tuo spazio di lavoro. Usa Punti chiave:
defineSkill() per definire skill con convalida integrata:src/skills/example-skill.ts
nameè una stringa identificativa univoca per la skill (kebab-case consigliato).labelè il nome di visualizzazione leggibile mostrato nell’UI.contentcontiene le istruzioni della skill — questo è il testo che l’agente IA utilizza.icon(opzionale) imposta l’icona visualizzata nell’UI.description(opzionale) fornisce contesto aggiuntivo sullo scopo della skill.
defineAgent
Definisci agenti IA con prompt personalizzati
defineAgent
Definisci agenti IA con prompt personalizzati
Gli agenti sono assistenti IA che vivono all’interno del tuo spazio di lavoro. Usa Punti chiave:Note sullo schema:
defineAgent() per creare agenti con un prompt di sistema personalizzato:src/agents/example-agent.ts
nameè la stringa identificativa univoca dell’agente (kebab-case consigliato).labelè il nome visualizzato nell’UI.promptè il prompt di sistema che definisce il comportamento dell’agente.description(opzionale) fornisce contesto su ciò che fa l’agente.icon(opzionale) imposta l’icona visualizzata nell’UI.modelId(opzionale) sostituisce il modello di IA predefinito utilizzato dall’agente.responseFormat(facoltativo) controlla la forma dell’output dell’agente. Per il testo in formato libero, il valore predefinito è{ type: 'text' }. Usa{ type: 'json', schema }per forzare un output JSON strutturato.
responseFormat su { type: 'json' } e fornisci uno schema:src/agents/structured-agent.ts
- Lo schema è un oggetto piatto: il
typedi ogni proprietà deve essere un primitivo (string,numberoboolean). Gli oggetti annidati e gli array non sono supportati. description(facoltativo) su ogni proprietà guida il modello su cosa inserire lì.required(facoltativo) elenca le proprietà che il modello deve sempre restituire.additionalProperties: false(facoltativo) vieta qualsiasi proprietà non dichiarata inproperties.
runAgent
Esegui un agente da una funzione di logica
runAgent
Esegui un agente da una funzione di logica
runAgent() permette a una funzione di logica di eseguire uno degli agenti della tua app (con le sue skill e i suoi strumenti). Identifica l’agente tramite l’universalIdentifier che hai passato a defineAgent():src/logic-functions/run-enricher.ts
- L’agente viene eseguito in modo sincrono e può leggere/aggiornare direttamente i record tramite i propri strumenti —
runAgent()viene risolta una volta completata l’esecuzione. - Un’app può eseguire solo i propri agenti.
- Il ruolo predefinito dell’app deve concedere il flag di autorizzazione
AI— aggiungiSystemPermissionFlag.AIai suoipermissionFlagUniversalIdentifiers(oppure impostacanAccessAllTools: true). In mancanza di ciò,runAgent()non riesce con un errore di autorizzazione. - Imposta un valore generoso per
timeoutSecondssulla funzione di logica — l’esecuzione degli agenti può richiedere diversi secondi. successètrueeresultè non nullo quando l’esecuzione viene completata; in caso di erroresuccessèfalse,resultènullederrorcontiene il motivo (ad esempio, quando lo spazio di lavoro esaurisce i crediti AI durante l’esecuzione).
src/roles/default-role.ts