Extract a learned skill from the current conversation
46
48%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/learner/SKILL.mdDeprecated compatibility alias: use
/oh-my-claudecode:skillifyfor new skill extraction workflows. This file remains for internal implementation/history and compatibility.
This is a Level 7 (self-improving) skill. It has two distinct sections:
Only the Expertise section should be updated during improvement cycles.
This section contains domain knowledge that improves over time. It can be updated by the learner itself when new patterns are discovered.
Reusable skills are not code snippets to copy-paste, but principles and decision-making heuristics that teach Claude HOW TO THINK about a class of problems.
The difference:
Before extracting a skill, ALL three must be true:
Extract ONLY after:
Non-Googleable: Something you couldn't easily find via search
Context-Specific: References actual files, error messages, or patterns from THIS codebase
Actionable with Precision: Tells you exactly WHAT to do and WHERE
Hard-Won: Took significant debugging effort to discover
This section contains the stable extraction procedure. It should NOT be updated during improvement cycles.
Problem Statement: The SPECIFIC error, symptom, or confusion that occurred
Solution: The EXACT fix, not general advice
Triggers: Keywords that would appear when hitting this problem again
Scope: Almost always Project-level unless it's a truly universal insight
The system REJECTS skills that are:
Before saving, determine if the learning is:
{topic}-expertise.md{topic}-workflow.mdThis classification ensures expertise can be updated independently without destabilizing workflows.
${CLAUDE_CONFIG_DIR:-~/.claude}/skills/omc-learned/<skill-name>.md - Rare. Only for truly portable insights..omc/skills/<skill-name>.md - Default. Intended to be committed with the repo when you want the team to keep the skill. In linked worktrees, uncommitted skills are still worktree-local and disappear if that worktree is deleted.Every learned skill file MUST start with YAML frontmatter so learned-skill flat-file discovery can load it. Do not write plain markdown without frontmatter.
Minimum required frontmatter:
---
name: <skill-name>
description: <one-line description>
triggers:
- <trigger-1>
- <trigger-2>
------
name: <skill-name>
description: <one-line description>
triggers:
- <trigger-1>
- <trigger-2>
---
# [Skill Name]
## The Insight
What is the underlying PRINCIPLE you discovered? Not the code, but the mental model.
## Why This Matters
What goes wrong if you don't know this? What symptom led you here?
## Recognition Pattern
How do you know when this skill applies? What are the signs?
## The Approach
The decision-making heuristic, not just code. How should Claude THINK about this?
## Example (Optional)
If code helps, show it - but as illustration of the principle, not copy-paste material.Key: A skill is REUSABLE if Claude can apply it to NEW situations, not just identical ones.
679b418
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.