capturing-learnings

capturing-learnings is a skill for Claude Code from StamKavid/last-ds-mile. It costs 66 tokens per session (1,204 once invoked), scanned A, original, MIT.

A project-local record of a specific failure and the fix that corrected it, such as removing data leakage or repairing an invalid validation split. It turns a real mistake into a recognizable lesson for later work.

In plain words
What is it for?
Use it after finding and fixing a genuine problem in a data-science experiment, or when asked to save what an experiment taught you.
Why use it?
It helps prevent the same concrete bug or analysis error from recurring, instead of saving only a vague reminder to be careful.

Skill for Claude Code

Written for Claude Code: SessionStart hook event.

Part of the last-ds-mile plugin — 29 skills, 17 commands, 3 agents, 4 hooks shipped together

Good fit Use it after finding and fixing a genuine problem in a data-science experiment, or when asked to save what an experiment taught you.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/stamkavid/last-ds-mile/capturing-learnings
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add StamKavid/last-ds-mile --skill capturing-learnings
Clone the repo
git clone --depth 1 https://github.com/StamKavid/last-ds-mile

Made for: Claude Code.

Or install last-ds-mile, the plugin that ships this one along with the rest of its 29 skills, 17 commands, 3 agents, 4 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for capturing-learnings

README.md
[![agentmods](https://agentmods.dev/badge/skills/stamkavid/last-ds-mile/capturing-learnings/github.svg)](https://agentmods.dev/skills/stamkavid/last-ds-mile/capturing-learnings)
Your own site
<a href="https://agentmods.dev/skills/stamkavid/last-ds-mile/capturing-learnings"><img src="https://agentmods.dev/badge/skills/stamkavid/last-ds-mile/capturing-learnings/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for capturing-learnings

Your own site · 80×15
<a href="https://agentmods.dev/skills/stamkavid/last-ds-mile/capturing-learnings"><img src="https://agentmods.dev/badge/skills/stamkavid/last-ds-mile/capturing-learnings.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 66 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,204 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00066 $0.01204
Opus 5 $0.00033 $0.00602
Sonnet 5 $0.00013 $0.00241
Haiku 4.5 $0.00007 $0.00120

Measured 9d ago against content hash 0c188a8ffb2f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

capturing-learnings scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/capturing-learnings/SKILL.md · 83 lines

How it starts

The opening of the file, as written. The whole thing — 83 lines — stays where its author put it; the contents beside it link to each section on GitHub.

capturing-learnings

Overview

A lesson worth capturing is a specific failure and its specific fix — not a reminder to "be careful." This skill defines the bar for that, and the trigger for proactively suggesting /ds-learn when a real one just happened.

When to Use

  • A bug was found and fixed mid-session — a leakage source removed, a broken validation split corrected, a wrong metric replaced after a misleading result.
  • The user invokes /ds-learn and needs the capture format (see Core Process).
  • NOT for: restating a rule that's already in a skill file ("remember to check for leakage") — that's not a lesson, it's the rule the lesson would illustrate. A lesson needs a specific instance: what broke, concretely, and what fixed it, concretely.

Core Process

  1. Recognize the moment. Mid-session, when a genuine failure-and-fix pair just happened (not hypothetical, not "this could go wrong" — something that did go wrong and got corrected), say so and suggest /ds-learn rather than waiting to be asked. This is the same "notice the moment" pattern every domain skill in this plugin already uses for its own trigger. If already invoked via /ds-learn directly, the suggestion has already happened — skip straight to step 2.
  2. Check it clears the bar before capturing: does it name a concrete failure (a specific feature, a specific metric value, a specific broken assumption) and a concrete fix (what changed, not just "fixed it")? If either half is vague, ask one clarifying question rather than capturing a vague entry — a vague lesson never resurfaces usefully because nothing about it is specific enough to match against later.
  3. Tag it to whichever stage(s) and/or domain skill(s) it's actually relevant to — the tags are what make the lesson resurface at the right moment later (see hooks/session_start.py's matching logic, documented in AUDIT.md). Tag broadly if genuinely relevant to more than one stage; don't tag narrowly just to keep the list short.
  4. Capture it via /ds-learn, which appends the structured entry to .last-ds-mile/learnings.jsonl — this skill defines the judgment, the command does the writing.

Read the full file on GitHub · 83 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 83 lines · 66 tokens per session scan A 0c188a8ffb2f

Subscribe to this mod's changes

capturing-learnings is a skill published in the GitHub repository StamKavid/last-ds-mile (3 stars, last pushed 1mo ago), licensed MIT. It adds 66 tokens to every session and 1,204 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

wax-performance-audit

Benchmarking and performance auditing for the Wax repo. Use when running or interpreting Wax benchmarks, diagnosing CPU, memory, or I/O bottlenecks, or investigating Swift 6.2 concurrency issues such as Sendable, actor isolation, @unchecked Sendable, task-group fan-out, and data races.

christopherkarani/Wax · 67 tokens

developing-with-streamlit

Use for ALL Streamlit tasks: creating, editing, debugging, beautifying, styling, theming, optimizing, or deploying Streamlit apps. Also custom components, st.components.v2, HTML/JS/CSS work. Discovers and loads version-matched reference docs from the user's installed Streamlit (>=1.57). Triggers: streamlit, st.…

streamlit/streamlit · 128 tokens

wax

Swift framework guidance for Wax on-device memory/RAG. Use when writing Swift code with the public Memory facade, experimental PhotoMemory / VideoMemory, BuiltInMultimodalEmbeddings, embedding providers, retrieval modes, or hybrid search. For agent operators using the Wax MCP server tools, use the separate wax-mcp…

christopherkarani/Wax · 68 tokens

compound-docs

Searchable Elixir/Phoenix/Ecto solution documentation system with YAML frontmatter. Builds institutional knowledge from solved problems. Use when consulting past solutions before investigating new issues.

oliver-kriska/claude-elixir-phoenix · 38 tokens

wax-memory-maintenance

Maintain the Wax memory store used by the Hermes wax-memory provider.

christopherkarani/Wax · 18 tokens

wax-mcp

Operator playbook pointer for the Wax MCP memory server. Follow the live server instructions. Use when Wax MCP tools are available, or when installing or configuring waxmcp. Prefer this skill over the Swift framework skill unless the task is writing Wax Swift code.

christopherkarani/Wax · 55 tokens