Plugins et compétences
Plugins
Que sont les plugins ?
Les plugins sont des modules TypeScript qui étendent les fonctionnalités d'Neotask au moment de l'exécution. Ils peuvent ajouter de nouveaux canaux de messagerie, des outils d'agent, des méthodes RPC, des commandes CLI, des services en arrière-plan et des compétences.
Plugins officiels
Canaux de messagerie :
- Microsoft Teams, Matrix, Nostr, Zalo, Feishu/Lark, LINE, Nextcloud Talk, Mattermost, Tlon, Twitch
Fonctionnalités :
- Appel vocal, Prise en charge de la téléphonie SIP pour les appels vocaux entrants/sortants
- Mémoire (LanceDB), Mémoire à long terme avec recherche par similarité vectorielle
- MCP Native, Intégration de serveur de protocole de contexte de modèle pour bridger des outils externes
Fournisseurs d'authentification :
- Google Antigravity OAuth, Gemini CLI OAuth, Qwen OAuth, Minimax OAuth, VS Code Copilot Proxy
Capacités des plugins
Les plugins peuvent enregistrer :
- Méthodes RPC, Méthodes WebSocket personnalisées pour les clients
- Gestionnaires HTTP, Points de terminaison HTTP personnalisés sur le Gateway
- Outils d'agent, Nouveaux outils avec des schémas typés que les agents peuvent invoquer
- Commandes CLI, Commandes supplémentaires en ligne de commande
- Services en arrière-plan, Processus de longue durée gérés par le Gateway
- Compétences, Répertoires de compétences fournis avec le plugin
- Commandes de réponse automatique, Commandes qui s'exécutent sans implication de l'agent IA
Sécurité des plugins
Neotask contrôle les plugins à plusieurs niveaux avant leur exécution :
- Signés et vérifiés. Les paquets du catalogue public Construct sont publiés par Neotask, inspectés automatiquement avant leur publication et signés avec la clé de publication de Neotask. Avant d'en installer un, Neotask vérifie la signature avec des clés intégrées à Neotask et contrôle le hachage SHA-256 du téléchargement.
- Aucun script d'installation. Les paquets Construct incluent leurs dépendances : leur installation n'exécute jamais de gestionnaire de paquets ni de script d'installation. Lorsqu'une autre installation de plugin utilise npm, les scripts d'installation sont désactivés.
- Analyse à l'installation. Les plugins installés hors de Construct sont analysés pour détecter du code dangereux, et les problèmes critiques bloquent l'installation.
- Licence par version. Un plugin Construct ne se charge que tant que votre compte dispose d'une autorisation valide pour cette version. Les versions révoquées ne se chargent pas.
- Approbations pour les actions des agents. Les appels d'outils des agents, y compris ceux ajoutés par des plugins, sont vérifiés selon votre politique d'approbation, et les actions qui demandent votre accord l'attendent. Un logiciel qu'un agent veut installer hors des recettes d'installation fournies avec Neotask vous montre toujours la commande exacte et attend votre approbation.
- Sandbox facultatif. Vous pouvez exécuter les outils d'un agent dans un conteneur Docker isolé plutôt que directement sur votre ordinateur. Le sandbox est désactivé par défaut ; consultez Sécurité pour l'activer.
Les plugins natifs s'exécutent dans le processus du Gateway : un plugin installé hors de Construct est donc du code que vous choisissez d'exécuter. Utilisez plugins.allow pour lister les plugins autorisés à se charger.
Compétences
Que sont les compétences ?
Les compétences sont des capacités modulaires qui enseignent aux agents de nouveaux workflows. Chaque compétence est un fichier markdown (SKILL.md) avec des instructions qui sont injectées dans le contexte de l'agent lorsque c'est pertinent.
Emplacements des compétences (ordre de priorité)
- Compétences de l'espace de travail,
<workspace>/skills/(priorité la plus haute) - Compétences gérées,
~/.neotask/skills/ - Compétences intégrées, Fournies avec Neotask
- Compétences de plugin, Compétences packagées avec les plugins installés
- Répertoires supplémentaires, Chemins configurés supplémentaires (priorité la plus basse)
Lorsque plusieurs compétences partagent le même nom, l'emplacement de priorité la plus haute gagne.
Fonctionnalités des compétences
- Invocables par l'utilisateur, Déclencher des compétences directement avec des commandes slash (par ex.,
/docker-build) - Invocables par le modèle, Compétences que l'agent peut invoquer de lui-même lorsque c'est pertinent
- Envoi de commandes, Compétences qui correspondent à des outils spécifiques
- Contrôle des exigences, Les compétences ne se chargent que lorsque leurs exigences sont satisfaites (binaires requis, clés de configuration, variables d'environnement, plugins)
Création de compétences
Créez un fichier SKILL.md avec des métadonnées YAML en frontmatter définissant les métadonnées et les instructions de la compétence :
Champs de frontmatter :
name, Identifiant de la compétencedescription, Ce que fait la compétencehomepage, Lien vers la documentationuser-invocable, Si les utilisateurs peuvent la déclencher directementdisable-model-invocation, Empêcher l'agent de l'invoquer de manière autonomecommand-dispatch, Outil vers lequel envoyermetadata.neotask.requires, Prérequis (bins, config, env, plugins)
Corps : Instructions markdown qui enseignent à l'agent comment utiliser la compétence, y compris des exemples et des lignes directrices.
Catalogue de compétences
Parcourez les compétences disponibles dans le catalogue de compétences.
Catégories de compétences
Les compétences couvrent un large éventail de capacités :
| Catégorie | Exemples |
|---|---|
| Productivité | Gestion des e-mails, calendrier, génération de documents |
| Développement | Opérations Git, CI/CD, Docker, révision de code |
| Communication | Messagerie, notifications, annonces |
| Médias | Traitement d'images, montage vidéo, transcription audio |
| IA et modèles | Changement de modèle, gestion des invites, RAG |
| Maison intelligente | Contrôle d'appareils IoT, déclencheurs d'automatisation |
| Utilitaires | Conversion de fichiers, transformation de données, web scraping |