anti-entropy-governanc…
Use when touching retiring old logic, collapsing duplicate owners, removing fallbacks, or schema/persistence/source-of-truth…
Use when the user says `aegis:update`, asks to update or upgrade an installed Aegis method-pack, wants the latest Aegis version, or asks whether Aegis is current on this host.
Claude Code
$ npx -y skills add GanyuanRan/Aegis --skill update-aegis --agent claude-code
Codex
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a codex -y
Cursor
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a cursor -y
Gemini CLI
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a gemini-cli -y
GitHub Copilot
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a github-copilot -y
OpenCode
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a opencode -y
Windsurf
$ npx skills add GanyuanRan/Aegis --skill update-aegis -a windsurf -y
name: update-aegis description: "Use when the user says `aegis:update`, asks to update or upgrade an installed Aegis method-pack, wants the latest Aegis version, or asks whether Aegis is current on this host."
Update the installed Aegis Method Pack for the current AI coding host.
This skill is host maintenance. Do not edit the target project just because the user asked to update Aegis.
ask one concrete question before updating.
separate path.
`updateMode`, but this skill only performs explicit user-triggered updates.
From the installed method-pack root, inspect the host-scoped registry:
python scripts/aegis-update.py status --json
If the registry is missing, register the current host before updating. Use the host's install guide and actual discovery path rather than guessing.
If `~/.config/aegis/config.toml` already declares `method_pack_root`, prefer that canonical root when registering additional hosts. Host-specific discovery paths, copied skill directories, plugin caches, or adapter payloads should be treated as generated / host-managed views into the same Aegis body, not as separate editable checkouts.
Codex example:
python scripts/aegis-update.py register \ --host codex \ --sync-mode junction \ --discovery-root ~/.agents/skills/aegis \ --reload-hint "restart Codex"
Copy-based host example:
python scripts/aegis-update.py register \ --host codebuddy \ --sync-mode copy-skills \ --discovery-root ~/.codebuddy/skills \ --reload-hint "restart CodeBuddy"
Copy synchronization uses the installation registry's scoped file inventory. It preserves unrelated files and local edits, and stops on conflicting writes before changing the view. An identical legacy copy can be adopted; a differing copy needs reconciliation or a separate discovery root. Unknown stale copies are retained. Names and prefixes alone never prove ownership; do not delete them to make verification pass. Source names that collide under Unicode normalization/case folding are rejected for portability. A case-only rename with changed contents can require moving the conflicting file to a backup outside the discovery root, or selecting a separate root. Preserve existing files during reconciliation.
Prefixed direct-child host example:
python scripts/aegis-update.py register \ --host copilot \ --sync-mode junction \ --discovery-shape direct-child \ --discovery-root <target-repo>/.github/skills \ --discovery-name-prefix aegis- \ --reload-hint "restart Copilot session or reopen the repository"
Kimi Code CLI automatic installations are plugin-managed. Do not use the Aegis updater against Kimi's managed plugin copy. In Kimi, run the native update or reinstall flow, verify the selected managed plugin, then reload:
/plugins install https://github.com/GanyuanRan/Aegis /plugins info aegis /reload
If Kimi requires confirmation or removal before replacing the managed copy, follow its exact plugin-manager prompt. Then locate the managed root from `/plugins info aegis` and run:
cd <aegis-method-pack-root> python scripts/aegis-doctor.py --json --host-profile kimi-code-auto
Kimi Code CLI **Explicit Compatibility Installation** example:
python scripts/aegis-update.py register \ --host kimi-code \ --sync-mode junction \ --reload-hint "restart Kimi Code CLI"
When `--discovery-root` is omitted for `kimi`, `kimi-code`, or `kimi-code-cli`, the updater uses `$KIMI_CODE_HOME/skills` or, when `KIMI_CODE_HOME` is unset, `~/.kimi-code/skills`. Use this updater path only when the Aegis Kimi plugin is disabled or uninstalled and the user has selected explicit compatibility mode.
Plugin-managed hosts can be registered, but the updater reports that the host plugin manager owns the update path:
python scripts/aegis-update.py register \ --host opencode \ --sync-mode plugin-managed \ --reload-hint "restart OpenCode"
Current or explicitly selected host:
python scripts/aegis-update.py update --host <host> --json
All registered hosts, only when the user explicitly asks for all-host update:
python scripts/aegis-update.py update --all --json
Preview without touching files:
python scripts/aegis-update.py update --host <host> --dry-run --json
If the installed checkout has local changes, do not overwrite them. Either ask the user how to proceed or, with explicit permission, preserve them with:
python scripts/aegis-update.py update --host <host> --stash --json
Treat the update as complete only when the updater reports the selected host and the post-update doctor verification succeeds. For link-based discovery roots (`junction`, `symlink`, or `repo-only`), the updater passes `discoveryRoot` through to `aegis-doctor.py --discovery-root`; when a registered direct-child view declares `discoveryNamePrefix`, the updater also passes `--discovery-name-prefix`. For copy-based hosts, it verifies that copied Aegis skill directories exist after the copy step, then runs doctor against the method-pack root.
When multiple registered hosts share the same `methodPackRoot`, the updater now reuses a single method-pack checkout update and then refreshes each host's exposure or verification path separately.
Report:
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 touching retiring old logic, collapsing duplicate owners, removing fallbacks, or schema/persistence/source-of-truth…
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…
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.