← ClaudeAtlas

harness-healthlisted

Read-only health check of the Claude Code harness - hooks, MCP servers, plugins. Use after editing settings.json/.mcp.json or hooks misbehave.
ucsandman/claude-skills · ★ 4 · AI & Automation · score 77
Install: claude install-skill ucsandman/claude-skills
# Harness Health Run: `pwsh -NoProfile -File "$env:USERPROFILE\.claude\scripts\harness-health.ps1"` Read-only — the only file it ever writes is its own `harness-health.state.json` (next to the script). It scans every settings layer Claude Code merges — `~/.claude/settings.json`, `~/.claude/settings.local.json`, and each known project's `.claude/settings.json` / `.claude/settings.local.json` (projects come from `~/.claude.json`) — so a `/config` write in one repo is caught globally. It also reads the MCP config: the per-project entries in `~/.claude.json` plus every `.mcp.json` at a known project root and `~/.claude/.mcp.json`. Switches: - `-Probe` — additionally executes every distinct hook command once with `{}` on stdin, a 10s cap, and `CLAUDE_PROJECT_DIR` set to that layer's project (`$CLAUDE_PROJECT_DIR`/`$HOME` in the command are expanded first, since the probe runs through `cmd.exe`). Default runs execute nothing. - `-IfChanged` — exits silently unless some `settings*.json` layer is newer than the state file. For hook wiring. Interpret the output: - **OVERRIDES** — project/local layers that shadow or extend the global file (outputStyle, model, effortLevel, hooks, permissions, env, enabledPlugins, disableAllHooks). Informational; act only if a project is overriding something you meant to be global. Also lists projects that carry `allowedTools`/`mcpServers` while `hasTrustDialogAccepted=false`. - **disableAllHooks=true** — a layer switches every hook (guards include