Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

ferhatvonkaplan/seedgrow

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SeedGrow

Grow a research assistant with a persistent, measurable character from your research reports — no API keys, no fine-tuning, no dependencies.

SeedGrow is an agent skill (built for Claude Code, adaptable to any coding agent that can read a markdown playbook and run Python). The model hosting your session does the thinking; a small deterministic engine keeps an append-only, hash-chained memory that accumulates into an evolving identity.

Everyone is generating deep-research reports. Most get read once and die in a folder. SeedGrow turns them into a compounding asset: every report you ingest shapes what the assistant notices, how it connects things, and who it becomes.

How it works

your reports ──ingest──▶ salience-filtered notes ──consolidate──▶ syntheses + identity block
                                                                        │
your question ──query──▶ BM25 retrieval + identity ──▶ Explorer view / Auditor view
  • Two lenses, one memory. An Explorer (drawn to novelty, cross-document connections) and an Auditor (procedures, exceptions, contradictions) grow side by side from the same corpus with different attention weights. Their views are always presented separately — merging strong characters into one voice is a measured failure mode.
  • Identity lives in memory, not weights. No fine-tuning ever happens. In our experiments the identity payload (seed + memory + identity block) carried across model substrates with the identity signal ≈ 2.2× the substrate signal — your assistant is portable, not vendor-locked.
  • The grounding rule. One rule is always active: never claim what the sources don't contain. In our dose-response measurements this single rule accounted for ~97% of confabulation protection.
  • Auditable by construction. Append-only store, recomputable hash chain (verify detects tampering), and exportable identity artifacts (Passport / Biography / Attestation, JSON-Schema validated).

Install (Claude Code)

git clone https://github.com/ferhatvonkaplan/seedgrow
mkdir -p ~/.claude/skills
ln -s "$(pwd)/seedgrow" ~/.claude/skills/seedgrow

Then in any Claude Code session: "use seedgrow to ingest the reports in ./my-research" — the skill's playbook (SKILL.md) drives the workflow. No configuration, no API keys; Python 3.10+ standard library only.

Quick tour (what the agent runs for you)

python3 engine.py init ./store                 # create a store (Explorer + Auditor seeds)
python3 engine.py queue ./store ./my-research  # what's next to ingest (≤2 per session)
python3 engine.py ingest ./store payload.json  # commit extracted notes (host model wrote them)
python3 engine.py consolidate-input ./store    # → material for the identity-forming step
python3 engine.py consolidate-commit ./store payload.json
python3 engine.py query ./store "what connects X and Y?"
python3 engine.py status ./store               # sessions, memory, identity layers
python3 engine.py verify ./store               # hash-chain integrity (tamper check)
python3 engine.py export ./store ./artifacts   # Passport / Biography / Attestation

Growth needs pacing: ≤2 documents per session, consolidation every 2 sessions. Bulk-loading a folder produces retrieval, not character.

What this is based on

SeedGrow is the applied distillation of SeedLoop, a research program on growing and measuring agent identity (identity = seed temperament × experience, on frozen weights). The design choices here are not vibes — they are pre-registered experimental results:

Design choice Evidence
Character forms from seed × experience Blind judges attributed grown agents to their seeds at 90.6%
Hybrid memory (identity + syntheses + raw retrieval) +15pp over naive RAG on multi-hop questions; substitution (notes replacing raw access) measurably fails
Grounding rule always on Dose-response: confabulation 0.69 → 0.34 with one rule
Never merge the two lenses Structured-merge experiments failed 3 ways (dilution, confabulation amplification, character-task conflict)
Identity is portable across models Cross-substrate identity signal 2.24× substrate signal

Honest limits: confabulation is reduced, not eliminated (open field problem — the chain gives you traceability, not immunity); results come from controlled fictional-domain experiments at small scale; your mileage depends on corpus quality.

Files

  • SKILL.md — the playbook the host model follows (workflows + rules)
  • engine.py — deterministic memory core (~400 lines, stdlib only)
  • schemas/ — JSON Schemas for the exported identity artifacts

License

Apache-2.0. Contributions welcome — especially second implementations of the identity-artifact schemas and corpus-quality gate ideas.

About

Grow a research assistant with a persistent, measurable character from your research reports — no API keys, no fine-tuning. A Claude Code skill with a deterministic, hash-chained memory engine.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.