ops-doctorlisted
Install: claude install-skill Lifecycle-Innovations-Limited/claude-ops
## Runtime Context
Before diagnosing, load:
1. **Preferences**: `cat ${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json` — check all configured channels and services
2. **Daemon health**: `cat ${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.json` — primary diagnostic input
3. **Secrets**: Verify secret resolution chain works: Doppler MCP → env → Doppler CLI → password manager
# OPS ► DOCTOR
## CLI/API Reference
### ops-doctor bin script
| Command | Usage | Output |
|---------|-------|--------|
| `${CLAUDE_PLUGIN_ROOT}/bin/ops-doctor` | Run full health diagnostics | JSON with `errors`, `warnings`, `tools`, `env_vars`, `registry` |
| `${CLAUDE_PLUGIN_ROOT}/bin/ops-doctor 2>/dev/null \|\| echo '{"errors":["diagnostic_script_failed"]}'` | Run with fallback | JSON or error sentinel |
### Key files read by diagnostics
| File | Purpose |
|------|---------|
| `${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.json` | Primary daemon health input |
| `${CLAUDE_PLUGIN_DATA_DIR}/preferences.json` | Configured channels and services |
| `${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json` | Plugin manifest validation |
| `${CLAUDE_PLUGIN_ROOT}/scripts/registry.json` | Project registry validation |
---
## Phase 1 — Run diagnostics
Run the diagnostic script to get a full health report:
```!
${CLAUDE_PLUGIN_ROOT}/bin/ops-doctor 2>/dev/null || echo '{"errors":["diagnostic_script_failed"],"warnings":[]}'
```
Parse the JSON output. Display a summary:
```
━━━━━━━