A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
An example pipeline that uses dynamic pipelines and Claude Code to automatically analyse and work on Linear issues.
This example demonstrates an AI-powered issue analysis pipeline built with Buildkite dynamic pipelines and Claude Code. When a Linear issue gets a specific label, a Buildkite pipeline kicks off an AI agent to analyse the issue and start working on it.
👉 See this example in action: buildkite/linear-issue-pipeline-example
buildkite-analyze labelbuildkite-agent pipeline uploadgh CLI) to analyse and work on the issueThe core of the handler is short — read the webhook payload from build metadata, evaluate whether to act, and generate a step with the Buildkite SDK:
// 1. Read the webhook payload that Buildkite stored as build metadata
const payload = JSON.parse(
execSync("buildkite-agent meta-data get buildkite:webhook").toString(),
);
// 2. Evaluate the condition — create/update action with a matching label?
const labels = (payload.data.labels ?? []).map((l) => l.name);
if (!["create", "update"].includes(payload.action) || !labels.includes(process.env.TRIGGER_ON_LABEL)) {
process.exit(0);
}
// 3. Generate a step with the Buildkite SDK and pipe it into `pipeline upload`
const pipeline = new Pipeline();
pipeline.addStep({ label: ":linear: Analyse the issue", command: "scripts/claude.sh" });
execSync("buildkite-agent pipeline upload", { input: pipeline.toYAML() });
The real handler extracts the issue ID, title, and description between steps 2 and 3 so Claude has them on process.env — see scripts/handler.ts.
The key Buildkite features at play:
buildkite-agent pipeline upload — adding steps to a running build based on runtime conditionsbuildkite-agent meta-data — reading webhook payloads stored as build metadata@buildkite/buildkite-sdk — programmatically generating pipeline YAML in TypeScriptThis example shows that dynamic pipelines aren't limited to GitHub workflows. Any webhook source — Linear, Jira, PagerDuty, your own services — can trigger a Buildkite build that evaluates the payload and dynamically decides what to do. The handler pattern (read metadata → evaluate conditions → generate and upload steps) works the same regardless of where the webhook comes from.
To run this yourself, you'll need:
Issue eventsGITHUB_TOKEN, BUILDKITE_API_TOKEN, and LINEAR_API_TOKENbuildkite-analyze label to any Linear issueOriginally built by Grant Colegate and Christian Nunciato as a demo for AWS re:Invent.
See LICENSE (MIT)
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots
MCP server integration for DaVinci Resolve Studio
A Jetbrains IDE IntelliJ plugin aimed to provide coding agents the ability to leverage intelliJ's indexing of the codeba