# Capture Learnings

> End-of-session review for the Claude app, Cowork, or any chat — decide what from this session is worth keeping, and route it to memory (durable facts/preferences) or a skill (repeatable workflows/domain knowledge). Writes the file directly when it can; otherwise hands the user paste-ready content and says where it goes. Use when wrapping up a session and asked to save, remember, or capture what was learned.

- Skill: `prostdev/capture-learnings` (Agent Skill)
- Install (CLI): `npx skillmds@latest add prostdev/capture-learnings`
- Raw SKILL.md: https://api.skillmd.com/api/skills/prostdev/capture-learnings/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ProstDev (https://skillmd.com/u/prostdev)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/prostdev/capture-learnings

---


# Capture Learnings

At the end of a session, decide whether anything is worth keeping — then persist it the best way the
current environment allows. This is the app/chat counterpart to a repo-scoped save routine: it works
even when there is no filesystem to write to, by producing paste-ready artifacts instead.

## 1. Review the session — is anything worth keeping?

Scan what happened for things that would help a *future* session:

- **Durable fact or preference** (how the user works, a decision, a stable constraint) → memory.
- **Repeatable workflow or domain knowledge** (a process worth re-running, hard-won steps) → a skill.
- **Nothing that clears the bar** → say so plainly and stop. Don't manufacture a learning.

Apply the no-op test: keep only what a fresh session would get *wrong* without it. Skip the obvious,
the one-off, and anything already captured elsewhere.

## 2. Check what this environment can do

- **Filesystem available** (Cowork or a chat with a repo/project attached): you can write the memory
  or skill file directly. Prefer this — make the change, then show the diff.
- **No filesystem** (a plain app chat): you cannot persist a file yourself. Produce the exact content
  and tell the user where to save it (see step 4).

## 3. Shape the content

- **Memory:** one durable fact per entry, phrased so it stands alone in a future session. State the
  fact, and if it's a preference, the *why*.
- **Skill:** follow [`writing-skills`](../writing-skills/SKILL.md) for craft — a `name` +
  `description` in frontmatter, a tight body, one domain. If it extends an existing skill, target
  that skill and show only what changes; don't restate the whole thing.

## 4. Persist or hand off

- **Can write:** create/modify the file, then summarize what changed and where.
- **Can't write:** output the complete artifact in a copy-ready block —
  - a full SKILL.md (frontmatter + body) for a new skill, or the changed lines for an existing one;
  - the exact memory line(s) for a memory entry —
  then tell the user to add it via their skill/memory settings in the app. Describe the destination
  in general terms ("your skills settings", "your memory settings"); don't invent exact menu paths —
  the UI changes and a wrong click-path is worse than none.

## Close the loop

State what you captured and where it landed (written directly, or handed over for the user to paste).
If nothing was worth keeping, say that and stop.

