{"_id":"@codeninza/aicouncil","_rev":"7-f5e3f10c1e6e9d807d206e05c96df39d","name":"@codeninza/aicouncil","dist-tags":{"latest":"0.4.3"},"versions":{"0.1.0":{"name":"@codeninza/aicouncil","version":"0.1.0","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.1.0","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"2051f5da45c9a8b0d36c02eba96ddac50fd83268","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.1.0.tgz","fileCount":6,"integrity":"sha512-vGtVHG7akC+Lm6TTU+qRazqttKBbk45FKysE67+HsXiiXmpklWAJoq15IXEqZ0TXHKe8CmydOl7xEXGl9U3VFQ==","signatures":[{"sig":"MEQCIBmUrCndhQERLbExwN0p6j0IaOe4oMuHuizl/eWxLPSmAiACyGGhL5BcDiin/uFyyfMZpn4m30ZLUMjLRxqQhl6hxA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33195},"main":"./index.ts","type":"module","gitHead":"f8853ffe60912ddadb941780987650293364862a","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.1.0_1785818473192_0.2752976395182758","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@codeninza/aicouncil","version":"0.2.0","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.2.0","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"253ea278226dd307898a5ec1cde920de41b603ba","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.2.0.tgz","fileCount":6,"integrity":"sha512-YG0Xo+bemR5GayAFt3d+haFgdHco1PGfhIkXauyvAxciEfeF/2mnxruDhrDjq3gV0gW5bSTa/ZH8IcNAUemV3w==","signatures":[{"sig":"MEYCIQCO8yv/UNBQSIYYlJOBKo3z4p8uxBTF0lfurME5BWCYHgIhALzePu1f/rSSQ4pUM6eX+kSMo5WPtF82TfGJNmPm1vD7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40181},"main":"./index.ts","type":"module","gitHead":"43e016015725015166220538c34f8953d4019265","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.2.0_1785819204085_0.40643935465840575","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@codeninza/aicouncil","version":"0.3.0","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.3.0","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"5f5cdeaafd4c5778de2d247dfbe373a2795c10e1","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.3.0.tgz","fileCount":6,"integrity":"sha512-kAFykgZ8Q3FCpXflXrNh+BAWoXJ8Itl9pGbE/D5qf2iBWlTQNToreRVfn/zabJeMKCZYwsnggznCEdOEClxQ9w==","signatures":[{"sig":"MEUCIQC5CHluoS4TtEqeBRFdRrwpDdqUxG2L/ysBjdrmMzYHUQIgKko40+etU36lT7/EyFuyfytc+QKXr6ZKJTjJZKD0kZc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56289},"main":"./index.ts","type":"module","gitHead":"18f8952b2eb56894c5df0c44cdcdf112126360c3","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.3.0_1785820242177_0.34272194639982767","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@codeninza/aicouncil","version":"0.4.0","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.4.0","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"c197e473d41440020ea06f13e4f011554b91bc53","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.4.0.tgz","fileCount":6,"integrity":"sha512-p8fT8w4dO/f03TmONQT1MrwN4l6h5+z65yOqHbmBgw8/qRFZ/hvh8p3QEz/O/f2HhWdXzUxuHtojZYnj7pSv+w==","signatures":[{"sig":"MEUCIQDEnF1wS/kQACSlV08QGD6Zl1yyt5atOG7USiMs6movYQIgQuwaeHpRt78vth3RKuQDNkNoeP0cmhgDeqnozDd0uLk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70138},"main":"./index.ts","type":"module","gitHead":"c84d6d21233a119bc4e27c79944bba88f9cc194c","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.4.0_1785822640662_0.698342111715597","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@codeninza/aicouncil","version":"0.4.1","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.4.1","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"482da193b296219ce62ee2194dfd0e3c39f324dd","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.4.1.tgz","fileCount":6,"integrity":"sha512-/zJUvxy86uxUTStABUV4cTvFgoCWoQKZvEwIxahB0z1Ed8oVoHMateeCoLkliNbKoCxMGGMBLgHeUCNKKuHWiA==","signatures":[{"sig":"MEQCIGtiVDcRIB8q9vZ/Cvew0zUOVs9NEv8DH+EyPTLA5FY7AiAnE/ldnoJTgYf3w44WgfiYBb71hH/aWf/PFIKbtuvWsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75162},"main":"./index.ts","type":"module","gitHead":"954149388dbe886fa6956d9261d7639a1c90c5d2","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.4.1_1785833568398_0.5246041954733631","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@codeninza/aicouncil","version":"0.4.2","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","_id":"@codeninza/aicouncil@0.4.2","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"pi":{"extensions":["./index.ts"]},"omp":{"extensions":["./index.ts"]},"dist":{"shasum":"4724585f13076f2a6cf32c161f89a31817d3de0a","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.4.2.tgz","fileCount":6,"integrity":"sha512-WfxNAkzex8mtLOz2qtlyBlMLAR+5DItcCLgQmulymhHv5mcJ2r+WHyWcCLatj/oBvqOCqJfLlP9xKqM55Hktmg==","signatures":[{"sig":"MEUCIQDNkEMeh/xKv1UwmlsbumQQdl/Ct7Dx3T6wFOVfXIl1TwIgcCFKbYwxENLxSOtdkOJCByZWeGJ8CU28Kjqf57fNOV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78381},"main":"./index.ts","type":"module","gitHead":"c7b7d2b42b89e075171c914d0a9530a57b03d8d5","scripts":{"test":"bun test","check":"tsc --noEmit"},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"repository":{"url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git","type":"git"},"_npmVersion":"10.9.7","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"zod":"^4","typescript":"^5.7.0","@types/node":"^22","@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/aicouncil_0.4.2_1785833707430_0.72647927754826","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@codeninza/aicouncil","version":"0.4.3","description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","type":"module","main":"./index.ts","license":"MIT","author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git"},"keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"omp":{"extensions":["./index.ts"]},"pi":{"extensions":["./index.ts"]},"scripts":{"test":"bun test","check":"tsc --noEmit"},"peerDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*"},"peerDependenciesMeta":{"@oh-my-pi/pi-ai":{"optional":true},"@oh-my-pi/pi-coding-agent":{"optional":true}},"devDependencies":{"@oh-my-pi/pi-ai":"*","@oh-my-pi/pi-coding-agent":"*","@types/node":"^22","typescript":"^5.7.0","zod":"^4"},"_id":"@codeninza/aicouncil@0.4.3","gitHead":"842924385c2b34b1eece3076b2414b7969c322b4","bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-PbKthM1Gie7S0e5va0KUfcNPHFQf7q17Gb++YGhWaZAFcoYILppatXE/Iw6MjdTFk9cHINyrNjWGrKVCEPU9fw==","shasum":"dc98615330f361ef26abace8e3c6ba942c36981c","tarball":"https://registry.npmjs.org/@codeninza/aicouncil/-/aicouncil-0.4.3.tgz","fileCount":6,"unpackedSize":80798,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAyr3GD7RT0j/d60BDZ+lzz2FWLdFGMsBSwjZjSanyKNAiANr/26MNtnDUhG4oyGfGd76CEmV1U8AB1m3mRJDnzhrA=="}]},"_npmUser":{"name":"codeninza","email":"mkraofx@gmail.com"},"directories":{},"maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aicouncil_0.4.3_1785840457470_0.17299253587712604"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-04T04:41:12.885Z","modified":"2026-08-04T10:47:37.751Z","0.1.0":"2026-08-04T04:41:13.369Z","0.2.0":"2026-08-04T04:53:24.230Z","0.3.0":"2026-08-04T05:10:42.312Z","0.4.0":"2026-08-04T05:50:40.817Z","0.4.1":"2026-08-04T08:52:48.536Z","0.4.2":"2026-08-04T08:55:07.573Z","0.4.3":"2026-08-04T10:47:37.605Z"},"bugs":{"url":"https://github.com/mynenikoteshwarrao/aicouncil/issues"},"author":{"name":"Koteshwar Rao M","email":"mkraofx@gmail.com"},"license":"MIT","homepage":"https://github.com/mynenikoteshwarrao/aicouncil#readme","keywords":["pi-package","pi-extension","omp","oh-my-pi","llm-council","council","multi-model","consensus","ai"],"repository":{"type":"git","url":"git+https://github.com/mynenikoteshwarrao/aicouncil.git"},"description":"A council of frontier models for oh-my-pi: independent opinions → anonymized peer review → chairman synthesis, running on your existing subscriptions (Anthropic, Codex, Antigravity — no API keys).","maintainers":[{"name":"codeninza","email":"mkraofx@gmail.com"}],"readme":"# aicouncil\n\n**A council of frontier models for [oh-my-pi](https://github.com/can1357/oh-my-pi).**\n[Karpathy's llm-council](https://github.com/karpathy/llm-council) flow, inside your\ncoding agent, on the subscriptions you already pay for — no API keys, no OpenRouter.\n\n```\n/council <question>\n   │\n   ├─ Stage 1  OPINIONS    every member answers independently, in parallel\n   ├─ Stage 2  REVIEW      every member ranks the anonymized answers (A/B/C/D)\n   └─ Stage 3  SYNTHESIS   the chairman reads everything and writes the verdict\n```\n\nOne model can be confidently wrong. Several independent answers plus adversarial,\nanonymized cross-review catch what a single model misses — and the chairman is\ninstructed to surface disagreements, not paper over them.\n\n## Install\n\n```bash\nomp install @codeninza/aicouncil\n```\n\nOr manually: drop this folder into `~/.omp/agent/extensions/`.\n\n## Setup\n\nLog into the providers you want seated (inside omp):\n\n```\n/login anthropic\n/login openai-codex\n/login google-antigravity\n```\n\nCheck the seats:\n\n```\n/council roster\n```\n\nThe default roster is Claude Fable + Claude Opus + Codex + Gemini (Antigravity),\nchaired by Opus. If a seat shows `UNRESOLVED`, run `/council models` to see the exact\nmodel IDs your logins expose and set them in your config (below). Model specs are\nfuzzy — `\"anthropic/opus\"` finds `claude-opus-*` — but exact IDs are safest.\n\n## Use\n\n```\n/council should we use SQLite or Postgres for this service?\n```\n\nManage the roster without touching config files:\n\n```\n/council add anthropic/claude-haiku-5 Haiku    # seat a member\n/council remove Codex                          # unseat a member\n/council chair google-antigravity/gemini-3-pro # change the chairman\n/council roster                                # see the result\n/council list                                  # table: seats, positions, last peer rank\n```\n\nChanges persist to your `council.json` (project-level config wins if it defines the roster).\n\nBy default the council also sees a slice of your current session, so \"is this plan\nsound?\" works mid-task. The main agent gets a `council` tool too, so plain\nconversation works:\n\n> ask the council whether this migration strategy is safe\n\nThe verdict lands in the chat (and in context, so the agent can act on it). Every run\nalso writes a **self-contained HTML dashboard** — roster, the 3-stage flow, each seat's\nopinion with timing/tokens, the anonymization map, a who-ranked-whom matrix, and the\nBorda leaderboard — plus a markdown transcript, to `<cwd>/.omp/council/`. Open the\nlatest with:\n\n```\n/council last\n```\n\nWhile the council deliberates, a live status widget in omp shows each seat thinking,\nanswering, reviewing, and the chair synthesizing — and a **live communication graph**\nauto-opens in your browser: every agent is a node, and glowing lines animate while\nthey talk (question → seats, seats reading each other's anonymized answers, everything\nconverging into the chairman). Open it any time with:\n\n```\n/council live\n```\n\nSet `liveGraph: false` in config to turn the auto-open off.\n\n## Config\n\nCreate `~/.omp/agent/council.json` (user-wide) or `<project>/.omp/council.json`\n(per-project, wins). Any subset of keys; the rest fall back to defaults:\n\n```json\n{\n  \"members\": [\n    { \"model\": \"anthropic/claude-fable-5\", \"nick\": \"Fable 5\" },\n    { \"model\": \"anthropic/claude-opus-5\", \"nick\": \"Opus 5\" },\n    { \"model\": \"openai-codex/gpt-5-codex\", \"nick\": \"Codex\" },\n    { \"model\": \"google-antigravity/gemini-3-pro\", \"nick\": \"Gemini\" }\n  ],\n  \"chairman\": \"anthropic/claude-opus-5\"\n}\n```\n\n| Key | Default | Meaning |\n| --- | --- | --- |\n| `members` | 4 seats | `{ model, nick?, effort? }` — any number of seats ≥ 2 |\n| `chairman` | `anthropic/claude-opus-5` | who writes the final synthesis |\n| `chairmanEffort` | `high` | reasoning effort: minimal/low/medium/high/xhigh/max |\n| `effort` | `medium` | default member reasoning effort |\n| `maxTokensOpinion` / `maxTokensReview` / `maxTokensSynthesis` | 3000 / 1500 / 4000 | per-stage output caps |\n| `timeoutMs` | 240000 | per model call |\n| `includeSessionContext` | `true` | prepend recent conversation to the question |\n| `contextCharBudget` | 24000 | size of that slice |\n| `writeTranscript` | `true` | full deliberation to `.omp/council/` |\n| `exposeTool` | `true` | let the main agent convene the council itself |\n\n## Cost\n\nOne run = `2N + 1` model calls (9 with four seats), each drawing on that provider's\nsubscription limits. Reviews are capped small; opinions and synthesis dominate.\nA failed seat (rate limit, expired login) doesn't sink the council — it deliberates\nwith whoever showed up, and the verdict footer tells you who was missing.\n\n## Development\n\n```bash\nbun install\nbun test          # mocked-provider pipeline tests\nbunx tsc --noEmit # typecheck against the real omp packages\n```\n\n## License\n\nMIT © Koteshwar Rao M\n","readmeFilename":"README.md"}