tooluniverse-install-skills — Claude Code skill: install ToolUniverse
Checks whether the ToolUniverse research skills are present and installs them when the canary file is missing. Handy after switching clients.
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a claude-codeWhat tooluniverse-install-skills does
The skill looks for the canary file tooluniverse-drug-research/SKILL.md across the usual skill directories: .cursor, .agents, .windsurf, .gemini, .claude, .opencode, .trae, .skills. A returned path means the skills are already there and the run stops. A NOT_INSTALLED result sends it into the install branch.
Installation clones mims-harvard/ToolUniverse with git clone --depth 1 --filter=blob:none --sparse into a temp folder, then narrows the checkout with git sparse-checkout set skills, so only the skills folder comes down. The contents are copied into your client's directory — .claude/skills/ for Claude, .cursor/skills/ for Cursor — and the temp folder is removed. The client is picked from whichever config directory exists; if none matches, the skill asks which one you use before copying anything.
You need git on the machine and network access to GitHub, since the clone is remote. The skill ships with disable-model-invocation: true, so it will not call itself mid-conversation — you trigger it by hand. Worth checking how your client treats such skills before you count on it firing on its own.
What it helps with
- locate where your client keeps skills instead of guessing paths
- reinstall the ToolUniverse research skills after moving to another client
- verify the skills actually landed in the right directory
- pull only the
skillsfolder from the repo instead of the whole tree - sort out which client is in use when several config directories exist
Example prompts for the agent
- check whether the ToolUniverse skills are installed and add the missing ones
- the ToolUniverse skills aren't loading — figure it out and install them
- I moved from Cursor to Claude, bring the ToolUniverse skills over
How to install tooluniverse-install-skills
1Skills CLI (Vercel)
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a claude-code2Manually: put the files in place
~/.claude/skills/tooluniverse-install-skills/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/tooluniverse-install-skills/
1Skills CLI (Vercel)
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a codex2Manually: put the files in place
.agents/skills/tooluniverse-install-skills/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a cursor2Manually: put the files in place
.cursor/skills/tooluniverse-install-skills/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install mims-harvard/ToolUniverse tooluniverse-install-skills2Manually: put the files in place
.github/skills/tooluniverse-install-skills/SKILL.md1Skills CLI (Vercel)
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a gemini-cli2Platform CLI
gemini skills install https://github.com/mims-harvard/ToolUniverse --path skills/tooluniverse-install-skillsManually: put the files in place
.devin/skills/tooluniverse-install-skills/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about tooluniverse-install-skills
How do I install tooluniverse-install-skills in Claude?
Run npx skills add mims-harvard/ToolUniverse --skill tooluniverse-install-skills -a claude-code. The skill lands at ~/.claude/skills/tooluniverse-install-skills/SKILL.md.
What does tooluniverse-install-skills do?
It searches the common client directories for the ToolUniverse research skill canary file. When the file is absent, it clones the repository and copies the skills folder into your client's directory.
Why doesn't the skill run on its own?
It carries disable-model-invocation: true, so the model won't invoke it unprompted. You start the check and install manually.
Source text
SKILL.md · Apache-2.0
--- name: tooluniverse-install-skills description: Detect and auto-install missing ToolUniverse research skills. Checks common Claude Code/Cursor/Codex skill directories for the canary file, and installs any missing skills if none found. Use when the plugin's research skills aren't loading, when migrating between clients, or when verifying a skill installation. disable-model-invocation: true --- # ToolUniverse Install Skills Checks whether the ToolUniverse specialized skills are installed and installs them automatically if not. ## Detection Use the Shell tool to check for the canary file across all common client locations: ```bash ls .cursor/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .agents/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .windsurf/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .gemini/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .claude/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .opencode/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .trae/skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || ls .skills/tooluniverse-drug-research/SKILL.md 2>/dev/null \ || echo "NOT_INSTALLED" ``` - **Output is a file path** → skills already installed, stop here. - **Output is `NOT_INSTALLED`** → proceed to installation. ## Installation ```bash # 1. Download skills from GitHub (shallow, sparse — only skills/ folder) git clone --depth 1 --filter=blob:none --sparse \ https://github.com/mims-harvard/ToolUniverse.git /tmp/tu-skills cd /tmp/tu-skills && git sparse-checkout set skills # 2. Copy to the correct directory for the detected client: mkdir -p .cursor/skills && cp -r /tmp/tu-skills/skills/* .cursor/skills/ # Cursor # mkdir -p .agents/skills && cp -r /tmp/tu-skills/skills/* .agents/skills/ # Codex/OpenAI # mkdir -p .windsurf/skills && cp -r /tmp/tu-skills/skills/* .windsurf/skills/ # Windsurf # mkdir -p .gemini/skills && cp -r /tmp/tu-skills/skills/* .gemini/skills/ # Gemini CLI # mkdir -p .claude/skills && cp -r /tmp/tu-skills/skills/* .claude/skills/ # Claude Code # mkdir -p .opencode/skills && cp -r /tmp/tu-skills/skills/* .opencode/skills/ # OpenCode # mkdir -p .trae/skills && cp -r /tmp/tu-skills/skills/* .trae/skills/ # Trae # mkdir -p .skills && cp -r /tmp/tu-skills/skills/* .skills/ # Cline/VS Code # 3. Clean up rm -rf /tmp/tu-skills ``` If the client cannot be detected automatically, ask the user which one they use before running step 2. ## Client Detection Detect the client from the presence of config files: | Config file present | Client | |---|---| | `.cursor/` | Cursor | | `.agents/` | Codex / OpenAI | | `.windsurf/` | Windsurf | | `.gemini/` | Gemini CLI | | `.claude/` | Claude Code | | `.opencode/` | OpenCode | | `.trae/` | Trae | | None of the above | Ask the user | ## After Installation Confirm success: ```bash ls .cursor/skills/tooluniverse-drug-research/SKILL.md ``` Tell the user: "ToolUniverse skills installed successfully. You now have access to 50+ specialized research workflows."
© mims-harvard · Apache-2.0 · mims-harvard/ToolUniverse