core/system-skills/sage-decisions/SKILL.md
Recording decisions in the right log. Use when a decision needs to be written down, when the user asks why something was decided, when writing an ADR or a decision entry, or when unsure whether something belongs in the initiative's log or the global one.
npx skillsauth add xoai/sage sage-decisionsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The file system is the source of truth for state — what exists in
.sage/work/ and its frontmatter. Decision logs are the source of truth for
reasoning. A diff shows what changed; only the log shows why, and why is the
thing that is gone in three months.
| Decision | Goes to |
|---|---|
| Anything scoped to one initiative | .sage/work/<initiative>/decisions.md |
| Cross-initiative: constitution choices, conventions, project-wide calls | .sage/decisions.md (global) |
Default to the initiative log. The global file is for decisions that outlive the work that produced them.
Two parallel initiative branches, both prepending to one global file, is a guaranteed merge conflict — on every checkpoint, forever. The per-initiative split is what makes parallel sessions safe, and it is the entire reason for the rule.
Writers switch immediately, including for initiatives already in flight. Readers check the initiative log first and fall back to the global one, so the switch is safe mid-cycle and needs no migration.
Prepend — insert directly after the # Decisions header, before existing
entries. Newest first. A log you have to scroll to the bottom of to find the
current state is a log nobody reads.
Each entry records:
The third one is what makes a decision log worth keeping. "We chose Postgres" is a fact you could have got from the lockfile. "We chose Postgres over DynamoDB because the access patterns are relational and we would have spent the savings on a join layer" is a decision, and it is the thing that stops someone relitigating it next quarter with the same arguments and less context.
At every checkpoint that involved a decision. The compliance signal is
observable: after a checkpoint with a decision in it, the initiative's
decisions.md has a new entry at the top.
Not "at the end". At the end you will remember the conclusion and not the alternatives, and the alternatives are the part with the value.
When the global decisions.md passes ~200 lines, at the next workflow
close: keep the 20 most recent entries, move the rest to
decisions-{YYYY-MM-DD}.md. Archives are read-only reference.
Initiative logs live and die with their work directory. No rotation.
testing
Root cause diagnosis with evidence, Reproducing test, Minimal patch
tools
Session resumption with context
tools
Configure Sage preset and project settings. Switch between base, startup, enterprise, or opensource constitution presets. Use when the user says "configure sage", "change preset", or "sage settings".
development
Brief (medium+ tasks), Spec, Implementation plan