Skillforge — the skill that creates skills
When a new capability is needed:
- Check for duplicates. Read
skills/_index.md. If a similar skill exists, extend it instead of creating a new one. - Check memory. Read
memory/semantic/LESSONS.mdfor related patterns. - Draft the skill. Create
skills/<name>/SKILL.mdwith:- YAML frontmatter (name, version, triggers, tools, preconditions, constraints)
- Plain-language instructions (destinations and fences, not driving directions)
- A self-rewrite hook at the bottom
- Register it. Add an entry to
skills/_index.mdand append a JSON line toskills/_manifest.jsonl. - Log it. Append a record to
memory/semantic/DECISIONS.mdexplaining why this skill was created.
What good skills look like
- State the destination ("verify tests pass before commit"), not the exact command sequence.
- Include 2–3 examples of correct behavior when it clarifies intent.
- Include 1 example of a failure and what was learned from it.
- Keep the whole file under 100 lines.
Self-rewrite hook
After every 5 skills created, or on any failed creation:
- Read the last 5 skillforge entries from episodic memory.
- If better trigger patterns or constraint structures have emerged, update this file and the template it implies.
- Commit:
skill-update: skillforge, <one-line reason>.