← ClaudeAtlas

arch-healthlisted

Proactive whole-codebase architecture scan — find shallow modules, leaky interfaces, misplaced seams, layer violations, and ball-of-mud hotspots; present them as a RANKED report; then grill through the one you pick and route it to /refactor or /prepare. Run it every few days to keep entropy in check, before the codebase becomes hard to change. Distinct from /refactor (cleans the current diff on demand) — this scans the whole tree and surfaces what to clean. TRIGGER when: the user wants an architecture health-check, "what's rotting here", "find the worst modules", "where's the tech debt", a periodic ball-of-mud scan, or deepening opportunities. DO NOT TRIGGER when: the user wants to clean up specific changed files (use /refactor), review a diff for bugs (use /code-review), or plan one known change (use /prepare).
mik2win/foureyes · ★ 2 · AI & Automation · score 79
Install: claude install-skill mik2win/foureyes
# Architecture Health: $ARGUMENTS Invest in the design of the system *every day*. Agents accelerate coding — and therefore software entropy — so codebases get complex at an unprecedented rate. This skill is the counterweight: scan for where the code is becoming a ball of mud, surface the highest-leverage **deepening opportunities**, and route the chosen one to real cleanup. Run it regularly, not once. `$ARGUMENTS` optionally scopes the scan to a subtree (a module path) or theme ("the services layer", "anything touching billing"); empty = the whole codebase per `PROJECT.md` → Architecture. This skill **proposes** — it does not apply edits. The fix happens in `/refactor` (small) or `/prepare`→`/implement` (large), so changes go through the kit's normal verification. --- ## Phase 0 — Load profile **Tooling preflight — one call, before step 1.** Some tools this skill relies on are **deferred** by the harness: the session lists them by name only and loads their schemas on demand, so calling one before it is fetched fails. Listing a tool in `allowed-tools` does **not** un-defer it. Issue a single `ToolSearch` up front covering the whole run — `select:SendMessage,TaskOutput` (continuing the same finder across loop-until-dry rounds instead of respawning, collecting a backgrounded batch) — instead of one round-trip per discovery. A name already loaded costs nothing to include; a schema discovered missing mid-run costs a turn. 1. Read `.claude/PROJECT.md` — **Architecture** (lay