learn — Distill a Skill from Anything
Turns a directory, URL, pasted notes, or the work you just did into a reusable Claude skill (SKILL.md).
UtilitiesIntermediate★ 30,471⑂ 12,865AI score 8/10Last updated: Aug 9, 2026
What it does
Say /learn and Claude reads your chosen source and distills it into a reusable skill document.
- Identify the source: a path (read the code), a URL (WebFetch), pasted text, or "what we just did" (the current conversation)
- Gather material: Glob/Read/Grep the structure and entry points; from web pages it pulls concrete commands and steps, not prose
- Distill: drop the one-off specifics, keep the repeatable procedure, the trigger, and the non-obvious gotchas
- Author: write
.claude/skills/<kebab-name>/SKILL.mdwith required frontmatter (name, description), a## When to usesection, and a numbered## Workflow - Refine branch: if a skill on the topic already exists, it reads the current file and weaves new learnings into the right sections — deduping steps and fixing stale paths/flags instead of overwriting
- Place and verify: confirm folder name matches
name, YAML parses, dry-run the procedure when feasible, then tell you to invoke it via/<name>
It is instruction-only: no separate engine, no extra permissions, just the tools Claude already has.
Who it's for
- Developers who refuse to solve the same problem twice
- Tech leads who want internal onboarding docs to grow automatically
- Power users building a curated Claude Code skill library
Examples
- Capture a fresh setup: after 30 minutes wrestling a Docker + Postgres dev env into shape, run
/learn what we just did→ produces.claude/skills/local-db-setup/SKILL.mdwith the real commands and the traps you hit. - Guide for an unfamiliar repo:
/learn ./services/billing→ a skill covering the folder layout, key entry points, and how to run the tests. - Compress API docs:
/learn https://api.example.com/docs→ a usage skill with just the auth flow, required headers, and the endpoints you actually call. - Update an existing skill: "update the deploy skill, the release command changed" → it reads the current SKILL.md and swaps only the stale command.
· · · Install guide · · ·
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the .claude/skills/learn folder from the GitHub repo nanocoai/nanoclaw into my ~/.claude/skills/learn/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/nanocoai/nanoclaw.git /tmp/nanoclaw && mkdir -p ~/.claude/skills && cp -r /tmp/nanoclaw/.claude/skills/learn ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal.
- Clone the repository:
git clone https://github.com/nanocoai/nanoclaw.git /tmp/nanoclaw - Make sure your skills folder exists:
mkdir -p ~/.claude/skills - Copy just this skill:
cp -r /tmp/nanoclaw/.claude/skills/learn ~/.claude/skills/ - To scope it to one project instead, copy it into that project's
.claude/skills/folder. - Restart Claude Code and type
/learnto confirm the skill is detected. - (Optional) Trim or adapt the NanoClaw-specific house rules inside SKILL.md (the REMOVE.md requirement, minimal reach-ins, the
docs/skill-guidelines.mdreference) to match your own project conventions.
View source on GitHub ↗License: MIT