plugins/qmd/skills/doctor/SKILL.md
Run qmd health check for this project. Triggers on "qmd doctor", "check qmd health", "qmd problems", "diagnose qmd".
npx skillsauth add aviflombaum/claude-code-in-avinyc avinyc:qmd-doctorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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.
development
Bootstrap Warp terminal configuration for Rails projects. Creates launch configurations with colored tabs for dev server, Claude, shell, and more. This skill should be used when setting up Warp for a Rails project. Triggers on "setup warp", "configure warp", "warp rails", "warp bootstrap", "terminal setup for rails", "warp-rails".
development
Write technical blog posts, tutorials, and documentation in Flatiron School's engaging style. Use for explaining code patterns, debugging stories, or turning complex topics into clear narratives. Triggers on "write a blog post", "tutorial about", "explain how", "technical writing".
data-ai
Marketing funnel modeling and conversion metrics. Use for ad spend analysis, CPM/CPC optimization, landing page conversions, waitlist economics, and funnel modeling. Triggers on "ad spend", "cpm", "cpc", "conversion rate", "landing page", "waitlist", "funnel".
testing
SaaS unit economics and growth strategy. Use for LTV, CAC, MRR/ARR analysis, payback period, churn analysis, Rule of 40, and SaaS financial modeling. Triggers on "unit economics", "ltv", "cac", "mrr", "arr", "churn", "saas metrics".