一键导入
healthcheck
ADA system health check and diagnostic export
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
ADA system health check and diagnostic export
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | healthcheck |
| description | ADA system health check and diagnostic export |
| disable-model-invocation | true |
Check system health and dependencies for ADA capture and analysis workflows. Create a diagnostic ZIP bundling capture sessions, analysis sessions, and Claude Code session transcripts from the current session.
MANDATORY: Before running any ada command, resolve the packaged ReadyCheck release and set the environment:
READYCHECK_PLUGIN_ROOT="$(${CLAUDE_PLUGIN_ROOT}/scripts/ensure_release.sh)"
export ADA_BIN_DIR="${READYCHECK_PLUGIN_ROOT}/bin"
export ADA_LIB_DIR="${READYCHECK_PLUGIN_ROOT}/lib"
ensure_release.sh automatically prefers a valid local dist/ runtime when the plugin is being tested from a ReadyCheck checkout.
If $PREFLIGHT_CHECK is set to 1:
ada doctor check to show current status (user explicitly requested it)If $PREFLIGHT_CHECK is not set:
ada doctor check$PREFLIGHT_CHECK = 1Run the doctor command:
${ADA_BIN_DIR}/ada doctor check
For JSON output (useful for programmatic parsing):
${ADA_BIN_DIR}/ada doctor check --format json
Present the results to the user:
ADA Doctor
==========
Core:
✓ frida agent: /path/to/libfrida_agent.dylib
Analysis:
✓ whisper: /path/to/bin/whisper-cli
✓ ffmpeg: /path/to/bin/ffmpeg
Status: All checks passed
{
"status": "ok",
"checks": {
"frida_agent": { "ok": true, "path": "/path/to/lib/libfrida_agent.dylib" },
"whisper": { "ok": true, "path": "/path/to/bin/whisper-cli" },
"ffmpeg": { "ok": true, "path": "/path/to/bin/ffmpeg" }
},
"issues_count": 0
}
| Category | Check | Description |
|---|---|---|
| Core | Frida agent library | Checks ADA_AGENT_RPATH_SEARCH_PATHS or known paths for libfrida_agent.dylib |
| Analysis | Whisper installed | Checks for whisper-cli (bundled) or whisper (system) |
| Analysis | FFmpeg installed | Checks for bundled or system FFmpeg |
NOT checked by doctor (checked at runtime when capture starts):
If issues are found:
Read the Claude Code session metadata:
cat ~/.claude/sessions/$PPID.json
Parse the JSON output. Extract:
sessionId (UUID)cwd (working directory path)Set $CC_SESSION_ID to the sessionId value.
Set $CC_CWD to the cwd value.
Derive $CC_PROJECT_DIR by replacing every / in $CC_CWD with -.
/Users/wezzard/Projects/ADA becomes -Users-wezzard-Projects-ADARead $DOCTOR_CAPTURE_SESSIONS (comma-separated capture session IDs).
Read $DOCTOR_ANALYSIS_SESSIONS (comma-separated analysis session IDs).
If neither variable is set, inform the user that no ADA sessions were recorded in this Claude Code session. Continue to Step 4 to still bundle the transcript.
For each capture session ID in $DOCTOR_CAPTURE_SESSIONS:
~/.ada/sessions/<session_id>/For each analysis session ID in $DOCTOR_ANALYSIS_SESSIONS:
~/.ada/analyses/<analysis_id>/The transcript files for this session:
~/.claude/projects/{{$CC_PROJECT_DIR}}/{{$CC_SESSION_ID}}.jsonl~/.claude/projects/{{$CC_PROJECT_DIR}}/{{$CC_SESSION_ID}}/subagents/~/.claude/projects/{{$CC_PROJECT_DIR}}/{{$CC_SESSION_ID}}/tool-results/Set $TIMESTAMP to the current UTC timestamp in YYYY-MM-DD-HH-MM-SS format.
Create a ZIP at {{$CC_CWD}}/readycheck-doctor-{{$TIMESTAMP}}.zip with the following structure:
readycheck-doctor-<timestamp>/
├── capture-sessions/
│ └── <session_id>/ (full copy of ~/.ada/sessions/<id>/)
├── analysis-sessions/
│ └── <analysis_id>/ (full copy of ~/.ada/analyses/<id>/)
└── transcript/
├── main.jsonl (the session JSONL)
├── subagents/ (agent-*.jsonl + agent-*.meta.json)
└── tool-results/ (*.txt files)
Use a single zip command to bundle all collected directories.
Skip the capture-sessions/ or analysis-sessions/ directory if no corresponding sessions were recorded.
Print to the user: