docs/guides/example-projects/claude-changelog-generator.mdx
This demo how to build an AI agent using the Claude Agent SDK that explores GitHub commits, investigates unclear changes by fetching diffs on demand, and generates developer-friendly changelogs.
<video controls className="w-full aspect-video" src="https://github.com/user-attachments/assets/ea151c1d-f866-4da4-90e4-96d65008d51a"
</video>
<Card title="View the changelog generator repo" icon="GitHub" href="https://github.com/triggerdotdev/examples/tree/main/changelog-generator"
Click here to view the full open source code for this project in our examples repository on GitHub. You can fork it and use it as a starting point for your own project. </Card>
The agent workflow:
list_commits MCP tool to get all commitslist_commits and get_commit_diff called autonomously by Claude| File | Description |
|---|---|
trigger/generate-changelog.ts | Main task with custom tools |
trigger/changelog-stream.ts | Stream definition for real-time output |
app/api/generate-changelog/route.ts | API endpoint that triggers the task |
app/response/[runId]/page.tsx | Streaming display page |
You need to mark the Claude Agent SDK as external in your trigger.config.ts file.
import { defineConfig } from "@trigger.dev/sdk";
export default defineConfig({
project: process.env.TRIGGER_PROJECT_REF!,
runtime: "node",
logLevel: "log",
maxDuration: 300,
build: {
external: ["@anthropic-ai/claude-agent-sdk"],
},
machine: "small-2x",
});