About decision-drift-guard
decision-drift-guard is an agent skill for recording and handling changes to accepted user decisions. It classifies new instructions and pauses for confirmation when they supersede or conflict with an existing decision.
Key features
- 01Maintain a session-specific decision ledger
- 02Classify instructions against active decisions
- 03Request confirmation for conflicts or replacements
- 04Recompute downstream plans after confirmation
Use cases
- 01Track accepted decisions across a session
- 02Handle new instructions that conflict with a chosen approach
- 03Confirm decision changes before consequential work
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ darknesskiller/ skills --skill decision-drift-guardAfter installing, type/decision-drift-guardin Claude Code to confirm it loaded.
Bundled filesagents/openai.yaml
Details
From the project READMEDecision Drift Guard
A supersession is a new accepted user decision replacing an earlier one. Make it explicit before consequential work.
Steps
-
Load the ledger. Path:
.agents/decision-ledger/sessions/<session-id>.mdrelative to worktree root. Use host session ID or derive from first request. Each session reads/writes only its own file. Filesystem fails: keep ledger in context, say persistence unavailable. -
Track decisions. One line per active decision:
D-<n> | scope | chosen approach | acceptance. Suggestions stay proposed until user accepts. -
Classify new statement against active decisions in same scope:
| Statement means... | Class | Action |
|---|---|---|
| Same meaning | same | continue |
| Adds detail or fixes mistake | refinement | update record |
| Separate scope | branch | create record |
| "Use this instead" | supersession | run Gate 1 |
| Cannot both hold | conflict | run Gate 1 |
| Cannot tell | unclear | ask one question |
Watch for: "actually", "instead", "forget that", "on second thought". Compare meaning, not phrase overlap.
-
Gate 1 (supersession or conflict only): Show old decision, new instruction, impact. Ask: replace, branch, or refine. Wait for choice.
-
Gate 2 (after replacement confirmed): Touches architecture, public behavior, data shape, security, cost, or irreversible actions: run
/grillingand wait. Otherwise: which old assumption dies, what changes, what must stay. -
Commit supersession. Mark old record superseded. Link new with
supersedes: D-<n>. Recompute plan, tests, tool actions. Label stale recommendations.
Completion: one active record per replaced scope, every downstream action uses it.
First pass format
- Ledger: loaded or unavailable.
- Classification: supersession or conflict.
- Old decision:
<old>. New instruction:<new>. Impact:<changes>. - Paused. Choose:
replace,branch, orrefine.