Tendril : Un agent auto-extensible qui construit et enregistre des outils à la volée

✍️ OpenClawRadar📅 Publié: April 27, 2026🔗 Source
Ad

Tendril est un bac à sable agentique auto-extensible qui illustre le modèle de capacité des agents — le modèle découvre, construit et réutilise des outils de manière autonome entre les sessions. Construit avec AWS Strands Agents SDK et Tauri.

Comment ça marche

Vous demandez à Tendril de faire quelque chose. Il vérifie son registre de capacités. Si un outil existe, il l'utilise. Sinon, il en écrit un, l'enregistre et l'exécute — tout cela sans demander. La prochaine fois que vous avez besoin de la même chose, l'outil est déjà là.

Vous : "récupère les meilleures histoires de Hacker News"
Tendril : → searchCapabilities("fetch url hacker news") # rien trouvé
         → registerCapability(fetch_url, code) # construit un outil
         → execute("fetch_url", {url: "https://..."}) # l'exécute par son nom
         → "Voici les meilleures histoires : ..."

Vous : "maintenant récupère Lobsters et compare" Tendril : → listCapabilities() # trouvé : fetch_url ✓ → execute("fetch_url", {url: "https://lobste.rs"}) # l'exécute — pas de reconstruction

Le registre grandit avec l'utilisation. Chaque session est plus intelligente que la précédente.

Configuration de l'agent

Le cœur de Tendril est un agent Strands avec seulement trois outils de bootstrap :

import { Agent } from '@strands-agents/sdk';
import { BedrockModel } from '@strands-agents/sdk/models/bedrock';

const agent = new Agent({ model: new BedrockModel({ modelId: '...', region: '...' }), systemPrompt: TENDRIL_SYSTEM_PROMPT(workspacePath), printer: nullPrinter, tools: [ listCapabilities(registry), registerCapability(registry), executeCode(registry, workspacePath, config), ], });

Ad

Règles du prompt système

Le prompt système impose un comportement autonome :

  • Appelez searchCapabilities(query) pour vérifier si un outil pertinent existe
  • Si trouvé : appelez loadTool(name) puis execute(code, args)
  • Si PAS trouvé : vous DEVEZ construire l'outil vous-même
  • Ne demandez JAMAIS "voulez-vous que je crée un outil ?" — construisez-le simplement
  • Si un outil échoue, lisez l'erreur, corrigez le code et réessayez
  • Ne répondez JAMAIS à partir des données d'entraînement quand un outil pourrait obtenir des informations en direct

Architecture

┌─────────────────────────────────────────┐
│ Tauri Shell (Rust)                      │
│  ACP Host ──stdin/stdout──► Agent      │
│  (acp.rs)          NDJSON    (Node.js SEA)│
│  Events ◄── session/update ──┘          │
│  (events.rs)                            │
│  Tauri Events ──► React Frontend        │
│  (TailwindCSS v4)                       │
└─────────────────────────────────────────┘

Agent internals: Strands SDK ── BedrockModel ── Claude │ 4 bootstrap tools ┌────┴────┐ │ Registry │ ←→ index.json + tools/*.ts └─────────┘ ┌────┴────┐ │ Sandbox │ ←→ Deno subprocess (sandboxed)

La boucle agentique s'exécute à l'intérieur de agent.stream() et fait le pont avec le protocole ACP, exposant les phases think, act et observe à l'interface utilisateur.

La solution "trop d'outils"

La plupart des frameworks d'agents donnent au modèle un grand sac d'outils en espérant qu'il choisisse le bon. Tendril inverse cela — le modèle voit toujours exactement trois outils. Il cherche dans un registre, construit ce dont il a besoin, et le registre grandit avec le temps. La surface d'outils ne change jamais ; les capacités, si.

📖 Lire le code source complet : HN AI Agents

Ad

👀 See Also

Fonctionnalités non documentées de Claude Code : Hooks, mémoire, classificateur YOLO et plus
Tools

Fonctionnalités non documentées de Claude Code : Hooks, mémoire, classificateur YOLO et plus

Le code source de Claude Code révèle des configurations cachées : classificateur YOLO pour l'auto-permission, hooks qui réécrivent les commandes, mémoire persistante de l'agent, règles de mode automatique en français courant et boucles de rêve.

OpenClawRadar
La Fourche YantrikClaw Ajoute une Mémoire Cognitive, un Mode Compagnon et des Outils Sensibles aux Niveaux à ZeroClaw
Tools

La Fourche YantrikClaw Ajoute une Mémoire Cognitive, un Mode Compagnon et des Outils Sensibles aux Niveaux à ZeroClaw

YantrikClaw est un fork de ZeroClaw qui introduit trois fonctionnalités majeures : la Mémoire Cognitive avec YantrikDB pour un rappel sémantique persistant, le Mode Compagnon avec suivi des liens et comportement proactif, et une sélection d'outils adaptée aux capacités qui s'ajuste à la taille du modèle, du Raspberry Pi aux grands clusters.

OpenClawRadar
🦀
Tools

Claudy : un wrapper macOS natif pour Claude Code avec sessions multiples, changement automatique de compte et brouillons de commits

Claudy est une application native macOS conçue avec SwiftUI + SwiftData qui enrobe Claude Code, ajoutant la gestion multi-session, le changement automatique de compte en cas de limite de débit, les commits de brouillon pour les points de contrôle en cours de session, et un marché pour les Skills, MCPs et Commandes.

OpenClawRadar
Agents Pixel : 24 Agents Claude Spécialisés pour les Revues de Code, de Site Web et de CV
Tools

Agents Pixel : 24 Agents Claude Spécialisés pour les Revues de Code, de Site Web et de CV

Pixel Agents est une collection de 24 agents IA spécialisés par tâche, construits sur l'API Claude Sonnet 4.6, chacun avec des personnalités ajustées et une sortie JSON structurée. Le système comprend des agents de revue de code, d'analyse de site, de critique de CV et d'évaluation de startup qui fournissent des retours directs.

OpenClawRadar