brainstorming
Use when defining ambiguous or high-complexity new features, product behavior, UI/component design, architecture choices,…
Use when touching retiring old logic, collapsing duplicate owners, removing fallbacks, or schema/persistence/source-of-truth boundaries; identify opportunities automatically; destructive execution requires explicit confirmation.
Claude Code
$ npx -y skills add GanyuanRan/Aegis --skill anti-entropy-governance --agent claude-code
Codex
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a codex -y
Cursor
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a cursor -y
Gemini CLI
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a gemini-cli -y
GitHub Copilot
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a github-copilot -y
OpenCode
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a opencode -y
Windsurf
$ npx skills add GanyuanRan/Aegis --skill anti-entropy-governance -a windsurf -y
name: anti-entropy-governance description: "Use when touching retiring old logic, collapsing duplicate owners, removing fallbacks, or schema/persistence/source-of-truth boundaries; identify opportunities automatically; destructive execution requires explicit confirmation."
Use this skill when the task is not merely "change code" but "remove old paths safely without growing entropy".
This skill chooses between:
distributed consumers cannot be observed
It does not replace `brainstorming`, `writing-plans`, `systematic-debugging`, or `verification-before-completion`. It is a narrow governance owner for retirement, fallback collapse, duplicate-owner cleanup, and deletion safety.
Use when any of these are true:
source-of-truth, or external compatibility boundaries
Do not use for:
deletion choice
This skill should be composed by other owners. It should not become a new global hot-path entry.
Prefer composition from:
persistence
delete-vs-retain
migration closeout
Load automatically when the task touches owner collapse, fallback removal, or schema/persistence/source-of-truth boundaries. Automatic loading identifies and advises only; destructive execution still requires explicit scoped user confirmation.
Default to reducing internal entropy, not preserving internal history.
Retirement is responsibility-scoped before it is carrier-scoped. Name the obsolete or duplicated authority first. If the same carrier has a separately evidenced legitimate role, remove the invalid responsibility and keep only that role-scoped capability; this is not a compatibility exception. Apply `delete-first` to the carrier once no legitimate responsibility remains. Unknown consumers alone still do not justify retaining an internal carrier.
Use this rule:
evidence; `confirmation-first` when distribution is proven but consumers cannot be observed
`confirmation-first`
Unknown alone neither proves an external dependency nor blocks internal `delete-first`. Once distribution is proven, unobservable consumers also do not prove deletion safe: inspect read-only. Before editing, require user-authored, scoped authorization that explicitly accepts the concrete external risk. An informed instruction may already supply it; otherwise disclose the risk and request scoped confirmation.
Mentioning, loading, or discussing destructive-action rules never authorizes destructive execution. Without explicit scoped user confirmation:
Classify the deletion target first:
or other persistent state
retirement uses `delete-first` with high-risk verification
still requires confirmation when it reaches persistent-state
If the target is `persistent-state` or another irreversible source-of-truth object:
Examples that require confirmation:
Aegis Method Pack Make your AI coding agent trustworthy: fewer reworks, safer changes, proof before "done". English · 中文 · Fast-Track Playbook · 速通秘籍 Stop babysitting your agent.
Use when defining ambiguous or high-complexity new features, product behavior, UI/component design, architecture choices,…
Use when the user asks for caveman mode, fewer tokens, brief responses, compressed communication, or otherwise explicitly…
Use when facing 2+ independent tasks without a written plan, with no conflicting shared mutable state or sequential dependencies,…
Use when the user asks to establish shared project language, or project work exposes a conflicting, renamed, or deprecated domain…
Use when executing a written implementation plan across sessions or with review checkpoints. Small or single-slice plans stay…
Use when verified work needs integration or cleanup of an existing task-created branch/worktree, or the user explicitly requests…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.