{"_id":"@alessai/hive-mcp","_rev":"6-90bea764ba4ae26e72dfc1a8762a63b9","name":"@alessai/hive-mcp","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.0":{"name":"@alessai/hive-mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"license":"MIT","_id":"@alessai/hive-mcp@1.0.0","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"bin":{"hive-mcp":"dist/index.js"},"dist":{"shasum":"c8230134bc6d50ea00db66209068ec4f5a8b1418","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.0.0.tgz","fileCount":109,"integrity":"sha512-scNon4ilTHvtJxUlyKIXLk1FSmO8fNVf0Tnl3Kb4wF9GKLMpcqs9Xwp4gYcKtiSYKa7iIcgNJ0Rk3ul0RYukbQ==","signatures":[{"sig":"MEQCIHyRiimHshynUI2y5ShrE6iY1p3GLiRUK9delaYhqPGoAiATiDd9nncAIpqJtUWHotaRA/p08HnjGIHdgZ9Nv2cC5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110246},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"35a78618a39e17a6cfa05d9d5f4367ef0695d878","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"repository":{"url":"git+https://github.com/alessai/Hive-MCP.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","directories":{},"_nodeVersion":"22.20.0","dependencies":{"zod":"^3.25.0","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hive-mcp_1.0.0_1771797966682_0.9939676539118827","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@alessai/hive-mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"license":"MIT","_id":"@alessai/hive-mcp@1.0.1","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"bin":{"hive-mcp":"dist/index.js"},"dist":{"shasum":"621c5244905b61102c9eee620a45191cec62f688","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.0.1.tgz","fileCount":109,"integrity":"sha512-WKbaLWLpWfxATDtUAFJrHqte32PXkh3Uwa5VSeKUOszykFOsnwZQA1m2R7ZaCrESe9JPpSrcOsZWlKhw7E27qQ==","signatures":[{"sig":"MEYCIQDa5X/Gd6SYDm4GpmORsYJHPlSQw8KttcsHL2Or1jU+EAIhALD72tqA9FXTaNURYe06FRGtOMUenPQ6kANR/uLUvRIw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113660},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"ff07e60bc525a79d75088b5734ac1c2810989720","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"repository":{"url":"git+https://github.com/alessai/Hive-MCP.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","directories":{},"_nodeVersion":"22.20.0","dependencies":{"zod":"^3.25.0","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hive-mcp_1.0.1_1771844821345_0.29778542604690794","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@alessai/hive-mcp","version":"1.1.0","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"license":"MIT","_id":"@alessai/hive-mcp@1.1.0","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"bin":{"hive-mcp":"dist/index.js"},"dist":{"shasum":"37489e4bf806105e4ad09357c79f313dede79cf3","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.1.0.tgz","fileCount":109,"integrity":"sha512-kDShLqktxAD6LVebnjPKtYT35Q2piSV02ab4AGnMZ1GGy3ok1oDdmY+OO0slaap7QENNxdRJyihJomHX4PRAmA==","signatures":[{"sig":"MEQCIAXaBEiC3mTPXLBl2U3lieCwPaWXfMNnjpOmkwN6woCGAiA58ZtQtb5+uDaU29CPuz16Z4HPTsm1PAodbfsgOB6TXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121302},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"3811f4807190d59a9bb05af4750522ef9d16111a","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"repository":{"url":"git+https://github.com/alessai/Hive-MCP.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","directories":{},"_nodeVersion":"22.20.0","dependencies":{"zod":"^3.25.0","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hive-mcp_1.1.0_1771849425256_0.40789347772056983","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@alessai/hive-mcp","version":"1.2.0","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"license":"MIT","_id":"@alessai/hive-mcp@1.2.0","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"bin":{"hive-mcp":"dist/index.js"},"dist":{"shasum":"3c5f9708877d1806526d829eeae43e374a2fc3d5","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.2.0.tgz","fileCount":114,"integrity":"sha512-t0jgJTLZYCd+28YBpan6HwLI4RJPXQtYaORcwQWTU2n7h7qsLFTvZKmmhyCrKH1nbFYN/h87z7JEX9B2uc8wQQ==","signatures":[{"sig":"MEYCIQC6fFTXevDDhiE/t6hmmrjGI7SE4oninm6v5mg2NT/acgIhAKq+hvGKRVacjqMqHqiRvdYI2BpEDAE0fzXDKaFxmRub","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125075},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"a8e2df4f33d514d43f8145a20b851866c1f9b454","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"repository":{"url":"git+https://github.com/alessai/Hive-MCP.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","directories":{},"_nodeVersion":"22.20.0","dependencies":{"zod":"^3.25.0","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hive-mcp_1.2.0_1771851354473_0.8475914526810642","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@alessai/hive-mcp","version":"1.3.0","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"license":"MIT","_id":"@alessai/hive-mcp@1.3.0","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"bin":{"hive-mcp":"dist/index.js"},"dist":{"shasum":"c0f403c0807eb73fe02f7f45f2e472ce10ef976f","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.3.0.tgz","fileCount":120,"integrity":"sha512-AcMi/nLk38l5TiW3vyxcJxEqKfvMlogn2p2XxJy2Q91Mtb9nT8lZJsYPet/wlWHIxTmJNj0p8W1At0LS+AVvoA==","signatures":[{"sig":"MEQCIAsKzRWdheiovJwLFNxseohuaSQjcwRkiJh3OBBkY5E7AiApTIUmVaZosQdL7Ae1OzwZnDxE5MR2s6mDem0Ek/bdzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131456},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"d25722558e747e449bdac9d108f4fa40e0d9a606","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"repository":{"url":"git+https://github.com/alessai/Hive-MCP.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","directories":{},"_nodeVersion":"22.20.0","dependencies":{"zod":"^3.25.0","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hive-mcp_1.3.0_1772058043586_0.012960086928808012","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@alessai/hive-mcp","version":"1.4.0","description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","type":"module","main":"dist/index.js","bin":{"hive-mcp":"dist/index.js"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsc --watch","prepublishOnly":"npm run build","test":"vitest run"},"keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"repository":{"type":"git","url":"git+https://github.com/alessai/Hive-MCP.git"},"homepage":"https://github.com/alessai/Hive-MCP","bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.12.0","zod":"^3.25.0"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.7.0","vitest":"^4.0.18"},"engines":{"node":">=20"},"_id":"@alessai/hive-mcp@1.4.0","gitHead":"86baacf6f69f7028fc16a8d0ff50e79b868de6e2","types":"./dist/index.d.ts","_nodeVersion":"22.20.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-QrbdkaUCGHADmBzwhJsEaKDNaKVEs2wYvzievhs1UnN68AiI8VtQdUmRRKC5tTId7nJNNSwfLdrlnaGav/AB7w==","shasum":"59c7987f91158d312cf63d540475b39d2179b9fd","tarball":"https://registry.npmjs.org/@alessai/hive-mcp/-/hive-mcp-1.4.0.tgz","fileCount":128,"unpackedSize":158697,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCaw+dqZ2KHkPfn09qXXXP0aC+Rek5yz4YFl9AWpSGWogIgD7flq8jZSL8ZlN3Rn+ondHw29hF/MDvkiF43wttpGlQ="}]},"_npmUser":{"name":"alessai","email":"saif@alessai.net"},"directories":{},"maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/hive-mcp_1.4.0_1772123305719_0.5209920165419477"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-22T22:06:06.544Z","modified":"2026-02-26T16:28:25.979Z","1.0.0":"2026-02-22T22:06:06.826Z","1.0.1":"2026-02-23T11:07:01.511Z","1.1.0":"2026-02-23T12:23:45.396Z","1.2.0":"2026-02-23T12:55:54.620Z","1.3.0":"2026-02-25T22:20:43.738Z","1.4.0":"2026-02-26T16:28:25.864Z"},"bugs":{"url":"https://github.com/alessai/Hive-MCP/issues"},"license":"MIT","homepage":"https://github.com/alessai/Hive-MCP","keywords":["mcp","model-context-protocol","ai","cli","gemini","claude","codex","multi-agent","subagent"],"repository":{"type":"git","url":"git+https://github.com/alessai/Hive-MCP.git"},"description":"MCP server that spawns external AI CLIs (Gemini, Claude, Codex) as subagents with role-based system prompts","maintainers":[{"name":"alessai","email":"saif@alessai.net"}],"readme":"# Hive MCP\n\n**Why rely on one AI model when you can orchestrate them all?**\n\nHive is an MCP server that lets any AI coding assistant — Claude Code, Cursor, Windsurf, or any MCP host — spawn and coordinate external AI CLIs as subagents. Delegate tasks to Gemini, Claude, Qwen, Kilo Code, OpenCode, Codex, or any custom CLI tool. Each agent runs with **full tool access** (filesystem, shell, web search), and results flow right back into your session.\n\nHive **auto-detects** which CLIs you have installed — no configuration needed. Just install and go.\n\nThink of it as giving your AI assistant a team of other AI assistants it can call on whenever it needs a second opinion, a specialized skill, or just more hands on deck.\n\n## Why Hive?\n\n**One model isn't always enough.** Different models have different strengths — Gemini is fast with broad knowledge, Claude is precise with code, Codex runs sandboxed. Hive lets you play to each model's strengths without leaving your workflow.\n\n- **Multi-model consensus** — Ask the same question to 2+ models in parallel, get diverse perspectives, catch blind spots\n- **Delegate and forget** — Hand off research, code review, or analysis to a subagent while your main session keeps working\n- **14 built-in roles** — Reviewer, debugger, security auditor, test generator, and more — each with a tuned system prompt\n- **Multi-turn memory** — Agents remember previous conversations within a session, so you can build on earlier context\n- **Fully extensible** — Add any CLI tool as a custom agent in minutes with a simple JSON config\n\n## Install\n\n### Claude Code\n\n```bash\nclaude mcp add hive -- npx @alessai/hive-mcp\n```\n\n### Cursor / Windsurf / other MCP hosts\n\nAdd to your MCP config:\n\n```json\n{\n  \"hive\": {\n    \"type\": \"stdio\",\n    \"command\": \"npx\",\n    \"args\": [\"@alessai/hive-mcp\"]\n  }\n}\n```\n\n### From source\n\n```bash\ngit clone https://github.com/alessai/Hive-MCP.git\ncd Hive-MCP\nnpm install && npm run build\nclaude mcp add hive node ./dist/index.js\n```\n\n## Prerequisites\n\nInstall whichever CLIs you want to use as agents:\n\n| Agent | CLI | Install |\n|-------|-----|---------|\n| Gemini | `gemini` | See [Gemini CLI](https://github.com/google-gemini/gemini-cli) |\n| Claude | `claude` | See [Claude Code](https://docs.anthropic.com/en/docs/claude-code) |\n| Qwen | `qwen` | See [Qwen Code](https://github.com/nichochar/opencode) |\n| Kilo Code | `kilocode` | See [Kilo Code](https://github.com/kilocode/kilocode) |\n| OpenCode | `opencode` | See [OpenCode](https://github.com/nichochar/opencode) |\n| Codex | `codex` | See [Codex CLI](https://github.com/openai/codex) |\n\nYou only need the ones you plan to use. Hive **auto-detects** which CLIs are in your PATH at startup and only advertises the ones it finds. No configuration needed — install a CLI and it just works.\n\n## Examples\n\n### Get a second opinion on your code\n\n> *\"Use hive to review this pull request with both Gemini and Claude\"*\n\nHive spawns both models in parallel with the `reviewer` role. You get two independent code reviews in one shot — different models catch different things.\n\n### Multi-model debate\n\n> *\"Use hive with the challenger role to find flaws in this architecture proposal\"*\n\nBoth agents independently poke holes in your design. Where they agree, you likely have a real problem. Where they disagree, you get interesting perspectives to consider.\n\n### Delegate research while you keep coding\n\n> *\"Use hivesingle with Gemini to research the best pagination strategy for GraphQL APIs\"*\n\nGemini goes off and searches the web, reads docs, and comes back with a structured answer — while your main session stays focused on implementation.\n\n### Security audit from multiple angles\n\n> *\"Use hive with the secaudit role to audit the auth module\"*\n\nTwo models independently audit your code for OWASP top 10, injection risks, auth bypass, and more. Redundancy catches what a single pass misses.\n\n### Generate tests, then challenge them\n\n> *\"Use hivesingle with gemini and the testgen role to generate tests for src/auth.ts\"*\n>\n> *\"Now use hivesingle with claude and the challenger role to find gaps in those tests\"*\n\nChain different agents with different roles. One generates, another critiques. The result is more thorough than either alone.\n\n### Pre-commit sanity check\n\n> *\"Use hive with the precommit role to review my staged changes\"*\n\nBoth models run through a pre-commit checklist: missing tests, security issues, leftover debug code, breaking API changes. Catch problems before they hit CI.\n\n### API lookup with fresh data\n\n> *\"Use hivesingle with gemini and the apilookup role to find the correct API for streaming responses in the Vercel AI SDK\"*\n\nModels have training cutoffs. Gemini CLI has web search built in — it can find current API docs, correct method signatures, and working examples instead of hallucinating outdated patterns.\n\n### Deep architecture analysis\n\n> *\"Use hivesingle with the analyst role to analyze the dependency graph of this project\"*\n\nThe agent reads your codebase, maps out architecture patterns, identifies coupling issues, and flags structural concerns — with full filesystem access to actually look at the code.\n\n### Multi-turn investigation\n\n> *\"Use hivesingle with gemini to explain the auth flow in this codebase\" (continuation_id: \"auth-investigation\")*\n>\n> *\"Now trace what happens when a token expires\" (continuation_id: \"auth-investigation\")*\n\nSame `continuation_id` means the agent remembers the previous conversation. Build up understanding across multiple exchanges without re-explaining context.\n\n## Use cases at a glance\n\n| Scenario | Tool | Role | Why it works |\n|----------|------|------|-------------|\n| Code review | `hive` | `reviewer` | Two models catch more bugs than one |\n| Find security holes | `hive` | `secaudit` | Redundant auditing, different heuristics |\n| Challenge a design | `hive` | `challenger` | Independent devil's advocates |\n| Research a topic | `hivesingle` | `default` | Delegate web-connected research |\n| Generate tests | `hivesingle` | `testgen` | Focused test generation with full code access |\n| Debug a tricky issue | `hivesingle` | `debugger` | Systematic root cause analysis |\n| Plan implementation | `hivesingle` | `planner` | Break down tasks before coding |\n| Pre-commit check | `hive` | `precommit` | Last line of defense before pushing |\n| Look up current APIs | `hivesingle` | `apilookup` | Web-connected agents find fresh docs |\n| Trace code flow | `hivesingle` | `tracer` | Follow execution paths through your codebase |\n| Refactor safely | `hivesingle` | `refactor` | Restructure code with full context |\n| Generate docs | `hivesingle` | `docgen` | Documentation from actual code, not guesses |\n\n## Tools\n\n### `hivesingle`\n\nSpawn a single CLI agent with a task.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `client` | string | yes | CLI client: `gemini`, `claude`, `qwen`, `kilo`, `opencode`, `codex`, `glm`, or custom |\n| `prompt` | string | yes | The task or question |\n| `role` | string | no | Role prompt (see [Roles](#roles)) |\n| `continuation_id` | string | no | Thread ID for multi-turn conversations |\n| `cwd` | string | no | Working directory for the CLI process |\n\n### `hive`\n\nSpawn 2+ CLI agents in parallel with the same prompt. Defaults to the first 2 detected clients. Only available when 2+ CLIs are installed.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `clients` | string[] | no | CLI clients to query (defaults to first 2 detected) |\n| `prompt` | string | yes | The task or question |\n| `role` | string | no | Role prompt (see [Roles](#roles)) |\n| `cwd` | string | no | Working directory |\n\n## Roles\n\nEach role injects a tailored system prompt that shapes how the agent approaches your task:\n\n| Role | What it does |\n|------|-------------|\n| `default` | General-purpose assistant |\n| `reviewer` | Code review — bugs, style, security, maintainability |\n| `debugger` | Systematic debugging and root cause analysis |\n| `planner` | Break down tasks into ordered implementation steps |\n| `thinker` | Deep exploration — consider tradeoffs before answering |\n| `analyst` | Architecture patterns, dependency analysis, structural concerns |\n| `refactor` | Improve code structure without changing behavior |\n| `testgen` | Generate comprehensive tests: happy paths, edge cases, error conditions |\n| `secaudit` | Security audit — OWASP top 10, injection, auth bypass, data exposure |\n| `docgen` | Generate clear documentation from code |\n| `precommit` | Pre-commit checklist: tests, security, debug code, breaking changes |\n| `challenger` | Devil's advocate — find flaws, challenge assumptions, identify risks |\n| `apilookup` | Find correct, current API usage with method signatures and examples |\n| `tracer` | Trace execution flow through function calls and state changes |\n\nAll agents also get a capabilities preamble reminding them to use their tools (filesystem, shell, web search) when needed.\n\n## CLI Management\n\nHive includes built-in commands for managing your CLI client configs. No manual JSON editing required.\n\n### See what's available\n\n```bash\nhive-mcp list\n```\n\n```\n  Status  Name            Command         Source\n  ─────── ─────────────── ─────────────── ──────────────────────────\n  ✓     claude          claude          built-in\n  ✓     gemini          gemini          built-in\n  ✓     glm             claude          built-in\n  ✗     codex           codex           built-in\n          └─ Install: npm i -g @openai/codex\n\n  3/4 clients available\n```\n\n### Add custom CLI configs\n\nClone an existing client with extra args — perfect for model variants:\n\n```bash\n# Claude with Opus model and custom settings\nhive-mcp add claude-zai --from claude --args \"--model opus --settings ~/.claude-zai/settings.json\"\n\n# Gemini with Flash model and shorter timeout\nhive-mcp add gemini-fast --from gemini --args \"-m gemini-2.0-flash\" --timeout 60\n```\n\nOr create a completely new client:\n\n```bash\nhive-mcp add my-tool --command /usr/local/bin/mytool --runner base --timeout 120\n```\n\n### Remove custom configs\n\n```bash\nhive-mcp remove claude-zai\n```\n\nOnly user configs can be removed. Built-in configs are protected.\n\n### All commands\n\n| Command | Description |\n|---------|-------------|\n| `hive-mcp` | Start MCP server (default) |\n| `hive-mcp list` | Show all clients with availability status |\n| `hive-mcp add <name>` | Add a custom CLI config |\n| `hive-mcp remove <name>` | Remove a user CLI config |\n| `hive-mcp help` | Show help |\n\n## Configuration\n\n### Built-in clients\n\n| Client | CLI | Model | Timeout |\n|--------|-----|-------|---------|\n| `gemini` | `gemini` | gemini-2.5-pro | 5 min |\n| `claude` | `claude` | default | 30 min |\n| `glm` | `claude` | opus | 30 min |\n| `qwen` | `qwen` | default | 5 min |\n| `kilo` | `kilocode` | default | 5 min |\n| `opencode` | `opencode` | default | 5 min |\n| `codex` | `codex` | default | 10 min |\n\n### Add your own agents\n\nThe easiest way is with the CLI:\n\n```bash\nhive-mcp add my-agent --from gemini --args \"--flag value\" --timeout 300\n```\n\nOr drop a JSON file in `~/.hive/cli_clients/` manually:\n\n```json\n{\n  \"name\": \"my-agent\",\n  \"command\": \"my-cli-tool\",\n  \"runner\": \"gemini\",\n  \"additional_args\": [\"--flag\", \"value\"],\n  \"env\": {},\n  \"timeout_seconds\": 300,\n  \"roles\": {}\n}\n```\n\nThe `runner` field tells Hive how to communicate with the CLI:\n\n| Runner | System prompt via | Output format | Use for |\n|--------|------------------|---------------|---------|\n| `gemini` | `-p` flag | JSON | Gemini-compatible CLIs |\n| `claude` | `--append-system-prompt` flag | JSON | Claude-compatible CLIs |\n| `opencode` | stdin | JSONL | OpenCode-compatible CLIs |\n| `qwen` | stdin | JSON | Qwen Code (uses Claude-compatible output format) |\n| `kilo` | stdin | JSONL | Kilo Code CLIs |\n| `codex` | stdin | JSONL | Codex-compatible CLIs |\n| base (default) | stdin | raw text | Any CLI that reads stdin and writes stdout |\n\nUser configs in `~/.hive/cli_clients/` override built-in configs with the same name.\n\n## Multi-turn conversations\n\nPass a `continuation_id` to maintain context across multiple calls:\n\n```\n# First call\nhivesingle(client: \"gemini\", prompt: \"Explain this codebase\", continuation_id: \"session-1\")\n\n# Follow-up — the agent remembers the previous exchange\nhivesingle(client: \"gemini\", prompt: \"Now focus on the auth module\", continuation_id: \"session-1\")\n```\n\nConversations are stored on disk (`~/.hive/threads/`) with a 30-minute TTL and 100-thread LRU eviction.\n\n## How it works\n\n```\nMCP Host (Claude Code, Cursor, etc.)\n    ↓ MCP tool call\nHive MCP Server\n    ↓ child_process.spawn()\nCLI Agent (gemini, claude, codex, custom)\n    ↓ stdout/stderr\nParse output → return to host\n```\n\n1. Your MCP host calls `hivesingle` or `hive`\n2. Hive resolves the client config, loads the role prompt, builds CLI arguments\n3. The CLI is spawned as a child process with the prompt piped via stdin or flags\n4. Progress notifications stream back to the host while waiting\n5. Output is parsed (JSON/JSONL/raw) and returned to your session\n\nEach agent runs in its own process with full access to whatever tools the underlying CLI provides — filesystem, shell, web search, code execution. Hive is just the bridge.\n\n## Security\n\nHive spawns child processes, so security matters. Here's what it does:\n\n- **Auto-detection** — Only CLIs actually found in PATH are registered; missing binaries are silently skipped\n- **No shell injection** — Uses `spawn()` with argument arrays, never shell interpolation\n- **Path traversal protection** — `continuation_id` and role names are validated against strict alphanumeric patterns\n- **Environment filtering** — Sensitive env vars (`*_SECRET`, `*_TOKEN`, `*_PASSWORD`, `PRIVATE_KEY`, `DATABASE_URL`, `GITHUB_TOKEN`, etc.) are stripped before passing to child processes\n- **Concurrency limits** — Max 5 simultaneous child processes to prevent resource exhaustion\n- **CWD validation** — The `cwd` parameter is validated to be an existing directory before spawning\n- **Config validation** — User configs are validated for required fields, sane timeout bounds (1s–2hr), and dangerous env vars (`LD_PRELOAD`, etc.) are blocked\n- **Timeout enforcement** — Every child process has a timeout with SIGTERM → SIGKILL escalation\n\n**Things to be aware of:**\n\n- **Custom clients can run any executable.** Files in `~/.hive/cli_clients/` define the `command` that gets spawned. Only add configs you trust.\n- **Built-in Claude configs use `bypassPermissions`.** This means spawned Claude agents can read/write/execute without human approval. Override in `~/.hive/cli_clients/` if you want stricter defaults.\n- **Agents inherit most of your environment.** CLI tools like Gemini and Claude need their API keys from the environment to function. Hive strips known secrets but passes the rest.\n\n## Development\n\n```bash\nnpm run dev     # Watch mode\nnpm run build   # One-time build\nnpm test        # Run 203 tests\nnpm start       # Run the server\n```\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}