Help us improve
Share bugs, ideas, or general feedback.
From claude-code-learn
Research a topic and save structured knowledge to ~/.claude/learnings/ for use in future sessions.
npx claudepluginhub ourines/claude-code-learn --plugin claude-code-learnHow this skill is triggered — by the user, by Claude, or both
Slash command
/claude-code-learn:learnThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Research a topic and save structured knowledge to `~/.claude/learnings/` for future session use.
Researches any topic via web, docs, and Context7, then creates a permanent skill for Claude on code libraries, APIs, concepts, tools, or domains. Invoke via /learn <topic>.
Conducts structured knowledge acquisition for unfamiliar codebases, frameworks, domains, or topics via survey, model-building, exploration, verification, and consolidation.
Captures patterns, decisions, gotchas, procedures, and feature knowledge from conversations into durable skills for on-demand reuse. Invoked via /learn or 'please remember'.
Share bugs, ideas, or general feedback.
Research a topic and save structured knowledge to ~/.claude/learnings/ for future session use.
Topic string from $ARGUMENTS. Examples:
TanStack RouterGo concurrency patternsRedis StreamsConvert topic to filesystem-safe slug: lowercase, replace non-alphanumeric with hyphens, collapse consecutive hyphens, trim.
tanstack-routergo-concurrency-patternsls ~/.claude/learnings/<slug>.md 2>/dev/null
If the file exists, read its frontmatter. Ask the user: Update (merge new findings), Replace (full rewrite), or Cancel?
mkdir -p ~/.claude/learnings
Use available tools based on topic category. Adapt if MCP tools are unavailable.
Library/Framework (e.g., "TanStack Router", "Express.js"):
resolve-library-id + query-docs for API surfaceConcept/Pattern (e.g., "CQRS", "Go concurrency patterns"):
Tool/CLI (e.g., "Docker Compose", "jq"):
Language Feature (e.g., "Go generics", "TypeScript decorators"):
Write to ~/.claude/learnings/<slug>.md using this format:
---
topic: "<Original Topic Name>"
slug: "<slug>"
category: "<library|concept|tool|language-feature>"
created: "<YYYY-MM-DD>"
last_verified: "<YYYY-MM-DD>"
confidence: "<high|medium|low>"
tags: [<relevant, tags>]
sources_count: <N>
---
# <Topic Name>
## TL;DR
<2-4 sentences: what it is, key capabilities, primary use case.>
## Core APIs / Concepts
### <Name>
- **Signature/Usage**: `<code>`
- **Purpose**: <one line>
- **Example**:
```<lang>
<minimal working example>
...
<Common usage patterns as self-contained code blocks. Annotate sparingly -- only non-obvious details.>
<Compact table or list: key APIs, flags, commands. Optimized for fast lookup.>
### 6. Knowledge Graph Indexing (Optional)
If `mcp__memory__create_entities` is available, create an entity:
```json
{
"name": "<Topic Name>",
"entityType": "learning",
"observations": [
"Saved to ~/.claude/learnings/<slug>.md",
"Category: <category>",
"Tags: <tag1>, <tag2>"
]
}
Tell the user: file path, topic name, source count, and that /recall <topic> retrieves it.
// untested.high only when multiple authoritative sources agree.When reading any ~/.claude/learnings/ file during normal work:
last_verified is >90 days old, treat content as potentially stale.last_verified, adjust confidence. No user confirmation needed.