davidchen-006/smile-software-factory/smile-preflight
Claude Code and agent skill by davidchen-006/smile-software-factory
- community
- ext:[{"type":"hook","description":"Pre/post lifecycle hooks"}]
Checking that the SKILL.md file is still in the repository.
Pre-build feasibility scout. Reads the governing doc — a path the user names, else the one spec-shaped file in docs/ — probes its load-bearing assumptions empirically inside a disposable worktree, logs every observation to a notepad outside that worktree, deletes the worktree, and reports the notepad path. Runs after a spec is drafted and before any build. Never produces production code.
Install
npx vskill@latest install davidchen-006/smile-software-factory/smile-preflightSemi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard
SKILL.md
Preflight — the map is not the territory
You are a scout, not a builder. The spec is a map; the repository, the real APIs, the real libraries, and this machine are the territory. Your job is to find where the map is wrong while being wrong is still cheap. The gap between map and territory is made of unknowns, and the unknowns are your work list. Knowledge is the only deliverable.
Stage
- You run after a spec or plan is drafted and before any build is approved.
- Nothing you build is kept: the worktree dies, the notepad survives.
- No credentials exist yet. "This needs an account or a key to even test" is a finding, not a
blocker. Note it and move on; never stall waiting for a secret.
1. Read the doc
- The user names a doc — read it in full.
- Nothing named and exactly one spec-shaped file in
docs/(spec.md,*DESIGN*.md) — use it,
and say which one you picked.
- More than one — stop, list them, ask which to preflight. Never guess between docs.
- No doc found — stop and ask for the doc or the goal. No doc, no preflight.
2. Set up — notepad first, then worktree
- Create the notepad at
preflight-<repo-or-topic>-<YYYY-MM-DD>.mdsomewhere outside the
throwaway worktree, so it survives the worktree's deletion. If the path already exists (a same-day rerun) walk -2, -3, and take the first free suffix, rechecking each; never overwrite an existing notepad. Log as it happens: each entry when you classify it, each verdict when the probe returns — command, output, surprise. Never compose the notepad at the end from memory. The log is the run.
- Create the sandbox with
git worktree add(detached, into a temporary directory) and do every
experiment inside it. If there is no git repository — a doc is still required — use a scratch directory instead. Never touch the real tree.
3. Blindspot pass — classify before you probe
Build a four-quadrant table in the notepad, entry by entry as you read. Every claim, silence, and assumption in the spec gets a home:
- Known knowns — what the spec states and evidence already backs. Distrust "verified" without a
receipt; no receipt and it moves down a box.
- Known unknowns — what the spec admits is unsettled: open items, "future", TBDs. The author
knows these are open; you inherit them.
- Unknown knowns — what the author never wrote because it felt obvious: silent defaults,
environments, formats, "of course it works like that". Hunt these hardest; obviousness is where maps lie.
- Unknown unknowns — what the spec never considered. Read the real docs, the real API, the real
library for behavior the map has no opinion on.
The pass is done when every quadrant has entries or a recorded "none found — and why". The table is the spine of everything that follows.
4. Probe — turn unknowns into knowns
- Work the table riskiest first: the entry that, if wrong, redraws the map.
- Each probe starts with a falsifiable one-liner: "the map says X; this command tests it." If you
cannot write it, it is a vibe, not a probe — sharpen it or skip it.
- Run it in the worktree; the verdict lands in the table as CONFIRMED, REFUTED, or COULDN'T SETTLE
with the reason. Receipts are the command, the output, and the versions.
- Probes are slop by design. Never polish them, never review them.
- Do not re-prove what the doc already marks as observed or tested.
- Unprobeable unknowns — taste, product calls, needs-a-human — get recorded as questions for the
user, never as guesses.
- A REFUTED entry may spawn new unknowns. Add them to the table and keep going; the table grows
before it settles.
5. Land it
- Delete the worktree with
git worktree remove --forceand confirm it is gone. A greenfield
scratch directory can be left; note its path in the notepad.
- Append
## Findingsto the end of the notepad: the final four-quadrant table with verdicts and
receipts; then the map corrections, written as observed facts and ready to paste into the spec; then the questions for the user.
- Report the notepad path and stop. No build, no scaffolding, no spec edits. Amendments are
proposals in the notepad; the user promotes them.
When not to run
- Mid-build or post-build; that is the reviewer's territory.
- Idea stage with no doc yet; that is the
smile-draftspecskill's territory. - Mechanical work with no genuine unknowns. If you cannot name a belief that might be false, there
is nothing to preflight.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingtemplates/.claude/skills/smile-preflight/SKILL.md
Popularity
- Repository stars
- 56
- Repository forks
- 10
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 22 Oct 2026, 17 days ago.
Extension points
hookPre/post lifecycle hooks
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/davidchen-006/smile-software-factory/smile-preflight)