Skip to content
Back to skills

Learn

ASecurity

Extract reusable knowledge from the current session into a persistent skill. Use when you discover something non-obvious, create a workaround, or develop a multi-step workflow that future sessions would benefit from.

  • 6 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 2, 2026
code-qualitypythonbashdebuggingapidocumentation

Works with

  • claude code
  • api

Security analysis

A100/100

Scanned September 2, 2026

npx -y skills add alohays/paper2pr --skill learn --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Learn?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Learn
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/alohays-learn/badge)](https://www.skillsdirectory.com/skills/alohays-learn)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: learn
description: |
  Extract reusable knowledge from the current session into a persistent skill.
  Use when you discover something non-obvious, create a workaround, or develop
  a multi-step workflow that future sessions would benefit from.
author: Claude Code Academic Workflow
version: 1.0.0
argument-hint: "[skill-name (kebab-case)]"
allowed-tools: ["Read", "Write", "Bash", "Glob", "Grep"]
---

# /learn — Skill Extraction Workflow

Extract non-obvious discoveries into reusable skills that persist across sessions.

## When to Use This Skill

Invoke `/learn` when you encounter:

- **Non-obvious debugging** — Investigation that took significant effort, not in docs
- **Misleading errors** — Error message was wrong, found the real cause
- **Workarounds** — Found a limitation with a creative solution
- **Tool integration** — Undocumented API usage or configuration
- **Trial-and-error** — Multiple attempts before success
- **Repeatable workflows** — Multi-step task you'd do again
- **User-facing automation** — Reports, checks, or processes users will request

## Workflow Phases

### PHASE 1: Evaluate (Self-Assessment)

Before creating a skill, answer these questions:

1. "What did I just learn that wasn't obvious before starting?"
2. "Would future-me benefit from this being documented?"
3. "Was the solution non-obvious from documentation alone?"
4. "Is this a multi-step workflow I'd repeat?"

**Continue only if YES to at least one question.**

### PHASE 2: Check Existing Skills

Search for related skills to avoid duplication:

```bash
# Check project skills
ls .claude/skills/ 2>/dev/null

# Search for keywords
grep -r -i "KEYWORD" .claude/skills/ 2>/dev/null
```

**Outcomes:**
- Nothing related → Create new skill (continue to Phase 3)
- Same trigger & fix → Update existing skill (bump version)
- Partial overlap → Update with new variant

### PHASE 3: Create Skill

Create the skill file at `.claude/skills/[skill-name]/SKILL.md`:

```yaml
---
name: descriptive-kebab-case-name
description: |
  [CRITICAL: Include specific triggers in the description]
  - What the skill does
  - Specific trigger conditions (exact error messages, symptoms)
  - When to use it (contexts, scenarios)
author: Claude Code Academic Workflow
version: 1.0.0
argument-hint: "[expected arguments]"  # Optional
---

# Skill Name

## Problem
[Clear problem description — what situation triggers this skill]

## Context / Trigger Conditions
[When to use — exact error messages, symptoms, scenarios]
[Be specific enough that you'd recognize it again]

## Solution
[Step-by-step solution]
[Include commands, code snippets, or workflows]

## Verification
[How to verify it worked]
[Expected output or state]

## Example
[Concrete example of the skill in action]

## References
[Documentation links, related files, or prior discussions]
```

### PHASE 4: Quality Gates

Before finalizing, verify:

- [ ] Description has specific trigger conditions (not vague)
- [ ] Solution was verified to work (tested)
- [ ] Content is specific enough to be actionable
- [ ] Content is general enough to be reusable
- [ ] No sensitive information (credentials, personal data)
- [ ] Skill name is descriptive and uses kebab-case

## Output

After creating the skill, report:

```
✓ Skill created: .claude/skills/[name]/SKILL.md
  Trigger: [when to use]
  Problem: [what it solves]
```

## Example: Creating a Skill

User discovers that a level-1 heading inside a RevealJS deck changes the slide structure:

```markdown
---
name: reveal-level1-heading-vertical-stack
description: |
  Diagnose a Quarto RevealJS deck whose slides after some point all appear
  under one horizontal position (vertical stack). Use when: slide count in
  the browser is far below the `##` count, or the arrow keys suddenly move
  down instead of right.
author: Claude Code Academic Workflow
version: 1.0.0
---

# Level-1 Heading Collapses Slides into a Vertical Stack

## Problem
A `#` (level-1) heading anywhere after the title slide makes RevealJS treat
every following `##` slide as a vertical child of that section, so the
deck loses its left-to-right flow and the rendered slide count drops.

## Context / Trigger Conditions
- `quality_score.py` reports BLOCKER `[level1_heading]` and forces the score to 0
- Arrow-right stops advancing; arrow-down does
- The deck recently gained a section divider written as `# Title`

## Solution
1. `grep -n '^# ' Quarto/<genre>/<deck>.qmd` to find the heading
2. Rewrite section dividers as `## Title {.divider}` (the `slide-types.lua`
   filter maps the class to a full-bleed background)
3. Re-render and walk the deck with `bash scripts/preview.sh <deck>`

## Verification
`bash scripts/preview.sh <deck>` shows one horizontal slide per `##`; the PNG
count from `python3 scripts/shoot_slides.py <deck>` matches the `##` count.

## References
- `Quarto/_filters/slide-types.lua`
- `.claude/rules/slide-design-principles.md`
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.