AI・機械学習
Seed: 最小限の自己変更型エージェントハーネス
Seed: Minimal, self-modifying agent harness (github.com)
要約
Seedは、エージェントが成長するための最小限の出発点を提供するフレームワークです。Pythonスクリプト`seed.py`は、言語モデルを単一のツール(bash実行)に接続し、エージェント自身が管理・書き換え可能なファイルからシステムプロンプトを読み込みます。エージェントは、セッションごとにツール、メモリ、スキルなどを「self/」ディレクトリに蓄積し、自己進化していきます。
全文翻訳
seed
エージェントのシード:エージェントが成長できる最小の出発点。
ここにはフレームワークはありません。凍結されたレイヤー全体がseed.pyです。これは、言語モデルを1つのツール(exec、bashを実行する)に正確に接続し、エージェント自身が所有し書き換える可能性のあるファイルからシステムプロンプトをロードする小さなループです。
エージェントが通常フレームワークから得るもの(ツール、メモリ、スキル、規約)は、代わりにセッションごとにself/ディレクトリに成長させる必要があります。
植える
1. mkdir my-agent && cd my-agent
2. uvx --from git+https://github.com/vivekhaldar/seed.git seed
最初の実行は、seed.pyとrun_seed.shをこのディレクトリにコピーし(既存のファイルは上書きしません)、self/SELF.mdを生成し、それらのファイルを新しいgitリポジトリにコミットします。ループは、self/だけでなく、この個人の履歴の一部となります。その後、REPLにドロップされます。話し始めましょう。
エージェントが保持したいものはすべてself/に書き込む必要があります。セッションは一時的であり、それ以外は何も残りません。
ローカルランナーで同じエージェントに戻ります。uvxを再度実行する必要はありません:./run_seed.sh
./run_seed.sh -m gemini-2.5-pro
各セッションの正確なトランスクリプトはself/sessions/*.jsonに記録されます(各ターンの後に更新されます)。これはフライトレコーダーであり、メモリではありません。エージェントは起動時にそれをロードしませんが、読み取ることはできます。そして、エージェントは自身の過去を研究するためにツールを成長させる可能性があります。
1つのシード、多くの個体:あなたが植える各ディレクトリは、経験に基づいて異なるエージェントを成長させ、分岐させます。
設定
モデルとキーは完全にllm(Simon Willisonのライブラリ)によって処理されます。
デフォルトモデルはopenai-codex/gpt-5.6-solで、Codex CLIからのChatGPTログインを使用します:
codex login # マシンごとに一度だけ
./run_seed.sh # openai-codex/gpt-5.6-solを使用
./run_seed.sh -m gemini-2.5-pro # または1セッションだけ上書きする
バンドルされたプロバイダー:CodexサブスクリプションまたはAPIキー経由のOpenAI、Anthropic、Gemini、およびOpenRouter(1つのOpenRouterキーで数百のモデルが利用可能になります)。
デザイン
なぜこの形なのか — McCarthyのメタサーキュラーeval、ホモアイコン性、先行技術、そして私たちが意図的に受け入れたリスク:docs/DESIGN.md。