Skip to main content

ix-architecture

Analyze system design — structure, coupling, code smells, and high-risk hotspots. Purely graph-based, no code reads.

Aller à l'installation

Informations de source

Dépôt
ix-infrastructure/ix-cursor-plugin
Dernière activité de la source
24 avril 2026 à 21:13
Langue détectée de SKILL.md
anglais
Étoiles
1
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
ix-architecture
description
Analyze system design — structure, coupling, code smells, and high-risk hotspots. Purely graph-based, no code reads.
## Argument parsing Strip `--save` and any following path token from `$ARGUMENTS` before processing the scope. - If `--save <path>` is present, set `SAVE_PATH` to that path. - If `--save` is present without a path, auto-generate `ix-architecture-<scope-slug>.md` in cwd (scope slug = `$ARGUMENTS` with spaces and slashes replaced by `-`, or `repo` if arguments are empty). - If `--save` is absent, `SAVE_PATH` is empty — do not write a file. ## Health gate Call `ix_health` with `{}`. If `ok` is `false`, stop: *"ix graph unavailable — ensure the ix server is running."* Then call `ix_subsystems` with `{}`. If the result contains no subsystems, stop: *"No graph data yet — call `ix_map` to build the graph first."* ## Pro check Call `ix_briefing` with `{}`. If `ok` is `true`, Pro is available. Extract `data.decisions` for use below. Skip all **[Pro]** steps if it returns `ok: false`. --- ## Phase 1 — Subsystem structure Call `ix_subsystems` with `{}`. Filter results to `$ARGUMENTS` scope if provided (match on subsystem name or path prefix). Store the full result as `SUBSYSTEMS`. **Early-stop gate:** Examine each region's metrics. If ALL of the following are true across every region: - `cohesion > 0.7` - `coupling < 0.4` - `confidence >= 0.6` → Report *"System appears structurally healthy — no significant coupling, cohesion, or boundary issues detected."* List subsystems with their metrics and stop. Do not proceed to Phase 2. --- ## Phase 2 — Smell analysis Call `ix_smells` with `{}` (filter to scope path if `$ARGUMENTS` was provided). Store as `SMELLS`. **Health gate — choose one path:** **Inline path** (all must be true): - Smell count < 3 - No `god-module` smell present → Synthesize the report inline using `SUBSYSTEMS` + `SMELLS`. Proceed to Phase 3 only if needed. Skip delegation. **Delegate path** (any is true): - Smell count ≥ 3 - A `god-module` smell is present → Spawn the **ix-architecture-auditor** agent. Pass `SUBSYSTEMS` and `SMELLS` directly in the agent prompt so it can skip its own Steps 1–4. Include the scope from `$ARGUMENTS`. Relay the agent's complete output to the user, then skip to the **[Pro] Cross-reference decisions** step. --- ## Phase 3 — Hotspot ranking (inline path only) Run only if at least one of the following is true: - A `god-module` smell exists in `SMELLS` - Any region in `SUBSYSTEMS` shows high coupling Call `ix_rank` with `{ "by": "dependents", "kind": "class", "top": 10 }`. Identify top-ranked components that overlap with smell findings or high-coupling regions. Include these as hotspots in the inline report. If neither condition is met, skip `ix_rank` entirely. --- ## Inline report format When taking the inline path, produce: **Summary** — one sentence verdict on overall health. **Subsystem overview** — table of regions with cohesion, coupling, and confidence scores. **Smells** — list each smell with affected symbol and severity. **Hotspots** — (if Phase 3 ran) top-ranked components that coincide with smells or high-coupling regions. **Recommended action** — one concrete next step. --- ## [Pro] Cross-reference decisions If Pro is available, after the report (inline or delegated) is complete, check `data.decisions` from the briefing. Append a **Recorded Decisions** section cross-referencing relevant design decisions against the findings — especially decisions that affect god-modules, high-coupling regions, or identified hotspots. ## Save step **Only if `SAVE_PATH` is non-empty:** - Write the full output to `SAVE_PATH`. - Confirm to the user: `Saved to <SAVE_PATH>`. - Do not write the file if `--save` was not passed.
Voir sur GitHub