{
  "markdown": "# Consensus — Multi-AI Provider Plugin for Claude Code\n\nGet unstuck by querying multiple AI providers (GPT-5.5, Gemini, DeepSeek V4 Pro) for diverse perspectives, right from within Claude Code.\n\n## How It Works\n\nWhen you're stuck on a problem, Consensus queries multiple AI providers concurrently — GPT-5.5, Gemini 3.1 Pro, and DeepSeek V4 Pro via OpenRouter by default — then synthesizes their responses to surface common themes, unique insights, and actionable takeaways.\n\n## Installation\n\n### 1. Install `uv` (Python package runner)\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\n### 2. Set API Keys\n\nOnly one key is needed for the default setup:\n\n```bash\nexport OPENROUTER_API_KEY=\"sk-or-...\"   # Routes all three default providers\n```\n\nOptional, for direct API access (bypassing OpenRouter):\n\n```bash\nexport OPENAI_API_KEY=\"sk-...\"          # OpenAI direct API\nexport GEMINI_API_KEY=\"AI...\"           # Google Gemini direct API\n```\n\nAdd them to your shell profile (`~/.bashrc`, `~/.zshrc`, etc.) to persist across sessions.\n\n### 3. Install the Plugin\n\n**Option A — Third-Party Marketplace**:\n\n```\n/plugin marketplace add mark-kimura/kahidreamers-marketplace\n/plugin install consensus@kahidreamers-marketplace\n```\n\n**Option B — Official Plugin Directory** (not yet available — submitted, under review by Anthropic):\n\n```\n/plugin install consensus@claude-plugin-directory\n```\n\n### 4. Enable Auto-Update (Recommended)\n\nFor the official directory, auto-update is enabled by default. For third-party marketplaces, enable it manually:\n\n1. Run `/plugin` in Claude Code\n2. Go to **Marketplaces**\n3. Select **kahidreamers-marketplace**\n4. Choose **Enable auto-update**\n\nWithout this, you'll need to run `/plugin update consensus@kahidreamers-marketplace` manually after each release.\n\n## Usage\n\n### `/consensus:ask`\n\n```\n/consensus:ask help me optimize the SSE connection handling\n```\n\nOr without arguments — Claude infers from conversation context:\n\n```\n/consensus:ask\n```\n\nThis also auto-triggers when you say things like:\n- \"What do other AIs think about this approach?\"\n- \"Can I get a consensus on this?\"\n- \"Cross-check this with other models\"\n\n### `/consensus:config`\n\n```\n/consensus:config              # Show current providers (same as check)\n/consensus:config update       # Update all providers to latest models\n/consensus:config add llama 4  # Add a new provider via OpenRouter\n/consensus:config remove deepseek  # Remove a provider\n/consensus:config openai       # Interactively configure OpenAI (model + routing)\n/consensus:config --reset      # Reset all providers to plugin defaults\n```\n\n### What Happens\n\n1. Claude analyzes your request and conversation context\n2. Crafts a comprehensive prompt with technical details\n3. Queries all available providers concurrently\n4. Synthesizes findings: agreements, unique perspectives, and takeaways\n\nAll intermediate files go to a temp directory — nothing is written to your project.\n\n## Configuration\n\nThe plugin works out of the box with just `OPENROUTER_API_KEY`. Use `/consensus:config` to manage providers interactively, or customize `consensus_config.json` directly:\n\n- **Provider routing**: Route through OpenRouter or call APIs directly (`/consensus:config openai`)\n- **Models**: Add, remove, or update providers (`/consensus:config add llama 4`)\n- **Search modes**: Set default to `\"web\"` (includes web search) or `\"none\"` (faster, no web)\n- **Token limits**: Adjust `max_tokens` per provider\n\n### Config Resolution Order\n\n1. `./consensus_config.json` (project root — for project-specific overrides)\n2. `~/.claude/consensus_config.json` (user config — written by `/consensus:config`, survives plugin updates)\n3. Plugin's built-in `consensus_config.json`\n4. Hardcoded defaults\n\n## Search Modes\n\nBy default, providers include current web information in their responses. If you'd rather get purely model-based perspectives without web search, just say so naturally:\n\n- \"Get a consensus on this, no web search\"\n- \"What do other models think — don't use the web\"\n- \"/consensus:ask without web search, compare approaches to caching\"\n\nClaude will detect your intent and run in the appropriate mode:\n\n- **`web`** (default): Providers include current web information. Good for questions about recent technologies or current best practices.\n- **`none`**: Pure model knowledge, no web search. Faster responses. Good for coding questions, architecture decisions, or when you want unbiased model perspectives.\n\n## Project Structure\n\n```\nconsensus-plugin/\n├── .claude-plugin/\n│   └── plugin.json              # Plugin manifest\n├── commands/\n│   └── config.md                # /consensus:config command\n├── skills/\n│   └── ask/\n│       └── SKILL.md             # /consensus:ask skill (also auto-triggers)\n├── hooks/\n│   └── hooks.json               # SessionStart: checks API keys + uv\n├── scripts/\n│   ├── consensus.py             # Core engine (uv run auto-resolves deps)\n│   └── check-setup.sh           # Setup validator\n├── consensus_config.json        # Default config template\n├── .gitignore\n├── LICENSE\n└── README.md\n```\n\n## Requirements\n\n- [uv](https://docs.astral.sh/uv/) — auto-installs Python dependencies on first run\n- At least one API key (`OPENROUTER_API_KEY` recommended)\n- Claude Code\n\n## License\n\nMIT\n",
  "bytes": 5279,
  "sha": "bba8158d4c5f2be4a46714d47565d6d2709c0283459ca18ac4046b44a9cb897b",
  "repo_slug": "mark-kimura/consensus-plugin",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_mark_kimura_consensus_plugin_consensus_9cae39c5/readme"
}