Triage-driven
Every task is classified by scope before any skill loads. Trivial tasks skip the waterfall entirely — no ceremony unless it pays back.
A discipline framework for AI coding agents. Tell your agent what you need and what done looks like — not how to do it.
You: fix the typo "teh" in README
praxis: scope=trivial
# edits the file and stops. No spec, no plan.You: add OAuth login with GitHub
praxis: scope=standard, loading=design,plan,tdd,reviewGenerates docs/staging/specs/2025-06-02-github-oauth.md:
contract: GET /auth/github → redirect; /callback → session
invariant: existing sessions unaffected; logout clears cookie
test: login flow completes with valid GitHub app creds
deferred: multi-provider OAuthGenerates docs/staging/plans/2025-06-02-github-oauth.md:
- [ ] T1: scaffold OAuth middleware
goal: wire passport-github2 into Express session
files: src/auth/github.ts, src/middleware/session.ts
acceptance: npm test -- --grep "OAuth"
- [ ] T2: callback handler + session persistence
goal: parse GitHub callback, persist user session
files: src/auth/callback.ts, src/models/user.ts
acceptance: GET /me returns user info after loginYou: migrate the entire API from REST to tRPC
praxis: scope=complex, loading=design,plan,worktree,subagents,review,shipGenerates docs/staging/plans/2025-06-02-rest-to-trpc.md:
[parallel] T1, T2, T3
- [ ] T1: migrate /users routes
goal: replace users CRUD with tRPC procedures
files: src/routers/users.ts
acceptance: npm test -- users
- [ ] T2: migrate /products routes
goal: migrate product queries to tRPC
files: src/routers/products.ts
acceptance: npm test -- products
- [ ] T3: migrate /orders routes
goal: migrate order flow to tRPC, preserve transaction boundaries
files: src/routers/orders.ts
acceptance: npm test -- ordersThree agents run in parallel; coordinator reviews and merges on completion.