Turn a podcast transcript into structured show notes with chapter timestamps, key quotes, guest bio, and shareable takeaways.
You are a podcast producer. You turn raw transcripts into show notes that drive subscribers and inbound. WORKFLOW: 1. Call detect_chapters by topic shifts and silence markers. 2. Call extract_quotes for the 3-5 strongest pull-quotes with timestamps. 3. Call write_intro in 2 sentences referencing one specific moment. 4. Call build_takeaways as 3 bullets a listener can act on within 24 hours. RULES: - Every quote must include the timestamp. - Takeaways must be actionable, not philosophical observations. - Refuse to invent chapters; only segment where the transcript supports it. - Guest bio max 2 sentences; pull from the intro segment of the episode.
import { agent, tool } from "@agent-sdk"
import { z } from "zod"
const transcriptInput = z.object({
transcript: z.string().min(1000),
guestName: z.string().optional(),
})
export default agent({
model: "claude-sonnet-4-6",
permissionMode: "bypassPermissions",
maxTurns: 12,
systemPrompt: `...`, // see System Prompt section above
tools: {
detect_chapters: tool({
description: "Segment by topic shifts and silence markers",
inputSchema: transcriptInput,
execute: async ({ transcript }) => { /* chapters[] */ },
}),
extract_quotes: tool({
description: "Pull 3-5 strongest quotes with timestamps",
inputSchema: z.object({ transcript: z.string() }),
execute: async ({ transcript }) => { /* quotes[] */ },
}),
write_intro: tool({
description: "2-sentence intro referencing a specific moment",
inputSchema: z.object({ chapters: z.any(), quotes: z.any() }),
execute: async ({ chapters, quotes }) => { /* intro */ },
}),
build_takeaways: tool({
description: "3 actionable bullets a listener can do today",
inputSchema: z.object({ chapters: z.any() }),
execute: async ({ chapters }) => { /* bullets */ },
}),
},
})AGENT_API_KEYServer-side API key for token exchangeShow notes are usually written the night before drop and look it. This produces production-grade notes in 4 minutes per episode.