Tendril: Самодействующий агент, создающий и регистрирующий инструменты на лету

✍️ OpenClawRadar📅 Опубликовано: 27 апреля 2026 г.🔗 Source
Ad

Tendril — это самодостаточная агентная песочница, демонстрирующая шаблон Agent Capability: модель автономно находит, создает и использует инструменты в разных сессиях. Построена на основе AWS Strands Agents SDK и Tauri.

Как это работает

Вы просите Tendril что-то сделать. Она проверяет свой реестр возможностей. Если инструмент существует — использует его. Если нет — пишет, регистрирует и выполняет его — все без запросов. В следующий раз, когда понадобится то же самое, инструмент уже будет готов.

Вы: "покажи топ историй с Hacker News"
Tendril: → searchCapabilities("fetch url hacker news") # ничего не найдено
         → registerCapability(fetch_url, code) # создает инструмент
         → execute("fetch_url", {url: "https://..."}) # запускает по имени
         → "Вот топ историй: ..."

Вы: "теперь покажи Lobsters и сравни" Tendril: → listCapabilities() # найден: fetch_url ✓ → execute("fetch_url", {url: "https://lobste.rs"}) # запускает — без пересборки

Реестр растет с использованием. Каждая новая сессия умнее предыдущей.

Конфигурация агента

Ядро Tendril — это агент Strands всего с тремя базовыми инструментами:

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

Правила системного промпта

Системный промпт обеспечивает автономное поведение:

  • Вызывайте searchCapabilities(query), чтобы проверить, существует ли подходящий инструмент
  • Если найден: вызывайте loadTool(name), затем execute(code, args)
  • Если НЕ найден: вы ОБЯЗАНЫ создать инструмент самостоятельно
  • НИКОГДА не спрашивайте «хотите, я создам инструмент?» — просто создавайте
  • Если инструмент не сработал, читайте ошибку, исправляйте код и повторяйте попытку
  • НИКОГДА не отвечайте из обучающих данных, если с помощью инструмента можно получить актуальную информацию

Архитектура

┌─────────────────────────────────────────┐
│ 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)

Агентский цикл выполняется внутри agent.stream() и связывается с протоколом ACP, отправляя фазы think, act и observe в интерфейс.

Решение проблемы «слишком много инструментов»

Большинство агентных фреймворков выдают модели большой набор инструментов и надеются, что она выберет правильный. Tendril переворачивает подход — модель всегда видит ровно три инструмента. Она ищет в реестре, создает то, что нужно, и реестр со временем растет. Поверхность инструментов не меняется; меняются возможности.

📖 Читать полный исходный код: HN AI Agents

Ad

👀 Смотрите также

MCP как интерфейс наблюдаемости: подключение ИИ-агентов к точкам трассировки ядра
Инструменты

MCP как интерфейс наблюдаемости: подключение ИИ-агентов к точкам трассировки ядра

Протокол контекста модели (MCP) становится интерфейсом между ИИ-агентами и данными инфраструктуры, при этом Datadog выпускает MCP-сервер, а Qualys отмечает проблемы безопасности. В статье рассматриваются два подхода: обёртывание существующих платформ или создание нативной для MCP системы мониторинга, которая подключается напрямую к точкам трассировки ядра.

OpenClawRadar
Плагин Design Studio для Claude Code добавляет виртуальную дизайн-команду с 9 ролями и 16 командами.
Инструменты

Плагин Design Studio для Claude Code добавляет виртуальную дизайн-команду с 9 ролями и 16 командами.

Новый плагин Claude Code под названием Design Studio имитирует полноценную команду дизайнеров с 9 специализированными ролями, 16 слэш-командами и 5 агентами. Он автоматически определяет технологические стеки и включает более 8000 строк знаний о дизайне в справочных файлах.

OpenClawRadar
Жан-Клод: Сатирический фронтенд для LLM, высмеивающий регулирование ИИ в ЕС, с 412 файлами cookie и счетами-фактурами с НДС через каждые 5 сообщений
Инструменты

Жан-Клод: Сатирический фронтенд для LLM, высмеивающий регулирование ИИ в ЕС, с 412 файлами cookie и счетами-фактурами с НДС через каждые 5 сообщений

Jean-Claude — это сатирический фронтенд для LLM, который доводит бюрократию в стиле ЕС до абсурда: 412 партнеров по куки, принцип четырех глаз с обязательной подписью, отслеживание CO₂ за токен с обязательным возмещением в евро, счета НДС каждые 5 сообщений и центр соответствия с фейковыми метриками GDPR и AI Act.

OpenClawRadar
🦀
Инструменты

Gigacatalyst: Встройте ИИ-конструктор в ваш SaaS, чтобы пользователи могли создавать собственные рабочие процессы

Gigacatalyst позволяет встроить конструктор приложений на базе ИИ в ваш SaaS. Нетехнические пользователи описывают рабочие процессы на естественном языке, а система генерирует управляемые приложения, используя ваши API, модель данных и дизайн-систему — со встроенными аутентификацией, изоляцией клиентов и управлением версиями.

OpenClawRadar