$npx -y skills add Aperivue/medsci-skills --skill setup-medsciDiagnostic checklist for the MedSci Skills runtime. Verifies Python, R, Node, Claude Code, Git, Zotero, and configured MCP servers, and prints a pass/fail table with links to the right setup doc for any missing component. Read-only — does not install anything.
| 1 | # Setup-MedSci Skill |
| 2 | |
| 3 | You are helping a medical researcher verify that their environment is correctly configured to run MedSci Skills. You **do not install anything** — you only diagnose what's present, what's missing, and where to find the setup doc for any missing component. This skill is intentionally read-only so that a doctor can run it safely without worrying about breaking their system. |
| 4 | |
| 5 | ## Communication Rules |
| 6 | |
| 7 | - Communicate with the user in their preferred language (Korean or English). |
| 8 | - The diagnostic table itself is in English so it can be pasted into GitHub issues for support. |
| 9 | - All recommended remediation links point to `docs/setup/` markdown guides in the medsci-skills repo. |
| 10 | |
| 11 | ## Workflow |
| 12 | |
| 13 | ### Phase 1: Detect OS |
| 14 | |
| 15 | Run: |
| 16 | ```bash |
| 17 | uname -s |
| 18 | ``` |
| 19 | |
| 20 | - `Darwin` → macOS path → recommend `docs/setup/mac.md` |
| 21 | - `Linux` → Linux path (uses similar tooling to Mac) → recommend `docs/setup/mac.md` |
| 22 | - `MINGW*`, `MSYS*`, `CYGWIN*`, or detection failure on Windows → recommend `docs/setup/windows.md` |
| 23 | |
| 24 | ### Phase 2: Run Diagnostic Commands |
| 25 | |
| 26 | For each tool, run the command and capture both the version output and the exit code: |
| 27 | |
| 28 | | Tool | Command | Required version | |
| 29 | |---|---|---| |
| 30 | | Python | `python3 --version` (Mac/Linux) or `python --version` (Windows) | 3.11 or higher | |
| 31 | | R | `Rscript --version` (writes to stderr) | 4.0 or higher | |
| 32 | | Node.js | `node --version` | v20 or higher | |
| 33 | | Git | `git --version` | 2.30 or higher | |
| 34 | | Claude Code CLI | `claude --version` | any | |
| 35 | | MCP servers | `claude mcp list` | at least one of: zotero, gdrive, pubmed, filesystem | |
| 36 | |
| 37 | Use `command -v <tool>` first to detect presence without running it (avoids triggering long initialization). |
| 38 | |
| 39 | ### Phase 3: Emit Checklist Table |
| 40 | |
| 41 | Print a single Markdown table to stdout in this exact format: |
| 42 | |
| 43 | ``` |
| 44 | ## MedSci Skills Setup Diagnostic |
| 45 | |
| 46 | OS detected: <macOS | Linux | Windows> |
| 47 | Date: <YYYY-MM-DD> |
| 48 | |
| 49 | | Component | Status | Detected | Required | Action | |
| 50 | |---|:---:|---|---|---| |
| 51 | | Python 3.11+ | ✅ / ❌ | 3.11.9 | 3.11+ | OK / See docs/setup/mac.md Step 2 | |
| 52 | | R 4.x | ✅ / ❌ | 4.3.1 | 4.0+ | OK / See docs/setup/mac.md Step 3 | |
| 53 | | Node.js 20+ | ✅ / ❌ | v20.11.1 | v20+ | OK / See docs/setup/mac.md Step 4 | |
| 54 | | Git | ✅ / ❌ | 2.42.0 | 2.30+ | OK / See docs/setup/<os>.md Step 5 | |
| 55 | | Claude Code CLI | ✅ / ❌ | 1.5.x | any | OK / See docs/setup/<os>.md Step 6 | |
| 56 | | MCP: zotero | ✅ / ❌ / ⚠️ | Connected | optional | OK / See docs/setup/mcp-setup.md | |
| 57 | | MCP: gdrive | ✅ / ❌ / ⚠️ | Connected | optional | OK / See docs/setup/mcp-setup.md | |
| 58 | | MCP: filesystem | ✅ / ❌ | Connected | recommended | OK / See docs/setup/mcp-setup.md | |
| 59 | |
| 60 | Summary: <X required components passed, Y missing> |
| 61 | Next step: <one-sentence action> |
| 62 | ``` |
| 63 | |
| 64 | Status legend: |
| 65 | - ✅ Present and meets minimum version |
| 66 | - ❌ Missing or below minimum version |
| 67 | - ⚠️ Present but optional and not connected |
| 68 | |
| 69 | ### Phase 4: Suggest Remediation |
| 70 | |
| 71 | If everything ✅: "Your environment is ready. Try Demo 1 with `cd ~/medsci-skills/demo/01_wisconsin_bc && claude '/orchestrate --e2e'`." |
| 72 | |
| 73 | If anything ❌ in **required** rows: print the corresponding doc link. Do **not** offer to install — direct the user to follow the doc step. The doc tells them exactly what to copy-paste. |
| 74 | |
| 75 | If only **optional MCP** rows are ❌: explain that MedSci Skills work without MCP servers but `lit-sync`, `verify-refs`, and `write-paper` are smoother with Zotero MCP. Offer the `docs/setup/mcp-setup.md` link. |
| 76 | |
| 77 | ## Reference Files |
| 78 | |
| 79 | - `references/setup-checklist.md` — verbatim list of every check this skill runs and the corresponding documentation link |
| 80 | |
| 81 | ## Output Contract |
| 82 | |
| 83 | | Artifact | Filename | Format | |
| 84 | |----------|----------|--------| |
| 85 | | Diagnostic report | stdout (Markdown table) | Markdown | |
| 86 | | Optional log | `~/.medsci-skills/diagnostic-YYYY-MM-DD.md` | Markdown | |
| 87 | |
| 88 | If the user asks for a copyable report (e.g., for a GitHub issue), write the diagnostic to the optional log path and tell them where it is. |
| 89 | |
| 90 | ## What This Skill Does NOT Do |
| 91 | |
| 92 | - **Does not install anything.** No `brew install`, `winget install`, `pip install`, `Rscript -e 'install.packages(...)'`, or any other state-changing command. Read-only diagnostics only. |
| 93 | - **Does not modify `~/.claude.json` or any MCP configuration.** It only reads `claude mcp list` output. |
| 94 | - **Does not check skill versions or skill content.** That is the job of `validate_skills.sh` and `manage-project status`. |
| 95 | - **Does not auto-fix anything.** If a tool is missing, the user must go to the setup doc and follow the steps themselves. This is intentional — auto-installers for system Python and R |