Broccoli: Open-source harness for running AI coding agents from Linear tickets in cloud sandboxes

✍️ OpenClawRadar📅 Published: April 22, 2026🔗 Source
Broccoli: Open-source harness for running AI coding agents from Linear tickets in cloud sandboxes
Ad

What Broccoli does

Broccoli turns Linear tickets into shipped PRs by running AI coding agents in isolated cloud sandboxes. Each task gets its own sandbox where it checks out the repo, uses ticket context, implements solutions, runs tests and review loops, then opens a pull request for team review.

Architecture and deployment

The implementation uses:

  • Webhook deployment: GCP
  • Sandbox: GCP or Blaxel
  • Project management: Linear
  • Code hosting & CI/CD: GitHub

It's deployed to your own GCP project against your Postgres database with no third-party control plane. The deployment is production-grade using Cloud Run + Secret Manager + webhook deduplication + durable job state.

Key features

  • Linear ticket → reviewable PR workflow
  • Your infrastructure, keys, and data stay within your tenancy
  • AI code review on every PR using Claude and Codex
  • Customizable prompt templates that you can fork, tune, and version
  • Deploys in ~30 minutes with one bootstrap script and one config file
Ad

Deployment prerequisites

To deploy, you need:

  • GCP project with billing attached and gcloud logged in
  • GitHub App with specific permissions (Contents, Pull requests, Issues = read/write; Metadata = read-only; subscribed to Pull request review event)
  • Linear bot user (dedicated, not personal account) with API key
  • OpenAI and Anthropic API keys with billing enabled
  • Linear webhook pointing at ${Service URL}/webhooks/linear using auto-generated broccoli-oss-linear-webhook-secret

Usage results

In the last four weeks, 100% of PRs from non-developers were shipped via Broccoli. For developers on the team, this share is around 60%, with more complicated features requiring manual back-and-forth design with Codex/Claude Code.

📖 Read the full source: HN AI Agents

Ad

👀 See Also