Passer au contenu principal
Parce que generate-document est exposé comme un outil, un agent AI peut l’appeler. Ajoutons un agent et une compétence pour que les utilisateurs puissent simplement dire “générer une proposition pour Jeffery Griffin”.

La compétence

Un skill est des instructions réutilisables — des connaissances que vous attachez aux agents. Le nôtre enseigne au modèle comment utiliser l’outil.
import { defineSkill } from 'twenty-sdk/define';

export default defineSkill({
  universalIdentifier: DOCUMENT_SKILL_UNIVERSAL_IDENTIFIER,
  name: 'document-drafting',
  label: 'Document drafting',
  icon: 'IconFileText',
  content: [
    'To generate a document, call the `generate-document` tool with:',
    '- `templateId`: the id of the document template to use.',
    '- `recordId`: the id of the Person or Company the document is for.',
    '',
    'If the user names a template or person instead of an id, find the record first,',
    'then pass its id. Make sure the template target matches the record type.',
  ].join('\n'),
});

L’agent

Un agent paie une invite avec un modèle . Définissez explicitement responseFormat pour éviter un avertissement de construction.
import { defineAgent } from 'twenty-sdk/define';

export default defineAgent({
  universalIdentifier: DOCUMENT_AGENT_UNIVERSAL_IDENTIFIER,
  name: 'document-assistant',
  label: 'Document Assistant',
  description: 'Generates documents from your templates and CRM records.',
  icon: 'IconFileText',
  responseFormat: { type: 'text' },
  prompt: [
    'You are the Document Assistant for a CRM.',
    'You help users generate personalized documents from reusable templates',
    'and the data already in their CRM. Use the generate-document tool, and',
    'always confirm what you created.',
  ].join(' '),
});
L’agent ne peut appeler l’outil que si son rôle le permet. Nous avons déjà défini canAccessAllTools: true et canBeAssignedToAgents: true sur le rôle de l’application dans Chapitre 2.

Essayez-le

Ouvrez une discussion avec Document Assistant et demandez-lui de rédiger un document pour une personne dans votre CRM. Il trouve l’enregistrement, appelle generate-document, et rapporte le document qu’il a créé — qui apparaît maintenant dans votre vue Documents exactement comme les chemins du menu de commande et du workflow. C’est le payoff de l’exposition de la logique en tant qu’outil : une fonction, de nombreuses portes frontales — Menu de commande , HTTP, étape de workflow et maintenant langage naturel. Après cette étape: l’application est complète et vraiment utile. Il est temps de l’expédier.

Suivant : publication →

Ajouter des métadonnées de marketplace et publier.