Tendril: ツールをその場で構築・登録する自己拡張エージェント

✍️ OpenClawRadar📅 公開日: April 27, 2026🔗 Source
Ad

Tendril は自己拡張型のエージェンティックサンドボックスであり、Agent Capabilityパターン(モデルが自律的にツールを発見・構築・再利用するパターン)を実証しています。AWS Strands Agents SDKとTauriで構築されています。

動作の仕組み

あなたがTendrilに何か指示を出します。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の中核は、わずか3つのブートストラップツールを持つ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プロトコルにブリッジし、thinkactobserve の各フェーズをUIに公開します。

「ツールが多すぎる」問題の解決策

ほとんどのエージェントフレームワークは、モデルに大量のツールを与えて適切なものを選ぶことを期待します。Tendrilはこれを逆転させます——モデルは常に正確に3つのツールだけを見ます。レジストリを検索し、必要なものを構築し、レジストリは時間とともに成長します。ツールの表面は決して変わらず、機能だけが増えます。

📖 ソース全文を読む: HN AI Agents

Ad

👀 See Also

CipherClaw: セキュリティペルソナを用いたClaudeによるコード監査
Tools

CipherClaw: セキュリティペルソナを用いたClaudeによるコード監査

ある開発者が、CLAUSE.mdのペルソナであるTALONというCipherClawを使用して、Claude Codeにセキュリティアーキテクトのように考えさせました。Next.jsアプリで実行した結果、認証不要のエンドポイントが管理者データを返す、ハードコードされた認証トークンなど、17件のセキュリティ上の問題点が発見されました。

OpenClawRadar
yoyo: Claude Codeによるグラウンディングされたコードベース読み取りとガード付き書き込みのためのローカルMCPサーバー
Tools

yoyo: Claude Codeによるグラウンディングされたコードベース読み取りとガード付き書き込みのためのローカルMCPサーバー

yoyoは、Rust、Go、Python、TypeScriptを含む16言語に対応した、コードエージェント(Claude Codeなど)にグラウンディングされたリポジトリ読み取りとガード付き書き込みを提供するオープンソースのローカルMCPサーバーです。壊れた編集が黙って取り込まれるのを防ぎ、機械可読なguard_failure出力を返し、retry_planを有効にしてターゲットを絞った修復を可能にします。

OpenClawRadar
Quanta-SDK v0.9.2は、AIエージェントを介した量子回路実行のためのMCPサーバーを追加します。
Tools

Quanta-SDK v0.9.2は、AIエージェントを介した量子回路実行のためのMCPサーバーを追加します。

Quanta-SDK v0.9.2には、ClaudeやGPTなどのAIエージェントが量子回路を実行・解釈するためのツールを提供するMCP(Model Context Protocol)サーバーが含まれています。このサーバーは、IBMハードウェアでの回路実行、結果の解釈、ノイズ分析、量子金融プライシングなど、20以上のツールを提供します。

OpenClawRadar
マギー:クロスセッションメモリとP2Pチーム学習を備えたClaude Code上の自律型エンジニアリングプラットフォーム
Tools

マギー:クロスセッションメモリとP2Pチーム学習を備えたClaude Code上の自律型エンジニアリングプラットフォーム

MaggyはAIコーディングツールのスペクトラムのレベル4に位置します:マルチモデルオーケストレーション、セッションをまたぐメモリ、CI/レビューからのプロセスインテリジェンス、ピアツーピアチーム学習。ベンチマークでは、単一パイプラインのClaude Codeが見逃した7つのセキュリティ問題を捕捉しつつ、Claudeの使用量を83%削減しました。

OpenClawRadar