qraspi-graduate
Skill3 starsChanged 4 months agoMITView on GitHub
QRASPI Graduation — the terminal handoff from greenfield (QRASPI) to brownfield (QRSPI). Once the walking skeleton is green and V0/V1 ships, captures repo + accepted ADRs + skeleton state + fitness functions + stack into graduation.md and hands new feature work to QRSPI. Use for '/qraspi-graduate <project>', 'graduate this to QRSPI', 'V1 is done, hand off to the feature workflow'. Do not fire mid-workflow or on a generic 'we are done'/'ship it' — this is the END of QRASPI. Not for the deprecated RPI workflow.
In this repository86 other files it gives its agents.
- AGENTS.mdAGENTS.md
- project-templates/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- project-templates/CLAUDE.mdCLAUDE.md
- alembic-migration-managerSkill
- architecture-journalSkill
- architecture-reviewSkill
- automated-code-reviewSkill
- axum-scaffolderSkill
- capture-consolidateSkill
- cargo-package-scaffoldSkill
- code-review-coachSkill
- confluence-guide-writerSkill
- dependency-mapperSkill
- doc-syncSkill
- dotnet-architecture-checklistSkill
- dotnet-controller-api-scaffolderSkill
- dotnet-security-reviewSkill
- dotnet-vertical-sliceSkill
- ef-migration-managerSkill
- email-captureSkill
- environment-healthSkill
- evaluate-testsSkill
- fastapi-scaffolderSkill
- fitness-functionsSkill
- jira-comment-writerSkill
- legacy-migration-analyzerSkill
- minimal-api-scaffolderSkill
- nuget-package-scaffoldSkill
- oss-vettingSkill
- pattern-tradeoff-analyzerSkill
- php-api-scaffolderSkill
- php-architecture-checklistSkill
- php-feature-sliceSkill
- php-migration-managerSkill
- php-package-scaffoldSkill
- php-security-reviewSkill
- pr-feedback-writerSkill
- pypi-package-scaffoldSkill
- python-architecture-checklistSkill
- python-feature-sliceSkill
- python-modernization-analyzerSkill
- python-security-reviewSkill
- qraspi-architectureSkill
- qraspi-implementSkill
- qraspi-planSkill
- qraspi-questionsSkill
- qraspi-researchSkill
- qraspi-skeletonSkill
- qrspi-implementSkill
- qrspi-planSkill
- qrspi-questionsSkill
- qrspi-researchSkill
- qrspi-specSkill
- react-app-scaffolderSkill
- react-architecture-checklistSkill
- react-component-scaffolderSkill
- react-feature-sliceSkill
- react-modernization-analyzerSkill
- react-security-reviewSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 33
NO NEW MACHINERY -- the seam is documentation only.
≈ “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
QRASPI Graduate
"A walking skeleton is grown, not thrown away. Once it walks and carries real features, it is just... the codebase."
Core Philosophy
QRASPI is V0/V1 only. Once the walking skeleton is green and the first real slices are shipped,
new features stop being greenfield -- they are additions to an existing codebase, which is QRSPI's
job. Graduation is the explicit seam: a single markdown artifact, graduation.md, that bootstraps the
first QRSPI feature with everything QRASPI produced -- the repo, the accepted ADRs, the layers the
skeleton exercises, the live fitness gates, and the stack declaration. Both workflows already share
tdd, vertical slices, and the read-only research-* subagents, so the seam is state capture +
documentation, not new machinery.
Non-Negotiable Constraints:
- SKELETON-GATED + TERMINAL -- never graduate without
skeleton.md(status: complete,ci_green: true); never fire mid-workflow. V0/V1 must be shipped (the skeleton stands green AND the first slices are built, or the human explicitly confirms V1 is done) - CAPTURE, DON'T RE-DERIVE --
graduation.mdindexes what already exists (the repo,docs/adr/,skeleton.md, the fitness gates, the stack); it adds no new decisions and re-opens nothing - NO NEW MACHINERY -- the seam is documentation only. Write one artifact, hand off, stop
- EXPLICIT HANDOFF --
graduation.mdends with the QRSPI bootstrap instruction (run /qrspi-questions in this repo); after it, QRASPI is complete for this system - CONTEXT BUDGET: keep utilization under 40%. At 60%, write
graduation.mdwith progress and tell the user to start a fresh session.
Workflow
PRE-FLIGHT
[ ] Locate the project folder thoughts/shared/qraspi/YYYY-MM-DD-{slug}/
[ ] Read skeleton.md (status: complete, ci_green: true). If absent / not green -> STOP; route to /qraspi-skeleton
[ ] Confirm V0/V1 is shipped: implementation-log-{slice}.md present for the built slices, or the
human explicitly confirms V1 is done. If nothing is built yet -> STOP; this is mid-workflow, not graduation
[ ] Read the accepted docs/adr/, the live fitness gates, and the stack declaration
CAPTURE (index what exists -- no new decisions)
Assemble graduation.md (references/graduation-template.md) from:
1. Target repo pointer + docs/adr/ (the accepted ADRs QRSPI will read)
2. Skeleton state -- the layers the walking skeleton exercises + current CI status
3. The landed fitness functions + where each gates
4. The stack declaration
5. The QRSPI handoff instruction
WRITE
thoughts/shared/qraspi/YYYY-MM-DD-{slug}/graduation.md (status: complete)
REPORT
graduation.md path · what was captured · "V0/V1 is shipped. New features now use QRSPI --
run /qrspi-questions in this repo." QRASPI is complete for this system.Exit criteria: graduation.md written capturing the repo + accepted ADRs + skeleton state +
landed fitness functions + stack; it ends with the QRSPI handoff instruction; the user is told QRASPI
is complete for this system and to run /qrspi-questions for the next feature.
State Block
<qraspi-graduate-state>
phase: PRE-FLIGHT | CAPTURE | WRITE | REPORT | COMPLETE
project_folder: thoughts/shared/qraspi/YYYY-MM-DD-{slug}/
skeleton_present: true | false # MUST be true to proceed
skeleton_ci_green: true | false # MUST be true to proceed
v1_shipped: true | false # MUST be true -- the terminal guard, not mid-workflow
adrs_captured: [count]
fitness_gates_captured: [count]
stack_declared: [stack | unknown]
handoff_written: true | false # the /qrspi-questions instruction is in graduation.md
context_budget: under-40 | approaching-60 | checkpoint-now
status: in_progress | complete
</qraspi-graduate-state>Output Template
See references/graduation-template.md for the graduation.md structure -- the repo + ADR pointer,
the skeleton state, the landed fitness functions, the stack declaration, and the QRSPI handoff block.
Integration with Other Skills
| Skill | Relationship |
qraspi-skeleton | Source of the skeleton state + the live fitness gates graduation.md captures. |
qraspi-implement | Its implementation-log-{slice}.md files are the evidence that V0/V1 is shipped (the terminal precondition). |
qraspi-architecture | The accepted ADRs graduation.md points QRSPI at -- QRSPI reads them to understand the locked decisions. |
qrspi-questions | The QRSPI entry point this phase hands off to -- new features run /qrspi-questions in the same repo. |
research-file-locator / research-code-analyzer / research-pattern-finder | The read-only subagents QRSPI's Research uses (inherited-repo mode) to map the now-existing codebase QRASPI produced. |
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.

