Runs qmd health checks on project: verifies binary presence, .claude/qmd.json validity, collections in index/YAML, git hooks, MCP server. Reports PASS/FAIL/WARN with fixes.
From qmdnpx claudepluginhub aviflombaum/claude-code-in-avinyc --plugin qmdThis skill is limited to using the following tools:
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Retrieves current documentation, API references, and code examples for libraries, frameworks, SDKs, CLIs, and services via Context7 CLI. Ideal for API syntax, configs, migrations, and setup queries.
Uses ctx7 CLI to fetch current library docs, manage AI coding skills (install/search/generate), and configure Context7 MCP for AI editors.
Run a comprehensive health check on the qmd configuration for this project. Perform each check below in order and report results as [PASS], [FAIL], or [WARN]. At the end, summarize the total number of issues found.
For any failure, suggest the appropriate fix:
| Failure | Fix |
|---|---|
| qmd binary not found | npm install -g @tobilu/qmd |
| .claude/qmd.json missing | Run /avinyc:qmd-configure |
| Missing project field | Run /avinyc:qmd-configure |
| Collection not in qmd index | Run /avinyc:qmd-configure |
| Collection naming mismatch | Run /avinyc:qmd-configure to rename |
| Git hook missing/wrong marker | Run /avinyc:qmd-configure and re-enable git hook |
| Git hook has old --index flag | Run /avinyc:qmd-configure and re-enable git hook |
| MCP server not responding | Run claude mcp add qmd -- qmd mcp or add qmd to .mcp.json |
| YAML config missing collection | Run /avinyc:qmd-configure |
command -v qmd
[PASS] if found (print the path), [FAIL] if not.
Check if .claude/qmd.json exists using Read. If it does not exist, report [FAIL] and stop — remaining checks depend on it.
Read .claude/qmd.json. If you can parse it as JSON, [PASS]. If the content is malformed, [FAIL] and stop.
Check the parsed JSON has a non-empty project string. [PASS] or [FAIL].
test -f "$HOME/.cache/qmd/index.sqlite" && echo "exists" || echo "missing"
[PASS] if exists, [FAIL] if missing.
test -f "$HOME/.config/qmd/index.yml" && echo "exists" || echo "missing"
[PASS] if exists, [FAIL] if missing.
For each key in the collections object:
7. Collection in qmd index:
qmd collection list
Check if the collection name appears in the output. [PASS] or [FAIL].
8. Naming convention: If the project name is set, check that the collection name starts with {project}_. [PASS] or [WARN].
If ~/.config/qmd/index.yml exists, check that each collection name appears in it:
grep -F "{collection_name}:" "$HOME/.config/qmd/index.yml"
[PASS] or [FAIL] per collection.
gitHook is true)10. Check .git/hooks/post-commit exists. If it does, verify it contains the marker comment # qmd-auto-index:{project}. [PASS], [WARN] (marker mismatch), or [FAIL] (missing).
11. Check the hook does NOT contain the deprecated --index flag. [PASS] or [WARN].
Try calling mcp__qmd__status. If it returns data, [PASS]. If the tool is not available or returns an error, [WARN] with message:
MCP server not configured or not responding. Search will fall back to CLI. Run
claude mcp add qmd -- qmd mcpor add qmd to.mcp.json.
Print each result on its own line:
[PASS] qmd binary found: /path/to/qmd
[PASS] .claude/qmd.json exists
[PASS] .claude/qmd.json is valid JSON
[PASS] Project name: myproject
[FAIL] Default index database missing: ~/.cache/qmd/index.sqlite
[WARN] MCP server not configured — search will use CLI fallback
...
N issue(s) found.
If all checks pass, end with: All checks passed.