Skill — Skill Creator Meta (Iterative Skill Authoring & Optimization)
When this skill activates
When creating, authoring, testing, or optimizing MindForge skills. This is the
meta-skill that governs the lifecycle of all other skills — from initial interview
through eval-driven iteration to final registration. Use whenever a new skill needs
to be created, an existing skill needs optimization, or skill quality needs
systematic validation.
Core principle: Eval-driven iteration — skills are not "done" until they
demonstrably outperform the no-skill baseline on realistic test cases.
Mandatory actions when this skill is active
Before skill creation begins
Interview for specification:
- What does this skill do? (one-sentence purpose)
- When should it trigger? (specific user intents, not vague categories)
- What is the output format? (file, inline response, structured data)
- What edge cases exist? (partial matches, ambiguous triggers, conflicting skills)
- What dependencies does it have? (other skills via compose, external tools, MCP servers)
Validate against existing skills:
- Check MANIFEST.md for trigger overlap (jaccard > 0.3 = conflict)
- Verify the skill covers a genuinely distinct capability
- If overlap exists: either extend existing skill or document why separation is needed
Define the skill schema constraints:
- SKILL.md must be under 500 lines (enforced)
- YAML frontmatter must include: name, version, min_mindforge_version, status, triggers
- Optional: compose (list of skill dependencies activated alongside)
- Body must include: "When this skill activates", "Mandatory actions when this skill is active" (Before/During/After), "Self-check before task completion"
During skill creation
Phase 1 — Draft:
- Write the SKILL.md following the schema exactly
- Triggers should be 8-15 phrases covering natural language variations
- Body should be action-oriented (imperative verbs, numbered steps)
- Include concrete examples where behavior might be ambiguous
Phase 2 — Create test cases:
.mindforge/evals/[skill-name]/
├── test-cases.json # 2-3 realistic prompts complex enough to trigger loading
├── assertions.json # objectively verifiable success criteria
└── benchmark.json # aggregated results across iterations
Test case structure:
{
"test_cases": [
{
"id": "tc-001",
"prompt": "realistic user prompt that should trigger this skill",
"context": "any relevant project state",
"expected_behaviors": ["specific", "verifiable", "outcomes"],
"should_trigger": true
}
]
}
Phase 3 — Parallel evaluation:
- Run each test case WITH the skill loaded (experimental condition)
- Run each test case WITHOUT the skill loaded (baseline condition)
- Compare outputs on defined assertions
- Skill must demonstrably improve output quality over baseline
Phase 4 — Trigger optimization:
- Generate 20 trigger evaluation queries:
- 10 that SHOULD trigger the skill (true positives)
- 10 that should NOT trigger (true negatives — related but distinct intents)
- Test trigger matching accuracy
- Iterate on name/description/triggers up to 5 times until precision > 90%
Phase 5 — User review:
- Present: skill draft, test case outputs, benchmark scores, trigger accuracy
- Collect feedback on: missing behaviors, unnecessary behaviors, trigger gaps
- Document feedback for improvement phase
Phase 6 — Improvement:
- Generalize from specific feedback to patterns
- Bundle repeated helper logic into
scripts/ directory within skill folder
- Rewrite sections that received negative feedback
- Ensure changes don't regress previously-passing test cases
Phase 7 — Final iteration:
- Rerun all test cases against improved skill
- Compare to previous iteration (must not regress)
- If regression: investigate, fix, rerun
After skill creation
Register in MANIFEST.md:
- Add entry with name, version, triggers, status
- Verify no trigger conflicts with existing entries
Verify file structure:
.mindforge/skills/[skill-name]/
├── SKILL.md # the skill definition (required)
├── scripts/ # helper scripts if needed (optional)
└── README.md # usage examples (optional)
Store eval artifacts:
.mindforge/evals/[skill-name]/
├── test-cases.json
├── assertions.json
├── benchmark.json
└── iterations/ # historical results per iteration
Final quality gate:
- Skill passes all test cases
- Trigger precision > 90% on 20-query eval set
- Skill outperforms baseline on all assertions
- No trigger conflicts in MANIFEST.md
- Under 500 lines
Self-check before task completion
Before marking a skill creation task done:
1---2name: skill-creator-meta3description: Skill — Skill Creator Meta (Iterative Skill Authoring & Optimization)4---56# Skill — Skill Creator Meta (Iterative Skill Authoring & Optimization)78## When this skill activates910When creating, authoring, testing, or optimizing MindForge skills. This is the11meta-skill that governs the lifecycle of all other skills — from initial interview12through eval-driven iteration to final registration. Use whenever a new skill needs13to be created, an existing skill needs optimization, or skill quality needs14systematic validation.1516Core principle: **Eval-driven iteration** — skills are not "done" until they17demonstrably outperform the no-skill baseline on realistic test cases.1819## Mandatory actions when this skill is active2021### Before skill creation begins22231. **Interview for specification:**24 - What does this skill do? (one-sentence purpose)25 - When should it trigger? (specific user intents, not vague categories)26 - What is the output format? (file, inline response, structured data)27 - What edge cases exist? (partial matches, ambiguous triggers, conflicting skills)28 - What dependencies does it have? (other skills via compose, external tools, MCP servers)29302. **Validate against existing skills:**31 - Check MANIFEST.md for trigger overlap (jaccard > 0.3 = conflict)32 - Verify the skill covers a genuinely distinct capability33 - If overlap exists: either extend existing skill or document why separation is needed34353. **Define the skill schema constraints:**36 - SKILL.md must be under 500 lines (enforced)37 - YAML frontmatter must include: name, version, min_mindforge_version, status, triggers38 - Optional: compose (list of skill dependencies activated alongside)39 - Body must include: "When this skill activates", "Mandatory actions when this skill is active" (Before/During/After), "Self-check before task completion"4041### During skill creation4243**Phase 1 — Draft:**44- Write the SKILL.md following the schema exactly45- Triggers should be 8-15 phrases covering natural language variations46- Body should be action-oriented (imperative verbs, numbered steps)47- Include concrete examples where behavior might be ambiguous4849**Phase 2 — Create test cases:**50```51.mindforge/evals/[skill-name]/52├── test-cases.json # 2-3 realistic prompts complex enough to trigger loading53├── assertions.json # objectively verifiable success criteria54└── benchmark.json # aggregated results across iterations55```5657Test case structure:58```json59{60 "test_cases": [61 {62 "id": "tc-001",63 "prompt": "realistic user prompt that should trigger this skill",64 "context": "any relevant project state",65 "expected_behaviors": ["specific", "verifiable", "outcomes"],66 "should_trigger": true67 }68 ]69}70```7172**Phase 3 — Parallel evaluation:**73- Run each test case WITH the skill loaded (experimental condition)74- Run each test case WITHOUT the skill loaded (baseline condition)75- Compare outputs on defined assertions76- Skill must demonstrably improve output quality over baseline7778**Phase 4 — Trigger optimization:**79- Generate 20 trigger evaluation queries:80 - 10 that SHOULD trigger the skill (true positives)81 - 10 that should NOT trigger (true negatives — related but distinct intents)82- Test trigger matching accuracy83- Iterate on name/description/triggers up to 5 times until precision > 90%8485**Phase 5 — User review:**86- Present: skill draft, test case outputs, benchmark scores, trigger accuracy87- Collect feedback on: missing behaviors, unnecessary behaviors, trigger gaps88- Document feedback for improvement phase8990**Phase 6 — Improvement:**91- Generalize from specific feedback to patterns92- Bundle repeated helper logic into `scripts/` directory within skill folder93- Rewrite sections that received negative feedback94- Ensure changes don't regress previously-passing test cases9596**Phase 7 — Final iteration:**97- Rerun all test cases against improved skill98- Compare to previous iteration (must not regress)99- If regression: investigate, fix, rerun100101### After skill creation1021031. **Register in MANIFEST.md:**104 - Add entry with name, version, triggers, status105 - Verify no trigger conflicts with existing entries1061072. **Verify file structure:**108 ```109 .mindforge/skills/[skill-name]/110 ├── SKILL.md # the skill definition (required)111 ├── scripts/ # helper scripts if needed (optional)112 └── README.md # usage examples (optional)113 ```1141153. **Store eval artifacts:**116 ```117 .mindforge/evals/[skill-name]/118 ├── test-cases.json119 ├── assertions.json120 ├── benchmark.json121 └── iterations/ # historical results per iteration122 ```1231244. **Final quality gate:**125 - Skill passes all test cases126 - Trigger precision > 90% on 20-query eval set127 - Skill outperforms baseline on all assertions128 - No trigger conflicts in MANIFEST.md129 - Under 500 lines130131## Self-check before task completion132133Before marking a skill creation task done:134135- [ ] Did I interview for edge cases and dependencies?136- [ ] Did I create eval test cases (2-3 realistic prompts)?137- [ ] Did I run parallel comparison (with-skill vs baseline)?138- [ ] Did I optimize triggers with 20 evaluation queries (10 should, 10 should-not)?139- [ ] Did I iterate based on user feedback?140- [ ] Did I verify no trigger conflicts in MANIFEST.md?141- [ ] Is the skill under 500 lines?142- [ ] Does the final iteration outperform all previous iterations?