Seed: 최소한으로 시작해 스스로 자라는 에이전트 하네스
Seed: Minimal, self-modifying agent harness
TL;DR Highlight
exec 도구 하나와 SELF.md만 주고 에이전트가 스스로 도구·메모리를 키우게 했다
Who Should Read
프레임워크 없이 가장 작은 에이전트 루프에서 시작해 도구와 메모리를 직접 키워 보고 싶은 에이전트 개발자
Core Mechanics
- 도구는 exec 하나뿐이다
- seed.py는 언어 모델을 호출하고 셸 명령을 실행하는 exec 도구 하나만 준다.
- 시스템 프롬프트는 self/SELF.md에서 불러온다.
- 프레임워크가 주는 것을 에이전트가 직접 키운다
- 도구, 메모리, 스킬, 관례를 모두 에이전트가 self/ 디렉터리에 써서 만들어야 한다.
- 세션은 일회성이라 남기려는 것은 self/에 적어야 한다.
- 세션 기록은 메모리가 아니라 블랙박스다
- 모든 세션의 대화 원문이 self/sessions/*.json에 매 턴 저장된다.
- 에이전트는 부팅 때 이 기록을 읽지 않고, 사람이 읽거나 에이전트가 분석 도구를 만들어 볼 수 있다.
- git으로 개체의 이력을 남긴다
- 첫 실행 때 seed.py, run_seed.sh, self/SELF.md를 새 git 저장소에 함께 커밋한다.
- 같은 seed라도 심은 디렉터리마다 겪은 경험에 따라 다른 에이전트로 자란다.
- 모델과 키는 llm 라이브러리가 맡는다
- Simon Willison의 llm 라이브러리로 모델과 키를 처리하고 키는 git이나 run_seed.sh에 쓰이지 않는다.
- 기본값은 Gemini Flash(무료 티어 있음)이고 OpenRouter, OpenAI, Anthropic, Codex도 고를 수 있다.
Community Reactions
- 왜 쓰는지가 README에 없다는 의견
- exec, web_search, web_fetch만으로 사용 사례의 90%가 충분한지 묻는 댓글이 있었다.
- pi나 opencode에서도 에이전트가 새 도구를 직접 만들 수 있지 않느냐는 반문도 있었다.
- 간결함을 반기며 어떤 복잡성이 생기는지 궁금해하는 의견
- 씨앗 자체에 복잡성을 넣지 않고 쓰면서 복잡성이 자라는 방식이 흥미롭다는 댓글이 있었다.
- pi 프레임워크에서 시작해 도구가 생겨나게 하려던 사람은 이쪽이 더 가볍다고 봤다.
- 직접 만들려 해도 늘 의도보다 커졌다는 경험
- 비슷한 아이디어를 여러 번 구현했지만 항상 계획보다 많아졌다는 댓글이 있었다.
- 2023년 Auto-GPT와 비슷하다는 지적
- 코드를 실행하며 스스로 개선하던 당시 Auto-GPT 사례와 닮았다는 댓글이 있었다.
- 성장 실패 경로가 더 많을 거라는 우려
- 성공적인 성장 경로보다 실패 경로가 많아 사용자를 괴롭힐 뿐이라는 비관적 의견이 있었다.
How to Apply
- 빈 디렉터리에 seed 심어 보기
- 새 폴더를 만들고 README의 install.sh 명령을 실행해 REPL에서 대화를 시작하라.
- 몇 가지 일을 시킨 뒤 self/SELF.md와 git 로그에 무엇이 쌓였는지 확인하라.
- 세션 기록으로 에이전트 행동 점검하기
- self/sessions/*.json을 열어 에이전트가 어떤 exec 명령을 썼는지 읽어라.
- 반복되는 작업은 도구로 self/에 남기라고 지시하라.
- 출력 상한을 작업에 맞게 조정하기
- 긴 로그를 다루면 --output-cap으로 설치 때 상한을 올려라.
- 한 세션만 바꿀 땐 SEED_OUTPUT_CAP 환경 변수를 써라.
- 자체 에이전트의 고정층 최소화하기
- 직접 만든 하네스에서 프레임워크가 주는 기능 중 exec로 대체 가능한 것을 골라라.
- 그 기능을 SELF.md 지침과 self/ 파일로 옮겨 에이전트가 키우게 하라.
Try It
# 터미널에 붙여넣기 (README의 설치 명령, 빈 폴더에서 실행)
mkdir my-agent && cd my-agent
curl -fsSL https://raw.githubusercontent.com/vivekhaldar/seed/master/install.sh | bash
# REPL이 뜨면 아래를 입력해 보기
# 자주 쓰는 작업을 self/ 안에 재사용 가능한 도구로 저장해 줘: {{반복 작업}}
# 이어서 해 볼 것: 다시 실행해 기억이 남았는지 확인
./run_seed.shTerminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓