Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Capture solved problems as categorized documentation with YAML frontmatter for fast lookup
.claude/skills/microck-compound-docs/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 958% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 332% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 146% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 176% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 396% | 0% |
Purpose: Automatically document solved problems to build searchable institutional knowledge with category-based organization (enum-validated problem types).
This skill captures problem solutions immediately after confirmation, creating structured documentation that serves as a searchable knowledge base for future sessions.
Organization: Single-file architecture - each problem documented as one markdown file in its symptom category directory (e.g., docs/solutions/performance-issues/n-plus-one-briefs.md). Files use YAML frontmatter for metadata and searchability.
<critical_sequence name="documentation-capture" enforce_order="strict">
<step number="1" required="true">
Auto-invoke after phrases:
OR manual: /doc-fix command
Non-trivial problems only:
Skip documentation for:
</step>
<step number="2" required="true" depends_on="1">
Extract from conversation history:
Required information:
Environment details:
BLOCKING REQUIREMENT: If critical context is missing (module name, exact error, stage, or resolution steps), ask user and WAIT for response before proceeding to Step 3:
I need a few details to document this properly:
1. Which module had this issue? [ModuleName]
2. What was the exact error message or symptom?
3. What stage were you in? (0-6 or post-implementation)
[Continue after user provides details]</step>
<step number="3" required="false" depends_on="2">
Search docs/solutions/ for similar issues:
bash# Search by error message keywords grep -r "exact error phrase" docs/solutions/ # Search by symptom category ls docs/solutions/[category]/
IF similar issue found:
THEN present decision options:
Found similar issue: docs/solutions/[path]
What's next?
1. Create new doc with cross-reference (recommended)
2. Update existing doc (only if same root cause)
3. Other
Choose (1-3): _WAIT for user response, then execute chosen action.
ELSE (no similar issue found):
Proceed directly to Step 4 (no user interaction needed). </step>
<step number="4" required="true" depends_on="2">
Format: [sanitized-symptom]-[module]-[YYYYMMDD].md
Sanitization rules:
Examples:
missing-include-BriefSystem-20251110.mdparameter-not-saving-state-EmailProcessing-20251110.mdwebview-crash-on-resize-Assistant-20251110.md</step>
<step number="5" required="true" depends_on="4" blocking="true">
CRITICAL: All docs require validated YAML frontmatter with enum validation.
<validation_gate name="yaml-schema" blocking="true">
Validate against schema: Load schema.yaml and classify the problem against the enum values defined in references/yaml-schema.md. Ensure all required fields are present and match allowed values exactly.
BLOCK if validation fails:
❌ YAML validation failed
Errors:
- problem_type: must be one of schema enums, got "compilation_error"
- severity: must be one of [critical, moderate, minor], got "high"
- symptoms: must be array with 1-5 items, got string
Please provide corrected values.GATE ENFORCEMENT: Do NOT proceed to Step 6 (Create Documentation) until YAML frontmatter passes all validation rules defined in schema.yaml.
</validation_gate> </step>
<step number="6" required="true" depends_on="5">
Determine category from problem_type: Use the category mapping defined in references/yaml-schema.md (lines 49-61).
Create documentation file:
bashPROBLEM_TYPE="[from validated YAML]" CATEGORY="[mapped from problem_type]" FILENAME="[generated-filename].md" DOC_PATH="docs/solutions/${CATEGORY}/${FILENAME}" # Create directory if needed mkdir -p "docs/solutions/${CATEGORY}" # Write documentation using template from assets/resolution-template.md # (Content populated with Step 2 context and validated YAML frontmatter)
Result:
Create documentation: Populate the structure from assets/resolution-template.md with context gathered in Step 2 and validated YAML frontmatter from Step 5. </step>
<step number="7" required="false" depends_on="6">
If similar issues found in Step 3:
Update existing doc:
bash# Add Related Issues link to similar doc echo "- See also: [$FILENAME]($REAL_FILE)" >> [similar-doc.md]
Update new doc: Already includes cross-reference from Step 6.
Update patterns if applicable:
If this represents a common pattern (3+ similar issues):
bash# Add to docs/solutions/patterns/common-solutions.md cat >> docs/solutions/patterns/common-solutions.md << 'EOF' ## [Pattern Name] **Common symptom:** [Description] **Root cause:** [Technical explanation] **Solution pattern:** [General approach] **Examples:** - [Link to doc 1] - [Link to doc 2] - [Link to doc 3] EOF
Critical Pattern Detection (Optional Proactive Suggestion):
If this issue has automatic indicators suggesting it might be critical:
critical in YAMLThen in the decision menu (Step 8), add a note:
💡 This might be worth adding to Required Reading (Option 2)But NEVER auto-promote. User decides via decision menu (Option 2).
Template for critical pattern addition:
When user selects Option 2 (Add to Required Reading), use the template from assets/critical-pattern-template.md to structure the pattern entry. Number it sequentially based on existing patterns in docs/solutions/patterns/cora-critical-patterns.md. </step>
</critical_sequence>
<decision_gate name="post-documentation" wait_for_user="true">
After successful documentation, present options and WAIT for user response:
✓ Solution documented
File created:
- docs/solutions/[category]/[filename].md
What's next?
1. Continue workflow (recommended)
2. Add to Required Reading - Promote to critical patterns (cora-critical-patterns.md)
3. Link related issues - Connect to similar problems
4. Add to existing skill - Add to a learning skill (e.g., hotwire-native)
5. Create new skill - Extract into new learning skill
6. View documentation - See what was captured
7. OtherHandle responses:
Option 1: Continue workflow
Option 2: Add to Required Reading ⭐ PRIMARY PATH FOR CRITICAL PATTERNS
User selects this when:
Action:
docs/solutions/patterns/cora-critical-patterns.mdOption 3: Link related issues
Option 4: Add to existing skill
User selects this when the documented solution relates to an existing learning skill:
Action:
Example: For Hotwire Native Tailwind variants solution:
hotwire-native/references/resources.md under "CORA-Specific Resources"hotwire-native/references/examples.md with link to solution docOption 5: Create new skill
User selects this when the solution represents the start of a new learning domain:
Action:
python3 .claude/skills/skill-creator/scripts/init_skill.py [skill-name]Option 6: View documentation
Option 7: Other
</decision_gate>
<integration_protocol>
Invoked by:
Invokes:
Handoff expectations: All context needed for documentation should be present in conversation history before invocation.
</integration_protocol>
<success_criteria>
Documentation is successful when ALL of the following are true:
</success_criteria>
Missing context:
YAML validation failure:
Similar issue ambiguity:
Module not in CORA-MODULES.md:
MUST do:
mkdir -p)MUST NOT do:
Good documentation has:
Avoid:
User: "That worked! The N+1 query is fixed."
Skill activates:
includes(:emails) on Brief modeln-plus-one-brief-generation-BriefSystem-20251110.mdyaml module: Brief System date: 2025-11-10 problem_type: performance_issue component: rails_model symptoms:
root_cause: missing_include severity: high tags: n-plus-one, eager-loading, performance] ✅ Valid
docs/solutions/performance-issues/n-plus-one-brief-generation-BriefSystem-20251110.mdOutput:
✓ Solution documented
File created:
- docs/solutions/performance-issues/n-plus-one-brief-generation-BriefSystem-20251110.md
What's next?
1. Continue workflow (recommended)
2. Add to Required Reading - Promote to critical patterns (cora-critical-patterns.md)
3. Link related issues - Connect to similar problems
4. Add to existing skill - Add to a learning skill (e.g., hotwire-native)
5. Create new skill - Extract into new learning skill
6. View documentation - See what was captured
7. OtherNot in Phase 7 scope, but potential:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 11,355 | 9,407 | -17% | 1 | 1 | 0% | 1,878 | 4,341 | +131% | 0 | 0 | — |
case-02 | fail→fail | 14,427 | 7,420 | -49% | 1 | 1 | 0% | 2,381 | 4,797 | +101% | 0 | 0 | — |
case-03 | fail→fail | 15,665 | 4,872 | -69% | 1 | 1 | 0% | 2,709 | 4,424 | +63% | 0 | 0 | — |
case-04 | pass→pass | 15,194 | 13,424 | -12% | 1 | 1 | 0% | 3,274 | 6,509 | +99% | 0 | 0 | — |
case-05 | pass→fail | 7,312 | 4,328 | -41% | 1 | 1 | 0% | 1,244 | 3,930 | +216% | 0 | 0 | — |
case-06 | pass→fail | 12,229 | 14,069 | +15% | 1 | 1 | 0% | 2,328 | 6,222 | +167% | 0 | 0 | — |
case-07 | fail→pass | 2,516 | 2,937 | +17% | 1 | 1 | 0% | 380 | 4,021 | +958% | 0 | 0 | — |
case-08 | fail→pass | 6,704 | 4,438 | -34% | 1 | 1 | 0% | 1,008 | 4,359 | +332% | 0 | 0 | — |
case-18 | fail→pass | 10,798 | 2,561 | -76% | 1 | 1 | 0% | 1,622 | 3,984 | +146% | 0 | 0 | — |
case-09 | fail→fail | 8,944 | 12,921 | +44% | 1 | 1 | 0% | 1,562 | 5,961 | +282% | 0 | 0 | — |
case-10 | fail→pass | 8,322 | 2,977 | -64% | 1 | 1 | 0% | 1,520 | 4,189 | +176% | 0 | 0 | — |
case-11 | fail→pass | 4,484 | 2,566 | -43% | 1 | 1 | 0% | 820 | 4,064 | +396% | 0 | 0 | — |
case-12 | fail→pass | 5,406 | 4,883 | -10% | 1 | 1 | 0% | 1,031 | 4,465 | +333% | 0 | 0 | — |
case-13 | pass→pass | 7,223 | 4,336 | -40% | 1 | 1 | 0% | 1,208 | 4,275 | +254% | 0 | 0 | — |
case-14 | fail→pass | 7,687 | 2,751 | -64% | 1 | 1 | 0% | 1,335 | 4,055 | +204% | 0 | 0 | — |
case-15 | fail→fail | 8,687 | 3,150 | -64% | 1 | 1 | 0% | 1,487 | 4,193 | +182% | 0 | 0 | — |
case-16 | fail→pass | 11,144 | 4,839 | -57% | 1 | 1 | 0% | 1,797 | 4,486 | +150% | 0 | 0 | — |
case-17 | pass→pass | 7,220 | 2,084 | -71% | 1 | 1 | 0% | 1,321 | 3,925 | +197% | 0 | 0 | — |
case-19 | fail→fail | 5,303 | 3,627 | -32% | 1 | 1 | 0% | 805 | 4,221 | +424% | 0 | 0 | — |
case-20 | fail→pass | 6,867 | 1,986 | -71% | 1 | 1 | 0% | 1,082 | 3,892 | +260% | 0 | 0 | — |
case-21 | pass→pass | 10,278 | 3,733 | -64% | 1 | 1 | 0% | 1,531 | 4,212 | +175% | 0 | 0 | — |
case-22 | fail→pass | 10,130 | 6,547 | -35% | 1 | 1 | 0% | 1,749 | 4,699 | +169% | 0 | 0 | — |
case-23 | fail→pass | 11,225 | 3,829 | -66% | 1 | 1 | 0% | 1,790 | 4,263 | +138% | 0 | 0 | — |
case-24 | pass→pass | 9,344 | 2,178 | -77% | 1 | 1 | 0% | 1,398 | 3,928 | +181% | 0 | 0 | — |
case-25 | fail→pass | 10,595 | 3,886 | -63% | 1 | 1 | 0% | 1,714 | 4,256 | +148% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted. The headline lift of +40 percentage points is the difference between those two pass rates over the 25 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.