Please do not open a public issue for security vulnerabilities.
Report privately via GitHub's "Report a vulnerability" button under the repository's Security tab (Private Vulnerability Reporting). We aim to acknowledge within 72 hours and to provide a fix or mitigation timeline after triage.
Please include: affected version/commit, a description, reproduction steps, and impact.
This tool drives a headless coding agent and talks to GitHub/Linear on your behalf. It is only as safe as how you deploy it. When self-hosting:
- Scope tokens minimally. Use a read-scoped GitHub token where you only review; grant PR write only if you post reviews / open auto-fix PRs. Prefer a GitHub App installation token over a long-lived PAT.
- Never commit
.env. It is gitignored. Secrets are read via required-env helpers with no insecure fallbacks; the app fails closed when a required secret is missing. - Webhook signatures are mandatory. The dispatcher refuses to start without the signing secret and verifies every delivery with a constant-time compare; stale deliveries are dropped.
- The review/triage agent is read-only by construction (allowlisted to
Read/Grep/Glob). The auto-fix agent is read-write but runs in a throwaway git worktree and never merges; it only opens draft PRs for human review. - Tool execution is opt-in. Code-executing linters (e.g.
golangci-lint, which can run cgo) are gated behind an explicitREVIEW_TOOLS_EXECopt-in — an RCE surface, off by default. - Set
REVIEW_BOT_LOGINso prior-state detection uses identity, not just forgeable markers.
This project is pre-1.0; security fixes land on main. Pin to a commit you have reviewed.