capture-progress
Turn ephemeral discussion into durable truth in the right artifact. Use when Joel says "capture this", "note this", "write this down", "make this durable", "put this in the doc", or whenever a conversation conclusion should be preserved in project docs, launch plans, lat.md, ADRs, tasks, or memory.
What this skill does
# Capture Progress Use this skill when the job is not to keep talking, but to preserve progress. "Capture this" does **not** mean "spray raw notes somewhere." It means: take what was learned or decided, choose the canonical artifact, sharpen the wording, and make it durable. The output should be easy to find later and useful to another agent or operator who was not present for the conversation. ## What counts as capture Capture means converting transient conversation into one or more of: - project truth in a working doc (`launch-plan.md`, README, runbook, spec) - repo truth in `lat.md/`, `AGENTS.md`, or a project ADR - system truth in joelclaw memory when the learning is cross-project and durable - actionable follow-up in a task system when the result is "someone needs to do X later" - operator-facing summary when the important thing is a decision, not the whole thread Do **not** confuse capture with journaling. Capture keeps the signal and throws away the sludge. ## When to use Trigger phrases: - "capture this" - "note this" - "write this down" - "make this durable" - "put this in the doc" - "this is the framing" - "let's lock this in" - "save that" - "that should be in the plan" Use proactively when: - the user resolves an ambiguity - a product/launch framing clicks into place - a decision changes how future agents should reason - a discussion produces wording good enough for the real artifact - a repeated explanation should stop living only in chat ## The decision tree Before writing anything, decide what kind of truth this is. ### 1. Is this project-specific and immediately actionable? Write it into the project artifact. Examples: - launch messaging → `launch-plan.md` - repo operating model → `AGENTS.md` - project state/intent → `lat.md/*` - implementation plan → spec/PRD/runbook in the repo ### 2. Does this change how agents should reason about the repo? Capture it in repo truth. Typical targets: - `AGENTS.md` - `lat.md/` - ADR if the decision is durable, structural, or should act as a tie-breaker later ### 3. Is this cross-project and durable beyond the current repo? Write it to joelclaw memory. Good memory captures: - preferences - system patterns - gotchas - reusable operational rules Bad memory captures: - local draft copy - temporary brainstorms - raw transcript fragments ### 4. Is the result mainly a next action rather than a truth artifact? Create or update the task, not just the docs. ### 5. Is the user really asking for wording capture? Preserve the meaning, but rewrite for clarity. Do not dump spoken-language filler into the canonical doc. Compress it into clean language while preserving the user's intent and voice. ## The capture workflow 1. **Identify the canonical home** - Ask: where should future-me look for this? - Prefer the existing project truth surface over inventing a new file. 2. **Extract the actual signal** - What changed? - What is now true? - What decision or framing should survive? 3. **Sharpen the language** - remove filler - keep the concrete claim - keep memorable lines when they help - make it legible to someone who missed the conversation 4. **Write it to the artifact** - update the existing section when possible - create a new section only when needed - if the change is repo-structural, add/update an ADR 5. **Update nearby truth surfaces when required** - if the launch doc changes the repo framing, mirror that in `lat.md` - if the repo operating model changes, update `AGENTS.md` - if the system learns a durable pattern, write memory 6. **Verify** - run the repo-local checks (`lat check`, tests, etc.) when the capture surface requires it - read back the changed section mentally: will future-you understand it in 10 seconds? 7. **Commit when files changed** - durable capture in tracked files should land in git ## Capture quality bar A good capture is: - in the right place - short enough to scan - precise enough to act on - written as present truth, not conversational residue - useful without the surrounding chat log A bad capture is: - raw transcript pasted into docs - duplicated in five places - too vague to drive action - stored in memory when it belonged in the project doc - stored in a project doc when it was actually a system-wide pattern ## Preferred targets by situation ### Product / launch framing Prefer: - current plan doc - `lat.md/launch.md` - `AGENTS.md` if it changes the repo's operating model ### Repo operating model Prefer: - `AGENTS.md` - `lat.md/project.md` - ADR if the change is durable and architectural ### System/process learning Prefer: - joelclaw memory - skill update if it is repeatable process knowledge - ADR if it changes architecture or canonical policy ### Good wording generated in conversation Prefer: - the live artifact that will actually be shipped - not a side note about the artifact ## Rules - Prefer **one canonical home** over duplicates. - If the truth changes repo behavior, update the repo artifact, not just memory. - If the truth changes system behavior, update the skill or ADR, not just the daily log. - Keep the user's meaning; improve the wording. - Do not create new files just because you can. Extend the existing truth surface first. - If the user says "capture this" and the right destination is ambiguous, resolve the ambiguity quickly instead of silently choosing a bad home. - If you changed tracked files, commit them. ## Examples ### Example: launch framing User: "On YouTube, you watch Antonio code. In the workshop, you learn how to code like Antonio." Capture: - add the phrasing to `launch-plan.md` - mirror the durable positioning into `lat.md/launch.md` - commit ### Example: repo priority change User: "The point of this repo is to get the launch doc shipped." Capture: - update `AGENTS.md` - update `lat.md/project.md` - add ADR if this is a durable repo-level tie-breaker - commit ### Example: cross-project preference User: "capture this means make it durable, not just noted" Capture: - add or update the `capture-progress` skill - optionally write memory if the pattern should be globally recalled - commit
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.