Run agora init to create a config in .ca/config.json.
- Get a key at openrouter.ai
- Set it:
export OPENROUTER_API_KEY=your_key_here - Verify:
agora doctor
Provider environment variable names follow the pattern PROVIDER_API_KEY where possible (e.g., OPENAI_API_KEY, ANTHROPIC_API_KEY, OPENROUTER_API_KEY). Run agora providers to see all supported providers and their required env vars.
- Run
agora doctor --liveto test actual API connectivity - Check if your API key is expired or rate-limited
- Check your OpenRouter key budget and provider/model availability
Your config file has a syntax error. Options:
- Edit manually: open
.ca/config.jsonin your editor and fix the syntax - Regenerate: delete
.ca/and runagora initagain - Validate: paste your config into jsonlint.com
All configured LLM providers returned errors. Common causes:
- API keys missing: Run
agora doctorto check - Network issues: Check your internet connection
- Rate limiting: Wait a few minutes and retry
- Invalid model: Check your config for typos in model names
If the diff contains no code changes (only whitespace, comments, or empty), the pipeline returns ACCEPT with "No code changes detected."
- Use quick mode:
agora review --quick(L1 only, no debate) - Reduce reviewers:
agora review --reviewers 2 - Large diffs are automatically chunked; consider splitting your PR
CodeAgora uses git for context-aware reviews. Run from within a git repo, or provide an explicit diff file:
agora review path/to/my.diffFor a complete setup checklist, recommended workflow snippets, provider secrets, permissions, and context-limit guidance, see GitHub Actions Setup Guide.
Fork PRs don't have access to repository secrets. The review will be skipped with a warning. Options:
- Ask the maintainer to run the review manually
- Configure Actions for forks
The PR diff exceeds the configured limit (default: 5000 lines). Options:
- Split into smaller PRs
- Increase the limit in your workflow:
with: max-diff-lines: '10000'
- Verify your MCP config (
~/.claude/mcp.json):{ "mcpServers": { "codeagora": { "command": "npx", "args": ["-y", "@codeagora/mcp"] } } } - Restart Claude Code
- Check that
npx -y @codeagora/mcpstarts without errors
repo_pathis optional, but when provided it must point to the exact workspace root or a real directory inside the current repository checkout.- Symlinks and paths outside the repo are rejected on purpose so MCP tools do not read or write unrelated files.
- If you only need the current workspace, omit
repo_pathand let the server use its current working directory. - The MCP error body now includes
guidancewith the same retry hint.
| Code | Meaning | CI Action |
|---|---|---|
| 0 | Review command completed and no requested failure gate tripped | Pipeline continues |
| 1 | --fail-on-reject or --fail-on-severity tripped |
Pipeline fails |
| 2 | Setup/input/config error | Fix setup or command arguments |
| 3 | Runtime or pipeline failure | May be transient, retry |