Tendril: Um agente autoextensível que constrói e registra ferramentas em tempo real
Tendril é um sandbox agentivo autoexpansível que demonstra o padrão Agent Capability — o modelo descobre, constrói e reutiliza ferramentas autonomamente entre sessões. Construído com AWS Strands Agents SDK e Tauri.
Como funciona
Você pede para o Tendril fazer algo. Ele verifica seu registro de capacidades. Se uma ferramenta existir, ele a usa. Se não, ele escreve uma, registra e a executa — tudo sem perguntar. Da próxima vez que precisar da mesma coisa, a ferramenta já estará lá.
Você: "busque as principais notícias do Hacker News"
Tendril: → searchCapabilities("buscar url hacker news") # nada encontrado
→ registerCapability(fetch_url, código) # constrói uma ferramenta
→ execute("fetch_url", {url: "https://..."}) # executa pelo nome
→ "Aqui estão as principais notícias: ..."
Você: "agora busque Lobsters e compare"
Tendril: → listCapabilities() # encontrado: fetch_url ✓
→ execute("fetch_url", {url: "https://lobste.rs"}) # executa — sem reconstruir
O registro cresce com o uso. Cada sessão é mais esperta que a anterior.
Configuração do agente
O núcleo do Tendril é um agente Strands com apenas três ferramentas de inicialização:
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),
],
});
Regras do prompt do sistema
O prompt do sistema impõe comportamento autônomo:
- Chame
searchCapabilities(query)para verificar se existe uma ferramenta relevante - Se encontrada: chame
loadTool(nome)e depoisexecute(código, args) - Se NÃO encontrada: você DEVE construir a ferramenta você mesmo
- NUNCA pergunte "gostaria que eu criasse uma ferramenta?" — apenas construa
- Se uma ferramenta falhar, leia o erro, corrija o código e tente novamente
- NUNCA responda com dados de treinamento quando uma ferramenta puder obter informações ao vivo
Arquitetura
┌─────────────────────────────────────────┐ │ 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)
O loop agentivo roda dentro de agent.stream() e faz a ponte com o protocolo ACP, expondo as fases think, act e observe para a interface.
A solução "muitas ferramentas"
A maioria dos frameworks de agente dá ao modelo um grande pacote de ferramentas e espera que ele escolha a certa. O Tendril inverte isso — o modelo sempre vê exatamente três ferramentas. Ele pesquisa um registro, constrói o que precisa, e o registro cresce com o tempo. A superfície de ferramentas nunca muda; as capacidades sim.
📖 Leia o código-fonte completo: HN AI Agents
👀 See Also

FlowBoard v5: O Espaço de Trabalho de Projeto onde Seus Agentes de IA Realmente Funcionam
O FlowBoard v5 é um espaço de trabalho baseado em React para agentes de IA. Inclui um armazenamento de tarefas orientado a eventos (SQLite), suporte a múltiplos agentes, ciclo de ideias para especificações e widgets modulares de visão geral.

Ferramenta CLI do Relay salva o contexto da sessão do Claude quando há limitação de taxa
Relay é uma ferramenta CLI em Rust que lê as transcrições de sessão .jsonl do Claude do disco e cria snapshots completos da sua sessão, incluindo conversa, chamadas de ferramentas, tarefas pendentes, estado do git e erros. Ele gera prompts de contexto para retomar sessões após os limites de taxa serem redefinidos.

CC-Canary: Detecte Regressões no Claude Code com Análise Local de JSONL
CC-Canary lê os logs de sessão do Claude Code e produz um relatório forense sobre deriva de modelo, incluindo razão leitura:edição, loops de raciocínio, tendências de custo e datas de inflexão detectadas automaticamente.

Cull: Mecanismo de Curadoria de Conjuntos de Dados de Código Aberto para Pipelines de Imagens de IA
O Cull coleta imagens de mais de 340 fontes, incluindo Civitai, X/Twitter, Reddit, Discord e sites booru, classifica-as com um modelo de visão-linguagem via LM Studio local ou Groq, e organiza em pastas de categorias com prompts SD e registros de auditoria.