Topogram's main job is a living app map in topo/: intent, contracts, ownership, proof. SDLC is how project work lives in that same graph when you opt in. Not a second product. Not a folder of markdown tickets that forget the codebase.
I use it on the engine repo (mostly me and agent models). This post is the general shape: process, benefits, trade-offs.
What you're opting into
- Records under
topo/sdlc/(pitches, requirements, acceptance criteria, tasks, bugs, decisions, plans) - Policy in
topogram.sdlc-policy.json(adopted,mode,profile, protected paths) - CLI commands that own status, history, and verification receipts
- Links into capabilities, rules, and verifications elsewhere in
topo/
SDLC is optional. No policy file → commands still run; gates report not_adopted unless you pass --require-adopted.
Process (normal loop)
1. Adopt (once)
topogram init . --adopt-sdlc
# or add topogram.sdlc-policy.json + topo/sdlc/** yourself
Typical policy:
-
mode: "enforced"or"advisory" -
profile: "standard"(lighter) or"audit"(stricter proof)
2. Shape and pick work
topogram query sdlc-backlog ./topo --json # drafts, pitches, requirements in flight
topogram query sdlc-ready ./topo --json # claimable tasks + proof posture
3. Start a task (read-only first)
topogram sdlc start <task-id> . --actor <actor-id> --json
Packet includes requirement, acceptance criteria, decisions, rules, blockers, verification targets, suggested commands.
topogram sdlc start <task-id> . --actor <actor-id> --write --json # after you read it
4. Close with proof
pitch → requirement → acceptance_criterion → task → verification
topogram query sdlc-proof-gaps ./topo --task <task-id> --json
topogram sdlc verify record <verification-id> . --task <task-id> --actor <actor-id> \
--command "<what you ran>" --status pass --write --json
topogram sdlc complete <task-id> . --verification <verification-id> --actor <actor-id> --write
5. Before commit (when enforced)
topogram sdlc prep commit . --base origin/main --head HEAD --json
topogram sdlc gate . --require-adopted --json
| You edit in git | CLI owns |
|---|---|
.tg record text |
Status transitions, .topogram-sdlc-history.json
|
| Pitches, tasks, AC wording | Verification run JSONL receipts |
Don't hand-edit sidecars because a gate failed. That's how audit trails die.
Benefits
- One graph for product and work; agents query slices instead of re-reading the whole repo
- Task-start packets restate scope when the chat thread or model changes
- Given/when/then acceptance criteria tie "done" to observable proof, not closure in a UI
-
Verification receipts you can query later (
query verification-runs, proof gaps) -
Rules in the packet so engineering law isn't only in
AGENTS.mdor the last conversation - Protected paths + gate so "skip process on a tired day" has to be an explicit exemption, not the default
-
Profiles:
standardfor day-to-day;auditwhen you wantrisk_class,change_type, and tighter exemption rules
Trade-offs
- Overhead on small changes if protected paths are wide. Narrow them to what actually needs traceability.
- You maintain records in git. The CLI won't write good pitches for you.
-
Enforced mode can frustrate until habits match (start task, record verification, run gate).
advisoryexists if you want signal without hard fails. - Not Jira/GitHub Issues. No built-in notifications, assignee UX, or non-technical dashboards. You get graph links and queries.
-
Not compliance in a box. Enterprise exports, signed immutable history, and similar ideas are future profile work, not what
standardpromises today. -
Agents still need review.
sdlc starthelps; it doesn't replace reading the packet before--write. -
Curated discipline on ongoing requirements (
ongoingvssatisfied) or grooming queries add process surface you have to learn once.
When it's worth it
| Situation | Lean toward |
|---|---|
| Solo dev + agents, context keeps resetting | Adopted SDLC + sdlc start packets |
| Small script, rare changes | Skip or advisory only |
| Release/engine/infra paths you must explain later | Enforced + protected paths + verification refs |
| Regulated audit trail tomorrow | Look at audit profile; don't pretend standard is enough |
Try it
npm install --save-dev @topogram/cli
topogram init . --adopt-sdlc
topogram sdlc policy explain --json
topogram agent brief --json
Top comments (0)