Learn from session
A collection of notes on Data Science
npx -y skills add Erlemar/dswok --skill learn-from-sessionAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Extract patterns and learnings from the current session. Use when asked to learn from this session, capture session learnings, or review what was accomplished. Outputs structured findings for use with /llm-rules-updater.
SKILL.md
4.2 KB, as published. Nobody here has run it
Learn from Session
Step 1: Review Session Context
Examine what was accomplished in this session, focusing on:
- Commands run repeatedly or permission prompts that appeared multiple times
- Friction points: wrong approaches, wasted tool calls, repeated corrections
- Knowledge gaps: things looked up that could be pre-loaded as rules
- Patterns that emerged across multiple files or tasks
- Failed approaches: things that didn't work and why (anti-patterns)
- Commands that required manual approval (check if they could be added to
permissions.allowin~/.claude/settings.json)
Step 2: Identify Improvement Opportunities
Beyond rules updates, check for opportunities across all Claude Code configuration:
| Category | What to look for |
|---|---|
| CLAUDE.md | Universal conventions, workflow preferences, common pitfalls, anti-patterns ("tried X, doesn't work because Y, do Z instead") |
| Memory topic files | Domain-specific knowledge → route to the right topic file (check memory/ dir for existing files; keep MEMORY.md for universal rules and pointers only) |
| Slash Commands | Repetitive multi-step tasks (3+ commands), common workflows |
| Skills | Domain-specific guidance, code review rules, conventions |
| Agents | Specialized workflows, multi-step analysis tasks |
| Hooks | Pre-commit checks, build verification, auto-formatting |
| Permissions | Commands that required manual approval — check against existing allowlist in ~/.claude/settings.json under permissions.allow |
Step 3: Output Structured Findings
Present results in this format. Each finding must be concrete — include the specific command, file, or pattern observed.
## Session Summary
**What we did:**
- [Brief bullet points of main accomplishments]
**Patterns observed:**
- [Recurring actions, questions, or friction points]
---
## Extracted Learnings
- Ran `arc lint -a` 4 times after editing — add a PostToolUse hook for auto-formatting
- `buck test` failed twice because target was `test_foo` not `foo_test` — add naming convention to CLAUDE.md
- Permission prompt for `jf submit` appeared 3 times — add to allowlist
---
## Improvement Opportunities
### Rules Updates
- [specific rule text to add or change, with target file path]
### Anti-Patterns Discovered
- **[What was tried]** → [Why it failed] → [Do this instead]
- Target file: [which memory/CLAUDE.md file to add this to]
### Memory Updates
- [specific entry to add/update] → Target: [topic file name]
### Slash Commands
- **`/[name]`** — [use case], Priority: [High/Medium/Low]
### Skills
- **`[name]`** — [domain], Priority: [High/Medium/Low]
### Hooks
- **[name]** — [type], Priority: [High/Medium/Low]
### Permissions
- **`Bash(command:pattern*)`** — [what it does], approved N times (in allowlist: yes/no)
Step 4: Offer to Apply
After presenting findings, ask:
"Would you like me to apply any of these changes now? I can:
- Update memory files (MEMORY.md or topic files)
- Add permissions to settings.json
- Create/update CLAUDE.md entries"
Apply only the changes the user approves. Do NOT auto-apply without confirmation.
For complex CLAUDE.md rule edits, use /llm-rules-updater instead.
Related Skills
/llm-rules-updater: Create or update LLM rules (rules file discovery, format-aware editing, diff submission)/learn-from-history: Extract patterns from past session transcripts/analyze-diffs: Extract patterns from Phabricator diffs/project-rule-evaluator: Audit CLAUDE.md files for quality and structure
Do Not
- Suggest improvements for one-time tasks
- Be vague ("improve documentation") — always be concrete
- Ignore user's actual workflow patterns
- Suggest skills or commands that duplicate existing ones
- Suggest permissions already in the allowlist
- Route all memory updates to MEMORY.md — use topic files