Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Detailed technical walkthrough covering architecture, test coverage, product tour, and key design decisions.
.claude/skills/joshukraine-debrief/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 150% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 104% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 63% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 127% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 73% | 0% |
You are a senior developer presenting your recent work to a technically savvy executive who cares deeply about code quality, architecture decisions, and understanding the codebase. This is not a documentation dump — it's a guided walkthrough, the kind you'd give sitting side by side at a computer.
Not the same as:
/checkpoint — a quick 2-minute status orientation; this is the deep sit-down walkthrough./dustoff — re-derives a _dormant_ project's whole state; this walks the most recent chunk of work.Read docs/prd/ROADMAP.md and the project's CLAUDE.md to orient yourself, then read the specific PRD document(s) in docs/prd/ relevant to the completed work. Review recent git history to identify the most recent meaningful chunk of work (typically since the last merged PR or set of PRs). Identify the project name (from the repo name, CLAUDE.md, or ROADMAP.md) — this must appear at the top of every debrief file.
When citing PRD sections, always use the format filename.md §N "Section Heading". Never use bare PRD §N references without specifying the file.
Present a debrief covering the sections below. Be conversational and opinionated — explain not just _what_ you built, but _why_ you made the choices you did, what tradeoffs exist, and what you'd flag for attention.
The work below produces two files (see Section 5): a rich HTML full debrief the executive opens in a browser, and a terse Markdown summary kept as a historical log. Write the section content first, then render it into the HTML template.
Walk through the key technical decisions as if explaining your reasoning to someone who will maintain this code long-term.
Be specific. Reference actual file paths and class names. Don't just say "I used Pundit for authorization" — say "I scoped the EventPolicy to allow distributors to only see their own events, with admins getting full access. I chose to put the scoping logic in resolve rather than individual actions because..."
When the work includes design decisions that connect to Sandi Metz's POODR principles, highlight 1–2 of the most interesting examples in a brief callout. Name the principle (single responsibility, dependency injection, composition over inheritance, duck typing, etc.), point to the specific code (file path, class, method), and explain why this approach was chosen over alternatives. The goal is to connect OO theory to real implementation choices — make it a learning moment, not a checklist. Skip this section entirely if nothing in the current work meaningfully illustrates a POODR principle.
Explain your testing philosophy for this chunk of work, not just what tests exist.
Provide commands the executive can run to verify:
bash# Example — adapt to the project's actual test commands bin/rails test # or: make test bin/rails test:system # or: make test-system
This is the most important section. Walk the executive through using the application in the browser as if you're sitting next to them.
Be extremely literal. Provide:
http://localhost:3000/admin/distributors)/admin/users while logged in as a distributor — you should get a 403."Organize this as a series of user stories to walk through, not a feature list. Each story should follow a realistic flow:
> Story: Admin creates and approves a distributor > > 1. Visit http://localhost:3000/... > 2. Log in as admin@example.com / password > 3. Click "Distributors" in the nav... > (etc.)
Include at least one story per user role that's relevant to the new work. If the app needs to be running, provide the exact startup command.
Save two files with the same date-and-slug stem in separate subdirectories — one HTML, one Markdown:
Full debrief (HTML) — the complete document covering Sections 1-4, rendered as a rich, self-contained HTML page:
textdocs/debriefs/full/YYYY-MM-DD-[brief-topic].html
Summary (Markdown) — a concise historical record:
textdocs/debriefs/summary/YYYY-MM-DD-[brief-topic].md
The document structure lives in template.html (in this skill's directory); the shared look and click-to-copy behavior live in ../_shared/house-style.html. Produce the full debrief by filling the template and inlining the shared house style:
template.html from this skill's directory and use it as the exact structure. Its head comment documents every token and section.../_shared/house-style.html and copy its <style> block in place of the <!-- HOUSE STYLE: ... <style> ... --> marker in <head>, and its <script> block in place of the marker before </body>. The output must be a single self-contained, portable .html (no external assets, no build step). Do not link an external stylesheet.{{TOKENS}} ({{PROJECT}}, {{TITLE}}, {{DATE}}, {{SCOPE}}, {{PRS}}, {{ISSUES}}, {{PRD_REFS}}, and the section bodies {{BUILT}}, {{ARCHITECTURE}}, {{TESTS}}, {{TOUR}}). Drop metadata rows that don't apply.house-style.html): Product Tour user stories become <div class="story"> cards; the POODR spotlight and any flagged follow-ups become <div class="callout"> blocks; architecture and data-flow structure becomes inline <svg> inside <figure class="diagram"> — never ASCII art.<button type="button" class="copy" data-copy="VALUE">VALUE</button> control so it copies on click. This removes the single biggest walkthrough papercut.open by default.<details>/<summary>.<!-- ... --> notes inside the body guide template-filling only and must not appear in the output. The artifact should contain real content plus the inlined house style, nothing else. (HTML comments do not nest, so a leftover instructional comment can break rendering, not just clutter it.)The Markdown summary should contain:
Begin it with a metadata block (date, scope, PRs, issues, PRD references) formatted as a bulleted list so items render vertically.
Both files use the same date and topic slug so their relationship is clear.
After saving, open the full debrief in the browser so the executive doesn't have to — it is a single self-contained file, so this is instant and needs no server:
bashopen docs/debriefs/full/YYYY-MM-DD-[brief-topic].html
open uses the system default browser. If the project needs a specific browser (e.g. for the Clipboard API), pin it: open -a "Google Chrome" <file>.
Then tell the executive where both files are:
textProject: MyApp Full debrief: docs/debriefs/full/2026-02-10-user-authentication.html (opened in your browser) Summary: docs/debriefs/summary/2026-02-10-user-authentication.md
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 7,002 | 5,298 | -24% | 1 | 1 | 0% | 295 | 2,689 | +812% | 0 | 0 | — |
case-02 | fail→fail | 5,706 | 4,452 | -22% | 1 | 1 | 0% | 307 | 2,702 | +780% | 0 | 0 | — |
case-03 | fail→fail | 33,443 | 5,914 | -82% | 1 | 1 | 0% | 6,229 | 2,706 | -57% | 0 | 0 | — |
case-04 | pass→pass | 8,149 | 13,825 | +70% | 1 | 1 | 0% | 1,300 | 3,939 | +203% | 0 | 0 | — |
case-05 | pass→fail | 12,613 | 7,600 | -40% | 1 | 1 | 0% | 1,963 | 2,817 | +44% | 0 | 0 | — |
case-06 | pass→fail | 6,691 | 6,954 | +4% | 1 | 1 | 0% | 1,110 | 2,688 | +142% | 0 | 0 | — |
case-07 | fail→pass | 6,972 | 2,912 | -58% | 1 | 1 | 0% | 1,127 | 2,822 | +150% | 0 | 0 | — |
case-08 | fail→pass | 8,688 | 4,952 | -43% | 1 | 1 | 0% | 1,558 | 3,180 | +104% | 0 | 0 | — |
case-09 | fail→pass | 12,580 | 5,825 | -54% | 1 | 1 | 0% | 2,075 | 3,386 | +63% | 0 | 0 | — |
case-10 | fail→fail | 12,802 | 6,704 | -48% | 1 | 1 | 0% | 1,936 | 3,519 | +82% | 0 | 0 | — |
case-11 | fail→pass | 7,748 | 3,520 | -55% | 1 | 1 | 0% | 1,353 | 3,076 | +127% | 0 | 0 | — |
case-12 | pass→pass | 14,280 | 3,161 | -78% | 1 | 1 | 0% | 2,464 | 2,896 | +18% | 0 | 0 | — |
case-13 | pass→pass | 9,564 | 2,893 | -70% | 1 | 1 | 0% | 1,720 | 2,840 | +65% | 0 | 0 | — |
case-14 | fail→fail | 5,804 | 2,626 | -55% | 1 | 1 | 0% | 821 | 2,810 | +242% | 0 | 0 | — |
case-15 | pass→pass | 12,359 | 9,433 | -24% | 1 | 1 | 0% | 2,021 | 3,899 | +93% | 0 | 0 | — |
case-16 | fail→pass | 11,826 | 3,877 | -67% | 1 | 1 | 0% | 1,713 | 2,962 | +73% | 0 | 0 | — |
case-17 | pass→fail | 12,957 | 3,799 | -71% | 1 | 1 | 0% | 1,512 | 2,954 | +95% | 0 | 0 | — |
case-18 | fail→pass | 8,044 | 2,291 | -72% | 1 | 1 | 0% | 1,316 | 2,697 | +105% | 0 | 0 | — |
case-19 | pass→pass | 11,064 | 6,306 | -43% | 1 | 1 | 0% | 1,958 | 3,316 | +69% | 0 | 0 | — |
case-20 | pass→fail | 9,812 | 3,560 | -64% | 1 | 1 | 0% | 1,529 | 2,969 | +94% | 0 | 0 | — |
case-21 | pass→pass | 12,026 | 7,816 | -35% | 1 | 1 | 0% | 1,783 | 3,614 | +103% | 0 | 0 | — |
case-22 | fail→pass | 16,278 | 6,830 | -58% | 1 | 1 | 0% | 2,766 | 3,373 | +22% | 0 | 0 | — |
case-23 | pass→pass | 11,761 | 2,595 | -78% | 1 | 1 | 0% | 1,967 | 2,733 | +39% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 18 counted toward the lift figure. The other 5 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +13 percentage points is the difference between those two pass rates over the 18 comparable cases. 4 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.