pre
Skill0 starsChanged 4 months agoMITView on GitHub
Pre-implementation unknowns resolution. Opens with a reviewable context brief (task understanding + raw open questions triaged by owner — dev vs PO/PM), then assesses the four unknown quadrants (known/unknown × known/unknown), proposes a route through the right techniques (blindspot pass, interview, prototype, reference, decision-first plan), runs them on confirmation, and persists everything to docs/unknowns-resolver/<task-slug>/. Use BEFORE implementing any nontrivial task, when starting a feature, or when the user says "find my unknowns", "unknowns pass", "blindspot pass", "pre-implementation check", or invokes /unknowns:pre.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- Z-Mackintosh/pretheir own version, first seen Sep 3, 2026
- t-maniteja/codex-failsafetheir own version, first seen Aug 20, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- Z-Mackintosh/pre★ 1same name
- t-maniteja/codex-failsafe★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 4 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
All state lives in the CURRENT PROJECT at docs/unknowns-resolver/<task-slug>/ (slug = kebab-case task title).
- Very specific: line 20
After EVERY technique: update ledger.md, then regenerate index.html per references/design-system.md.
- Distinctive: line 48
Ask ONE question at a time (use AskUserQuestion), maximum 4, each with your recommended answer:
- Very specific: line 55
Write answers to 01-map.md.
- Very specific: line 85
After each technique: update the ledger, regenerate index.html, and tell the user in one line what just resolved and which technique is …
- Very specific: line 104
Never ask the developer to decide a PO/PM/DESIGN-owned question — hand it over verbatim (context brief), then resolve via their answer, …
- Distinctive: line 105
If a question can be answered by exploring the codebase, explore instead of asking.
- Distinctive: line 106
Never run a technique outside the confirmed route without telling the user.
- Distinctive: line 107
No subagents — everything inline.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
unknowns:pre — resolve unknowns before implementation
The map (your prompt and context) is not the territory (the codebase and reality). The gap between them is unknowns, and work quality is bottlenecked by how well they get clarified — the user's unknowns AND yours. This skill finds them while they are cheap to fix.
Quadrants: KK known knowns (already stated) · KU known unknowns (identified, unresolved) · UK unknown knowns (know-it-when-I-see-it) · UU unknown unknowns (not even on the radar).
Technique → transition: context surfaces raw KUs and routes each to who can answer it · blindspot converts UU→KU · interview resolves KU · prototype resolves UK · reference resolves hard-to-verbalize wants · plan turns residual open unknowns into improvise points.
Artifact directory (state)
All state lives in the CURRENT PROJECT at docs/unknowns-resolver/<task-slug>/ (slug = kebab-case task title).
- Directory missing → create it, write
ledger.mdfrom the template below. - Directory exists → RESUME: read every file in it, re-assess open items, append. Never overwrite existing artifacts, never renumber.
- After EVERY technique: update
ledger.md, then regenerateindex.htmlperreferences/design-system.md. - Numbered artifacts:
00-context.md+00-context.html,01-map.md,02-blindspot.md,03-interview.md,04-prototype/,05-reference.md,06-plan.md+06-plan.html,07-preview.md+.html,08-notes.md,09-pitch.md+.html,10-quiz.md+.html. Skipped technique = absent file; numbers never shift.
ledger.md template
# Unknowns Ledger: <task title>
Route: <proposed route, e.g. pre(blindspot → interview → plan)> · Status: in-progress
| # | Unknown | Quadrant | Found in | Status | Resolution | Evidence |
|---|---------|----------|----------|--------|------------|----------|
## Deviations → 08-notes.md
## Quiz → 10-quiz.md (score: —)Quadrant column records transitions (UU→KU). Statuses: open / resolved / deferred. Every row keeps a stable ID (#) — plan sections and evidence links cite these IDs.
Workflow
Step 1 — Context brief (review gate, zero questions first)
READ references/context.md and follow it exactly. Before asking the user ANYTHING: gather the task statement + a codebase scan, write a task-comprehension brief (goal, actors, current→desired, scope, constraints, affected-area diagram, success criteria — no code) plus the raw list of open questions the rest of pre would ask, each tagged with its owner (DEV / PO / PM / DESIGN) and impact (blocker / nice-to-know). Write 00-context.md + 00-context.html, open the HTML, and gate: the user reviews it — corrects misunderstandings, takes PO/PM-owned questions away to get real answers, or approves. Do NOT proceed to Step 2 until the brief is approved. Questions the developer cannot decide are never asked in the Step 4 interview; they resolve via pasted PO/PM answers, get deferred, or become improvise points.
Step 2 — Starting-point interview
Ask ONE question at a time (use AskUserQuestion), maximum 4, each with your recommended answer:
- Where are you in your thought process? (just an idea / explored a bit / know exactly what I want)
- How familiar are you with the relevant part of this codebase? (never touched it / have read it / wrote it)
- How familiar are you with the problem domain itself? (new to me / working knowledge / expert)
- What does "done" look like for this task? (open answer)
Write answers to 01-map.md.
Step 3 — Quadrant heat assessment
Score UU / KU / UK as HIGH, MED, or LOW — one-line justification each, grounded in the context brief and Step 2 answers plus a quick look at the relevant code area. Also decide: does the desired behavior already exist somewhere (a library, another repo, a site the user likes)? If yes, flag a reference candidate. Record scores in 01-map.md; the 00-context questions are already in the ledger — seed any additional already-identified unknowns.
Step 4 — Route proposal (one confirmation, then run)
| Signal | Include technique |
| Always (already ran as Step 1) | context |
| UU HIGH or MED | blindspot |
Open DEV-owned KUs from 00-context — or KU HIGH or MED — or blindspot is in the route (it creates KUs) | interview |
| UK HIGH (visual / know-it-when-I-see-it criteria) | prototype |
| Behavior exists elsewhere | reference |
| Always, unless task is trivial | plan |
Present the route AND every skipped technique with the reason it is skipped. If all quadrants are LOW, say the task looks trivial and offer: plan-only, or stop here. Ask for ONE confirmation, then run the whole route without further gating.
Step 5 — Run the route
For each technique in order, READ its playbook file and follow it exactly:
- context →
references/context.md→ writes00-context.md+00-context.html(already done in Step 1; revisit only when new PO/PM answers arrive) - blindspot →
references/blindspot.md→ writes02-blindspot.md - interview →
references/interview.md→ writes03-interview.md - prototype →
references/prototype.md→ writes04-prototype/ - reference →
references/reference.md→ writes05-reference.md - plan →
references/plan.md→ writes06-plan.md+06-plan.html
After each technique: update the ledger, regenerate index.html, and tell the user in one line what just resolved and which technique is next in the route.
Step 6 — Exit handoff (MANDATORY)
Print exactly this block at the end:
Unknowns resolved: {resolved}/{total} ({open} open → improvise points, {deferred} deferred). Ledger:
docs/unknowns-resolver/<slug>/ledger.md· Dashboard:docs/unknowns-resolver/<slug>/index.htmlNext phase: open a FRESH session in this repo and paste:
/unknowns:impl docs/unknowns-resolver/<slug>/
Escape hatch
/unknowns:pre --only <technique> <task> → skip Steps 1–4, run just that playbook. Create the directory + minimal ledger first if missing.
Rules
- One question at a time, always with a recommended answer.
- Never ask the developer to decide a PO/PM/DESIGN-owned question — hand it over verbatim (context brief), then resolve via their answer, defer, or improvise point.
- If a question can be answered by exploring the codebase, explore instead of asking.
- Never run a technique outside the confirmed route without telling the user.
- No subagents — everything inline.
- Artifacts in English, self-explanatory for a fresh session with zero chat context.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

