Skip to main content

sage-decisions

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.

跳到安装

来源信息

仓库
xoai/sage
最近来源活动
2026年7月11日 18:22
检测到的 SKILL.md 语言
英语
星标
27
分支
7

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
sage-decisions
description
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.
version
1.0.0
type
system
# Decision logs **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. ## Which log | 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. ## Why the split exists 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. ## How to write an entry **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: - **What** was decided - **Why** — the reasoning, not the restatement - **What alternatives were considered**, and why they lost 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. ## When 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. ## Archive rotation 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.
在 GitHub 查看