{"_id":"@armazarashi0107/orca-cli","_rev":"3-294fbb9f27ea9added9af1a159b99989","name":"@armazarashi0107/orca-cli","dist-tags":{"latest":"0.8.16"},"versions":{"0.8.16":{"name":"@armazarashi0107/orca-cli","version":"0.8.16","keywords":["cli","agent","coding-agent","orca","multi-model","openai","claude","gemini","gpt","benchmark"],"author":{"name":"Maurice","email":"maurice_wen@proton.me"},"license":"MIT","_id":"@armazarashi0107/orca-cli@0.8.16","maintainers":[{"name":"armazarashi0107","email":"alphameta010@gmail.com"}],"homepage":"https://github.com/MARUCIE/orca-cli","bugs":{"url":"https://github.com/MARUCIE/orca-cli/issues"},"bin":{"orca":"dist/bin/orca.js"},"dist":{"shasum":"dda9920582e6f819b6e02d8204195660ca38acea","tarball":"https://registry.npmjs.org/@armazarashi0107/orca-cli/-/orca-cli-0.8.16.tgz","fileCount":311,"integrity":"sha512-/L8pNJuD0T/4gGI8DHnpRihoNhT5P1vGHf/QJ/TKfPOTEHp76Bi3QNs1HcQfVU/dn5FzOL/KLnwG92DXbA8Qaw==","signatures":[{"sig":"MEQCIHarJN1HNsJXGs/9URacNXqT1DLYUCG0DmICDJ8OlR4+AiB+gfxtOsWN4fUT5XDTXIWz2crYalrRzORQ0AKtYEKZ/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1534091},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc --watch","lint":"tsc --noEmit","test":"node --experimental-vm-modules node_modules/.bin/vitest run","bench":"node dist/bin/orca.js bench","build":"tsc -p tsconfig.json","test:e2e":"python3 agent-eval/scripts/run-test-matrix.py --layers e2e","eval:fast":"python3 agent-eval/scripts/run-gate.py --manifest fast","test:unit":"python3 agent-eval/scripts/run-test-matrix.py --layers unit","test:matrix":"python3 agent-eval/scripts/run-test-matrix.py","test:static":"python3 agent-eval/scripts/run-test-matrix.py --layers static","eval:nightly":"python3 agent-eval/scripts/run-gate.py --manifest nightly","eval:release":"python3 agent-eval/scripts/run-gate.py --manifest release","test:contract":"python3 agent-eval/scripts/run-test-matrix.py --layers contract","test:security":"python3 agent-eval/scripts/run-test-matrix.py --layers security","prepublishOnly":"npm run build && npm test && npm run bench","test:resilience":"python3 agent-eval/scripts/run-test-matrix.py --layers resilience","test:tool-calls":"python3 agent-eval/scripts/run-test-matrix.py --layers tool-calls","test:integration":"python3 agent-eval/scripts/run-test-matrix.py --layers integration","test:matrix:sync":"python3 agent-eval/scripts/sync-test-matrix.py --check","test:performance":"python3 agent-eval/scripts/run-test-matrix.py --layers performance","test:ai-eval-fast":"python3 agent-eval/scripts/run-test-matrix.py --layers ai-eval"},"_npmUser":{"name":"armazarashi0107","email":"alphameta010@gmail.com"},"deprecated":"Renamed: install 'armature-agent' instead (npm i armature-agent). Same CLI, mirrors hermes-agent naming.","repository":{"url":"git+https://github.com/MARUCIE/orca-cli.git","type":"git"},"_npmVersion":"11.12.1","description":"Orca CLI — provider-neutral agent runtime with Claude Code depth","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ink":"^5.2.1","zod":"^3.23.0","acorn":"^8.16.0","chalk":"^5.3.0","react":"^18.3.1","marked":"^15.0.12","openai":"^6.33.0","undici":"^7.0.0","commander":"^12.1.0","ink-spinner":"^5.0.0","marked-terminal":"^7.3.0","https-proxy-agent":"^7.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^18.3.28","ink-testing-library":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/orca-cli_0.8.16_1780155410730_0.07306463682324771","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-05-30T15:36:50.541Z","modified":"2026-05-30T16:47:46.966Z","0.8.16":"2026-05-30T15:36:50.916Z"},"bugs":{"url":"https://github.com/MARUCIE/orca-cli/issues"},"author":{"name":"Maurice","email":"maurice_wen@proton.me"},"license":"MIT","homepage":"https://github.com/MARUCIE/orca-cli","keywords":["cli","agent","coding-agent","orca","multi-model","openai","claude","gemini","gpt","benchmark"],"repository":{"url":"git+https://github.com/MARUCIE/orca-cli.git","type":"git"},"description":"Orca CLI — provider-neutral agent runtime with Claude Code depth","maintainers":[{"name":"armazarashi0107","email":"alphameta010@gmail.com"}],"readme":"<div align=\"center\">\n\n# Orca CLI\n\n### The only coding agent that races Claude, GPT, and Gemini on the same question.\n\nAsk three frontier models at once. Have a judge pick the winner. Or chain them as specialists — Claude plans, GPT codes, Gemini reviews. No single-vendor CLI can do this.\n\n[![npm](https://img.shields.io/npm/v/orca-cli.svg)](https://www.npmjs.com/package/orca-cli)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n[![Node](https://img.shields.io/badge/Node-%3E%3D18-green.svg)](https://nodejs.org)\n[![Tests](https://img.shields.io/badge/tests-1776%20passing-brightgreen.svg)](#release-quality-gates)\n\n</div>\n\n```bash\nnpm install -g orca-cli\n```\n\n```bash\n# One key, eleven models. Then:\norca council \"is this code thread-safe?\" -n 3   # 3 models answer, a judge picks the winner\norca race \"write a CSV parser\"                  # all models race, fastest good answer wins\norca pipeline \"build auth middleware\"           # Claude plans -> GPT codes -> Gemini reviews\n```\n\n> **Why this exists:** every other coding CLI locks you to one vendor's model. Orca treats\n> models as interchangeable workers. For a hard question, one model is a guess — three models\n> with a judge is an answer. Works with any OpenAI-compatible provider; one aggregator key\n> (Poe / OpenRouter / Cloudflare AI Gateway) unlocks all of them.\n\n## 30-second demo\n\n```\n$ orca council \"is this code thread-safe?\" -n 3\n\n● claude-opus-4.6 ... 4.2s\n● gpt-5.4 ........... 2.1s\n● gemini-3.1-pro .... 3.8s\n\n★ Verdict (claude-opus-4.6 as judge)\n  All three agree: race condition on line 42. The mutex is released\n  before the write completes. Confidence: HIGH (3/3 agree).\n```\n\n> Replace this block with a 10-second terminal-recording GIF of `orca council` before launch —\n> it is the single highest-leverage asset for stars.\n\n## What you get\n\n- **Multi-model**: `council` (vote) · `race` (fastest) · `pipeline` (specialist chain) — the part nobody else has\n- **Full agent**: 42 tools, 8 lifecycle hooks, background jobs, goal-loops (`--done-when \"tests pass\"`)\n- **6 modes**: chat · reflect (Socratic debugging) · review · debug · architect · critique (adversarial gate)\n- **Runs anywhere**: terminal REPL, one-shot, headless HTTP server, or MCP server over stdio\n- **Production-hardened**: 1776 tests, shell-injection protection, fail-closed permissions, auditable release gates\n\n## How Orca compares\n\n|  | **Orca** | Claude Code | Codex CLI | aider |\n|---|:---:|:---:|:---:|:---:|\n| Providers | **11 (any OpenAI-compat)** | Anthropic only | OpenAI only | many |\n| Council — N models + a judge vote | **✅** | ❌ | ❌ | ❌ |\n| Race — fastest good answer wins | **✅** | ❌ | ❌ | ❌ |\n| Specialist pipeline (plan→code→review) | **✅** | ❌ | ❌ | ❌ |\n| Goal-loop (`--done-when`) | ✅ | ✅ | ✅ | ❌ |\n| MCP host + MCP server | ✅ | ✅ | partial | ❌ |\n\nThe top three rows are the wedge. Everything else is table stakes — Orca just also has them.\n\n## Multi-model collaboration — the part nobody else has\n\nOrca reaches 11 models from 9 vendors through one API key. Three ways to put them to work:\n\n### Council — `orca council`\n\nAsk N models the same question. A judge synthesizes the best answer.\n\n```bash\norca council \"is this code thread-safe?\" -n 3\norca council \"review for security issues\" -n 5 -j claude-opus-4.6\n```\n\n```\n╭── Council: 3 models ──╮\n● claude-opus-4.6 ... 4.2s\n● gpt-5.4 ........... 2.1s\n● gemini-3.1-pro .... 3.8s\n\n★ Verdict (claude-opus-4.6 as judge)\n  All three agree on the race condition in line 42...\n  Confidence: HIGH (3/3 agree)\n─ 3 models · 12.1s · agreement: high ─\n```\n\n### Race — `orca race`\n\nN models race. First good answer wins, the rest are cancelled.\n\n```bash\norca race \"write a quicksort in Python\" -n 5\n```\n\n### Pipeline — `orca pipeline`\n\nChain models as specialists. Each stage feeds the next.\n\n```bash\norca pipeline \"build auth middleware\" --plan claude-opus-4.6 --code gpt-5.4 --review gemini-3.1-pro\n```\n\n| Stage | Default | Role |\n|-------|---------|------|\n| Plan | claude-opus-4.6 | Architecture, data flow, API design |\n| Code | gpt-5.4 | Fast implementation |\n| Review | gemini-3.1-pro | Bug / security / perf review (2M context) |\n| Fix | gpt-5.4 | Address review findings |\n| Verify | claude-opus-4.6 | Confirm the fix matches the plan |\n\nFor large PRs, `orca review-ledger` runs independent model reviews, synthesizes a deduplicated\nCritical/High/Medium ledger, and gates every fix behind an explicit human decision.\n\n## Providers — one key unlocks all\n\nWorks with any OpenAI-compatible endpoint. Configure in `~/.orca/config.json`.\n\n```bash\n# A single aggregator key gets you every vendor:\nexport POE_API_KEY=...           # Poe — all vendors via one endpoint\nexport OPENROUTER_API_KEY=...    # OpenRouter — same\nexport CLOUDFLARE_AI_GATEWAY_API_KEY=...   # Cloudflare AI Gateway\n\n# Or use a vendor directly:\nexport ANTHROPIC_API_KEY=...  ·  export OPENAI_API_KEY=...  ·  export GOOGLE_API_KEY=...\n```\n\n| Provider | Type | API key |\n|----------|------|---------|\n| anthropic · google · openai | Direct | vendor key |\n| poe · openrouter · cloudflare | Aggregator | one key, all vendors |\n| deepseek · groq · xai · copilot | Direct | vendor key |\n| local | Direct | Ollama at `localhost:11434` |\n\nAggregators are ideal for council / race / pipeline — one endpoint reaches every model. Routing\nis aggregator-first with per-model direct fallback.\n\n## Common commands\n\n```bash\norca chat                                       # interactive REPL\norca chat \"explain this codebase\"               # one-shot\norca run \"fix the failing tests\" --done-when \"tests pass\"   # goal-loop until criteria met\norca reflect \"why is this test flaky?\"          # Socratic root-cause pass\norca review \"review the changed files\"          # code-review preset\norca council \"SQL or NoSQL here?\" -n 5          # multi-model council\norca race \"write a CSV parser\"                  # multi-model race\norca pipeline \"build a REST API\" --stages 5     # specialist pipeline\norca serve --mcp                                # expose Orca as an MCP server over stdio\norca doctor                                     # runtime / config diagnostics\n```\n\nRun `orca --help` or `/help` inside the REPL for the full surface (28 commands, session\nmanagement, queue/lease control, permission rules, stats, and logs).\n\n## Release quality gates\n\nA manifest-driven gate system for maintainers — release verification as a repeatable system,\nnot ad hoc shell history.\n\n```bash\nnpm run eval:fast      # local black-box operator pack        (63/63)\nnpm run eval:nightly   # + deterministic lint / test / build  (66/66)\nnpm run eval:release   # + bench + recorded CLI journey       (69/69)\n```\n\n1776 automated tests across static / unit / contract / integration / e2e / security / resilience /\nperformance layers. `npm run test:matrix` writes a fresh evidence bundle under `outputs/test-matrix/`.\n\n## Architecture\n\n```\n┌─────────────────────────────────────────────────────┐\n│  Orca CLI  v0.8.16  ·  TypeScript ESM  ·  1776 tests │\n├─────────────────────────────────────────────────────┤\n│  Command Layer   chat · run · council · race ·       │\n│                  pipeline · serve                    │\n├─────────────────────────────────────────────────────┤\n│  Multi-Model Engine   council · race · pipeline ·    │\n│                       provider-aware routing         │\n├─────────────────────────────────────────────────────┤\n│  Agent Runtime   42 tools · 8 hooks · background jobs │\n├─────────────────────────────────────────────────────┤\n│  ink Terminal UI   ScrollBox · InputArea · StatusBar  │\n└─────────────────────────────────────────────────────┘\n```\n\nResolution order: `CLI flags > ENV vars > .orca.json > ~/.orca/config.json`.\n\n## Contributing\n\nContributions welcome. Open an issue to discuss before submitting large PRs.\n\n```bash\ngit clone https://github.com/MARUCIE/orca-cli.git\ncd orca-cli && npm install && npm run build && npm test && npm run eval:fast\n```\n\n## License\n\nMIT\n\n---\n\n<p align=\"center\"><sub>Maurice | maurice_wen@proton.me</sub></p>\n","readmeFilename":"README.md"}