Skip to content
HN On Hacker News ↗

GitHub - vivekhaldar/seed: A seed agent: the smallest starting point from which an agent can grow

▲ 59 points 20 comments by gandalfgeek 2w ago HN discussion ↗

Pangram verdict · v3.3

We believe that this text is a mix of AI and human-written content.

48 %

AI likelihood · overall

Mixed
31% human-written 69% AI-generated
SEGMENTS · HUMAN 0 of 2
SEGMENTS · AI 0 of 2
WORD COUNT 336
PEAK AI % 55% · §1
Analyzed
Aug 21
backend: pangram/v3.3
Segments scanned
2 windows
avg 168 words each
Distribution
31 / 69%
human / AI fraction
Verdict
Mixed
Pangram v3.3

Article text · 336 words · 2 segments analyzed

Human AI-generated
§1 Mixed · 55%

A seed agent: the smallest starting point from which an agent can grow. There is no framework here. The entire frozen layer is seed.py — a small loop that connects a language model to exactly one tool (exec, which runs bash) and loads its system prompt from a file the agent itself owns and may rewrite. Everything an agent normally gets from a framework — tools, memory, skills, conventions — must instead be grown by the agent, session by session, into its self/ directory. Plant one mkdir my-agent && cd my-agent uvx --from git+https://github.com/vivekhaldar/seed.git seed First run copies seed.py and run_seed.sh into this directory (never overwriting a file that already exists), germinates self/SELF.md, and commits those files together in a fresh git repo here — the loop is part of this individual's history, not only self/. Then it drops you into a REPL. Start talking. Everything the agent wants to keep must be written into self/ — sessions are ephemeral and nothing else survives. Come back to the same agent with the local runner — no need to uvx again: ./run_seed.sh ./run_seed.sh -m gemini-2.5-pro A verbatim transcript of every session is recorded to self/sessions/*.json (updated after each turn). This is a flight recorder, not memory: the agent never loads it at boot, but you can read it — and the agent may grow tools to study its own past. One seed, many individuals: each directory you plant in grows a different agent, diverging based on what it experiences.

§2 Mixed · 32%

Configuration Models and keys are handled entirely by llm (Simon Willison's library). The default model is openai-codex/gpt-5.6-sol, which uses the ChatGPT login from the Codex CLI: codex login # one-time, per machine ./run_seed.sh # uses openai-codex/gpt-5.6-sol ./run_seed.sh -m gemini-2.5-pro # or override it for one session Bundled providers: OpenAI via a Codex subscription or API key, Anthropic, Gemini, and OpenRouter (one OpenRouter key unlocks hundreds of models). Design Why it's shaped this way — McCarthy's metacircular eval, homoiconicity, the prior art, and the risks we consciously accepted: docs/DESIGN.md.