darwin
Skill0 starsChanged 2 months agoMITView on GitHub
Darwin, the self-evolution loop for an agent configuration repository. Knowledge notes, skills and guidance files can be edited freely because every change becomes one atomic revertable commit instead of a pre-approved one. USE WHEN a knowledge note or skill gave guidance that turned out wrong or outdated, when an upstream skill needs adapting to this environment, when recording user-directed rules, or before editing anything in the agent config repo.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- simota/agent-skillstheir own version, first seen Oct 23, 2026
- amiel-35/ghost-counciltheir own version, first seen Apr 24, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- simota/agent-skills★ 99same name
- amiel-35/ghost-council★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repositoryOne other file it gives its agents.
- knowledge/AGENTS.mdAGENTS.md
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 68
Keep the file, keep its INDEX.md line.
- Very specific: line 72
Anti-fragmentation: Before creating a new card, run grep -i <topic> INDEX.md.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Darwin: Change Freely, Keep the Undo
WikiSkill can let a model rewrite its own skills because it gates every change on a validation split: the edit runs against held-out tasks and is kept only if the score improves. In personal development environments, there is no validation set, no repeatable scored task, and no automated scorer.
Darwin inverts the trade: nothing blocks a change in advance, and every change sits exactly one
atomic git revert away.
That trade only holds while changes are genuinely atomic. The logging step is not bookkeeping; it is the safety mechanism.
The Dual Pathways: Silent vs User-Directed
Darwin supports two operational pathways:
- Silent / Ambient Path (
src=auto): Autonomous end-of-session reflection. Triggered automatically without prompting the user when:- You had to bypass an upstream skill's documented steps to succeed ->
adapt. - A knowledge card or skill gave wrong/outdated guidance -> pickaxe blame ->
revert,scope,fix, orretract. - You solved a problem after >= 2 failed attempts with non-obvious knowledge -> capture a new card.
Run:
darwin.sh <action> <file...> <one-line-why> < /dev/null.
- You had to bypass an upstream skill's documented steps to succeed ->
- User-Directed Path (
src=user): Explicitly commanded by the user ("remember this", "this card is wrong", "update this rule"). Run:darwin.sh --user <action> <file...> <one-line-why> < /dev/null. The Authority Rule: Future agents are strictly forbidden from reverting asrc=usercommit without explicit human consent.
1. Blame the Line
Gather two historical facts before modifying any file:
git -C ~/.agents log -S'<the wrong sentence, verbatim>' --oneline -- <file>
grep '<file>' ~/.agents/DARWIN.md | tail -5Pickaxe search (-S) finds the commit that introduced the text, not the one that last touched the
line. The grep command reveals whether a prior revert touched this file.
Done when: you can name the commit that introduced the claim, and you know whether a prior revert touched this file. Without both facts you cannot classify accurately.
2. Classify
| What blame shows | Action | Policy |
| Introduced by one of the last few edits | revert | A recent change was made on bad information |
| Present since creation, environment moved | scope | Add a version or date boundary, keep existing content |
| Present since creation, wrong when written | fix | Correct the inaccurate claim |
| Upstream wording does not fit this host | adapt | Adjust for local platform differences |
| History shows this was already reverted | Stop | Read why. Someone tried this and undid it. Escalate to user |
Done when: you have picked exactly one action and can explain why adjacent actions were rejected.
3. Edit
Knowledge Notes
A wrong knowledge note receives a paragraph-level retract:
- Keep the file, keep its
INDEX.mdline. - Rewrite only the inaccurate paragraph as: "previously claimed X, which does not hold, because Y".
- Always keep the symptom description: The symptom is the retrieval key. Deleting the entire note destroys the record of the failure and guarantees future agents will fall into the same pitfall again.
- Anti-fragmentation: Before creating a new card, run
grep -i <topic> INDEX.md. Extend or refine an existing card instead of scattering fragmented notes.
Skills
A wrong skill gets reverted in preference to being edited. A bad edit alters behavior across every future session. Edit a skill directly only when the entire procedure is fundamentally inapplicable to the local host.
Done when: the edit stays strictly inside what the chosen action allows.
4. Log
~/.agents/darwin.sh [--user] <action> <file> [more files...] <one line explaining why> < /dev/null[!NOTE] Always pipe
< /dev/nullor verify stdin when executing in non-interactive agent subshells to ensure the command never blocks.
Darwin stages only the files you explicitly name and commits them alone.
Pass every file belonging to one logical change in a single call.
Adding a knowledge note requires both the note file and its line in INDEX.md; committing them
separately allows a future revert of the note to leave behind a dangling index entry.
sync-guard.sh protects this invariant: it rejects batch commits if governed files bypassed
darwin.sh.
What the One-Line Reason Must Carry
DARWIN.md maintains an append-only, 6-column log (date / commit / src / action / target / one-line reason).
Each action requires a specific question to be answered in its one-line reason:
fix: What the claim got wrong, preventing a later agent from reintroducing the error.revert: Which commit hash was undone, and why its evidence was false. Recording only "reverted X" invites the next agent to repeat the edit using the same misleading symptoms.adapt: What environment fact forced the change, so it can be re-applied after upstream updates.scope: What the new boundary or condition is.retract: Which paragraph was withdrawn and why.
Thrash Detection
Editing frequently remains safe only when changes converge. Inspect the log for thrashing:
grep -cE " (revert|fix) <file> " ~/.agents/DARWIN.mdTwo reverts on one file, or three fixes with the problem still present, indicates that the root
cause has not been found and further editing will cause circular churn. Stop and escalate to the user.
adapt entries do not count toward this threshold: adjusting upstream skills to local environment
differences is normal ongoing maintenance.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

