[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-vapi-vapi-bootstrap-framework":3,"mdc-b3ons0-key":43,"related-repo-vapi-vapi-bootstrap-framework":8827,"related-org-vapi-vapi-bootstrap-framework":8922},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":26,"repoUrl":27,"updatedAt":28,"license":29,"forks":30,"topics":31,"repo":38,"sourceUrl":41,"mdContent":42},"vapi-bootstrap-framework","scaffold Vapi voice agent projects","Scaffold a complete Vapi voice-agent project from a ROUGH_DRAFT.md spec. Generates package.json, tsconfig.json, .env.example, .gitignore, and the full TypeScript framework — scenario registry, per-language voice\u002Ftranscriber stack, prompt composer, assistant builder, and an idempotent bootstrap script — plus one rough first-draft body.md per scenario. Drop this skill in any project's .cursor\u002Fskills\u002F folder (or ~\u002F.cursor\u002Fskills\u002F for global use), write a ROUGH_DRAFT.md at the project root, name the skill, and `bun run bootstrap` puts the entire fleet live in dashboard.vapi.ai. Use when the user asks to scaffold or bootstrap Vapi voice agents from a rough draft, build a Vapi assistant fleet, or invokes this skill by name. Targets Bun + TypeScript + @vapi-ai\u002Fserver-sdk.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"vapi","Vapi","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fvapi.png","VapiAI",[13,17,20,23],{"name":14,"slug":15,"type":16},"TypeScript","typescript","tag",{"name":18,"slug":19,"type":16},"Agents","agents",{"name":21,"slug":22,"type":16},"Engineering","engineering",{"name":24,"slug":25,"type":16},"Voice","voice",53,"https:\u002F\u002Fgithub.com\u002FVapiAI\u002Fskills","2026-07-20T05:57:26.732699","MIT",7,[32,33,34,35,36,8,37],"agent-skills","claude-code","codex-skills","openclaw-skills","skills","vapi-ai",{"repoUrl":27,"stars":26,"forks":30,"topics":39,"description":40},[32,33,34,35,36,8,37],"A set of skills and MCP connector to allow agents to build Vapi AI agents, from creating tools and assistants to a phone call","https:\u002F\u002Fgithub.com\u002FVapiAI\u002Fskills\u002Ftree\u002FHEAD\u002Fvapi-bootstrap-framework","---\nname: vapi-bootstrap-framework\ndescription: Scaffold a complete Vapi voice-agent project from a ROUGH_DRAFT.md spec. Generates package.json, tsconfig.json, .env.example, .gitignore, and the full TypeScript framework — scenario registry, per-language voice\u002Ftranscriber stack, prompt composer, assistant builder, and an idempotent bootstrap script — plus one rough first-draft body.md per scenario. Drop this skill in any project's .cursor\u002Fskills\u002F folder (or ~\u002F.cursor\u002Fskills\u002F for global use), write a ROUGH_DRAFT.md at the project root, name the skill, and `bun run bootstrap` puts the entire fleet live in dashboard.vapi.ai. Use when the user asks to scaffold or bootstrap Vapi voice agents from a rough draft, build a Vapi assistant fleet, or invokes this skill by name. Targets Bun + TypeScript + @vapi-ai\u002Fserver-sdk.\nlicense: MIT\ncompatibility: Requires Bun, internet access, and a Vapi private API key (VAPI_API_KEY).\nmetadata:\n  author: vapi\n  version: \"1.0\"\n---\n\n# Vapi bootstrap framework\n\nScaffold an entire Vapi voice-agent project from a single `ROUGH_DRAFT.md` spec. Works in an empty folder or alongside an existing Bun + TypeScript project. One `bun run bootstrap` after this skill finishes puts the whole fleet live in `dashboard.vapi.ai`.\n\n## What this skill produces\n\n**Project scaffolding** (only created if absent — never overwritten):\n- `package.json` — Bun + `@vapi-ai\u002Fserver-sdk` + a `bootstrap` script\n- `tsconfig.json` — strict no-emit TypeScript validation\n- `.env.example` — `VAPI_API_KEY` placeholder + one slot per `(scenario × language)` tuple\n- `.gitignore` — `node_modules`, `.env*.local`, OS junk\n\n**Framework spine** (always created — architectural; every later change extends a slot here, never the spine itself):\n- `src\u002Fassistants\u002Flanguages.ts` — per-language voice + transcriber stack\n- `src\u002Fassistants\u002FloadPrompt.ts` — `loadPrompt(scenarioId, languageId)` composer\n- `src\u002Fassistants\u002Fscenarios\u002Findex.ts` — the scenario registry\n- `src\u002Fassistants\u002FbuildAssistant.ts` — composes a full Vapi assistant body for any `(scenarioId, languageId)` tuple\n- `src\u002Fassistants\u002Fprompts\u002Fshared\u002Fpreambles\u002Fes.md` — Spanish language preamble (extend with more languages later)\n\n**Content** (always created — one set per scenario detected in the rough draft):\n- `src\u002Fassistants\u002Fscenarios\u002F\u003CscenarioId>.ts` — id, name, language-keyed first message\n- `src\u002Fassistants\u002Fprompts\u002F\u003CscenarioId>\u002Fbody.md` — rough first-draft system prompt\n- `src\u002Fassistants\u002Fprompts\u002F\u003CscenarioId>\u002Foff-topic-es.md` — Spanish redirect lines\n\n**Entry point** (always created):\n- `src\u002Fbootstrap.ts` — idempotent double loop over scenarios × languages\n\nDefaults: languages `en` + `es`. Model `openai gpt-4.1` temperature `0.5`. Voices ElevenLabs `eleven_turbo_v2` (EN) \u002F `eleven_multilingual_v2` (ES). Transcriber Deepgram `nova-3` (EN) \u002F Soniox `stt-rt-v4` (ES). Override these only if the user explicitly asks.\n\n## Workflow\n\n1. **Check for `ROUGH_DRAFT.md`** at the project root.\n   - If present → continue with step 2.\n   - If missing → tell the user the skill needs a rough draft to work from. Offer the template under \"ROUGH_DRAFT.md template\" below; either paste it in for them to fill out, or wait for them to provide their own. Don't proceed past this step without one.\n2. **Detect scenarios** — every `## N. \u003Cscenario name>` heading is one scenario. Derive a snake_case `scenarioId` from the name (e.g. \"Lead Qualification & Screening\" → `qualification`; \"Appointment Scheduling\" → `appointment`). When in doubt, pick the shortest unambiguous noun. Keep ids short — they become env var names.\n3. **Extract the opening line** — under each scenario, look for `**On the page**`, `**Opening**`, `**Greeting**`, or the first quoted string in the section. That's `firstMessage.en` verbatim.\n4. **Distill the flow** — `**What happens**` (or equivalent prose) becomes a rough first-draft `body.md`. Persona-driven, not a contract — no failure rules, no exact wordings, no scripted off-ramps yet. Keep it short.\n5. **Scaffold the project root** — for each of `package.json`, `tsconfig.json`, `.env.example`, `.gitignore`: if the file is absent, create it from the template below. If `.env.example` already exists, append any missing `VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>` slots; never reorder or remove existing lines. If `package.json` exists, leave it alone but verify it has `@vapi-ai\u002Fserver-sdk` in deps plus `bootstrap` and `typecheck` scripts — tell the user if any are missing instead of editing.\n6. **Generate the framework spine** — copy the five spine files verbatim from the templates below. They don't change between projects; only the scenario registry's imports do.\n7. **Generate per-scenario files** — one `scenarios\u002F\u003Cid>.ts`, one `prompts\u002F\u003Cid>\u002Fbody.md`, one `prompts\u002F\u003Cid>\u002Foff-topic-es.md` per detected scenario.\n8. **Wire up the registry** — `scenarios\u002Findex.ts` imports every scenario and exports the `SCENARIOS` const, `ScenarioId`, `SCENARIO_IDS`, `scenarioFor`.\n9. **Write `src\u002Fbootstrap.ts`** with the double-loop template below.\n10. **Translate first messages to Spanish** — natural Latin American Spanish, brand names untranslated.\n11. **Tell the user how to run it** (see \"Verification\" below).\n\nKeep each scenario's `clientTools` array empty in this skill — functional capture tools land in a follow-up step. Do **not** rewrite `body.md` as a contract here either — that's a separate step.\n\n## File templates\n\nTemplates use these placeholders that you substitute per project:\n- `\u003CPROJECT_NAME>` — slug from the rough draft title (`# Rough draft — \u003CX>` → snake\u002Fkebab-case of X). Fallback: `vapi-voice-agents`.\n- `\u003CSCENARIO_ID>` — snake_case scenario id (e.g. `qualification`)\n- `\u003CSCENARIO_NAME>` — human-readable name (e.g. `Lead Qualification`)\n- `\u003CFIRST_MESSAGE_EN>` — verbatim opening line from the rough draft\n- `\u003CFIRST_MESSAGE_ES>` — natural Spanish translation\n- `\u003CBODY_DRAFT>` — distilled rough first-draft prompt\n- `\u003CSCENARIO_IMPORTS>` — one `import { \u003Cid> } from \".\u002F\u003Cid>.ts\";` per scenario, alphabetized\n- `\u003CSCENARIO_KEYS>` — comma-separated scenario ids inside `SCENARIOS = { ... }`\n- `\u003CENV_ASSISTANT_SLOTS>` — one commented line per `(scenario × language)`: `# VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>=`\n\n### `package.json` (only if absent)\n\n```json\n{\n  \"name\": \"\u003CPROJECT_NAME>\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"type\": \"module\",\n  \"scripts\": {\n    \"bootstrap\": \"bun run src\u002Fbootstrap.ts\",\n    \"typecheck\": \"tsc --noEmit\"\n  },\n  \"dependencies\": {\n    \"@vapi-ai\u002Fserver-sdk\": \"^1.2.0\"\n  },\n  \"devDependencies\": {\n    \"@types\u002Fbun\": \"^1.3.13\",\n    \"typescript\": \"^5.9.3\"\n  },\n  \"packageManager\": \"bun@1.3.1\"\n}\n```\n\n### `tsconfig.json` (only if absent)\n\n```json\n{\n  \"compilerOptions\": {\n    \"target\": \"ES2022\",\n    \"module\": \"NodeNext\",\n    \"moduleResolution\": \"NodeNext\",\n    \"allowImportingTsExtensions\": true,\n    \"noEmit\": true,\n    \"strict\": true,\n    \"types\": [\"bun\"]\n  },\n  \"include\": [\"src\u002F**\u002F*.ts\"]\n}\n```\n\n### `.env.example` (create if absent; extend if present)\n\n```dotenv\n# Get this from https:\u002F\u002Fdashboard.vapi.ai\u002Fkeys\nVAPI_API_KEY=\n\n# One slot per (scenario × language). First `bun run bootstrap` prints the\n# ids; paste them here, then re-run for idempotent updates.\n\u003CENV_ASSISTANT_SLOTS>\n```\n\n### `.gitignore` (only if absent)\n\n```gitignore\n# dependencies\nnode_modules\n\n# env (local-only secrets)\n.env*.local\n\n# os junk\n.DS_Store\n\n# bun\n*.tsbuildinfo\n```\n\n### `src\u002Fassistants\u002Flanguages.ts`\n\n```ts\n\u002F**\n * Per-language voice + transcriber stack. Adding a 3rd language is one\n * entry in each record below.\n *\u002F\nimport type { LanguageId } from \".\u002FloadPrompt.ts\";\n\nexport type { LanguageId };\n\ninterface VoiceConfig {\n  provider: \"11labs\";\n  model: string;\n  voiceId: string;\n}\n\ninterface TranscriberConfig {\n  provider: \"deepgram\" | \"soniox\";\n  model: string;\n  language: string;\n}\n\nconst VOICE_BY_LANGUAGE: Record\u003CLanguageId, VoiceConfig> = {\n  en: {\n    provider: \"11labs\",\n    model: \"eleven_turbo_v2\",\n    voiceId: \"ZoiZ8fuDWInAcwPXaVeq\",\n  },\n  es: {\n    provider: \"11labs\",\n    model: \"eleven_multilingual_v2\",\n    voiceId: \"JYyJjNPfmNJdaby8LdZs\",\n  },\n};\n\nconst TRANSCRIBER_BY_LANGUAGE: Record\u003CLanguageId, TranscriberConfig> = {\n  en: { provider: \"deepgram\", model: \"nova-3\", language: \"en\" },\n  es: { provider: \"soniox\", model: \"stt-rt-v4\", language: \"es\" },\n};\n\nexport const voiceFor = (languageId: LanguageId): VoiceConfig =>\n  VOICE_BY_LANGUAGE[languageId];\n\nexport const transcriberFor = (languageId: LanguageId): TranscriberConfig =>\n  TRANSCRIBER_BY_LANGUAGE[languageId];\n```\n\n### `src\u002Fassistants\u002FloadPrompt.ts`\n\n```ts\n\u002F**\n * EN returns body.md unchanged. ES prepends a Spanish preamble with the\n * scenario's off-topic redirects spliced into {{OFF_TOPIC_LINES}}.\n * One body.md per scenario drives every language variant.\n *\u002F\nimport { readFileSync } from \"node:fs\";\nimport { resolve } from \"node:path\";\n\nexport type LanguageId = \"en\" | \"es\";\n\nconst PROMPT_DIR = resolve(import.meta.dir, \"prompts\");\n\nconst read = (relativePath: string): string =>\n  readFileSync(resolve(PROMPT_DIR, relativePath), \"utf8\");\n\nexport const loadPrompt = (\n  scenarioId: string,\n  languageId: LanguageId,\n): string => {\n  const body = read(`${scenarioId}\u002Fbody.md`);\n  if (languageId === \"en\") return body;\n\n  const offTopic = read(`${scenarioId}\u002Foff-topic-${languageId}.md`).trim();\n  const preamble = read(`shared\u002Fpreambles\u002F${languageId}.md`).replace(\n    \"{{OFF_TOPIC_LINES}}\",\n    offTopic,\n  );\n  return `${preamble}\\n\\n${body}`;\n};\n```\n\n### `src\u002Fassistants\u002Fscenarios\u002Findex.ts`\n\n```ts\n\u002F**\n * Scenario registry. Adding a new scenario is one entry here plus one new\n * file under `.\u002F\u003Cscenario-id>.ts` and matching prompts under `..\u002Fprompts\u002F\u003Cid>\u002F`.\n *\u002F\n\u003CSCENARIO_IMPORTS>\n\nexport const SCENARIOS = {\n  \u003CSCENARIO_KEYS>\n} as const;\n\nexport type ScenarioId = keyof typeof SCENARIOS;\n\nexport const SCENARIO_IDS = Object.keys(SCENARIOS) as ScenarioId[];\n\nexport const scenarioFor = (id: ScenarioId) => SCENARIOS[id];\n```\n\n### `src\u002Fassistants\u002FbuildAssistant.ts`\n\n```ts\n\u002F**\n * Compose a full Vapi assistant body for a (scenario, language) tuple.\n * Voice + transcriber come from languages.ts; prompt from loadPrompt;\n * name + firstMessage + clientTools from the scenario.\n *\u002F\nimport { transcriberFor, voiceFor } from \".\u002Flanguages.ts\";\nimport { loadPrompt, type LanguageId } from \".\u002FloadPrompt.ts\";\nimport { scenarioFor, type ScenarioId } from \".\u002Fscenarios\u002Findex.ts\";\n\nexport type { LanguageId, ScenarioId };\n\nexport const buildAssistant = (\n  scenarioId: ScenarioId,\n  languageId: LanguageId,\n) => {\n  const scenario = scenarioFor(scenarioId);\n  const systemPrompt = loadPrompt(scenarioId, languageId);\n\n  return {\n    name: `${languageId.toUpperCase()} - ${scenario.name}`,\n    firstMessage: scenario.firstMessage[languageId],\n    voice: voiceFor(languageId),\n    transcriber: transcriberFor(languageId),\n    model: {\n      provider: \"openai\" as const,\n      model: \"gpt-4.1\",\n      temperature: 0.5,\n      messages: [{ role: \"system\" as const, content: systemPrompt }],\n      tools: scenario.clientTools,\n    },\n  };\n};\n```\n\n### `src\u002Fassistants\u002Fscenarios\u002F\u003CSCENARIO_ID>.ts`\n\n```ts\n\u002F**\n * \u003CSCENARIO_NAME> scenario. Plain data: id, name, language-keyed first\n * message. Later steps add `clientTools` (capture tools fire mid-call).\n *\u002F\nexport const \u003CSCENARIO_ID> = {\n  id: \"\u003CSCENARIO_ID>\" as const,\n  name: \"\u003CSCENARIO_NAME>\",\n  firstMessage: {\n    en: \"\u003CFIRST_MESSAGE_EN>\",\n    es: \"\u003CFIRST_MESSAGE_ES>\",\n  },\n  clientTools: [] as const,\n};\n\nexport type \u003CPascalCase scenario id>Scenario = typeof \u003CSCENARIO_ID>;\n```\n\nIf `\u003CFIRST_MESSAGE_EN>` is long, break it across concatenated string segments for readability (one logical clause per line, joined with `\" + \"`).\n\n### `src\u002Fassistants\u002Fprompts\u002F\u003CSCENARIO_ID>\u002Fbody.md`\n\nRough first draft — persona-driven, not a contract. Suggested shape:\n\n```md\n# \u003CSCENARIO_NAME> voice agent\n\nYou are the \u003CSCENARIO_NAME> voice agent for Vapi. \u003COne sentence on context — who you're talking to and why.>\n\n\u003COne paragraph distilling **What happens** from the rough draft: the questions to ask, the data to collect, the routing logic, the wrap-up.>\n\nBe warm and curious. Ask one question at a time. If they go off-topic, redirect briefly and return to the next missing field. Keep replies short — you are speaking, not typing.\n```\n\nNo `## Absolute rules`, no failure rules, no scripted off-ramps. Those are a later step.\n\n### `src\u002Fassistants\u002Fprompts\u002F\u003CSCENARIO_ID>\u002Foff-topic-es.md`\n\nTwo short Spanish redirect lines specific to this scenario:\n\n```md\n- \"Buena pregunta — el equipo te puede ayudar con eso. ¿Podemos seguir con \u003Cnext field>?\"\n- \"Tomo nota, lo vemos después. Mientras tanto, cuéntame \u003Cone short ask tied to the scenario>.\"\n```\n\n### `src\u002Fassistants\u002Fprompts\u002Fshared\u002Fpreambles\u002Fes.md`\n\n```md\n# IDIOMA \u002F LANGUAGE OVERRIDE\n\nThe contract that follows this preamble is written in English. **This call is in Spanish.**\n\nOverride the language rule of the contract:\n\n- ALL agent speech MUST be in natural, conversational Latin American Spanish. Translate the exact wordings, examples, and acks from the contract — don't switch back to English mid-sentence.\n- Read brand and product names in their original form. Don't translate them.\n- When you call any capture tool, **always pass free-text fields as a short English summary**, regardless of the call language. Cross-language analytics depend on it.\n\n## Off-topic redirects (use verbatim)\n\nIf the visitor goes off-topic, pick one of these and then return to the next missing field:\n\n{{OFF_TOPIC_LINES}}\n\n---\n```\n\n### `src\u002Fbootstrap.ts`\n\n```ts\n\u002F**\n * Idempotent upsert across (scenario × language). One entry per tuple, keyed\n * by VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>. First run creates + prints ids;\n * subsequent runs update in place.\n *\n * Run with `bun run bootstrap`. Bun auto-loads .env.local.\n *\u002F\nimport { VapiClient } from \"@vapi-ai\u002Fserver-sdk\";\n\nimport {\n  buildAssistant,\n  type LanguageId,\n  type ScenarioId,\n} from \".\u002Fassistants\u002FbuildAssistant.ts\";\nimport { SCENARIO_IDS } from \".\u002Fassistants\u002Fscenarios\u002Findex.ts\";\n\nconst LANGUAGES: LanguageId[] = [\"en\", \"es\"];\n\nconst envVarFor = (scenarioId: ScenarioId, languageId: LanguageId): string =>\n  `VAPI_ASSISTANT_${scenarioId.toUpperCase()}_${languageId.toUpperCase()}`;\n\nconst requireEnv = (name: string): string => {\n  const value = process.env[name];\n  if (!value) {\n    console.error(`✗ Missing env var: ${name}. See .env.example.`);\n    process.exit(1);\n  }\n  return value;\n};\n\nconst main = async () => {\n  const vapi = new VapiClient({ token: requireEnv(\"VAPI_API_KEY\") });\n  const created: Array\u003C{ envVar: string; id: string }> = [];\n\n  for (const scenarioId of SCENARIO_IDS) {\n    for (const languageId of LANGUAGES) {\n      const envVar = envVarFor(scenarioId, languageId);\n      const existingId = process.env[envVar];\n      const body = buildAssistant(\n        scenarioId,\n        languageId,\n      ) as unknown as Parameters\u003Ctypeof vapi.assistants.create>[0];\n\n      const label = `${scenarioId}\u002F${languageId}`;\n      let updated = false;\n\n      if (existingId) {\n        try {\n          await vapi.assistants.update({\n            id: existingId,\n            ...body,\n          } as unknown as Parameters\u003Ctypeof vapi.assistants.update>[0]);\n          console.log(`✓ Updated ${label} → ${existingId}`);\n          updated = true;\n        } catch (err) {\n          const statusCode = (err as { statusCode?: number })?.statusCode;\n          if (statusCode === 404) {\n            console.log(\n              `  ${envVar}=${existingId} not found in this org; creating a new assistant.`,\n            );\n          } else {\n            throw err;\n          }\n        }\n      }\n\n      if (!updated) {\n        const assistant = await vapi.assistants.create(body);\n        console.log(`✓ Created ${label} → ${assistant.id}`);\n        created.push({ envVar, id: assistant.id });\n      }\n    }\n  }\n\n  if (created.length > 0) {\n    console.log(\"\\nAdd these to .env.local:\");\n    for (const { envVar, id } of created) {\n      console.log(`  ${envVar}=${id}`);\n    }\n    console.log(\n      \"\\nThen re-run `bun run bootstrap` to confirm idempotent updates.\",\n    );\n  } else {\n    console.log(\n      `\\nAll ${SCENARIO_IDS.length * LANGUAGES.length} assistants updated in place.`,\n    );\n  }\n};\n\nmain().catch((err) => {\n  console.error(\"✗ Bootstrap failed:\", err);\n  process.exit(1);\n});\n```\n\n## ROUGH_DRAFT.md template\n\nIf the user has no rough draft yet, offer this skeleton (they fill in the angle-brackets and the skill scaffolds the project from it):\n\n```md\n# Rough draft — \u003Cproject name>\n\n## 1. \u003CFirst scenario name>\n\n**On the page**: \"\u003Cone verbatim opening line the agent will say>\"\n\n**What happens**: \u003COne paragraph: the questions the agent asks, the data it collects, what it does with edge cases, how it wraps up.>\n\n## 2. \u003CSecond scenario name>\n\n**Opening**: \"\u003Cone verbatim opening line>\"\n\n**What happens**: \u003COne paragraph.>\n```\n\nOne scenario is fine. Three is fine too. The skill scales the bootstrap loop to whatever's in the rough draft.\n\n## Adapting the defaults\n\nIf the user asks for different defaults, change only the matching slot — never the surrounding shape:\n\n- **Different languages**: add an entry to `VOICE_BY_LANGUAGE` and `TRANSCRIBER_BY_LANGUAGE`, extend the `LanguageId` union in `loadPrompt.ts`, add a `prompts\u002Fshared\u002Fpreambles\u002F\u003Clang>.md`, add a `firstMessage.\u003Clang>` per scenario, add the lang to `LANGUAGES` in `bootstrap.ts`, and add the matching `VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>` slots to `.env.example`.\n- **Different model \u002F temperature**: change `buildAssistant.ts` only.\n- **Different voice provider**: update `VoiceConfig` + `VOICE_BY_LANGUAGE` in `languages.ts` only.\n\n## Verification\n\nAfter generating files, tell the user to run:\n\n```bash\nbun install\nbun run typecheck              # validates locally; creates nothing in Vapi\ncp .env.example .env.local     # add VAPI_API_KEY from dashboard.vapi.ai\u002Forg\u002Fapi-keys\nbun run bootstrap              # creates one assistant per (scenario × language)\n# paste the printed VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>=\u003Cid> lines into .env.local\nbun run bootstrap              # second run prints \"Updated ...\" for every tuple\n```\n\nFor N scenarios × 2 languages they should see N × 2 assistants in [dashboard.vapi.ai](https:\u002F\u002Fdashboard.vapi.ai). Each one has a green \"Talk to assistant\" button — the agents will walk the flow but are still rough (no failure rules, no capture tools yet). That's expected; later prompts harden them.\n",{"data":44,"body":48},{"name":4,"description":6,"license":29,"compatibility":45,"metadata":46},"Requires Bun, internet access, and a Vapi private API key (VAPI_API_KEY).",{"author":8,"version":47},"1.0",{"type":49,"children":50},"root",[51,59,90,97,108,204,214,286,296,332,342,356,425,431,773,800,806,811,968,980,1469,1479,1796,1807,1865,1875,1969,1978,3011,3020,3857,3866,4150,4159,4989,4999,5299,5319,5329,5334,5422,5435,5445,5450,5482,5491,5680,5689,8351,8357,8362,8529,8534,8540,8545,8680,8686,8691,8806,8821],{"type":52,"tag":53,"props":54,"children":55},"element","h1",{"id":4},[56],{"type":57,"value":58},"text","Vapi bootstrap framework",{"type":52,"tag":60,"props":61,"children":62},"p",{},[63,65,72,74,80,82,88],{"type":57,"value":64},"Scaffold an entire Vapi voice-agent project from a single ",{"type":52,"tag":66,"props":67,"children":69},"code",{"className":68},[],[70],{"type":57,"value":71},"ROUGH_DRAFT.md",{"type":57,"value":73}," spec. Works in an empty folder or alongside an existing Bun + TypeScript project. One ",{"type":52,"tag":66,"props":75,"children":77},{"className":76},[],[78],{"type":57,"value":79},"bun run bootstrap",{"type":57,"value":81}," after this skill finishes puts the whole fleet live in ",{"type":52,"tag":66,"props":83,"children":85},{"className":84},[],[86],{"type":57,"value":87},"dashboard.vapi.ai",{"type":57,"value":89},".",{"type":52,"tag":91,"props":92,"children":94},"h2",{"id":93},"what-this-skill-produces",[95],{"type":57,"value":96},"What this skill produces",{"type":52,"tag":60,"props":98,"children":99},{},[100,106],{"type":52,"tag":101,"props":102,"children":103},"strong",{},[104],{"type":57,"value":105},"Project scaffolding",{"type":57,"value":107}," (only created if absent — never overwritten):",{"type":52,"tag":109,"props":110,"children":111},"ul",{},[112,140,151,178],{"type":52,"tag":113,"props":114,"children":115},"li",{},[116,122,124,130,132,138],{"type":52,"tag":66,"props":117,"children":119},{"className":118},[],[120],{"type":57,"value":121},"package.json",{"type":57,"value":123}," — Bun + ",{"type":52,"tag":66,"props":125,"children":127},{"className":126},[],[128],{"type":57,"value":129},"@vapi-ai\u002Fserver-sdk",{"type":57,"value":131}," + a ",{"type":52,"tag":66,"props":133,"children":135},{"className":134},[],[136],{"type":57,"value":137},"bootstrap",{"type":57,"value":139}," script",{"type":52,"tag":113,"props":141,"children":142},{},[143,149],{"type":52,"tag":66,"props":144,"children":146},{"className":145},[],[147],{"type":57,"value":148},"tsconfig.json",{"type":57,"value":150}," — strict no-emit TypeScript validation",{"type":52,"tag":113,"props":152,"children":153},{},[154,160,162,168,170,176],{"type":52,"tag":66,"props":155,"children":157},{"className":156},[],[158],{"type":57,"value":159},".env.example",{"type":57,"value":161}," — ",{"type":52,"tag":66,"props":163,"children":165},{"className":164},[],[166],{"type":57,"value":167},"VAPI_API_KEY",{"type":57,"value":169}," placeholder + one slot per ",{"type":52,"tag":66,"props":171,"children":173},{"className":172},[],[174],{"type":57,"value":175},"(scenario × language)",{"type":57,"value":177}," tuple",{"type":52,"tag":113,"props":179,"children":180},{},[181,187,188,194,196,202],{"type":52,"tag":66,"props":182,"children":184},{"className":183},[],[185],{"type":57,"value":186},".gitignore",{"type":57,"value":161},{"type":52,"tag":66,"props":189,"children":191},{"className":190},[],[192],{"type":57,"value":193},"node_modules",{"type":57,"value":195},", ",{"type":52,"tag":66,"props":197,"children":199},{"className":198},[],[200],{"type":57,"value":201},".env*.local",{"type":57,"value":203},", OS junk",{"type":52,"tag":60,"props":205,"children":206},{},[207,212],{"type":52,"tag":101,"props":208,"children":209},{},[210],{"type":57,"value":211},"Framework spine",{"type":57,"value":213}," (always created — architectural; every later change extends a slot here, never the spine itself):",{"type":52,"tag":109,"props":215,"children":216},{},[217,228,246,257,275],{"type":52,"tag":113,"props":218,"children":219},{},[220,226],{"type":52,"tag":66,"props":221,"children":223},{"className":222},[],[224],{"type":57,"value":225},"src\u002Fassistants\u002Flanguages.ts",{"type":57,"value":227}," — per-language voice + transcriber stack",{"type":52,"tag":113,"props":229,"children":230},{},[231,237,238,244],{"type":52,"tag":66,"props":232,"children":234},{"className":233},[],[235],{"type":57,"value":236},"src\u002Fassistants\u002FloadPrompt.ts",{"type":57,"value":161},{"type":52,"tag":66,"props":239,"children":241},{"className":240},[],[242],{"type":57,"value":243},"loadPrompt(scenarioId, languageId)",{"type":57,"value":245}," composer",{"type":52,"tag":113,"props":247,"children":248},{},[249,255],{"type":52,"tag":66,"props":250,"children":252},{"className":251},[],[253],{"type":57,"value":254},"src\u002Fassistants\u002Fscenarios\u002Findex.ts",{"type":57,"value":256}," — the scenario registry",{"type":52,"tag":113,"props":258,"children":259},{},[260,266,268,274],{"type":52,"tag":66,"props":261,"children":263},{"className":262},[],[264],{"type":57,"value":265},"src\u002Fassistants\u002FbuildAssistant.ts",{"type":57,"value":267}," — composes a full Vapi assistant body for any ",{"type":52,"tag":66,"props":269,"children":271},{"className":270},[],[272],{"type":57,"value":273},"(scenarioId, languageId)",{"type":57,"value":177},{"type":52,"tag":113,"props":276,"children":277},{},[278,284],{"type":52,"tag":66,"props":279,"children":281},{"className":280},[],[282],{"type":57,"value":283},"src\u002Fassistants\u002Fprompts\u002Fshared\u002Fpreambles\u002Fes.md",{"type":57,"value":285}," — Spanish language preamble (extend with more languages later)",{"type":52,"tag":60,"props":287,"children":288},{},[289,294],{"type":52,"tag":101,"props":290,"children":291},{},[292],{"type":57,"value":293},"Content",{"type":57,"value":295}," (always created — one set per scenario detected in the rough draft):",{"type":52,"tag":109,"props":297,"children":298},{},[299,310,321],{"type":52,"tag":113,"props":300,"children":301},{},[302,308],{"type":52,"tag":66,"props":303,"children":305},{"className":304},[],[306],{"type":57,"value":307},"src\u002Fassistants\u002Fscenarios\u002F\u003CscenarioId>.ts",{"type":57,"value":309}," — id, name, language-keyed first message",{"type":52,"tag":113,"props":311,"children":312},{},[313,319],{"type":52,"tag":66,"props":314,"children":316},{"className":315},[],[317],{"type":57,"value":318},"src\u002Fassistants\u002Fprompts\u002F\u003CscenarioId>\u002Fbody.md",{"type":57,"value":320}," — rough first-draft system prompt",{"type":52,"tag":113,"props":322,"children":323},{},[324,330],{"type":52,"tag":66,"props":325,"children":327},{"className":326},[],[328],{"type":57,"value":329},"src\u002Fassistants\u002Fprompts\u002F\u003CscenarioId>\u002Foff-topic-es.md",{"type":57,"value":331}," — Spanish redirect lines",{"type":52,"tag":60,"props":333,"children":334},{},[335,340],{"type":52,"tag":101,"props":336,"children":337},{},[338],{"type":57,"value":339},"Entry point",{"type":57,"value":341}," (always created):",{"type":52,"tag":109,"props":343,"children":344},{},[345],{"type":52,"tag":113,"props":346,"children":347},{},[348,354],{"type":52,"tag":66,"props":349,"children":351},{"className":350},[],[352],{"type":57,"value":353},"src\u002Fbootstrap.ts",{"type":57,"value":355}," — idempotent double loop over scenarios × languages",{"type":52,"tag":60,"props":357,"children":358},{},[359,361,367,369,375,377,383,385,391,393,399,401,407,409,415,417,423],{"type":57,"value":360},"Defaults: languages ",{"type":52,"tag":66,"props":362,"children":364},{"className":363},[],[365],{"type":57,"value":366},"en",{"type":57,"value":368}," + ",{"type":52,"tag":66,"props":370,"children":372},{"className":371},[],[373],{"type":57,"value":374},"es",{"type":57,"value":376},". Model ",{"type":52,"tag":66,"props":378,"children":380},{"className":379},[],[381],{"type":57,"value":382},"openai gpt-4.1",{"type":57,"value":384}," temperature ",{"type":52,"tag":66,"props":386,"children":388},{"className":387},[],[389],{"type":57,"value":390},"0.5",{"type":57,"value":392},". Voices ElevenLabs ",{"type":52,"tag":66,"props":394,"children":396},{"className":395},[],[397],{"type":57,"value":398},"eleven_turbo_v2",{"type":57,"value":400}," (EN) \u002F ",{"type":52,"tag":66,"props":402,"children":404},{"className":403},[],[405],{"type":57,"value":406},"eleven_multilingual_v2",{"type":57,"value":408}," (ES). Transcriber Deepgram ",{"type":52,"tag":66,"props":410,"children":412},{"className":411},[],[413],{"type":57,"value":414},"nova-3",{"type":57,"value":416}," (EN) \u002F Soniox ",{"type":52,"tag":66,"props":418,"children":420},{"className":419},[],[421],{"type":57,"value":422},"stt-rt-v4",{"type":57,"value":424}," (ES). Override these only if the user explicitly asks.",{"type":52,"tag":91,"props":426,"children":428},{"id":427},"workflow",[429],{"type":57,"value":430},"Workflow",{"type":52,"tag":432,"props":433,"children":434},"ol",{},[435,463,505,545,570,649,659,692,738,753,763],{"type":52,"tag":113,"props":436,"children":437},{},[438,448,450],{"type":52,"tag":101,"props":439,"children":440},{},[441,443],{"type":57,"value":442},"Check for ",{"type":52,"tag":66,"props":444,"children":446},{"className":445},[],[447],{"type":57,"value":71},{"type":57,"value":449}," at the project root.\n",{"type":52,"tag":109,"props":451,"children":452},{},[453,458],{"type":52,"tag":113,"props":454,"children":455},{},[456],{"type":57,"value":457},"If present → continue with step 2.",{"type":52,"tag":113,"props":459,"children":460},{},[461],{"type":57,"value":462},"If missing → tell the user the skill needs a rough draft to work from. Offer the template under \"ROUGH_DRAFT.md template\" below; either paste it in for them to fill out, or wait for them to provide their own. Don't proceed past this step without one.",{"type":52,"tag":113,"props":464,"children":465},{},[466,471,473,479,481,487,489,495,497,503],{"type":52,"tag":101,"props":467,"children":468},{},[469],{"type":57,"value":470},"Detect scenarios",{"type":57,"value":472}," — every ",{"type":52,"tag":66,"props":474,"children":476},{"className":475},[],[477],{"type":57,"value":478},"## N. \u003Cscenario name>",{"type":57,"value":480}," heading is one scenario. Derive a snake_case ",{"type":52,"tag":66,"props":482,"children":484},{"className":483},[],[485],{"type":57,"value":486},"scenarioId",{"type":57,"value":488}," from the name (e.g. \"Lead Qualification & Screening\" → ",{"type":52,"tag":66,"props":490,"children":492},{"className":491},[],[493],{"type":57,"value":494},"qualification",{"type":57,"value":496},"; \"Appointment Scheduling\" → ",{"type":52,"tag":66,"props":498,"children":500},{"className":499},[],[501],{"type":57,"value":502},"appointment",{"type":57,"value":504},"). When in doubt, pick the shortest unambiguous noun. Keep ids short — they become env var names.",{"type":52,"tag":113,"props":506,"children":507},{},[508,513,515,521,522,528,529,535,537,543],{"type":52,"tag":101,"props":509,"children":510},{},[511],{"type":57,"value":512},"Extract the opening line",{"type":57,"value":514}," — under each scenario, look for ",{"type":52,"tag":66,"props":516,"children":518},{"className":517},[],[519],{"type":57,"value":520},"**On the page**",{"type":57,"value":195},{"type":52,"tag":66,"props":523,"children":525},{"className":524},[],[526],{"type":57,"value":527},"**Opening**",{"type":57,"value":195},{"type":52,"tag":66,"props":530,"children":532},{"className":531},[],[533],{"type":57,"value":534},"**Greeting**",{"type":57,"value":536},", or the first quoted string in the section. That's ",{"type":52,"tag":66,"props":538,"children":540},{"className":539},[],[541],{"type":57,"value":542},"firstMessage.en",{"type":57,"value":544}," verbatim.",{"type":52,"tag":113,"props":546,"children":547},{},[548,553,554,560,562,568],{"type":52,"tag":101,"props":549,"children":550},{},[551],{"type":57,"value":552},"Distill the flow",{"type":57,"value":161},{"type":52,"tag":66,"props":555,"children":557},{"className":556},[],[558],{"type":57,"value":559},"**What happens**",{"type":57,"value":561}," (or equivalent prose) becomes a rough first-draft ",{"type":52,"tag":66,"props":563,"children":565},{"className":564},[],[566],{"type":57,"value":567},"body.md",{"type":57,"value":569},". Persona-driven, not a contract — no failure rules, no exact wordings, no scripted off-ramps yet. Keep it short.",{"type":52,"tag":113,"props":571,"children":572},{},[573,578,580,585,586,591,592,597,598,603,605,610,612,618,620,625,627,632,634,639,641,647],{"type":52,"tag":101,"props":574,"children":575},{},[576],{"type":57,"value":577},"Scaffold the project root",{"type":57,"value":579}," — for each of ",{"type":52,"tag":66,"props":581,"children":583},{"className":582},[],[584],{"type":57,"value":121},{"type":57,"value":195},{"type":52,"tag":66,"props":587,"children":589},{"className":588},[],[590],{"type":57,"value":148},{"type":57,"value":195},{"type":52,"tag":66,"props":593,"children":595},{"className":594},[],[596],{"type":57,"value":159},{"type":57,"value":195},{"type":52,"tag":66,"props":599,"children":601},{"className":600},[],[602],{"type":57,"value":186},{"type":57,"value":604},": if the file is absent, create it from the template below. If ",{"type":52,"tag":66,"props":606,"children":608},{"className":607},[],[609],{"type":57,"value":159},{"type":57,"value":611}," already exists, append any missing ",{"type":52,"tag":66,"props":613,"children":615},{"className":614},[],[616],{"type":57,"value":617},"VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>",{"type":57,"value":619}," slots; never reorder or remove existing lines. If ",{"type":52,"tag":66,"props":621,"children":623},{"className":622},[],[624],{"type":57,"value":121},{"type":57,"value":626}," exists, leave it alone but verify it has ",{"type":52,"tag":66,"props":628,"children":630},{"className":629},[],[631],{"type":57,"value":129},{"type":57,"value":633}," in deps plus ",{"type":52,"tag":66,"props":635,"children":637},{"className":636},[],[638],{"type":57,"value":137},{"type":57,"value":640}," and ",{"type":52,"tag":66,"props":642,"children":644},{"className":643},[],[645],{"type":57,"value":646},"typecheck",{"type":57,"value":648}," scripts — tell the user if any are missing instead of editing.",{"type":52,"tag":113,"props":650,"children":651},{},[652,657],{"type":52,"tag":101,"props":653,"children":654},{},[655],{"type":57,"value":656},"Generate the framework spine",{"type":57,"value":658}," — copy the five spine files verbatim from the templates below. They don't change between projects; only the scenario registry's imports do.",{"type":52,"tag":113,"props":660,"children":661},{},[662,667,669,675,677,683,684,690],{"type":52,"tag":101,"props":663,"children":664},{},[665],{"type":57,"value":666},"Generate per-scenario files",{"type":57,"value":668}," — one ",{"type":52,"tag":66,"props":670,"children":672},{"className":671},[],[673],{"type":57,"value":674},"scenarios\u002F\u003Cid>.ts",{"type":57,"value":676},", one ",{"type":52,"tag":66,"props":678,"children":680},{"className":679},[],[681],{"type":57,"value":682},"prompts\u002F\u003Cid>\u002Fbody.md",{"type":57,"value":676},{"type":52,"tag":66,"props":685,"children":687},{"className":686},[],[688],{"type":57,"value":689},"prompts\u002F\u003Cid>\u002Foff-topic-es.md",{"type":57,"value":691}," per detected scenario.",{"type":52,"tag":113,"props":693,"children":694},{},[695,700,701,707,709,715,717,723,724,730,731,737],{"type":52,"tag":101,"props":696,"children":697},{},[698],{"type":57,"value":699},"Wire up the registry",{"type":57,"value":161},{"type":52,"tag":66,"props":702,"children":704},{"className":703},[],[705],{"type":57,"value":706},"scenarios\u002Findex.ts",{"type":57,"value":708}," imports every scenario and exports the ",{"type":52,"tag":66,"props":710,"children":712},{"className":711},[],[713],{"type":57,"value":714},"SCENARIOS",{"type":57,"value":716}," const, ",{"type":52,"tag":66,"props":718,"children":720},{"className":719},[],[721],{"type":57,"value":722},"ScenarioId",{"type":57,"value":195},{"type":52,"tag":66,"props":725,"children":727},{"className":726},[],[728],{"type":57,"value":729},"SCENARIO_IDS",{"type":57,"value":195},{"type":52,"tag":66,"props":732,"children":734},{"className":733},[],[735],{"type":57,"value":736},"scenarioFor",{"type":57,"value":89},{"type":52,"tag":113,"props":739,"children":740},{},[741,751],{"type":52,"tag":101,"props":742,"children":743},{},[744,746],{"type":57,"value":745},"Write ",{"type":52,"tag":66,"props":747,"children":749},{"className":748},[],[750],{"type":57,"value":353},{"type":57,"value":752}," with the double-loop template below.",{"type":52,"tag":113,"props":754,"children":755},{},[756,761],{"type":52,"tag":101,"props":757,"children":758},{},[759],{"type":57,"value":760},"Translate first messages to Spanish",{"type":57,"value":762}," — natural Latin American Spanish, brand names untranslated.",{"type":52,"tag":113,"props":764,"children":765},{},[766,771],{"type":52,"tag":101,"props":767,"children":768},{},[769],{"type":57,"value":770},"Tell the user how to run it",{"type":57,"value":772}," (see \"Verification\" below).",{"type":52,"tag":60,"props":774,"children":775},{},[776,778,784,786,791,793,798],{"type":57,"value":777},"Keep each scenario's ",{"type":52,"tag":66,"props":779,"children":781},{"className":780},[],[782],{"type":57,"value":783},"clientTools",{"type":57,"value":785}," array empty in this skill — functional capture tools land in a follow-up step. Do ",{"type":52,"tag":101,"props":787,"children":788},{},[789],{"type":57,"value":790},"not",{"type":57,"value":792}," rewrite ",{"type":52,"tag":66,"props":794,"children":796},{"className":795},[],[797],{"type":57,"value":567},{"type":57,"value":799}," as a contract here either — that's a separate step.",{"type":52,"tag":91,"props":801,"children":803},{"id":802},"file-templates",[804],{"type":57,"value":805},"File templates",{"type":52,"tag":60,"props":807,"children":808},{},[809],{"type":57,"value":810},"Templates use these placeholders that you substitute per project:",{"type":52,"tag":109,"props":812,"children":813},{},[814,840,858,876,887,898,909,927,944],{"type":52,"tag":113,"props":815,"children":816},{},[817,823,825,831,833,839],{"type":52,"tag":66,"props":818,"children":820},{"className":819},[],[821],{"type":57,"value":822},"\u003CPROJECT_NAME>",{"type":57,"value":824}," — slug from the rough draft title (",{"type":52,"tag":66,"props":826,"children":828},{"className":827},[],[829],{"type":57,"value":830},"# Rough draft — \u003CX>",{"type":57,"value":832}," → snake\u002Fkebab-case of X). Fallback: ",{"type":52,"tag":66,"props":834,"children":836},{"className":835},[],[837],{"type":57,"value":838},"vapi-voice-agents",{"type":57,"value":89},{"type":52,"tag":113,"props":841,"children":842},{},[843,849,851,856],{"type":52,"tag":66,"props":844,"children":846},{"className":845},[],[847],{"type":57,"value":848},"\u003CSCENARIO_ID>",{"type":57,"value":850}," — snake_case scenario id (e.g. ",{"type":52,"tag":66,"props":852,"children":854},{"className":853},[],[855],{"type":57,"value":494},{"type":57,"value":857},")",{"type":52,"tag":113,"props":859,"children":860},{},[861,867,869,875],{"type":52,"tag":66,"props":862,"children":864},{"className":863},[],[865],{"type":57,"value":866},"\u003CSCENARIO_NAME>",{"type":57,"value":868}," — human-readable name (e.g. ",{"type":52,"tag":66,"props":870,"children":872},{"className":871},[],[873],{"type":57,"value":874},"Lead Qualification",{"type":57,"value":857},{"type":52,"tag":113,"props":877,"children":878},{},[879,885],{"type":52,"tag":66,"props":880,"children":882},{"className":881},[],[883],{"type":57,"value":884},"\u003CFIRST_MESSAGE_EN>",{"type":57,"value":886}," — verbatim opening line from the rough draft",{"type":52,"tag":113,"props":888,"children":889},{},[890,896],{"type":52,"tag":66,"props":891,"children":893},{"className":892},[],[894],{"type":57,"value":895},"\u003CFIRST_MESSAGE_ES>",{"type":57,"value":897}," — natural Spanish translation",{"type":52,"tag":113,"props":899,"children":900},{},[901,907],{"type":52,"tag":66,"props":902,"children":904},{"className":903},[],[905],{"type":57,"value":906},"\u003CBODY_DRAFT>",{"type":57,"value":908}," — distilled rough first-draft prompt",{"type":52,"tag":113,"props":910,"children":911},{},[912,918,919,925],{"type":52,"tag":66,"props":913,"children":915},{"className":914},[],[916],{"type":57,"value":917},"\u003CSCENARIO_IMPORTS>",{"type":57,"value":668},{"type":52,"tag":66,"props":920,"children":922},{"className":921},[],[923],{"type":57,"value":924},"import { \u003Cid> } from \".\u002F\u003Cid>.ts\";",{"type":57,"value":926}," per scenario, alphabetized",{"type":52,"tag":113,"props":928,"children":929},{},[930,936,938],{"type":52,"tag":66,"props":931,"children":933},{"className":932},[],[934],{"type":57,"value":935},"\u003CSCENARIO_KEYS>",{"type":57,"value":937}," — comma-separated scenario ids inside ",{"type":52,"tag":66,"props":939,"children":941},{"className":940},[],[942],{"type":57,"value":943},"SCENARIOS = { ... }",{"type":52,"tag":113,"props":945,"children":946},{},[947,953,955,960,962],{"type":52,"tag":66,"props":948,"children":950},{"className":949},[],[951],{"type":57,"value":952},"\u003CENV_ASSISTANT_SLOTS>",{"type":57,"value":954}," — one commented line per ",{"type":52,"tag":66,"props":956,"children":958},{"className":957},[],[959],{"type":57,"value":175},{"type":57,"value":961},": ",{"type":52,"tag":66,"props":963,"children":965},{"className":964},[],[966],{"type":57,"value":967},"# VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>=",{"type":52,"tag":969,"props":970,"children":972},"h3",{"id":971},"packagejson-only-if-absent",[973,978],{"type":52,"tag":66,"props":974,"children":976},{"className":975},[],[977],{"type":57,"value":121},{"type":57,"value":979}," (only if absent)",{"type":52,"tag":981,"props":982,"children":987},"pre",{"className":983,"code":984,"language":985,"meta":986,"style":986},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"name\": \"\u003CPROJECT_NAME>\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"type\": \"module\",\n  \"scripts\": {\n    \"bootstrap\": \"bun run src\u002Fbootstrap.ts\",\n    \"typecheck\": \"tsc --noEmit\"\n  },\n  \"dependencies\": {\n    \"@vapi-ai\u002Fserver-sdk\": \"^1.2.0\"\n  },\n  \"devDependencies\": {\n    \"@types\u002Fbun\": \"^1.3.13\",\n    \"typescript\": \"^5.9.3\"\n  },\n  \"packageManager\": \"bun@1.3.1\"\n}\n","json","",[988],{"type":52,"tag":66,"props":989,"children":990},{"__ignoreMap":986},[991,1003,1047,1085,1111,1149,1175,1213,1247,1256,1281,1314,1322,1347,1385,1418,1426,1460],{"type":52,"tag":992,"props":993,"children":996},"span",{"class":994,"line":995},"line",1,[997],{"type":52,"tag":992,"props":998,"children":1000},{"style":999},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[1001],{"type":57,"value":1002},"{\n",{"type":52,"tag":992,"props":1004,"children":1006},{"class":994,"line":1005},2,[1007,1012,1018,1023,1028,1033,1038,1042],{"type":52,"tag":992,"props":1008,"children":1009},{"style":999},[1010],{"type":57,"value":1011},"  \"",{"type":52,"tag":992,"props":1013,"children":1015},{"style":1014},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[1016],{"type":57,"value":1017},"name",{"type":52,"tag":992,"props":1019,"children":1020},{"style":999},[1021],{"type":57,"value":1022},"\"",{"type":52,"tag":992,"props":1024,"children":1025},{"style":999},[1026],{"type":57,"value":1027},":",{"type":52,"tag":992,"props":1029,"children":1030},{"style":999},[1031],{"type":57,"value":1032}," \"",{"type":52,"tag":992,"props":1034,"children":1036},{"style":1035},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[1037],{"type":57,"value":822},{"type":52,"tag":992,"props":1039,"children":1040},{"style":999},[1041],{"type":57,"value":1022},{"type":52,"tag":992,"props":1043,"children":1044},{"style":999},[1045],{"type":57,"value":1046},",\n",{"type":52,"tag":992,"props":1048,"children":1050},{"class":994,"line":1049},3,[1051,1055,1060,1064,1068,1072,1077,1081],{"type":52,"tag":992,"props":1052,"children":1053},{"style":999},[1054],{"type":57,"value":1011},{"type":52,"tag":992,"props":1056,"children":1057},{"style":1014},[1058],{"type":57,"value":1059},"version",{"type":52,"tag":992,"props":1061,"children":1062},{"style":999},[1063],{"type":57,"value":1022},{"type":52,"tag":992,"props":1065,"children":1066},{"style":999},[1067],{"type":57,"value":1027},{"type":52,"tag":992,"props":1069,"children":1070},{"style":999},[1071],{"type":57,"value":1032},{"type":52,"tag":992,"props":1073,"children":1074},{"style":1035},[1075],{"type":57,"value":1076},"0.1.0",{"type":52,"tag":992,"props":1078,"children":1079},{"style":999},[1080],{"type":57,"value":1022},{"type":52,"tag":992,"props":1082,"children":1083},{"style":999},[1084],{"type":57,"value":1046},{"type":52,"tag":992,"props":1086,"children":1088},{"class":994,"line":1087},4,[1089,1093,1098,1102,1106],{"type":52,"tag":992,"props":1090,"children":1091},{"style":999},[1092],{"type":57,"value":1011},{"type":52,"tag":992,"props":1094,"children":1095},{"style":1014},[1096],{"type":57,"value":1097},"private",{"type":52,"tag":992,"props":1099,"children":1100},{"style":999},[1101],{"type":57,"value":1022},{"type":52,"tag":992,"props":1103,"children":1104},{"style":999},[1105],{"type":57,"value":1027},{"type":52,"tag":992,"props":1107,"children":1108},{"style":999},[1109],{"type":57,"value":1110}," true,\n",{"type":52,"tag":992,"props":1112,"children":1114},{"class":994,"line":1113},5,[1115,1119,1124,1128,1132,1136,1141,1145],{"type":52,"tag":992,"props":1116,"children":1117},{"style":999},[1118],{"type":57,"value":1011},{"type":52,"tag":992,"props":1120,"children":1121},{"style":1014},[1122],{"type":57,"value":1123},"type",{"type":52,"tag":992,"props":1125,"children":1126},{"style":999},[1127],{"type":57,"value":1022},{"type":52,"tag":992,"props":1129,"children":1130},{"style":999},[1131],{"type":57,"value":1027},{"type":52,"tag":992,"props":1133,"children":1134},{"style":999},[1135],{"type":57,"value":1032},{"type":52,"tag":992,"props":1137,"children":1138},{"style":1035},[1139],{"type":57,"value":1140},"module",{"type":52,"tag":992,"props":1142,"children":1143},{"style":999},[1144],{"type":57,"value":1022},{"type":52,"tag":992,"props":1146,"children":1147},{"style":999},[1148],{"type":57,"value":1046},{"type":52,"tag":992,"props":1150,"children":1152},{"class":994,"line":1151},6,[1153,1157,1162,1166,1170],{"type":52,"tag":992,"props":1154,"children":1155},{"style":999},[1156],{"type":57,"value":1011},{"type":52,"tag":992,"props":1158,"children":1159},{"style":1014},[1160],{"type":57,"value":1161},"scripts",{"type":52,"tag":992,"props":1163,"children":1164},{"style":999},[1165],{"type":57,"value":1022},{"type":52,"tag":992,"props":1167,"children":1168},{"style":999},[1169],{"type":57,"value":1027},{"type":52,"tag":992,"props":1171,"children":1172},{"style":999},[1173],{"type":57,"value":1174}," {\n",{"type":52,"tag":992,"props":1176,"children":1177},{"class":994,"line":30},[1178,1183,1188,1192,1196,1200,1205,1209],{"type":52,"tag":992,"props":1179,"children":1180},{"style":999},[1181],{"type":57,"value":1182},"    \"",{"type":52,"tag":992,"props":1184,"children":1186},{"style":1185},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[1187],{"type":57,"value":137},{"type":52,"tag":992,"props":1189,"children":1190},{"style":999},[1191],{"type":57,"value":1022},{"type":52,"tag":992,"props":1193,"children":1194},{"style":999},[1195],{"type":57,"value":1027},{"type":52,"tag":992,"props":1197,"children":1198},{"style":999},[1199],{"type":57,"value":1032},{"type":52,"tag":992,"props":1201,"children":1202},{"style":1035},[1203],{"type":57,"value":1204},"bun run src\u002Fbootstrap.ts",{"type":52,"tag":992,"props":1206,"children":1207},{"style":999},[1208],{"type":57,"value":1022},{"type":52,"tag":992,"props":1210,"children":1211},{"style":999},[1212],{"type":57,"value":1046},{"type":52,"tag":992,"props":1214,"children":1216},{"class":994,"line":1215},8,[1217,1221,1225,1229,1233,1237,1242],{"type":52,"tag":992,"props":1218,"children":1219},{"style":999},[1220],{"type":57,"value":1182},{"type":52,"tag":992,"props":1222,"children":1223},{"style":1185},[1224],{"type":57,"value":646},{"type":52,"tag":992,"props":1226,"children":1227},{"style":999},[1228],{"type":57,"value":1022},{"type":52,"tag":992,"props":1230,"children":1231},{"style":999},[1232],{"type":57,"value":1027},{"type":52,"tag":992,"props":1234,"children":1235},{"style":999},[1236],{"type":57,"value":1032},{"type":52,"tag":992,"props":1238,"children":1239},{"style":1035},[1240],{"type":57,"value":1241},"tsc --noEmit",{"type":52,"tag":992,"props":1243,"children":1244},{"style":999},[1245],{"type":57,"value":1246},"\"\n",{"type":52,"tag":992,"props":1248,"children":1250},{"class":994,"line":1249},9,[1251],{"type":52,"tag":992,"props":1252,"children":1253},{"style":999},[1254],{"type":57,"value":1255},"  },\n",{"type":52,"tag":992,"props":1257,"children":1259},{"class":994,"line":1258},10,[1260,1264,1269,1273,1277],{"type":52,"tag":992,"props":1261,"children":1262},{"style":999},[1263],{"type":57,"value":1011},{"type":52,"tag":992,"props":1265,"children":1266},{"style":1014},[1267],{"type":57,"value":1268},"dependencies",{"type":52,"tag":992,"props":1270,"children":1271},{"style":999},[1272],{"type":57,"value":1022},{"type":52,"tag":992,"props":1274,"children":1275},{"style":999},[1276],{"type":57,"value":1027},{"type":52,"tag":992,"props":1278,"children":1279},{"style":999},[1280],{"type":57,"value":1174},{"type":52,"tag":992,"props":1282,"children":1284},{"class":994,"line":1283},11,[1285,1289,1293,1297,1301,1305,1310],{"type":52,"tag":992,"props":1286,"children":1287},{"style":999},[1288],{"type":57,"value":1182},{"type":52,"tag":992,"props":1290,"children":1291},{"style":1185},[1292],{"type":57,"value":129},{"type":52,"tag":992,"props":1294,"children":1295},{"style":999},[1296],{"type":57,"value":1022},{"type":52,"tag":992,"props":1298,"children":1299},{"style":999},[1300],{"type":57,"value":1027},{"type":52,"tag":992,"props":1302,"children":1303},{"style":999},[1304],{"type":57,"value":1032},{"type":52,"tag":992,"props":1306,"children":1307},{"style":1035},[1308],{"type":57,"value":1309},"^1.2.0",{"type":52,"tag":992,"props":1311,"children":1312},{"style":999},[1313],{"type":57,"value":1246},{"type":52,"tag":992,"props":1315,"children":1317},{"class":994,"line":1316},12,[1318],{"type":52,"tag":992,"props":1319,"children":1320},{"style":999},[1321],{"type":57,"value":1255},{"type":52,"tag":992,"props":1323,"children":1325},{"class":994,"line":1324},13,[1326,1330,1335,1339,1343],{"type":52,"tag":992,"props":1327,"children":1328},{"style":999},[1329],{"type":57,"value":1011},{"type":52,"tag":992,"props":1331,"children":1332},{"style":1014},[1333],{"type":57,"value":1334},"devDependencies",{"type":52,"tag":992,"props":1336,"children":1337},{"style":999},[1338],{"type":57,"value":1022},{"type":52,"tag":992,"props":1340,"children":1341},{"style":999},[1342],{"type":57,"value":1027},{"type":52,"tag":992,"props":1344,"children":1345},{"style":999},[1346],{"type":57,"value":1174},{"type":52,"tag":992,"props":1348,"children":1350},{"class":994,"line":1349},14,[1351,1355,1360,1364,1368,1372,1377,1381],{"type":52,"tag":992,"props":1352,"children":1353},{"style":999},[1354],{"type":57,"value":1182},{"type":52,"tag":992,"props":1356,"children":1357},{"style":1185},[1358],{"type":57,"value":1359},"@types\u002Fbun",{"type":52,"tag":992,"props":1361,"children":1362},{"style":999},[1363],{"type":57,"value":1022},{"type":52,"tag":992,"props":1365,"children":1366},{"style":999},[1367],{"type":57,"value":1027},{"type":52,"tag":992,"props":1369,"children":1370},{"style":999},[1371],{"type":57,"value":1032},{"type":52,"tag":992,"props":1373,"children":1374},{"style":1035},[1375],{"type":57,"value":1376},"^1.3.13",{"type":52,"tag":992,"props":1378,"children":1379},{"style":999},[1380],{"type":57,"value":1022},{"type":52,"tag":992,"props":1382,"children":1383},{"style":999},[1384],{"type":57,"value":1046},{"type":52,"tag":992,"props":1386,"children":1388},{"class":994,"line":1387},15,[1389,1393,1397,1401,1405,1409,1414],{"type":52,"tag":992,"props":1390,"children":1391},{"style":999},[1392],{"type":57,"value":1182},{"type":52,"tag":992,"props":1394,"children":1395},{"style":1185},[1396],{"type":57,"value":15},{"type":52,"tag":992,"props":1398,"children":1399},{"style":999},[1400],{"type":57,"value":1022},{"type":52,"tag":992,"props":1402,"children":1403},{"style":999},[1404],{"type":57,"value":1027},{"type":52,"tag":992,"props":1406,"children":1407},{"style":999},[1408],{"type":57,"value":1032},{"type":52,"tag":992,"props":1410,"children":1411},{"style":1035},[1412],{"type":57,"value":1413},"^5.9.3",{"type":52,"tag":992,"props":1415,"children":1416},{"style":999},[1417],{"type":57,"value":1246},{"type":52,"tag":992,"props":1419,"children":1421},{"class":994,"line":1420},16,[1422],{"type":52,"tag":992,"props":1423,"children":1424},{"style":999},[1425],{"type":57,"value":1255},{"type":52,"tag":992,"props":1427,"children":1429},{"class":994,"line":1428},17,[1430,1434,1439,1443,1447,1451,1456],{"type":52,"tag":992,"props":1431,"children":1432},{"style":999},[1433],{"type":57,"value":1011},{"type":52,"tag":992,"props":1435,"children":1436},{"style":1014},[1437],{"type":57,"value":1438},"packageManager",{"type":52,"tag":992,"props":1440,"children":1441},{"style":999},[1442],{"type":57,"value":1022},{"type":52,"tag":992,"props":1444,"children":1445},{"style":999},[1446],{"type":57,"value":1027},{"type":52,"tag":992,"props":1448,"children":1449},{"style":999},[1450],{"type":57,"value":1032},{"type":52,"tag":992,"props":1452,"children":1453},{"style":1035},[1454],{"type":57,"value":1455},"bun@1.3.1",{"type":52,"tag":992,"props":1457,"children":1458},{"style":999},[1459],{"type":57,"value":1246},{"type":52,"tag":992,"props":1461,"children":1463},{"class":994,"line":1462},18,[1464],{"type":52,"tag":992,"props":1465,"children":1466},{"style":999},[1467],{"type":57,"value":1468},"}\n",{"type":52,"tag":969,"props":1470,"children":1472},{"id":1471},"tsconfigjson-only-if-absent",[1473,1478],{"type":52,"tag":66,"props":1474,"children":1476},{"className":1475},[],[1477],{"type":57,"value":148},{"type":57,"value":979},{"type":52,"tag":981,"props":1480,"children":1482},{"className":983,"code":1481,"language":985,"meta":986,"style":986},"{\n  \"compilerOptions\": {\n    \"target\": \"ES2022\",\n    \"module\": \"NodeNext\",\n    \"moduleResolution\": \"NodeNext\",\n    \"allowImportingTsExtensions\": true,\n    \"noEmit\": true,\n    \"strict\": true,\n    \"types\": [\"bun\"]\n  },\n  \"include\": [\"src\u002F**\u002F*.ts\"]\n}\n",[1483],{"type":52,"tag":66,"props":1484,"children":1485},{"__ignoreMap":986},[1486,1493,1517,1554,1590,1626,1650,1674,1698,1741,1748,1789],{"type":52,"tag":992,"props":1487,"children":1488},{"class":994,"line":995},[1489],{"type":52,"tag":992,"props":1490,"children":1491},{"style":999},[1492],{"type":57,"value":1002},{"type":52,"tag":992,"props":1494,"children":1495},{"class":994,"line":1005},[1496,1500,1505,1509,1513],{"type":52,"tag":992,"props":1497,"children":1498},{"style":999},[1499],{"type":57,"value":1011},{"type":52,"tag":992,"props":1501,"children":1502},{"style":1014},[1503],{"type":57,"value":1504},"compilerOptions",{"type":52,"tag":992,"props":1506,"children":1507},{"style":999},[1508],{"type":57,"value":1022},{"type":52,"tag":992,"props":1510,"children":1511},{"style":999},[1512],{"type":57,"value":1027},{"type":52,"tag":992,"props":1514,"children":1515},{"style":999},[1516],{"type":57,"value":1174},{"type":52,"tag":992,"props":1518,"children":1519},{"class":994,"line":1049},[1520,1524,1529,1533,1537,1541,1546,1550],{"type":52,"tag":992,"props":1521,"children":1522},{"style":999},[1523],{"type":57,"value":1182},{"type":52,"tag":992,"props":1525,"children":1526},{"style":1185},[1527],{"type":57,"value":1528},"target",{"type":52,"tag":992,"props":1530,"children":1531},{"style":999},[1532],{"type":57,"value":1022},{"type":52,"tag":992,"props":1534,"children":1535},{"style":999},[1536],{"type":57,"value":1027},{"type":52,"tag":992,"props":1538,"children":1539},{"style":999},[1540],{"type":57,"value":1032},{"type":52,"tag":992,"props":1542,"children":1543},{"style":1035},[1544],{"type":57,"value":1545},"ES2022",{"type":52,"tag":992,"props":1547,"children":1548},{"style":999},[1549],{"type":57,"value":1022},{"type":52,"tag":992,"props":1551,"children":1552},{"style":999},[1553],{"type":57,"value":1046},{"type":52,"tag":992,"props":1555,"children":1556},{"class":994,"line":1087},[1557,1561,1565,1569,1573,1577,1582,1586],{"type":52,"tag":992,"props":1558,"children":1559},{"style":999},[1560],{"type":57,"value":1182},{"type":52,"tag":992,"props":1562,"children":1563},{"style":1185},[1564],{"type":57,"value":1140},{"type":52,"tag":992,"props":1566,"children":1567},{"style":999},[1568],{"type":57,"value":1022},{"type":52,"tag":992,"props":1570,"children":1571},{"style":999},[1572],{"type":57,"value":1027},{"type":52,"tag":992,"props":1574,"children":1575},{"style":999},[1576],{"type":57,"value":1032},{"type":52,"tag":992,"props":1578,"children":1579},{"style":1035},[1580],{"type":57,"value":1581},"NodeNext",{"type":52,"tag":992,"props":1583,"children":1584},{"style":999},[1585],{"type":57,"value":1022},{"type":52,"tag":992,"props":1587,"children":1588},{"style":999},[1589],{"type":57,"value":1046},{"type":52,"tag":992,"props":1591,"children":1592},{"class":994,"line":1113},[1593,1597,1602,1606,1610,1614,1618,1622],{"type":52,"tag":992,"props":1594,"children":1595},{"style":999},[1596],{"type":57,"value":1182},{"type":52,"tag":992,"props":1598,"children":1599},{"style":1185},[1600],{"type":57,"value":1601},"moduleResolution",{"type":52,"tag":992,"props":1603,"children":1604},{"style":999},[1605],{"type":57,"value":1022},{"type":52,"tag":992,"props":1607,"children":1608},{"style":999},[1609],{"type":57,"value":1027},{"type":52,"tag":992,"props":1611,"children":1612},{"style":999},[1613],{"type":57,"value":1032},{"type":52,"tag":992,"props":1615,"children":1616},{"style":1035},[1617],{"type":57,"value":1581},{"type":52,"tag":992,"props":1619,"children":1620},{"style":999},[1621],{"type":57,"value":1022},{"type":52,"tag":992,"props":1623,"children":1624},{"style":999},[1625],{"type":57,"value":1046},{"type":52,"tag":992,"props":1627,"children":1628},{"class":994,"line":1151},[1629,1633,1638,1642,1646],{"type":52,"tag":992,"props":1630,"children":1631},{"style":999},[1632],{"type":57,"value":1182},{"type":52,"tag":992,"props":1634,"children":1635},{"style":1185},[1636],{"type":57,"value":1637},"allowImportingTsExtensions",{"type":52,"tag":992,"props":1639,"children":1640},{"style":999},[1641],{"type":57,"value":1022},{"type":52,"tag":992,"props":1643,"children":1644},{"style":999},[1645],{"type":57,"value":1027},{"type":52,"tag":992,"props":1647,"children":1648},{"style":999},[1649],{"type":57,"value":1110},{"type":52,"tag":992,"props":1651,"children":1652},{"class":994,"line":30},[1653,1657,1662,1666,1670],{"type":52,"tag":992,"props":1654,"children":1655},{"style":999},[1656],{"type":57,"value":1182},{"type":52,"tag":992,"props":1658,"children":1659},{"style":1185},[1660],{"type":57,"value":1661},"noEmit",{"type":52,"tag":992,"props":1663,"children":1664},{"style":999},[1665],{"type":57,"value":1022},{"type":52,"tag":992,"props":1667,"children":1668},{"style":999},[1669],{"type":57,"value":1027},{"type":52,"tag":992,"props":1671,"children":1672},{"style":999},[1673],{"type":57,"value":1110},{"type":52,"tag":992,"props":1675,"children":1676},{"class":994,"line":1215},[1677,1681,1686,1690,1694],{"type":52,"tag":992,"props":1678,"children":1679},{"style":999},[1680],{"type":57,"value":1182},{"type":52,"tag":992,"props":1682,"children":1683},{"style":1185},[1684],{"type":57,"value":1685},"strict",{"type":52,"tag":992,"props":1687,"children":1688},{"style":999},[1689],{"type":57,"value":1022},{"type":52,"tag":992,"props":1691,"children":1692},{"style":999},[1693],{"type":57,"value":1027},{"type":52,"tag":992,"props":1695,"children":1696},{"style":999},[1697],{"type":57,"value":1110},{"type":52,"tag":992,"props":1699,"children":1700},{"class":994,"line":1249},[1701,1705,1710,1714,1718,1723,1727,1732,1736],{"type":52,"tag":992,"props":1702,"children":1703},{"style":999},[1704],{"type":57,"value":1182},{"type":52,"tag":992,"props":1706,"children":1707},{"style":1185},[1708],{"type":57,"value":1709},"types",{"type":52,"tag":992,"props":1711,"children":1712},{"style":999},[1713],{"type":57,"value":1022},{"type":52,"tag":992,"props":1715,"children":1716},{"style":999},[1717],{"type":57,"value":1027},{"type":52,"tag":992,"props":1719,"children":1720},{"style":999},[1721],{"type":57,"value":1722}," [",{"type":52,"tag":992,"props":1724,"children":1725},{"style":999},[1726],{"type":57,"value":1022},{"type":52,"tag":992,"props":1728,"children":1729},{"style":1035},[1730],{"type":57,"value":1731},"bun",{"type":52,"tag":992,"props":1733,"children":1734},{"style":999},[1735],{"type":57,"value":1022},{"type":52,"tag":992,"props":1737,"children":1738},{"style":999},[1739],{"type":57,"value":1740},"]\n",{"type":52,"tag":992,"props":1742,"children":1743},{"class":994,"line":1258},[1744],{"type":52,"tag":992,"props":1745,"children":1746},{"style":999},[1747],{"type":57,"value":1255},{"type":52,"tag":992,"props":1749,"children":1750},{"class":994,"line":1283},[1751,1755,1760,1764,1768,1772,1776,1781,1785],{"type":52,"tag":992,"props":1752,"children":1753},{"style":999},[1754],{"type":57,"value":1011},{"type":52,"tag":992,"props":1756,"children":1757},{"style":1014},[1758],{"type":57,"value":1759},"include",{"type":52,"tag":992,"props":1761,"children":1762},{"style":999},[1763],{"type":57,"value":1022},{"type":52,"tag":992,"props":1765,"children":1766},{"style":999},[1767],{"type":57,"value":1027},{"type":52,"tag":992,"props":1769,"children":1770},{"style":999},[1771],{"type":57,"value":1722},{"type":52,"tag":992,"props":1773,"children":1774},{"style":999},[1775],{"type":57,"value":1022},{"type":52,"tag":992,"props":1777,"children":1778},{"style":1035},[1779],{"type":57,"value":1780},"src\u002F**\u002F*.ts",{"type":52,"tag":992,"props":1782,"children":1783},{"style":999},[1784],{"type":57,"value":1022},{"type":52,"tag":992,"props":1786,"children":1787},{"style":999},[1788],{"type":57,"value":1740},{"type":52,"tag":992,"props":1790,"children":1791},{"class":994,"line":1316},[1792],{"type":52,"tag":992,"props":1793,"children":1794},{"style":999},[1795],{"type":57,"value":1468},{"type":52,"tag":969,"props":1797,"children":1799},{"id":1798},"envexample-create-if-absent-extend-if-present",[1800,1805],{"type":52,"tag":66,"props":1801,"children":1803},{"className":1802},[],[1804],{"type":57,"value":159},{"type":57,"value":1806}," (create if absent; extend if present)",{"type":52,"tag":981,"props":1808,"children":1812},{"className":1809,"code":1810,"language":1811,"meta":986,"style":986},"language-dotenv shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Get this from https:\u002F\u002Fdashboard.vapi.ai\u002Fkeys\nVAPI_API_KEY=\n\n# One slot per (scenario × language). First `bun run bootstrap` prints the\n# ids; paste them here, then re-run for idempotent updates.\n\u003CENV_ASSISTANT_SLOTS>\n","dotenv",[1813],{"type":52,"tag":66,"props":1814,"children":1815},{"__ignoreMap":986},[1816,1824,1832,1841,1849,1857],{"type":52,"tag":992,"props":1817,"children":1818},{"class":994,"line":995},[1819],{"type":52,"tag":992,"props":1820,"children":1821},{},[1822],{"type":57,"value":1823},"# Get this from https:\u002F\u002Fdashboard.vapi.ai\u002Fkeys\n",{"type":52,"tag":992,"props":1825,"children":1826},{"class":994,"line":1005},[1827],{"type":52,"tag":992,"props":1828,"children":1829},{},[1830],{"type":57,"value":1831},"VAPI_API_KEY=\n",{"type":52,"tag":992,"props":1833,"children":1834},{"class":994,"line":1049},[1835],{"type":52,"tag":992,"props":1836,"children":1838},{"emptyLinePlaceholder":1837},true,[1839],{"type":57,"value":1840},"\n",{"type":52,"tag":992,"props":1842,"children":1843},{"class":994,"line":1087},[1844],{"type":52,"tag":992,"props":1845,"children":1846},{},[1847],{"type":57,"value":1848},"# One slot per (scenario × language). First `bun run bootstrap` prints the\n",{"type":52,"tag":992,"props":1850,"children":1851},{"class":994,"line":1113},[1852],{"type":52,"tag":992,"props":1853,"children":1854},{},[1855],{"type":57,"value":1856},"# ids; paste them here, then re-run for idempotent updates.\n",{"type":52,"tag":992,"props":1858,"children":1859},{"class":994,"line":1151},[1860],{"type":52,"tag":992,"props":1861,"children":1862},{},[1863],{"type":57,"value":1864},"\u003CENV_ASSISTANT_SLOTS>\n",{"type":52,"tag":969,"props":1866,"children":1868},{"id":1867},"gitignore-only-if-absent",[1869,1874],{"type":52,"tag":66,"props":1870,"children":1872},{"className":1871},[],[1873],{"type":57,"value":186},{"type":57,"value":979},{"type":52,"tag":981,"props":1876,"children":1880},{"className":1877,"code":1878,"language":1879,"meta":986,"style":986},"language-gitignore shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# dependencies\nnode_modules\n\n# env (local-only secrets)\n.env*.local\n\n# os junk\n.DS_Store\n\n# bun\n*.tsbuildinfo\n","gitignore",[1881],{"type":52,"tag":66,"props":1882,"children":1883},{"__ignoreMap":986},[1884,1892,1900,1907,1915,1923,1930,1938,1946,1953,1961],{"type":52,"tag":992,"props":1885,"children":1886},{"class":994,"line":995},[1887],{"type":52,"tag":992,"props":1888,"children":1889},{},[1890],{"type":57,"value":1891},"# dependencies\n",{"type":52,"tag":992,"props":1893,"children":1894},{"class":994,"line":1005},[1895],{"type":52,"tag":992,"props":1896,"children":1897},{},[1898],{"type":57,"value":1899},"node_modules\n",{"type":52,"tag":992,"props":1901,"children":1902},{"class":994,"line":1049},[1903],{"type":52,"tag":992,"props":1904,"children":1905},{"emptyLinePlaceholder":1837},[1906],{"type":57,"value":1840},{"type":52,"tag":992,"props":1908,"children":1909},{"class":994,"line":1087},[1910],{"type":52,"tag":992,"props":1911,"children":1912},{},[1913],{"type":57,"value":1914},"# env (local-only secrets)\n",{"type":52,"tag":992,"props":1916,"children":1917},{"class":994,"line":1113},[1918],{"type":52,"tag":992,"props":1919,"children":1920},{},[1921],{"type":57,"value":1922},".env*.local\n",{"type":52,"tag":992,"props":1924,"children":1925},{"class":994,"line":1151},[1926],{"type":52,"tag":992,"props":1927,"children":1928},{"emptyLinePlaceholder":1837},[1929],{"type":57,"value":1840},{"type":52,"tag":992,"props":1931,"children":1932},{"class":994,"line":30},[1933],{"type":52,"tag":992,"props":1934,"children":1935},{},[1936],{"type":57,"value":1937},"# os junk\n",{"type":52,"tag":992,"props":1939,"children":1940},{"class":994,"line":1215},[1941],{"type":52,"tag":992,"props":1942,"children":1943},{},[1944],{"type":57,"value":1945},".DS_Store\n",{"type":52,"tag":992,"props":1947,"children":1948},{"class":994,"line":1249},[1949],{"type":52,"tag":992,"props":1950,"children":1951},{"emptyLinePlaceholder":1837},[1952],{"type":57,"value":1840},{"type":52,"tag":992,"props":1954,"children":1955},{"class":994,"line":1258},[1956],{"type":52,"tag":992,"props":1957,"children":1958},{},[1959],{"type":57,"value":1960},"# bun\n",{"type":52,"tag":992,"props":1962,"children":1963},{"class":994,"line":1283},[1964],{"type":52,"tag":992,"props":1965,"children":1966},{},[1967],{"type":57,"value":1968},"*.tsbuildinfo\n",{"type":52,"tag":969,"props":1970,"children":1972},{"id":1971},"srcassistantslanguagests",[1973],{"type":52,"tag":66,"props":1974,"children":1976},{"className":1975},[],[1977],{"type":57,"value":225},{"type":52,"tag":981,"props":1979,"children":1983},{"className":1980,"code":1981,"language":1982,"meta":986,"style":986},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F**\n * Per-language voice + transcriber stack. Adding a 3rd language is one\n * entry in each record below.\n *\u002F\nimport type { LanguageId } from \".\u002FloadPrompt.ts\";\n\nexport type { LanguageId };\n\ninterface VoiceConfig {\n  provider: \"11labs\";\n  model: string;\n  voiceId: string;\n}\n\ninterface TranscriberConfig {\n  provider: \"deepgram\" | \"soniox\";\n  model: string;\n  language: string;\n}\n\nconst VOICE_BY_LANGUAGE: Record\u003CLanguageId, VoiceConfig> = {\n  en: {\n    provider: \"11labs\",\n    model: \"eleven_turbo_v2\",\n    voiceId: \"ZoiZ8fuDWInAcwPXaVeq\",\n  },\n  es: {\n    provider: \"11labs\",\n    model: \"eleven_multilingual_v2\",\n    voiceId: \"JYyJjNPfmNJdaby8LdZs\",\n  },\n};\n\nconst TRANSCRIBER_BY_LANGUAGE: Record\u003CLanguageId, TranscriberConfig> = {\n  en: { provider: \"deepgram\", model: \"nova-3\", language: \"en\" },\n  es: { provider: \"soniox\", model: \"stt-rt-v4\", language: \"es\" },\n};\n\nexport const voiceFor = (languageId: LanguageId): VoiceConfig =>\n  VOICE_BY_LANGUAGE[languageId];\n\nexport const transcriberFor = (languageId: LanguageId): TranscriberConfig =>\n  TRANSCRIBER_BY_LANGUAGE[languageId];\n","ts",[1984],{"type":52,"tag":66,"props":1985,"children":1986},{"__ignoreMap":986},[1987,1996,2004,2012,2020,2073,2080,2105,2112,2129,2159,2180,2200,2207,2214,2230,2276,2295,2315,2323,2331,2387,2404,2433,2462,2492,2500,2517,2545,2573,2602,2610,2619,2627,2676,2768,2856,2864,2872,2928,2941,2949,2998],{"type":52,"tag":992,"props":1988,"children":1989},{"class":994,"line":995},[1990],{"type":52,"tag":992,"props":1991,"children":1993},{"style":1992},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[1994],{"type":57,"value":1995},"\u002F**\n",{"type":52,"tag":992,"props":1997,"children":1998},{"class":994,"line":1005},[1999],{"type":52,"tag":992,"props":2000,"children":2001},{"style":1992},[2002],{"type":57,"value":2003}," * Per-language voice + transcriber stack. Adding a 3rd language is one\n",{"type":52,"tag":992,"props":2005,"children":2006},{"class":994,"line":1049},[2007],{"type":52,"tag":992,"props":2008,"children":2009},{"style":1992},[2010],{"type":57,"value":2011}," * entry in each record below.\n",{"type":52,"tag":992,"props":2013,"children":2014},{"class":994,"line":1087},[2015],{"type":52,"tag":992,"props":2016,"children":2017},{"style":1992},[2018],{"type":57,"value":2019}," *\u002F\n",{"type":52,"tag":992,"props":2021,"children":2022},{"class":994,"line":1113},[2023,2029,2034,2039,2045,2050,2055,2059,2064,2068],{"type":52,"tag":992,"props":2024,"children":2026},{"style":2025},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[2027],{"type":57,"value":2028},"import",{"type":52,"tag":992,"props":2030,"children":2031},{"style":2025},[2032],{"type":57,"value":2033}," type",{"type":52,"tag":992,"props":2035,"children":2036},{"style":999},[2037],{"type":57,"value":2038}," {",{"type":52,"tag":992,"props":2040,"children":2042},{"style":2041},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[2043],{"type":57,"value":2044}," LanguageId",{"type":52,"tag":992,"props":2046,"children":2047},{"style":999},[2048],{"type":57,"value":2049}," }",{"type":52,"tag":992,"props":2051,"children":2052},{"style":2025},[2053],{"type":57,"value":2054}," from",{"type":52,"tag":992,"props":2056,"children":2057},{"style":999},[2058],{"type":57,"value":1032},{"type":52,"tag":992,"props":2060,"children":2061},{"style":1035},[2062],{"type":57,"value":2063},".\u002FloadPrompt.ts",{"type":52,"tag":992,"props":2065,"children":2066},{"style":999},[2067],{"type":57,"value":1022},{"type":52,"tag":992,"props":2069,"children":2070},{"style":999},[2071],{"type":57,"value":2072},";\n",{"type":52,"tag":992,"props":2074,"children":2075},{"class":994,"line":1151},[2076],{"type":52,"tag":992,"props":2077,"children":2078},{"emptyLinePlaceholder":1837},[2079],{"type":57,"value":1840},{"type":52,"tag":992,"props":2081,"children":2082},{"class":994,"line":30},[2083,2088,2092,2096,2100],{"type":52,"tag":992,"props":2084,"children":2085},{"style":2025},[2086],{"type":57,"value":2087},"export",{"type":52,"tag":992,"props":2089,"children":2090},{"style":2025},[2091],{"type":57,"value":2033},{"type":52,"tag":992,"props":2093,"children":2094},{"style":999},[2095],{"type":57,"value":2038},{"type":52,"tag":992,"props":2097,"children":2098},{"style":2041},[2099],{"type":57,"value":2044},{"type":52,"tag":992,"props":2101,"children":2102},{"style":999},[2103],{"type":57,"value":2104}," };\n",{"type":52,"tag":992,"props":2106,"children":2107},{"class":994,"line":1215},[2108],{"type":52,"tag":992,"props":2109,"children":2110},{"emptyLinePlaceholder":1837},[2111],{"type":57,"value":1840},{"type":52,"tag":992,"props":2113,"children":2114},{"class":994,"line":1249},[2115,2120,2125],{"type":52,"tag":992,"props":2116,"children":2117},{"style":1014},[2118],{"type":57,"value":2119},"interface",{"type":52,"tag":992,"props":2121,"children":2122},{"style":1185},[2123],{"type":57,"value":2124}," VoiceConfig",{"type":52,"tag":992,"props":2126,"children":2127},{"style":999},[2128],{"type":57,"value":1174},{"type":52,"tag":992,"props":2130,"children":2131},{"class":994,"line":1258},[2132,2138,2142,2146,2151,2155],{"type":52,"tag":992,"props":2133,"children":2135},{"style":2134},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[2136],{"type":57,"value":2137},"  provider",{"type":52,"tag":992,"props":2139,"children":2140},{"style":999},[2141],{"type":57,"value":1027},{"type":52,"tag":992,"props":2143,"children":2144},{"style":999},[2145],{"type":57,"value":1032},{"type":52,"tag":992,"props":2147,"children":2148},{"style":1035},[2149],{"type":57,"value":2150},"11labs",{"type":52,"tag":992,"props":2152,"children":2153},{"style":999},[2154],{"type":57,"value":1022},{"type":52,"tag":992,"props":2156,"children":2157},{"style":999},[2158],{"type":57,"value":2072},{"type":52,"tag":992,"props":2160,"children":2161},{"class":994,"line":1283},[2162,2167,2171,2176],{"type":52,"tag":992,"props":2163,"children":2164},{"style":2134},[2165],{"type":57,"value":2166},"  model",{"type":52,"tag":992,"props":2168,"children":2169},{"style":999},[2170],{"type":57,"value":1027},{"type":52,"tag":992,"props":2172,"children":2173},{"style":1185},[2174],{"type":57,"value":2175}," string",{"type":52,"tag":992,"props":2177,"children":2178},{"style":999},[2179],{"type":57,"value":2072},{"type":52,"tag":992,"props":2181,"children":2182},{"class":994,"line":1316},[2183,2188,2192,2196],{"type":52,"tag":992,"props":2184,"children":2185},{"style":2134},[2186],{"type":57,"value":2187},"  voiceId",{"type":52,"tag":992,"props":2189,"children":2190},{"style":999},[2191],{"type":57,"value":1027},{"type":52,"tag":992,"props":2193,"children":2194},{"style":1185},[2195],{"type":57,"value":2175},{"type":52,"tag":992,"props":2197,"children":2198},{"style":999},[2199],{"type":57,"value":2072},{"type":52,"tag":992,"props":2201,"children":2202},{"class":994,"line":1324},[2203],{"type":52,"tag":992,"props":2204,"children":2205},{"style":999},[2206],{"type":57,"value":1468},{"type":52,"tag":992,"props":2208,"children":2209},{"class":994,"line":1349},[2210],{"type":52,"tag":992,"props":2211,"children":2212},{"emptyLinePlaceholder":1837},[2213],{"type":57,"value":1840},{"type":52,"tag":992,"props":2215,"children":2216},{"class":994,"line":1387},[2217,2221,2226],{"type":52,"tag":992,"props":2218,"children":2219},{"style":1014},[2220],{"type":57,"value":2119},{"type":52,"tag":992,"props":2222,"children":2223},{"style":1185},[2224],{"type":57,"value":2225}," TranscriberConfig",{"type":52,"tag":992,"props":2227,"children":2228},{"style":999},[2229],{"type":57,"value":1174},{"type":52,"tag":992,"props":2231,"children":2232},{"class":994,"line":1420},[2233,2237,2241,2245,2250,2254,2259,2263,2268,2272],{"type":52,"tag":992,"props":2234,"children":2235},{"style":2134},[2236],{"type":57,"value":2137},{"type":52,"tag":992,"props":2238,"children":2239},{"style":999},[2240],{"type":57,"value":1027},{"type":52,"tag":992,"props":2242,"children":2243},{"style":999},[2244],{"type":57,"value":1032},{"type":52,"tag":992,"props":2246,"children":2247},{"style":1035},[2248],{"type":57,"value":2249},"deepgram",{"type":52,"tag":992,"props":2251,"children":2252},{"style":999},[2253],{"type":57,"value":1022},{"type":52,"tag":992,"props":2255,"children":2256},{"style":999},[2257],{"type":57,"value":2258}," |",{"type":52,"tag":992,"props":2260,"children":2261},{"style":999},[2262],{"type":57,"value":1032},{"type":52,"tag":992,"props":2264,"children":2265},{"style":1035},[2266],{"type":57,"value":2267},"soniox",{"type":52,"tag":992,"props":2269,"children":2270},{"style":999},[2271],{"type":57,"value":1022},{"type":52,"tag":992,"props":2273,"children":2274},{"style":999},[2275],{"type":57,"value":2072},{"type":52,"tag":992,"props":2277,"children":2278},{"class":994,"line":1428},[2279,2283,2287,2291],{"type":52,"tag":992,"props":2280,"children":2281},{"style":2134},[2282],{"type":57,"value":2166},{"type":52,"tag":992,"props":2284,"children":2285},{"style":999},[2286],{"type":57,"value":1027},{"type":52,"tag":992,"props":2288,"children":2289},{"style":1185},[2290],{"type":57,"value":2175},{"type":52,"tag":992,"props":2292,"children":2293},{"style":999},[2294],{"type":57,"value":2072},{"type":52,"tag":992,"props":2296,"children":2297},{"class":994,"line":1462},[2298,2303,2307,2311],{"type":52,"tag":992,"props":2299,"children":2300},{"style":2134},[2301],{"type":57,"value":2302},"  language",{"type":52,"tag":992,"props":2304,"children":2305},{"style":999},[2306],{"type":57,"value":1027},{"type":52,"tag":992,"props":2308,"children":2309},{"style":1185},[2310],{"type":57,"value":2175},{"type":52,"tag":992,"props":2312,"children":2313},{"style":999},[2314],{"type":57,"value":2072},{"type":52,"tag":992,"props":2316,"children":2318},{"class":994,"line":2317},19,[2319],{"type":52,"tag":992,"props":2320,"children":2321},{"style":999},[2322],{"type":57,"value":1468},{"type":52,"tag":992,"props":2324,"children":2326},{"class":994,"line":2325},20,[2327],{"type":52,"tag":992,"props":2328,"children":2329},{"emptyLinePlaceholder":1837},[2330],{"type":57,"value":1840},{"type":52,"tag":992,"props":2332,"children":2334},{"class":994,"line":2333},21,[2335,2340,2345,2349,2354,2359,2364,2369,2373,2378,2383],{"type":52,"tag":992,"props":2336,"children":2337},{"style":1014},[2338],{"type":57,"value":2339},"const",{"type":52,"tag":992,"props":2341,"children":2342},{"style":2041},[2343],{"type":57,"value":2344}," VOICE_BY_LANGUAGE",{"type":52,"tag":992,"props":2346,"children":2347},{"style":999},[2348],{"type":57,"value":1027},{"type":52,"tag":992,"props":2350,"children":2351},{"style":1185},[2352],{"type":57,"value":2353}," Record",{"type":52,"tag":992,"props":2355,"children":2356},{"style":999},[2357],{"type":57,"value":2358},"\u003C",{"type":52,"tag":992,"props":2360,"children":2361},{"style":1185},[2362],{"type":57,"value":2363},"LanguageId",{"type":52,"tag":992,"props":2365,"children":2366},{"style":999},[2367],{"type":57,"value":2368},",",{"type":52,"tag":992,"props":2370,"children":2371},{"style":1185},[2372],{"type":57,"value":2124},{"type":52,"tag":992,"props":2374,"children":2375},{"style":999},[2376],{"type":57,"value":2377},">",{"type":52,"tag":992,"props":2379,"children":2380},{"style":999},[2381],{"type":57,"value":2382}," =",{"type":52,"tag":992,"props":2384,"children":2385},{"style":999},[2386],{"type":57,"value":1174},{"type":52,"tag":992,"props":2388,"children":2390},{"class":994,"line":2389},22,[2391,2396,2400],{"type":52,"tag":992,"props":2392,"children":2393},{"style":2134},[2394],{"type":57,"value":2395},"  en",{"type":52,"tag":992,"props":2397,"children":2398},{"style":999},[2399],{"type":57,"value":1027},{"type":52,"tag":992,"props":2401,"children":2402},{"style":999},[2403],{"type":57,"value":1174},{"type":52,"tag":992,"props":2405,"children":2407},{"class":994,"line":2406},23,[2408,2413,2417,2421,2425,2429],{"type":52,"tag":992,"props":2409,"children":2410},{"style":2134},[2411],{"type":57,"value":2412},"    provider",{"type":52,"tag":992,"props":2414,"children":2415},{"style":999},[2416],{"type":57,"value":1027},{"type":52,"tag":992,"props":2418,"children":2419},{"style":999},[2420],{"type":57,"value":1032},{"type":52,"tag":992,"props":2422,"children":2423},{"style":1035},[2424],{"type":57,"value":2150},{"type":52,"tag":992,"props":2426,"children":2427},{"style":999},[2428],{"type":57,"value":1022},{"type":52,"tag":992,"props":2430,"children":2431},{"style":999},[2432],{"type":57,"value":1046},{"type":52,"tag":992,"props":2434,"children":2436},{"class":994,"line":2435},24,[2437,2442,2446,2450,2454,2458],{"type":52,"tag":992,"props":2438,"children":2439},{"style":2134},[2440],{"type":57,"value":2441},"    model",{"type":52,"tag":992,"props":2443,"children":2444},{"style":999},[2445],{"type":57,"value":1027},{"type":52,"tag":992,"props":2447,"children":2448},{"style":999},[2449],{"type":57,"value":1032},{"type":52,"tag":992,"props":2451,"children":2452},{"style":1035},[2453],{"type":57,"value":398},{"type":52,"tag":992,"props":2455,"children":2456},{"style":999},[2457],{"type":57,"value":1022},{"type":52,"tag":992,"props":2459,"children":2460},{"style":999},[2461],{"type":57,"value":1046},{"type":52,"tag":992,"props":2463,"children":2465},{"class":994,"line":2464},25,[2466,2471,2475,2479,2484,2488],{"type":52,"tag":992,"props":2467,"children":2468},{"style":2134},[2469],{"type":57,"value":2470},"    voiceId",{"type":52,"tag":992,"props":2472,"children":2473},{"style":999},[2474],{"type":57,"value":1027},{"type":52,"tag":992,"props":2476,"children":2477},{"style":999},[2478],{"type":57,"value":1032},{"type":52,"tag":992,"props":2480,"children":2481},{"style":1035},[2482],{"type":57,"value":2483},"ZoiZ8fuDWInAcwPXaVeq",{"type":52,"tag":992,"props":2485,"children":2486},{"style":999},[2487],{"type":57,"value":1022},{"type":52,"tag":992,"props":2489,"children":2490},{"style":999},[2491],{"type":57,"value":1046},{"type":52,"tag":992,"props":2493,"children":2495},{"class":994,"line":2494},26,[2496],{"type":52,"tag":992,"props":2497,"children":2498},{"style":999},[2499],{"type":57,"value":1255},{"type":52,"tag":992,"props":2501,"children":2503},{"class":994,"line":2502},27,[2504,2509,2513],{"type":52,"tag":992,"props":2505,"children":2506},{"style":2134},[2507],{"type":57,"value":2508},"  es",{"type":52,"tag":992,"props":2510,"children":2511},{"style":999},[2512],{"type":57,"value":1027},{"type":52,"tag":992,"props":2514,"children":2515},{"style":999},[2516],{"type":57,"value":1174},{"type":52,"tag":992,"props":2518,"children":2520},{"class":994,"line":2519},28,[2521,2525,2529,2533,2537,2541],{"type":52,"tag":992,"props":2522,"children":2523},{"style":2134},[2524],{"type":57,"value":2412},{"type":52,"tag":992,"props":2526,"children":2527},{"style":999},[2528],{"type":57,"value":1027},{"type":52,"tag":992,"props":2530,"children":2531},{"style":999},[2532],{"type":57,"value":1032},{"type":52,"tag":992,"props":2534,"children":2535},{"style":1035},[2536],{"type":57,"value":2150},{"type":52,"tag":992,"props":2538,"children":2539},{"style":999},[2540],{"type":57,"value":1022},{"type":52,"tag":992,"props":2542,"children":2543},{"style":999},[2544],{"type":57,"value":1046},{"type":52,"tag":992,"props":2546,"children":2548},{"class":994,"line":2547},29,[2549,2553,2557,2561,2565,2569],{"type":52,"tag":992,"props":2550,"children":2551},{"style":2134},[2552],{"type":57,"value":2441},{"type":52,"tag":992,"props":2554,"children":2555},{"style":999},[2556],{"type":57,"value":1027},{"type":52,"tag":992,"props":2558,"children":2559},{"style":999},[2560],{"type":57,"value":1032},{"type":52,"tag":992,"props":2562,"children":2563},{"style":1035},[2564],{"type":57,"value":406},{"type":52,"tag":992,"props":2566,"children":2567},{"style":999},[2568],{"type":57,"value":1022},{"type":52,"tag":992,"props":2570,"children":2571},{"style":999},[2572],{"type":57,"value":1046},{"type":52,"tag":992,"props":2574,"children":2576},{"class":994,"line":2575},30,[2577,2581,2585,2589,2594,2598],{"type":52,"tag":992,"props":2578,"children":2579},{"style":2134},[2580],{"type":57,"value":2470},{"type":52,"tag":992,"props":2582,"children":2583},{"style":999},[2584],{"type":57,"value":1027},{"type":52,"tag":992,"props":2586,"children":2587},{"style":999},[2588],{"type":57,"value":1032},{"type":52,"tag":992,"props":2590,"children":2591},{"style":1035},[2592],{"type":57,"value":2593},"JYyJjNPfmNJdaby8LdZs",{"type":52,"tag":992,"props":2595,"children":2596},{"style":999},[2597],{"type":57,"value":1022},{"type":52,"tag":992,"props":2599,"children":2600},{"style":999},[2601],{"type":57,"value":1046},{"type":52,"tag":992,"props":2603,"children":2605},{"class":994,"line":2604},31,[2606],{"type":52,"tag":992,"props":2607,"children":2608},{"style":999},[2609],{"type":57,"value":1255},{"type":52,"tag":992,"props":2611,"children":2613},{"class":994,"line":2612},32,[2614],{"type":52,"tag":992,"props":2615,"children":2616},{"style":999},[2617],{"type":57,"value":2618},"};\n",{"type":52,"tag":992,"props":2620,"children":2622},{"class":994,"line":2621},33,[2623],{"type":52,"tag":992,"props":2624,"children":2625},{"emptyLinePlaceholder":1837},[2626],{"type":57,"value":1840},{"type":52,"tag":992,"props":2628,"children":2630},{"class":994,"line":2629},34,[2631,2635,2640,2644,2648,2652,2656,2660,2664,2668,2672],{"type":52,"tag":992,"props":2632,"children":2633},{"style":1014},[2634],{"type":57,"value":2339},{"type":52,"tag":992,"props":2636,"children":2637},{"style":2041},[2638],{"type":57,"value":2639}," TRANSCRIBER_BY_LANGUAGE",{"type":52,"tag":992,"props":2641,"children":2642},{"style":999},[2643],{"type":57,"value":1027},{"type":52,"tag":992,"props":2645,"children":2646},{"style":1185},[2647],{"type":57,"value":2353},{"type":52,"tag":992,"props":2649,"children":2650},{"style":999},[2651],{"type":57,"value":2358},{"type":52,"tag":992,"props":2653,"children":2654},{"style":1185},[2655],{"type":57,"value":2363},{"type":52,"tag":992,"props":2657,"children":2658},{"style":999},[2659],{"type":57,"value":2368},{"type":52,"tag":992,"props":2661,"children":2662},{"style":1185},[2663],{"type":57,"value":2225},{"type":52,"tag":992,"props":2665,"children":2666},{"style":999},[2667],{"type":57,"value":2377},{"type":52,"tag":992,"props":2669,"children":2670},{"style":999},[2671],{"type":57,"value":2382},{"type":52,"tag":992,"props":2673,"children":2674},{"style":999},[2675],{"type":57,"value":1174},{"type":52,"tag":992,"props":2677,"children":2679},{"class":994,"line":2678},35,[2680,2684,2688,2692,2697,2701,2705,2709,2713,2717,2722,2726,2730,2734,2738,2742,2747,2751,2755,2759,2763],{"type":52,"tag":992,"props":2681,"children":2682},{"style":2134},[2683],{"type":57,"value":2395},{"type":52,"tag":992,"props":2685,"children":2686},{"style":999},[2687],{"type":57,"value":1027},{"type":52,"tag":992,"props":2689,"children":2690},{"style":999},[2691],{"type":57,"value":2038},{"type":52,"tag":992,"props":2693,"children":2694},{"style":2134},[2695],{"type":57,"value":2696}," provider",{"type":52,"tag":992,"props":2698,"children":2699},{"style":999},[2700],{"type":57,"value":1027},{"type":52,"tag":992,"props":2702,"children":2703},{"style":999},[2704],{"type":57,"value":1032},{"type":52,"tag":992,"props":2706,"children":2707},{"style":1035},[2708],{"type":57,"value":2249},{"type":52,"tag":992,"props":2710,"children":2711},{"style":999},[2712],{"type":57,"value":1022},{"type":52,"tag":992,"props":2714,"children":2715},{"style":999},[2716],{"type":57,"value":2368},{"type":52,"tag":992,"props":2718,"children":2719},{"style":2134},[2720],{"type":57,"value":2721}," model",{"type":52,"tag":992,"props":2723,"children":2724},{"style":999},[2725],{"type":57,"value":1027},{"type":52,"tag":992,"props":2727,"children":2728},{"style":999},[2729],{"type":57,"value":1032},{"type":52,"tag":992,"props":2731,"children":2732},{"style":1035},[2733],{"type":57,"value":414},{"type":52,"tag":992,"props":2735,"children":2736},{"style":999},[2737],{"type":57,"value":1022},{"type":52,"tag":992,"props":2739,"children":2740},{"style":999},[2741],{"type":57,"value":2368},{"type":52,"tag":992,"props":2743,"children":2744},{"style":2134},[2745],{"type":57,"value":2746}," language",{"type":52,"tag":992,"props":2748,"children":2749},{"style":999},[2750],{"type":57,"value":1027},{"type":52,"tag":992,"props":2752,"children":2753},{"style":999},[2754],{"type":57,"value":1032},{"type":52,"tag":992,"props":2756,"children":2757},{"style":1035},[2758],{"type":57,"value":366},{"type":52,"tag":992,"props":2760,"children":2761},{"style":999},[2762],{"type":57,"value":1022},{"type":52,"tag":992,"props":2764,"children":2765},{"style":999},[2766],{"type":57,"value":2767}," },\n",{"type":52,"tag":992,"props":2769,"children":2771},{"class":994,"line":2770},36,[2772,2776,2780,2784,2788,2792,2796,2800,2804,2808,2812,2816,2820,2824,2828,2832,2836,2840,2844,2848,2852],{"type":52,"tag":992,"props":2773,"children":2774},{"style":2134},[2775],{"type":57,"value":2508},{"type":52,"tag":992,"props":2777,"children":2778},{"style":999},[2779],{"type":57,"value":1027},{"type":52,"tag":992,"props":2781,"children":2782},{"style":999},[2783],{"type":57,"value":2038},{"type":52,"tag":992,"props":2785,"children":2786},{"style":2134},[2787],{"type":57,"value":2696},{"type":52,"tag":992,"props":2789,"children":2790},{"style":999},[2791],{"type":57,"value":1027},{"type":52,"tag":992,"props":2793,"children":2794},{"style":999},[2795],{"type":57,"value":1032},{"type":52,"tag":992,"props":2797,"children":2798},{"style":1035},[2799],{"type":57,"value":2267},{"type":52,"tag":992,"props":2801,"children":2802},{"style":999},[2803],{"type":57,"value":1022},{"type":52,"tag":992,"props":2805,"children":2806},{"style":999},[2807],{"type":57,"value":2368},{"type":52,"tag":992,"props":2809,"children":2810},{"style":2134},[2811],{"type":57,"value":2721},{"type":52,"tag":992,"props":2813,"children":2814},{"style":999},[2815],{"type":57,"value":1027},{"type":52,"tag":992,"props":2817,"children":2818},{"style":999},[2819],{"type":57,"value":1032},{"type":52,"tag":992,"props":2821,"children":2822},{"style":1035},[2823],{"type":57,"value":422},{"type":52,"tag":992,"props":2825,"children":2826},{"style":999},[2827],{"type":57,"value":1022},{"type":52,"tag":992,"props":2829,"children":2830},{"style":999},[2831],{"type":57,"value":2368},{"type":52,"tag":992,"props":2833,"children":2834},{"style":2134},[2835],{"type":57,"value":2746},{"type":52,"tag":992,"props":2837,"children":2838},{"style":999},[2839],{"type":57,"value":1027},{"type":52,"tag":992,"props":2841,"children":2842},{"style":999},[2843],{"type":57,"value":1032},{"type":52,"tag":992,"props":2845,"children":2846},{"style":1035},[2847],{"type":57,"value":374},{"type":52,"tag":992,"props":2849,"children":2850},{"style":999},[2851],{"type":57,"value":1022},{"type":52,"tag":992,"props":2853,"children":2854},{"style":999},[2855],{"type":57,"value":2767},{"type":52,"tag":992,"props":2857,"children":2859},{"class":994,"line":2858},37,[2860],{"type":52,"tag":992,"props":2861,"children":2862},{"style":999},[2863],{"type":57,"value":2618},{"type":52,"tag":992,"props":2865,"children":2867},{"class":994,"line":2866},38,[2868],{"type":52,"tag":992,"props":2869,"children":2870},{"emptyLinePlaceholder":1837},[2871],{"type":57,"value":1840},{"type":52,"tag":992,"props":2873,"children":2875},{"class":994,"line":2874},39,[2876,2880,2885,2890,2895,2900,2906,2910,2914,2919,2923],{"type":52,"tag":992,"props":2877,"children":2878},{"style":2025},[2879],{"type":57,"value":2087},{"type":52,"tag":992,"props":2881,"children":2882},{"style":1014},[2883],{"type":57,"value":2884}," const",{"type":52,"tag":992,"props":2886,"children":2887},{"style":2041},[2888],{"type":57,"value":2889}," voiceFor ",{"type":52,"tag":992,"props":2891,"children":2892},{"style":999},[2893],{"type":57,"value":2894},"=",{"type":52,"tag":992,"props":2896,"children":2897},{"style":999},[2898],{"type":57,"value":2899}," (",{"type":52,"tag":992,"props":2901,"children":2903},{"style":2902},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[2904],{"type":57,"value":2905},"languageId",{"type":52,"tag":992,"props":2907,"children":2908},{"style":999},[2909],{"type":57,"value":1027},{"type":52,"tag":992,"props":2911,"children":2912},{"style":1185},[2913],{"type":57,"value":2044},{"type":52,"tag":992,"props":2915,"children":2916},{"style":999},[2917],{"type":57,"value":2918},"):",{"type":52,"tag":992,"props":2920,"children":2921},{"style":1185},[2922],{"type":57,"value":2124},{"type":52,"tag":992,"props":2924,"children":2925},{"style":1014},[2926],{"type":57,"value":2927}," =>\n",{"type":52,"tag":992,"props":2929,"children":2931},{"class":994,"line":2930},40,[2932,2937],{"type":52,"tag":992,"props":2933,"children":2934},{"style":2041},[2935],{"type":57,"value":2936},"  VOICE_BY_LANGUAGE[languageId]",{"type":52,"tag":992,"props":2938,"children":2939},{"style":999},[2940],{"type":57,"value":2072},{"type":52,"tag":992,"props":2942,"children":2944},{"class":994,"line":2943},41,[2945],{"type":52,"tag":992,"props":2946,"children":2947},{"emptyLinePlaceholder":1837},[2948],{"type":57,"value":1840},{"type":52,"tag":992,"props":2950,"children":2952},{"class":994,"line":2951},42,[2953,2957,2961,2966,2970,2974,2978,2982,2986,2990,2994],{"type":52,"tag":992,"props":2954,"children":2955},{"style":2025},[2956],{"type":57,"value":2087},{"type":52,"tag":992,"props":2958,"children":2959},{"style":1014},[2960],{"type":57,"value":2884},{"type":52,"tag":992,"props":2962,"children":2963},{"style":2041},[2964],{"type":57,"value":2965}," transcriberFor ",{"type":52,"tag":992,"props":2967,"children":2968},{"style":999},[2969],{"type":57,"value":2894},{"type":52,"tag":992,"props":2971,"children":2972},{"style":999},[2973],{"type":57,"value":2899},{"type":52,"tag":992,"props":2975,"children":2976},{"style":2902},[2977],{"type":57,"value":2905},{"type":52,"tag":992,"props":2979,"children":2980},{"style":999},[2981],{"type":57,"value":1027},{"type":52,"tag":992,"props":2983,"children":2984},{"style":1185},[2985],{"type":57,"value":2044},{"type":52,"tag":992,"props":2987,"children":2988},{"style":999},[2989],{"type":57,"value":2918},{"type":52,"tag":992,"props":2991,"children":2992},{"style":1185},[2993],{"type":57,"value":2225},{"type":52,"tag":992,"props":2995,"children":2996},{"style":1014},[2997],{"type":57,"value":2927},{"type":52,"tag":992,"props":2999,"children":3001},{"class":994,"line":3000},43,[3002,3007],{"type":52,"tag":992,"props":3003,"children":3004},{"style":2041},[3005],{"type":57,"value":3006},"  TRANSCRIBER_BY_LANGUAGE[languageId]",{"type":52,"tag":992,"props":3008,"children":3009},{"style":999},[3010],{"type":57,"value":2072},{"type":52,"tag":969,"props":3012,"children":3014},{"id":3013},"srcassistantsloadpromptts",[3015],{"type":52,"tag":66,"props":3016,"children":3018},{"className":3017},[],[3019],{"type":57,"value":236},{"type":52,"tag":981,"props":3021,"children":3023},{"className":1980,"code":3022,"language":1982,"meta":986,"style":986},"\u002F**\n * EN returns body.md unchanged. ES prepends a Spanish preamble with the\n * scenario's off-topic redirects spliced into {{OFF_TOPIC_LINES}}.\n * One body.md per scenario drives every language variant.\n *\u002F\nimport { readFileSync } from \"node:fs\";\nimport { resolve } from \"node:path\";\n\nexport type LanguageId = \"en\" | \"es\";\n\nconst PROMPT_DIR = resolve(import.meta.dir, \"prompts\");\n\nconst read = (relativePath: string): string =>\n  readFileSync(resolve(PROMPT_DIR, relativePath), \"utf8\");\n\nexport const loadPrompt = (\n  scenarioId: string,\n  languageId: LanguageId,\n): string => {\n  const body = read(`${scenarioId}\u002Fbody.md`);\n  if (languageId === \"en\") return body;\n\n  const offTopic = read(`${scenarioId}\u002Foff-topic-${languageId}.md`).trim();\n  const preamble = read(`shared\u002Fpreambles\u002F${languageId}.md`).replace(\n    \"{{OFF_TOPIC_LINES}}\",\n    offTopic,\n  );\n  return `${preamble}\\n\\n${body}`;\n};\n",[3024],{"type":52,"tag":66,"props":3025,"children":3026},{"__ignoreMap":986},[3027,3034,3042,3050,3058,3065,3106,3147,3154,3205,3212,3285,3292,3337,3393,3400,3425,3445,3465,3489,3547,3598,3605,3690,3761,3781,3793,3805,3850],{"type":52,"tag":992,"props":3028,"children":3029},{"class":994,"line":995},[3030],{"type":52,"tag":992,"props":3031,"children":3032},{"style":1992},[3033],{"type":57,"value":1995},{"type":52,"tag":992,"props":3035,"children":3036},{"class":994,"line":1005},[3037],{"type":52,"tag":992,"props":3038,"children":3039},{"style":1992},[3040],{"type":57,"value":3041}," * EN returns body.md unchanged. ES prepends a Spanish preamble with the\n",{"type":52,"tag":992,"props":3043,"children":3044},{"class":994,"line":1049},[3045],{"type":52,"tag":992,"props":3046,"children":3047},{"style":1992},[3048],{"type":57,"value":3049}," * scenario's off-topic redirects spliced into {{OFF_TOPIC_LINES}}.\n",{"type":52,"tag":992,"props":3051,"children":3052},{"class":994,"line":1087},[3053],{"type":52,"tag":992,"props":3054,"children":3055},{"style":1992},[3056],{"type":57,"value":3057}," * One body.md per scenario drives every language variant.\n",{"type":52,"tag":992,"props":3059,"children":3060},{"class":994,"line":1113},[3061],{"type":52,"tag":992,"props":3062,"children":3063},{"style":1992},[3064],{"type":57,"value":2019},{"type":52,"tag":992,"props":3066,"children":3067},{"class":994,"line":1151},[3068,3072,3076,3081,3085,3089,3093,3098,3102],{"type":52,"tag":992,"props":3069,"children":3070},{"style":2025},[3071],{"type":57,"value":2028},{"type":52,"tag":992,"props":3073,"children":3074},{"style":999},[3075],{"type":57,"value":2038},{"type":52,"tag":992,"props":3077,"children":3078},{"style":2041},[3079],{"type":57,"value":3080}," readFileSync",{"type":52,"tag":992,"props":3082,"children":3083},{"style":999},[3084],{"type":57,"value":2049},{"type":52,"tag":992,"props":3086,"children":3087},{"style":2025},[3088],{"type":57,"value":2054},{"type":52,"tag":992,"props":3090,"children":3091},{"style":999},[3092],{"type":57,"value":1032},{"type":52,"tag":992,"props":3094,"children":3095},{"style":1035},[3096],{"type":57,"value":3097},"node:fs",{"type":52,"tag":992,"props":3099,"children":3100},{"style":999},[3101],{"type":57,"value":1022},{"type":52,"tag":992,"props":3103,"children":3104},{"style":999},[3105],{"type":57,"value":2072},{"type":52,"tag":992,"props":3107,"children":3108},{"class":994,"line":30},[3109,3113,3117,3122,3126,3130,3134,3139,3143],{"type":52,"tag":992,"props":3110,"children":3111},{"style":2025},[3112],{"type":57,"value":2028},{"type":52,"tag":992,"props":3114,"children":3115},{"style":999},[3116],{"type":57,"value":2038},{"type":52,"tag":992,"props":3118,"children":3119},{"style":2041},[3120],{"type":57,"value":3121}," resolve",{"type":52,"tag":992,"props":3123,"children":3124},{"style":999},[3125],{"type":57,"value":2049},{"type":52,"tag":992,"props":3127,"children":3128},{"style":2025},[3129],{"type":57,"value":2054},{"type":52,"tag":992,"props":3131,"children":3132},{"style":999},[3133],{"type":57,"value":1032},{"type":52,"tag":992,"props":3135,"children":3136},{"style":1035},[3137],{"type":57,"value":3138},"node:path",{"type":52,"tag":992,"props":3140,"children":3141},{"style":999},[3142],{"type":57,"value":1022},{"type":52,"tag":992,"props":3144,"children":3145},{"style":999},[3146],{"type":57,"value":2072},{"type":52,"tag":992,"props":3148,"children":3149},{"class":994,"line":1215},[3150],{"type":52,"tag":992,"props":3151,"children":3152},{"emptyLinePlaceholder":1837},[3153],{"type":57,"value":1840},{"type":52,"tag":992,"props":3155,"children":3156},{"class":994,"line":1249},[3157,3161,3165,3169,3173,3177,3181,3185,3189,3193,3197,3201],{"type":52,"tag":992,"props":3158,"children":3159},{"style":2025},[3160],{"type":57,"value":2087},{"type":52,"tag":992,"props":3162,"children":3163},{"style":1014},[3164],{"type":57,"value":2033},{"type":52,"tag":992,"props":3166,"children":3167},{"style":1185},[3168],{"type":57,"value":2044},{"type":52,"tag":992,"props":3170,"children":3171},{"style":999},[3172],{"type":57,"value":2382},{"type":52,"tag":992,"props":3174,"children":3175},{"style":999},[3176],{"type":57,"value":1032},{"type":52,"tag":992,"props":3178,"children":3179},{"style":1035},[3180],{"type":57,"value":366},{"type":52,"tag":992,"props":3182,"children":3183},{"style":999},[3184],{"type":57,"value":1022},{"type":52,"tag":992,"props":3186,"children":3187},{"style":999},[3188],{"type":57,"value":2258},{"type":52,"tag":992,"props":3190,"children":3191},{"style":999},[3192],{"type":57,"value":1032},{"type":52,"tag":992,"props":3194,"children":3195},{"style":1035},[3196],{"type":57,"value":374},{"type":52,"tag":992,"props":3198,"children":3199},{"style":999},[3200],{"type":57,"value":1022},{"type":52,"tag":992,"props":3202,"children":3203},{"style":999},[3204],{"type":57,"value":2072},{"type":52,"tag":992,"props":3206,"children":3207},{"class":994,"line":1258},[3208],{"type":52,"tag":992,"props":3209,"children":3210},{"emptyLinePlaceholder":1837},[3211],{"type":57,"value":1840},{"type":52,"tag":992,"props":3213,"children":3214},{"class":994,"line":1283},[3215,3219,3224,3228,3233,3238,3242,3246,3251,3255,3260,3264,3268,3273,3277,3281],{"type":52,"tag":992,"props":3216,"children":3217},{"style":1014},[3218],{"type":57,"value":2339},{"type":52,"tag":992,"props":3220,"children":3221},{"style":2041},[3222],{"type":57,"value":3223}," PROMPT_DIR ",{"type":52,"tag":992,"props":3225,"children":3226},{"style":999},[3227],{"type":57,"value":2894},{"type":52,"tag":992,"props":3229,"children":3231},{"style":3230},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[3232],{"type":57,"value":3121},{"type":52,"tag":992,"props":3234,"children":3235},{"style":2041},[3236],{"type":57,"value":3237},"(",{"type":52,"tag":992,"props":3239,"children":3240},{"style":2025},[3241],{"type":57,"value":2028},{"type":52,"tag":992,"props":3243,"children":3244},{"style":999},[3245],{"type":57,"value":89},{"type":52,"tag":992,"props":3247,"children":3248},{"style":2041},[3249],{"type":57,"value":3250},"meta",{"type":52,"tag":992,"props":3252,"children":3253},{"style":999},[3254],{"type":57,"value":89},{"type":52,"tag":992,"props":3256,"children":3257},{"style":2041},[3258],{"type":57,"value":3259},"dir",{"type":52,"tag":992,"props":3261,"children":3262},{"style":999},[3263],{"type":57,"value":2368},{"type":52,"tag":992,"props":3265,"children":3266},{"style":999},[3267],{"type":57,"value":1032},{"type":52,"tag":992,"props":3269,"children":3270},{"style":1035},[3271],{"type":57,"value":3272},"prompts",{"type":52,"tag":992,"props":3274,"children":3275},{"style":999},[3276],{"type":57,"value":1022},{"type":52,"tag":992,"props":3278,"children":3279},{"style":2041},[3280],{"type":57,"value":857},{"type":52,"tag":992,"props":3282,"children":3283},{"style":999},[3284],{"type":57,"value":2072},{"type":52,"tag":992,"props":3286,"children":3287},{"class":994,"line":1316},[3288],{"type":52,"tag":992,"props":3289,"children":3290},{"emptyLinePlaceholder":1837},[3291],{"type":57,"value":1840},{"type":52,"tag":992,"props":3293,"children":3294},{"class":994,"line":1324},[3295,3299,3304,3308,3312,3317,3321,3325,3329,3333],{"type":52,"tag":992,"props":3296,"children":3297},{"style":1014},[3298],{"type":57,"value":2339},{"type":52,"tag":992,"props":3300,"children":3301},{"style":2041},[3302],{"type":57,"value":3303}," read ",{"type":52,"tag":992,"props":3305,"children":3306},{"style":999},[3307],{"type":57,"value":2894},{"type":52,"tag":992,"props":3309,"children":3310},{"style":999},[3311],{"type":57,"value":2899},{"type":52,"tag":992,"props":3313,"children":3314},{"style":2902},[3315],{"type":57,"value":3316},"relativePath",{"type":52,"tag":992,"props":3318,"children":3319},{"style":999},[3320],{"type":57,"value":1027},{"type":52,"tag":992,"props":3322,"children":3323},{"style":1185},[3324],{"type":57,"value":2175},{"type":52,"tag":992,"props":3326,"children":3327},{"style":999},[3328],{"type":57,"value":2918},{"type":52,"tag":992,"props":3330,"children":3331},{"style":1185},[3332],{"type":57,"value":2175},{"type":52,"tag":992,"props":3334,"children":3335},{"style":1014},[3336],{"type":57,"value":2927},{"type":52,"tag":992,"props":3338,"children":3339},{"class":994,"line":1349},[3340,3345,3349,3354,3359,3363,3368,3372,3376,3381,3385,3389],{"type":52,"tag":992,"props":3341,"children":3342},{"style":3230},[3343],{"type":57,"value":3344},"  readFileSync",{"type":52,"tag":992,"props":3346,"children":3347},{"style":2041},[3348],{"type":57,"value":3237},{"type":52,"tag":992,"props":3350,"children":3351},{"style":3230},[3352],{"type":57,"value":3353},"resolve",{"type":52,"tag":992,"props":3355,"children":3356},{"style":2041},[3357],{"type":57,"value":3358},"(PROMPT_DIR",{"type":52,"tag":992,"props":3360,"children":3361},{"style":999},[3362],{"type":57,"value":2368},{"type":52,"tag":992,"props":3364,"children":3365},{"style":2041},[3366],{"type":57,"value":3367}," relativePath)",{"type":52,"tag":992,"props":3369,"children":3370},{"style":999},[3371],{"type":57,"value":2368},{"type":52,"tag":992,"props":3373,"children":3374},{"style":999},[3375],{"type":57,"value":1032},{"type":52,"tag":992,"props":3377,"children":3378},{"style":1035},[3379],{"type":57,"value":3380},"utf8",{"type":52,"tag":992,"props":3382,"children":3383},{"style":999},[3384],{"type":57,"value":1022},{"type":52,"tag":992,"props":3386,"children":3387},{"style":2041},[3388],{"type":57,"value":857},{"type":52,"tag":992,"props":3390,"children":3391},{"style":999},[3392],{"type":57,"value":2072},{"type":52,"tag":992,"props":3394,"children":3395},{"class":994,"line":1387},[3396],{"type":52,"tag":992,"props":3397,"children":3398},{"emptyLinePlaceholder":1837},[3399],{"type":57,"value":1840},{"type":52,"tag":992,"props":3401,"children":3402},{"class":994,"line":1420},[3403,3407,3411,3416,3420],{"type":52,"tag":992,"props":3404,"children":3405},{"style":2025},[3406],{"type":57,"value":2087},{"type":52,"tag":992,"props":3408,"children":3409},{"style":1014},[3410],{"type":57,"value":2884},{"type":52,"tag":992,"props":3412,"children":3413},{"style":2041},[3414],{"type":57,"value":3415}," loadPrompt ",{"type":52,"tag":992,"props":3417,"children":3418},{"style":999},[3419],{"type":57,"value":2894},{"type":52,"tag":992,"props":3421,"children":3422},{"style":2041},[3423],{"type":57,"value":3424}," (\n",{"type":52,"tag":992,"props":3426,"children":3427},{"class":994,"line":1428},[3428,3433,3437,3441],{"type":52,"tag":992,"props":3429,"children":3430},{"style":2902},[3431],{"type":57,"value":3432},"  scenarioId",{"type":52,"tag":992,"props":3434,"children":3435},{"style":999},[3436],{"type":57,"value":1027},{"type":52,"tag":992,"props":3438,"children":3439},{"style":1185},[3440],{"type":57,"value":2175},{"type":52,"tag":992,"props":3442,"children":3443},{"style":999},[3444],{"type":57,"value":1046},{"type":52,"tag":992,"props":3446,"children":3447},{"class":994,"line":1462},[3448,3453,3457,3461],{"type":52,"tag":992,"props":3449,"children":3450},{"style":2902},[3451],{"type":57,"value":3452},"  languageId",{"type":52,"tag":992,"props":3454,"children":3455},{"style":999},[3456],{"type":57,"value":1027},{"type":52,"tag":992,"props":3458,"children":3459},{"style":1185},[3460],{"type":57,"value":2044},{"type":52,"tag":992,"props":3462,"children":3463},{"style":999},[3464],{"type":57,"value":1046},{"type":52,"tag":992,"props":3466,"children":3467},{"class":994,"line":2317},[3468,3472,3476,3480,3485],{"type":52,"tag":992,"props":3469,"children":3470},{"style":2041},[3471],{"type":57,"value":857},{"type":52,"tag":992,"props":3473,"children":3474},{"style":999},[3475],{"type":57,"value":1027},{"type":52,"tag":992,"props":3477,"children":3478},{"style":1185},[3479],{"type":57,"value":2175},{"type":52,"tag":992,"props":3481,"children":3482},{"style":1014},[3483],{"type":57,"value":3484}," =>",{"type":52,"tag":992,"props":3486,"children":3487},{"style":999},[3488],{"type":57,"value":1174},{"type":52,"tag":992,"props":3490,"children":3491},{"class":994,"line":2325},[3492,3497,3502,3506,3511,3515,3520,3524,3529,3534,3539,3543],{"type":52,"tag":992,"props":3493,"children":3494},{"style":1014},[3495],{"type":57,"value":3496},"  const",{"type":52,"tag":992,"props":3498,"children":3499},{"style":2041},[3500],{"type":57,"value":3501}," body",{"type":52,"tag":992,"props":3503,"children":3504},{"style":999},[3505],{"type":57,"value":2382},{"type":52,"tag":992,"props":3507,"children":3508},{"style":3230},[3509],{"type":57,"value":3510}," read",{"type":52,"tag":992,"props":3512,"children":3513},{"style":2134},[3514],{"type":57,"value":3237},{"type":52,"tag":992,"props":3516,"children":3517},{"style":999},[3518],{"type":57,"value":3519},"`${",{"type":52,"tag":992,"props":3521,"children":3522},{"style":2041},[3523],{"type":57,"value":486},{"type":52,"tag":992,"props":3525,"children":3526},{"style":999},[3527],{"type":57,"value":3528},"}",{"type":52,"tag":992,"props":3530,"children":3531},{"style":1035},[3532],{"type":57,"value":3533},"\u002Fbody.md",{"type":52,"tag":992,"props":3535,"children":3536},{"style":999},[3537],{"type":57,"value":3538},"`",{"type":52,"tag":992,"props":3540,"children":3541},{"style":2134},[3542],{"type":57,"value":857},{"type":52,"tag":992,"props":3544,"children":3545},{"style":999},[3546],{"type":57,"value":2072},{"type":52,"tag":992,"props":3548,"children":3549},{"class":994,"line":2333},[3550,3555,3559,3563,3568,3572,3576,3580,3585,3590,3594],{"type":52,"tag":992,"props":3551,"children":3552},{"style":2025},[3553],{"type":57,"value":3554},"  if",{"type":52,"tag":992,"props":3556,"children":3557},{"style":2134},[3558],{"type":57,"value":2899},{"type":52,"tag":992,"props":3560,"children":3561},{"style":2041},[3562],{"type":57,"value":2905},{"type":52,"tag":992,"props":3564,"children":3565},{"style":999},[3566],{"type":57,"value":3567}," ===",{"type":52,"tag":992,"props":3569,"children":3570},{"style":999},[3571],{"type":57,"value":1032},{"type":52,"tag":992,"props":3573,"children":3574},{"style":1035},[3575],{"type":57,"value":366},{"type":52,"tag":992,"props":3577,"children":3578},{"style":999},[3579],{"type":57,"value":1022},{"type":52,"tag":992,"props":3581,"children":3582},{"style":2134},[3583],{"type":57,"value":3584},") ",{"type":52,"tag":992,"props":3586,"children":3587},{"style":2025},[3588],{"type":57,"value":3589},"return",{"type":52,"tag":992,"props":3591,"children":3592},{"style":2041},[3593],{"type":57,"value":3501},{"type":52,"tag":992,"props":3595,"children":3596},{"style":999},[3597],{"type":57,"value":2072},{"type":52,"tag":992,"props":3599,"children":3600},{"class":994,"line":2389},[3601],{"type":52,"tag":992,"props":3602,"children":3603},{"emptyLinePlaceholder":1837},[3604],{"type":57,"value":1840},{"type":52,"tag":992,"props":3606,"children":3607},{"class":994,"line":2406},[3608,3612,3617,3621,3625,3629,3633,3637,3641,3646,3651,3655,3659,3664,3668,3672,3676,3681,3686],{"type":52,"tag":992,"props":3609,"children":3610},{"style":1014},[3611],{"type":57,"value":3496},{"type":52,"tag":992,"props":3613,"children":3614},{"style":2041},[3615],{"type":57,"value":3616}," offTopic",{"type":52,"tag":992,"props":3618,"children":3619},{"style":999},[3620],{"type":57,"value":2382},{"type":52,"tag":992,"props":3622,"children":3623},{"style":3230},[3624],{"type":57,"value":3510},{"type":52,"tag":992,"props":3626,"children":3627},{"style":2134},[3628],{"type":57,"value":3237},{"type":52,"tag":992,"props":3630,"children":3631},{"style":999},[3632],{"type":57,"value":3519},{"type":52,"tag":992,"props":3634,"children":3635},{"style":2041},[3636],{"type":57,"value":486},{"type":52,"tag":992,"props":3638,"children":3639},{"style":999},[3640],{"type":57,"value":3528},{"type":52,"tag":992,"props":3642,"children":3643},{"style":1035},[3644],{"type":57,"value":3645},"\u002Foff-topic-",{"type":52,"tag":992,"props":3647,"children":3648},{"style":999},[3649],{"type":57,"value":3650},"${",{"type":52,"tag":992,"props":3652,"children":3653},{"style":2041},[3654],{"type":57,"value":2905},{"type":52,"tag":992,"props":3656,"children":3657},{"style":999},[3658],{"type":57,"value":3528},{"type":52,"tag":992,"props":3660,"children":3661},{"style":1035},[3662],{"type":57,"value":3663},".md",{"type":52,"tag":992,"props":3665,"children":3666},{"style":999},[3667],{"type":57,"value":3538},{"type":52,"tag":992,"props":3669,"children":3670},{"style":2134},[3671],{"type":57,"value":857},{"type":52,"tag":992,"props":3673,"children":3674},{"style":999},[3675],{"type":57,"value":89},{"type":52,"tag":992,"props":3677,"children":3678},{"style":3230},[3679],{"type":57,"value":3680},"trim",{"type":52,"tag":992,"props":3682,"children":3683},{"style":2134},[3684],{"type":57,"value":3685},"()",{"type":52,"tag":992,"props":3687,"children":3688},{"style":999},[3689],{"type":57,"value":2072},{"type":52,"tag":992,"props":3691,"children":3692},{"class":994,"line":2435},[3693,3697,3702,3706,3710,3714,3718,3723,3727,3731,3735,3739,3743,3747,3751,3756],{"type":52,"tag":992,"props":3694,"children":3695},{"style":1014},[3696],{"type":57,"value":3496},{"type":52,"tag":992,"props":3698,"children":3699},{"style":2041},[3700],{"type":57,"value":3701}," preamble",{"type":52,"tag":992,"props":3703,"children":3704},{"style":999},[3705],{"type":57,"value":2382},{"type":52,"tag":992,"props":3707,"children":3708},{"style":3230},[3709],{"type":57,"value":3510},{"type":52,"tag":992,"props":3711,"children":3712},{"style":2134},[3713],{"type":57,"value":3237},{"type":52,"tag":992,"props":3715,"children":3716},{"style":999},[3717],{"type":57,"value":3538},{"type":52,"tag":992,"props":3719,"children":3720},{"style":1035},[3721],{"type":57,"value":3722},"shared\u002Fpreambles\u002F",{"type":52,"tag":992,"props":3724,"children":3725},{"style":999},[3726],{"type":57,"value":3650},{"type":52,"tag":992,"props":3728,"children":3729},{"style":2041},[3730],{"type":57,"value":2905},{"type":52,"tag":992,"props":3732,"children":3733},{"style":999},[3734],{"type":57,"value":3528},{"type":52,"tag":992,"props":3736,"children":3737},{"style":1035},[3738],{"type":57,"value":3663},{"type":52,"tag":992,"props":3740,"children":3741},{"style":999},[3742],{"type":57,"value":3538},{"type":52,"tag":992,"props":3744,"children":3745},{"style":2134},[3746],{"type":57,"value":857},{"type":52,"tag":992,"props":3748,"children":3749},{"style":999},[3750],{"type":57,"value":89},{"type":52,"tag":992,"props":3752,"children":3753},{"style":3230},[3754],{"type":57,"value":3755},"replace",{"type":52,"tag":992,"props":3757,"children":3758},{"style":2134},[3759],{"type":57,"value":3760},"(\n",{"type":52,"tag":992,"props":3762,"children":3763},{"class":994,"line":2464},[3764,3768,3773,3777],{"type":52,"tag":992,"props":3765,"children":3766},{"style":999},[3767],{"type":57,"value":1182},{"type":52,"tag":992,"props":3769,"children":3770},{"style":1035},[3771],{"type":57,"value":3772},"{{OFF_TOPIC_LINES}}",{"type":52,"tag":992,"props":3774,"children":3775},{"style":999},[3776],{"type":57,"value":1022},{"type":52,"tag":992,"props":3778,"children":3779},{"style":999},[3780],{"type":57,"value":1046},{"type":52,"tag":992,"props":3782,"children":3783},{"class":994,"line":2494},[3784,3789],{"type":52,"tag":992,"props":3785,"children":3786},{"style":2041},[3787],{"type":57,"value":3788},"    offTopic",{"type":52,"tag":992,"props":3790,"children":3791},{"style":999},[3792],{"type":57,"value":1046},{"type":52,"tag":992,"props":3794,"children":3795},{"class":994,"line":2502},[3796,3801],{"type":52,"tag":992,"props":3797,"children":3798},{"style":2134},[3799],{"type":57,"value":3800},"  )",{"type":52,"tag":992,"props":3802,"children":3803},{"style":999},[3804],{"type":57,"value":2072},{"type":52,"tag":992,"props":3806,"children":3807},{"class":994,"line":2519},[3808,3813,3818,3823,3827,3832,3836,3841,3846],{"type":52,"tag":992,"props":3809,"children":3810},{"style":2025},[3811],{"type":57,"value":3812},"  return",{"type":52,"tag":992,"props":3814,"children":3815},{"style":999},[3816],{"type":57,"value":3817}," `${",{"type":52,"tag":992,"props":3819,"children":3820},{"style":2041},[3821],{"type":57,"value":3822},"preamble",{"type":52,"tag":992,"props":3824,"children":3825},{"style":999},[3826],{"type":57,"value":3528},{"type":52,"tag":992,"props":3828,"children":3829},{"style":2041},[3830],{"type":57,"value":3831},"\\n\\n",{"type":52,"tag":992,"props":3833,"children":3834},{"style":999},[3835],{"type":57,"value":3650},{"type":52,"tag":992,"props":3837,"children":3838},{"style":2041},[3839],{"type":57,"value":3840},"body",{"type":52,"tag":992,"props":3842,"children":3843},{"style":999},[3844],{"type":57,"value":3845},"}`",{"type":52,"tag":992,"props":3847,"children":3848},{"style":999},[3849],{"type":57,"value":2072},{"type":52,"tag":992,"props":3851,"children":3852},{"class":994,"line":2547},[3853],{"type":52,"tag":992,"props":3854,"children":3855},{"style":999},[3856],{"type":57,"value":2618},{"type":52,"tag":969,"props":3858,"children":3860},{"id":3859},"srcassistantsscenariosindexts",[3861],{"type":52,"tag":66,"props":3862,"children":3864},{"className":3863},[],[3865],{"type":57,"value":254},{"type":52,"tag":981,"props":3867,"children":3869},{"className":1980,"code":3868,"language":1982,"meta":986,"style":986},"\u002F**\n * Scenario registry. Adding a new scenario is one entry here plus one new\n * file under `.\u002F\u003Cscenario-id>.ts` and matching prompts under `..\u002Fprompts\u002F\u003Cid>\u002F`.\n *\u002F\n\u003CSCENARIO_IMPORTS>\n\nexport const SCENARIOS = {\n  \u003CSCENARIO_KEYS>\n} as const;\n\nexport type ScenarioId = keyof typeof SCENARIOS;\n\nexport const SCENARIO_IDS = Object.keys(SCENARIOS) as ScenarioId[];\n\nexport const scenarioFor = (id: ScenarioId) => SCENARIOS[id];\n",[3870],{"type":52,"tag":66,"props":3871,"children":3872},{"__ignoreMap":986},[3873,3880,3888,3896,3903,3920,3927,3951,3959,3979,3986,4025,4032,4089,4096],{"type":52,"tag":992,"props":3874,"children":3875},{"class":994,"line":995},[3876],{"type":52,"tag":992,"props":3877,"children":3878},{"style":1992},[3879],{"type":57,"value":1995},{"type":52,"tag":992,"props":3881,"children":3882},{"class":994,"line":1005},[3883],{"type":52,"tag":992,"props":3884,"children":3885},{"style":1992},[3886],{"type":57,"value":3887}," * Scenario registry. Adding a new scenario is one entry here plus one new\n",{"type":52,"tag":992,"props":3889,"children":3890},{"class":994,"line":1049},[3891],{"type":52,"tag":992,"props":3892,"children":3893},{"style":1992},[3894],{"type":57,"value":3895}," * file under `.\u002F\u003Cscenario-id>.ts` and matching prompts under `..\u002Fprompts\u002F\u003Cid>\u002F`.\n",{"type":52,"tag":992,"props":3897,"children":3898},{"class":994,"line":1087},[3899],{"type":52,"tag":992,"props":3900,"children":3901},{"style":1992},[3902],{"type":57,"value":2019},{"type":52,"tag":992,"props":3904,"children":3905},{"class":994,"line":1113},[3906,3910,3915],{"type":52,"tag":992,"props":3907,"children":3908},{"style":2041},[3909],{"type":57,"value":2358},{"type":52,"tag":992,"props":3911,"children":3912},{"style":1185},[3913],{"type":57,"value":3914},"SCENARIO_IMPORTS",{"type":52,"tag":992,"props":3916,"children":3917},{"style":2041},[3918],{"type":57,"value":3919},">\n",{"type":52,"tag":992,"props":3921,"children":3922},{"class":994,"line":1151},[3923],{"type":52,"tag":992,"props":3924,"children":3925},{"emptyLinePlaceholder":1837},[3926],{"type":57,"value":1840},{"type":52,"tag":992,"props":3928,"children":3929},{"class":994,"line":30},[3930,3934,3938,3943,3947],{"type":52,"tag":992,"props":3931,"children":3932},{"style":2025},[3933],{"type":57,"value":2087},{"type":52,"tag":992,"props":3935,"children":3936},{"style":1014},[3937],{"type":57,"value":2884},{"type":52,"tag":992,"props":3939,"children":3940},{"style":2041},[3941],{"type":57,"value":3942}," SCENARIOS ",{"type":52,"tag":992,"props":3944,"children":3945},{"style":999},[3946],{"type":57,"value":2894},{"type":52,"tag":992,"props":3948,"children":3949},{"style":999},[3950],{"type":57,"value":1174},{"type":52,"tag":992,"props":3952,"children":3953},{"class":994,"line":1215},[3954],{"type":52,"tag":992,"props":3955,"children":3956},{"style":2041},[3957],{"type":57,"value":3958},"  \u003CSCENARIO_KEYS>\n",{"type":52,"tag":992,"props":3960,"children":3961},{"class":994,"line":1249},[3962,3966,3971,3975],{"type":52,"tag":992,"props":3963,"children":3964},{"style":999},[3965],{"type":57,"value":3528},{"type":52,"tag":992,"props":3967,"children":3968},{"style":2025},[3969],{"type":57,"value":3970}," as",{"type":52,"tag":992,"props":3972,"children":3973},{"style":1014},[3974],{"type":57,"value":2884},{"type":52,"tag":992,"props":3976,"children":3977},{"style":999},[3978],{"type":57,"value":2072},{"type":52,"tag":992,"props":3980,"children":3981},{"class":994,"line":1258},[3982],{"type":52,"tag":992,"props":3983,"children":3984},{"emptyLinePlaceholder":1837},[3985],{"type":57,"value":1840},{"type":52,"tag":992,"props":3987,"children":3988},{"class":994,"line":1283},[3989,3993,3997,4002,4006,4011,4016,4021],{"type":52,"tag":992,"props":3990,"children":3991},{"style":2025},[3992],{"type":57,"value":2087},{"type":52,"tag":992,"props":3994,"children":3995},{"style":1014},[3996],{"type":57,"value":2033},{"type":52,"tag":992,"props":3998,"children":3999},{"style":1185},[4000],{"type":57,"value":4001}," ScenarioId",{"type":52,"tag":992,"props":4003,"children":4004},{"style":999},[4005],{"type":57,"value":2382},{"type":52,"tag":992,"props":4007,"children":4008},{"style":999},[4009],{"type":57,"value":4010}," keyof",{"type":52,"tag":992,"props":4012,"children":4013},{"style":999},[4014],{"type":57,"value":4015}," typeof",{"type":52,"tag":992,"props":4017,"children":4018},{"style":2041},[4019],{"type":57,"value":4020}," SCENARIOS",{"type":52,"tag":992,"props":4022,"children":4023},{"style":999},[4024],{"type":57,"value":2072},{"type":52,"tag":992,"props":4026,"children":4027},{"class":994,"line":1316},[4028],{"type":52,"tag":992,"props":4029,"children":4030},{"emptyLinePlaceholder":1837},[4031],{"type":57,"value":1840},{"type":52,"tag":992,"props":4033,"children":4034},{"class":994,"line":1324},[4035,4039,4043,4048,4052,4057,4061,4066,4071,4076,4080,4085],{"type":52,"tag":992,"props":4036,"children":4037},{"style":2025},[4038],{"type":57,"value":2087},{"type":52,"tag":992,"props":4040,"children":4041},{"style":1014},[4042],{"type":57,"value":2884},{"type":52,"tag":992,"props":4044,"children":4045},{"style":2041},[4046],{"type":57,"value":4047}," SCENARIO_IDS ",{"type":52,"tag":992,"props":4049,"children":4050},{"style":999},[4051],{"type":57,"value":2894},{"type":52,"tag":992,"props":4053,"children":4054},{"style":2041},[4055],{"type":57,"value":4056}," Object",{"type":52,"tag":992,"props":4058,"children":4059},{"style":999},[4060],{"type":57,"value":89},{"type":52,"tag":992,"props":4062,"children":4063},{"style":3230},[4064],{"type":57,"value":4065},"keys",{"type":52,"tag":992,"props":4067,"children":4068},{"style":2041},[4069],{"type":57,"value":4070},"(SCENARIOS) ",{"type":52,"tag":992,"props":4072,"children":4073},{"style":2025},[4074],{"type":57,"value":4075},"as",{"type":52,"tag":992,"props":4077,"children":4078},{"style":1185},[4079],{"type":57,"value":4001},{"type":52,"tag":992,"props":4081,"children":4082},{"style":2041},[4083],{"type":57,"value":4084},"[]",{"type":52,"tag":992,"props":4086,"children":4087},{"style":999},[4088],{"type":57,"value":2072},{"type":52,"tag":992,"props":4090,"children":4091},{"class":994,"line":1349},[4092],{"type":52,"tag":992,"props":4093,"children":4094},{"emptyLinePlaceholder":1837},[4095],{"type":57,"value":1840},{"type":52,"tag":992,"props":4097,"children":4098},{"class":994,"line":1387},[4099,4103,4107,4112,4116,4120,4125,4129,4133,4137,4141,4146],{"type":52,"tag":992,"props":4100,"children":4101},{"style":2025},[4102],{"type":57,"value":2087},{"type":52,"tag":992,"props":4104,"children":4105},{"style":1014},[4106],{"type":57,"value":2884},{"type":52,"tag":992,"props":4108,"children":4109},{"style":2041},[4110],{"type":57,"value":4111}," scenarioFor ",{"type":52,"tag":992,"props":4113,"children":4114},{"style":999},[4115],{"type":57,"value":2894},{"type":52,"tag":992,"props":4117,"children":4118},{"style":999},[4119],{"type":57,"value":2899},{"type":52,"tag":992,"props":4121,"children":4122},{"style":2902},[4123],{"type":57,"value":4124},"id",{"type":52,"tag":992,"props":4126,"children":4127},{"style":999},[4128],{"type":57,"value":1027},{"type":52,"tag":992,"props":4130,"children":4131},{"style":1185},[4132],{"type":57,"value":4001},{"type":52,"tag":992,"props":4134,"children":4135},{"style":999},[4136],{"type":57,"value":857},{"type":52,"tag":992,"props":4138,"children":4139},{"style":1014},[4140],{"type":57,"value":3484},{"type":52,"tag":992,"props":4142,"children":4143},{"style":2041},[4144],{"type":57,"value":4145}," SCENARIOS[id]",{"type":52,"tag":992,"props":4147,"children":4148},{"style":999},[4149],{"type":57,"value":2072},{"type":52,"tag":969,"props":4151,"children":4153},{"id":4152},"srcassistantsbuildassistantts",[4154],{"type":52,"tag":66,"props":4155,"children":4157},{"className":4156},[],[4158],{"type":57,"value":265},{"type":52,"tag":981,"props":4160,"children":4162},{"className":1980,"code":4161,"language":1982,"meta":986,"style":986},"\u002F**\n * Compose a full Vapi assistant body for a (scenario, language) tuple.\n * Voice + transcriber come from languages.ts; prompt from loadPrompt;\n * name + firstMessage + clientTools from the scenario.\n *\u002F\nimport { transcriberFor, voiceFor } from \".\u002Flanguages.ts\";\nimport { loadPrompt, type LanguageId } from \".\u002FloadPrompt.ts\";\nimport { scenarioFor, type ScenarioId } from \".\u002Fscenarios\u002Findex.ts\";\n\nexport type { LanguageId, ScenarioId };\n\nexport const buildAssistant = (\n  scenarioId: ScenarioId,\n  languageId: LanguageId,\n) => {\n  const scenario = scenarioFor(scenarioId);\n  const systemPrompt = loadPrompt(scenarioId, languageId);\n\n  return {\n    name: `${languageId.toUpperCase()} - ${scenario.name}`,\n    firstMessage: scenario.firstMessage[languageId],\n    voice: voiceFor(languageId),\n    transcriber: transcriberFor(languageId),\n    model: {\n      provider: \"openai\" as const,\n      model: \"gpt-4.1\",\n      temperature: 0.5,\n      messages: [{ role: \"system\" as const, content: systemPrompt }],\n      tools: scenario.clientTools,\n    },\n  };\n};\n",[4163],{"type":52,"tag":66,"props":4164,"children":4165},{"__ignoreMap":986},[4166,4173,4181,4189,4197,4204,4254,4306,4359,4366,4397,4404,4428,4447,4466,4482,4518,4563,4570,4581,4648,4691,4723,4755,4770,4807,4836,4858,4938,4966,4974,4982],{"type":52,"tag":992,"props":4167,"children":4168},{"class":994,"line":995},[4169],{"type":52,"tag":992,"props":4170,"children":4171},{"style":1992},[4172],{"type":57,"value":1995},{"type":52,"tag":992,"props":4174,"children":4175},{"class":994,"line":1005},[4176],{"type":52,"tag":992,"props":4177,"children":4178},{"style":1992},[4179],{"type":57,"value":4180}," * Compose a full Vapi assistant body for a (scenario, language) tuple.\n",{"type":52,"tag":992,"props":4182,"children":4183},{"class":994,"line":1049},[4184],{"type":52,"tag":992,"props":4185,"children":4186},{"style":1992},[4187],{"type":57,"value":4188}," * Voice + transcriber come from languages.ts; prompt from loadPrompt;\n",{"type":52,"tag":992,"props":4190,"children":4191},{"class":994,"line":1087},[4192],{"type":52,"tag":992,"props":4193,"children":4194},{"style":1992},[4195],{"type":57,"value":4196}," * name + firstMessage + clientTools from the scenario.\n",{"type":52,"tag":992,"props":4198,"children":4199},{"class":994,"line":1113},[4200],{"type":52,"tag":992,"props":4201,"children":4202},{"style":1992},[4203],{"type":57,"value":2019},{"type":52,"tag":992,"props":4205,"children":4206},{"class":994,"line":1151},[4207,4211,4215,4220,4224,4229,4233,4237,4241,4246,4250],{"type":52,"tag":992,"props":4208,"children":4209},{"style":2025},[4210],{"type":57,"value":2028},{"type":52,"tag":992,"props":4212,"children":4213},{"style":999},[4214],{"type":57,"value":2038},{"type":52,"tag":992,"props":4216,"children":4217},{"style":2041},[4218],{"type":57,"value":4219}," transcriberFor",{"type":52,"tag":992,"props":4221,"children":4222},{"style":999},[4223],{"type":57,"value":2368},{"type":52,"tag":992,"props":4225,"children":4226},{"style":2041},[4227],{"type":57,"value":4228}," voiceFor",{"type":52,"tag":992,"props":4230,"children":4231},{"style":999},[4232],{"type":57,"value":2049},{"type":52,"tag":992,"props":4234,"children":4235},{"style":2025},[4236],{"type":57,"value":2054},{"type":52,"tag":992,"props":4238,"children":4239},{"style":999},[4240],{"type":57,"value":1032},{"type":52,"tag":992,"props":4242,"children":4243},{"style":1035},[4244],{"type":57,"value":4245},".\u002Flanguages.ts",{"type":52,"tag":992,"props":4247,"children":4248},{"style":999},[4249],{"type":57,"value":1022},{"type":52,"tag":992,"props":4251,"children":4252},{"style":999},[4253],{"type":57,"value":2072},{"type":52,"tag":992,"props":4255,"children":4256},{"class":994,"line":30},[4257,4261,4265,4270,4274,4278,4282,4286,4290,4294,4298,4302],{"type":52,"tag":992,"props":4258,"children":4259},{"style":2025},[4260],{"type":57,"value":2028},{"type":52,"tag":992,"props":4262,"children":4263},{"style":999},[4264],{"type":57,"value":2038},{"type":52,"tag":992,"props":4266,"children":4267},{"style":2041},[4268],{"type":57,"value":4269}," loadPrompt",{"type":52,"tag":992,"props":4271,"children":4272},{"style":999},[4273],{"type":57,"value":2368},{"type":52,"tag":992,"props":4275,"children":4276},{"style":2025},[4277],{"type":57,"value":2033},{"type":52,"tag":992,"props":4279,"children":4280},{"style":2041},[4281],{"type":57,"value":2044},{"type":52,"tag":992,"props":4283,"children":4284},{"style":999},[4285],{"type":57,"value":2049},{"type":52,"tag":992,"props":4287,"children":4288},{"style":2025},[4289],{"type":57,"value":2054},{"type":52,"tag":992,"props":4291,"children":4292},{"style":999},[4293],{"type":57,"value":1032},{"type":52,"tag":992,"props":4295,"children":4296},{"style":1035},[4297],{"type":57,"value":2063},{"type":52,"tag":992,"props":4299,"children":4300},{"style":999},[4301],{"type":57,"value":1022},{"type":52,"tag":992,"props":4303,"children":4304},{"style":999},[4305],{"type":57,"value":2072},{"type":52,"tag":992,"props":4307,"children":4308},{"class":994,"line":1215},[4309,4313,4317,4322,4326,4330,4334,4338,4342,4346,4351,4355],{"type":52,"tag":992,"props":4310,"children":4311},{"style":2025},[4312],{"type":57,"value":2028},{"type":52,"tag":992,"props":4314,"children":4315},{"style":999},[4316],{"type":57,"value":2038},{"type":52,"tag":992,"props":4318,"children":4319},{"style":2041},[4320],{"type":57,"value":4321}," scenarioFor",{"type":52,"tag":992,"props":4323,"children":4324},{"style":999},[4325],{"type":57,"value":2368},{"type":52,"tag":992,"props":4327,"children":4328},{"style":2025},[4329],{"type":57,"value":2033},{"type":52,"tag":992,"props":4331,"children":4332},{"style":2041},[4333],{"type":57,"value":4001},{"type":52,"tag":992,"props":4335,"children":4336},{"style":999},[4337],{"type":57,"value":2049},{"type":52,"tag":992,"props":4339,"children":4340},{"style":2025},[4341],{"type":57,"value":2054},{"type":52,"tag":992,"props":4343,"children":4344},{"style":999},[4345],{"type":57,"value":1032},{"type":52,"tag":992,"props":4347,"children":4348},{"style":1035},[4349],{"type":57,"value":4350},".\u002Fscenarios\u002Findex.ts",{"type":52,"tag":992,"props":4352,"children":4353},{"style":999},[4354],{"type":57,"value":1022},{"type":52,"tag":992,"props":4356,"children":4357},{"style":999},[4358],{"type":57,"value":2072},{"type":52,"tag":992,"props":4360,"children":4361},{"class":994,"line":1249},[4362],{"type":52,"tag":992,"props":4363,"children":4364},{"emptyLinePlaceholder":1837},[4365],{"type":57,"value":1840},{"type":52,"tag":992,"props":4367,"children":4368},{"class":994,"line":1258},[4369,4373,4377,4381,4385,4389,4393],{"type":52,"tag":992,"props":4370,"children":4371},{"style":2025},[4372],{"type":57,"value":2087},{"type":52,"tag":992,"props":4374,"children":4375},{"style":2025},[4376],{"type":57,"value":2033},{"type":52,"tag":992,"props":4378,"children":4379},{"style":999},[4380],{"type":57,"value":2038},{"type":52,"tag":992,"props":4382,"children":4383},{"style":2041},[4384],{"type":57,"value":2044},{"type":52,"tag":992,"props":4386,"children":4387},{"style":999},[4388],{"type":57,"value":2368},{"type":52,"tag":992,"props":4390,"children":4391},{"style":2041},[4392],{"type":57,"value":4001},{"type":52,"tag":992,"props":4394,"children":4395},{"style":999},[4396],{"type":57,"value":2104},{"type":52,"tag":992,"props":4398,"children":4399},{"class":994,"line":1283},[4400],{"type":52,"tag":992,"props":4401,"children":4402},{"emptyLinePlaceholder":1837},[4403],{"type":57,"value":1840},{"type":52,"tag":992,"props":4405,"children":4406},{"class":994,"line":1316},[4407,4411,4415,4420,4424],{"type":52,"tag":992,"props":4408,"children":4409},{"style":2025},[4410],{"type":57,"value":2087},{"type":52,"tag":992,"props":4412,"children":4413},{"style":1014},[4414],{"type":57,"value":2884},{"type":52,"tag":992,"props":4416,"children":4417},{"style":2041},[4418],{"type":57,"value":4419}," buildAssistant ",{"type":52,"tag":992,"props":4421,"children":4422},{"style":999},[4423],{"type":57,"value":2894},{"type":52,"tag":992,"props":4425,"children":4426},{"style":2041},[4427],{"type":57,"value":3424},{"type":52,"tag":992,"props":4429,"children":4430},{"class":994,"line":1324},[4431,4435,4439,4443],{"type":52,"tag":992,"props":4432,"children":4433},{"style":2902},[4434],{"type":57,"value":3432},{"type":52,"tag":992,"props":4436,"children":4437},{"style":999},[4438],{"type":57,"value":1027},{"type":52,"tag":992,"props":4440,"children":4441},{"style":1185},[4442],{"type":57,"value":4001},{"type":52,"tag":992,"props":4444,"children":4445},{"style":999},[4446],{"type":57,"value":1046},{"type":52,"tag":992,"props":4448,"children":4449},{"class":994,"line":1349},[4450,4454,4458,4462],{"type":52,"tag":992,"props":4451,"children":4452},{"style":2902},[4453],{"type":57,"value":3452},{"type":52,"tag":992,"props":4455,"children":4456},{"style":999},[4457],{"type":57,"value":1027},{"type":52,"tag":992,"props":4459,"children":4460},{"style":1185},[4461],{"type":57,"value":2044},{"type":52,"tag":992,"props":4463,"children":4464},{"style":999},[4465],{"type":57,"value":1046},{"type":52,"tag":992,"props":4467,"children":4468},{"class":994,"line":1387},[4469,4473,4478],{"type":52,"tag":992,"props":4470,"children":4471},{"style":2041},[4472],{"type":57,"value":3584},{"type":52,"tag":992,"props":4474,"children":4475},{"style":1014},[4476],{"type":57,"value":4477},"=>",{"type":52,"tag":992,"props":4479,"children":4480},{"style":999},[4481],{"type":57,"value":1174},{"type":52,"tag":992,"props":4483,"children":4484},{"class":994,"line":1420},[4485,4489,4494,4498,4502,4506,4510,4514],{"type":52,"tag":992,"props":4486,"children":4487},{"style":1014},[4488],{"type":57,"value":3496},{"type":52,"tag":992,"props":4490,"children":4491},{"style":2041},[4492],{"type":57,"value":4493}," scenario",{"type":52,"tag":992,"props":4495,"children":4496},{"style":999},[4497],{"type":57,"value":2382},{"type":52,"tag":992,"props":4499,"children":4500},{"style":3230},[4501],{"type":57,"value":4321},{"type":52,"tag":992,"props":4503,"children":4504},{"style":2134},[4505],{"type":57,"value":3237},{"type":52,"tag":992,"props":4507,"children":4508},{"style":2041},[4509],{"type":57,"value":486},{"type":52,"tag":992,"props":4511,"children":4512},{"style":2134},[4513],{"type":57,"value":857},{"type":52,"tag":992,"props":4515,"children":4516},{"style":999},[4517],{"type":57,"value":2072},{"type":52,"tag":992,"props":4519,"children":4520},{"class":994,"line":1428},[4521,4525,4530,4534,4538,4542,4546,4550,4555,4559],{"type":52,"tag":992,"props":4522,"children":4523},{"style":1014},[4524],{"type":57,"value":3496},{"type":52,"tag":992,"props":4526,"children":4527},{"style":2041},[4528],{"type":57,"value":4529}," systemPrompt",{"type":52,"tag":992,"props":4531,"children":4532},{"style":999},[4533],{"type":57,"value":2382},{"type":52,"tag":992,"props":4535,"children":4536},{"style":3230},[4537],{"type":57,"value":4269},{"type":52,"tag":992,"props":4539,"children":4540},{"style":2134},[4541],{"type":57,"value":3237},{"type":52,"tag":992,"props":4543,"children":4544},{"style":2041},[4545],{"type":57,"value":486},{"type":52,"tag":992,"props":4547,"children":4548},{"style":999},[4549],{"type":57,"value":2368},{"type":52,"tag":992,"props":4551,"children":4552},{"style":2041},[4553],{"type":57,"value":4554}," languageId",{"type":52,"tag":992,"props":4556,"children":4557},{"style":2134},[4558],{"type":57,"value":857},{"type":52,"tag":992,"props":4560,"children":4561},{"style":999},[4562],{"type":57,"value":2072},{"type":52,"tag":992,"props":4564,"children":4565},{"class":994,"line":1462},[4566],{"type":52,"tag":992,"props":4567,"children":4568},{"emptyLinePlaceholder":1837},[4569],{"type":57,"value":1840},{"type":52,"tag":992,"props":4571,"children":4572},{"class":994,"line":2317},[4573,4577],{"type":52,"tag":992,"props":4574,"children":4575},{"style":2025},[4576],{"type":57,"value":3812},{"type":52,"tag":992,"props":4578,"children":4579},{"style":999},[4580],{"type":57,"value":1174},{"type":52,"tag":992,"props":4582,"children":4583},{"class":994,"line":2325},[4584,4589,4593,4597,4601,4605,4610,4614,4618,4623,4627,4632,4636,4640,4644],{"type":52,"tag":992,"props":4585,"children":4586},{"style":2134},[4587],{"type":57,"value":4588},"    name",{"type":52,"tag":992,"props":4590,"children":4591},{"style":999},[4592],{"type":57,"value":1027},{"type":52,"tag":992,"props":4594,"children":4595},{"style":999},[4596],{"type":57,"value":3817},{"type":52,"tag":992,"props":4598,"children":4599},{"style":2041},[4600],{"type":57,"value":2905},{"type":52,"tag":992,"props":4602,"children":4603},{"style":999},[4604],{"type":57,"value":89},{"type":52,"tag":992,"props":4606,"children":4607},{"style":3230},[4608],{"type":57,"value":4609},"toUpperCase",{"type":52,"tag":992,"props":4611,"children":4612},{"style":2041},[4613],{"type":57,"value":3685},{"type":52,"tag":992,"props":4615,"children":4616},{"style":999},[4617],{"type":57,"value":3528},{"type":52,"tag":992,"props":4619,"children":4620},{"style":1035},[4621],{"type":57,"value":4622}," - ",{"type":52,"tag":992,"props":4624,"children":4625},{"style":999},[4626],{"type":57,"value":3650},{"type":52,"tag":992,"props":4628,"children":4629},{"style":2041},[4630],{"type":57,"value":4631},"scenario",{"type":52,"tag":992,"props":4633,"children":4634},{"style":999},[4635],{"type":57,"value":89},{"type":52,"tag":992,"props":4637,"children":4638},{"style":2041},[4639],{"type":57,"value":1017},{"type":52,"tag":992,"props":4641,"children":4642},{"style":999},[4643],{"type":57,"value":3845},{"type":52,"tag":992,"props":4645,"children":4646},{"style":999},[4647],{"type":57,"value":1046},{"type":52,"tag":992,"props":4649,"children":4650},{"class":994,"line":2333},[4651,4656,4660,4664,4668,4673,4678,4682,4687],{"type":52,"tag":992,"props":4652,"children":4653},{"style":2134},[4654],{"type":57,"value":4655},"    firstMessage",{"type":52,"tag":992,"props":4657,"children":4658},{"style":999},[4659],{"type":57,"value":1027},{"type":52,"tag":992,"props":4661,"children":4662},{"style":2041},[4663],{"type":57,"value":4493},{"type":52,"tag":992,"props":4665,"children":4666},{"style":999},[4667],{"type":57,"value":89},{"type":52,"tag":992,"props":4669,"children":4670},{"style":2041},[4671],{"type":57,"value":4672},"firstMessage",{"type":52,"tag":992,"props":4674,"children":4675},{"style":2134},[4676],{"type":57,"value":4677},"[",{"type":52,"tag":992,"props":4679,"children":4680},{"style":2041},[4681],{"type":57,"value":2905},{"type":52,"tag":992,"props":4683,"children":4684},{"style":2134},[4685],{"type":57,"value":4686},"]",{"type":52,"tag":992,"props":4688,"children":4689},{"style":999},[4690],{"type":57,"value":1046},{"type":52,"tag":992,"props":4692,"children":4693},{"class":994,"line":2389},[4694,4699,4703,4707,4711,4715,4719],{"type":52,"tag":992,"props":4695,"children":4696},{"style":2134},[4697],{"type":57,"value":4698},"    voice",{"type":52,"tag":992,"props":4700,"children":4701},{"style":999},[4702],{"type":57,"value":1027},{"type":52,"tag":992,"props":4704,"children":4705},{"style":3230},[4706],{"type":57,"value":4228},{"type":52,"tag":992,"props":4708,"children":4709},{"style":2134},[4710],{"type":57,"value":3237},{"type":52,"tag":992,"props":4712,"children":4713},{"style":2041},[4714],{"type":57,"value":2905},{"type":52,"tag":992,"props":4716,"children":4717},{"style":2134},[4718],{"type":57,"value":857},{"type":52,"tag":992,"props":4720,"children":4721},{"style":999},[4722],{"type":57,"value":1046},{"type":52,"tag":992,"props":4724,"children":4725},{"class":994,"line":2406},[4726,4731,4735,4739,4743,4747,4751],{"type":52,"tag":992,"props":4727,"children":4728},{"style":2134},[4729],{"type":57,"value":4730},"    transcriber",{"type":52,"tag":992,"props":4732,"children":4733},{"style":999},[4734],{"type":57,"value":1027},{"type":52,"tag":992,"props":4736,"children":4737},{"style":3230},[4738],{"type":57,"value":4219},{"type":52,"tag":992,"props":4740,"children":4741},{"style":2134},[4742],{"type":57,"value":3237},{"type":52,"tag":992,"props":4744,"children":4745},{"style":2041},[4746],{"type":57,"value":2905},{"type":52,"tag":992,"props":4748,"children":4749},{"style":2134},[4750],{"type":57,"value":857},{"type":52,"tag":992,"props":4752,"children":4753},{"style":999},[4754],{"type":57,"value":1046},{"type":52,"tag":992,"props":4756,"children":4757},{"class":994,"line":2435},[4758,4762,4766],{"type":52,"tag":992,"props":4759,"children":4760},{"style":2134},[4761],{"type":57,"value":2441},{"type":52,"tag":992,"props":4763,"children":4764},{"style":999},[4765],{"type":57,"value":1027},{"type":52,"tag":992,"props":4767,"children":4768},{"style":999},[4769],{"type":57,"value":1174},{"type":52,"tag":992,"props":4771,"children":4772},{"class":994,"line":2464},[4773,4778,4782,4786,4791,4795,4799,4803],{"type":52,"tag":992,"props":4774,"children":4775},{"style":2134},[4776],{"type":57,"value":4777},"      provider",{"type":52,"tag":992,"props":4779,"children":4780},{"style":999},[4781],{"type":57,"value":1027},{"type":52,"tag":992,"props":4783,"children":4784},{"style":999},[4785],{"type":57,"value":1032},{"type":52,"tag":992,"props":4787,"children":4788},{"style":1035},[4789],{"type":57,"value":4790},"openai",{"type":52,"tag":992,"props":4792,"children":4793},{"style":999},[4794],{"type":57,"value":1022},{"type":52,"tag":992,"props":4796,"children":4797},{"style":2025},[4798],{"type":57,"value":3970},{"type":52,"tag":992,"props":4800,"children":4801},{"style":1014},[4802],{"type":57,"value":2884},{"type":52,"tag":992,"props":4804,"children":4805},{"style":999},[4806],{"type":57,"value":1046},{"type":52,"tag":992,"props":4808,"children":4809},{"class":994,"line":2494},[4810,4815,4819,4823,4828,4832],{"type":52,"tag":992,"props":4811,"children":4812},{"style":2134},[4813],{"type":57,"value":4814},"      model",{"type":52,"tag":992,"props":4816,"children":4817},{"style":999},[4818],{"type":57,"value":1027},{"type":52,"tag":992,"props":4820,"children":4821},{"style":999},[4822],{"type":57,"value":1032},{"type":52,"tag":992,"props":4824,"children":4825},{"style":1035},[4826],{"type":57,"value":4827},"gpt-4.1",{"type":52,"tag":992,"props":4829,"children":4830},{"style":999},[4831],{"type":57,"value":1022},{"type":52,"tag":992,"props":4833,"children":4834},{"style":999},[4835],{"type":57,"value":1046},{"type":52,"tag":992,"props":4837,"children":4838},{"class":994,"line":2502},[4839,4844,4848,4854],{"type":52,"tag":992,"props":4840,"children":4841},{"style":2134},[4842],{"type":57,"value":4843},"      temperature",{"type":52,"tag":992,"props":4845,"children":4846},{"style":999},[4847],{"type":57,"value":1027},{"type":52,"tag":992,"props":4849,"children":4851},{"style":4850},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[4852],{"type":57,"value":4853}," 0.5",{"type":52,"tag":992,"props":4855,"children":4856},{"style":999},[4857],{"type":57,"value":1046},{"type":52,"tag":992,"props":4859,"children":4860},{"class":994,"line":2519},[4861,4866,4870,4874,4879,4884,4888,4892,4897,4901,4905,4909,4913,4918,4922,4926,4930,4934],{"type":52,"tag":992,"props":4862,"children":4863},{"style":2134},[4864],{"type":57,"value":4865},"      messages",{"type":52,"tag":992,"props":4867,"children":4868},{"style":999},[4869],{"type":57,"value":1027},{"type":52,"tag":992,"props":4871,"children":4872},{"style":2134},[4873],{"type":57,"value":1722},{"type":52,"tag":992,"props":4875,"children":4876},{"style":999},[4877],{"type":57,"value":4878},"{",{"type":52,"tag":992,"props":4880,"children":4881},{"style":2134},[4882],{"type":57,"value":4883}," role",{"type":52,"tag":992,"props":4885,"children":4886},{"style":999},[4887],{"type":57,"value":1027},{"type":52,"tag":992,"props":4889,"children":4890},{"style":999},[4891],{"type":57,"value":1032},{"type":52,"tag":992,"props":4893,"children":4894},{"style":1035},[4895],{"type":57,"value":4896},"system",{"type":52,"tag":992,"props":4898,"children":4899},{"style":999},[4900],{"type":57,"value":1022},{"type":52,"tag":992,"props":4902,"children":4903},{"style":2025},[4904],{"type":57,"value":3970},{"type":52,"tag":992,"props":4906,"children":4907},{"style":1014},[4908],{"type":57,"value":2884},{"type":52,"tag":992,"props":4910,"children":4911},{"style":999},[4912],{"type":57,"value":2368},{"type":52,"tag":992,"props":4914,"children":4915},{"style":2134},[4916],{"type":57,"value":4917}," content",{"type":52,"tag":992,"props":4919,"children":4920},{"style":999},[4921],{"type":57,"value":1027},{"type":52,"tag":992,"props":4923,"children":4924},{"style":2041},[4925],{"type":57,"value":4529},{"type":52,"tag":992,"props":4927,"children":4928},{"style":999},[4929],{"type":57,"value":2049},{"type":52,"tag":992,"props":4931,"children":4932},{"style":2134},[4933],{"type":57,"value":4686},{"type":52,"tag":992,"props":4935,"children":4936},{"style":999},[4937],{"type":57,"value":1046},{"type":52,"tag":992,"props":4939,"children":4940},{"class":994,"line":2547},[4941,4946,4950,4954,4958,4962],{"type":52,"tag":992,"props":4942,"children":4943},{"style":2134},[4944],{"type":57,"value":4945},"      tools",{"type":52,"tag":992,"props":4947,"children":4948},{"style":999},[4949],{"type":57,"value":1027},{"type":52,"tag":992,"props":4951,"children":4952},{"style":2041},[4953],{"type":57,"value":4493},{"type":52,"tag":992,"props":4955,"children":4956},{"style":999},[4957],{"type":57,"value":89},{"type":52,"tag":992,"props":4959,"children":4960},{"style":2041},[4961],{"type":57,"value":783},{"type":52,"tag":992,"props":4963,"children":4964},{"style":999},[4965],{"type":57,"value":1046},{"type":52,"tag":992,"props":4967,"children":4968},{"class":994,"line":2575},[4969],{"type":52,"tag":992,"props":4970,"children":4971},{"style":999},[4972],{"type":57,"value":4973},"    },\n",{"type":52,"tag":992,"props":4975,"children":4976},{"class":994,"line":2604},[4977],{"type":52,"tag":992,"props":4978,"children":4979},{"style":999},[4980],{"type":57,"value":4981},"  };\n",{"type":52,"tag":992,"props":4983,"children":4984},{"class":994,"line":2612},[4985],{"type":52,"tag":992,"props":4986,"children":4987},{"style":999},[4988],{"type":57,"value":2618},{"type":52,"tag":969,"props":4990,"children":4992},{"id":4991},"srcassistantsscenariosscenario_idts",[4993],{"type":52,"tag":66,"props":4994,"children":4996},{"className":4995},[],[4997],{"type":57,"value":4998},"src\u002Fassistants\u002Fscenarios\u002F\u003CSCENARIO_ID>.ts",{"type":52,"tag":981,"props":5000,"children":5002},{"className":1980,"code":5001,"language":1982,"meta":986,"style":986},"\u002F**\n * \u003CSCENARIO_NAME> scenario. Plain data: id, name, language-keyed first\n * message. Later steps add `clientTools` (capture tools fire mid-call).\n *\u002F\nexport const \u003CSCENARIO_ID> = {\n  id: \"\u003CSCENARIO_ID>\" as const,\n  name: \"\u003CSCENARIO_NAME>\",\n  firstMessage: {\n    en: \"\u003CFIRST_MESSAGE_EN>\",\n    es: \"\u003CFIRST_MESSAGE_ES>\",\n  },\n  clientTools: [] as const,\n};\n\nexport type \u003CPascalCase scenario id>Scenario = typeof \u003CSCENARIO_ID>;\n",[5003],{"type":52,"tag":66,"props":5004,"children":5005},{"__ignoreMap":986},[5006,5013,5021,5029,5036,5060,5096,5124,5140,5168,5196,5203,5232,5239,5246],{"type":52,"tag":992,"props":5007,"children":5008},{"class":994,"line":995},[5009],{"type":52,"tag":992,"props":5010,"children":5011},{"style":1992},[5012],{"type":57,"value":1995},{"type":52,"tag":992,"props":5014,"children":5015},{"class":994,"line":1005},[5016],{"type":52,"tag":992,"props":5017,"children":5018},{"style":1992},[5019],{"type":57,"value":5020}," * \u003CSCENARIO_NAME> scenario. Plain data: id, name, language-keyed first\n",{"type":52,"tag":992,"props":5022,"children":5023},{"class":994,"line":1049},[5024],{"type":52,"tag":992,"props":5025,"children":5026},{"style":1992},[5027],{"type":57,"value":5028}," * message. Later steps add `clientTools` (capture tools fire mid-call).\n",{"type":52,"tag":992,"props":5030,"children":5031},{"class":994,"line":1087},[5032],{"type":52,"tag":992,"props":5033,"children":5034},{"style":1992},[5035],{"type":57,"value":2019},{"type":52,"tag":992,"props":5037,"children":5038},{"class":994,"line":1113},[5039,5043,5047,5052,5056],{"type":52,"tag":992,"props":5040,"children":5041},{"style":2025},[5042],{"type":57,"value":2087},{"type":52,"tag":992,"props":5044,"children":5045},{"style":1014},[5046],{"type":57,"value":2884},{"type":52,"tag":992,"props":5048,"children":5049},{"style":2041},[5050],{"type":57,"value":5051}," \u003CSCENARIO_ID> ",{"type":52,"tag":992,"props":5053,"children":5054},{"style":999},[5055],{"type":57,"value":2894},{"type":52,"tag":992,"props":5057,"children":5058},{"style":999},[5059],{"type":57,"value":1174},{"type":52,"tag":992,"props":5061,"children":5062},{"class":994,"line":1151},[5063,5068,5072,5076,5080,5084,5088,5092],{"type":52,"tag":992,"props":5064,"children":5065},{"style":2134},[5066],{"type":57,"value":5067},"  id",{"type":52,"tag":992,"props":5069,"children":5070},{"style":999},[5071],{"type":57,"value":1027},{"type":52,"tag":992,"props":5073,"children":5074},{"style":999},[5075],{"type":57,"value":1032},{"type":52,"tag":992,"props":5077,"children":5078},{"style":1035},[5079],{"type":57,"value":848},{"type":52,"tag":992,"props":5081,"children":5082},{"style":999},[5083],{"type":57,"value":1022},{"type":52,"tag":992,"props":5085,"children":5086},{"style":2025},[5087],{"type":57,"value":3970},{"type":52,"tag":992,"props":5089,"children":5090},{"style":1014},[5091],{"type":57,"value":2884},{"type":52,"tag":992,"props":5093,"children":5094},{"style":999},[5095],{"type":57,"value":1046},{"type":52,"tag":992,"props":5097,"children":5098},{"class":994,"line":30},[5099,5104,5108,5112,5116,5120],{"type":52,"tag":992,"props":5100,"children":5101},{"style":2134},[5102],{"type":57,"value":5103},"  name",{"type":52,"tag":992,"props":5105,"children":5106},{"style":999},[5107],{"type":57,"value":1027},{"type":52,"tag":992,"props":5109,"children":5110},{"style":999},[5111],{"type":57,"value":1032},{"type":52,"tag":992,"props":5113,"children":5114},{"style":1035},[5115],{"type":57,"value":866},{"type":52,"tag":992,"props":5117,"children":5118},{"style":999},[5119],{"type":57,"value":1022},{"type":52,"tag":992,"props":5121,"children":5122},{"style":999},[5123],{"type":57,"value":1046},{"type":52,"tag":992,"props":5125,"children":5126},{"class":994,"line":1215},[5127,5132,5136],{"type":52,"tag":992,"props":5128,"children":5129},{"style":2134},[5130],{"type":57,"value":5131},"  firstMessage",{"type":52,"tag":992,"props":5133,"children":5134},{"style":999},[5135],{"type":57,"value":1027},{"type":52,"tag":992,"props":5137,"children":5138},{"style":999},[5139],{"type":57,"value":1174},{"type":52,"tag":992,"props":5141,"children":5142},{"class":994,"line":1249},[5143,5148,5152,5156,5160,5164],{"type":52,"tag":992,"props":5144,"children":5145},{"style":2134},[5146],{"type":57,"value":5147},"    en",{"type":52,"tag":992,"props":5149,"children":5150},{"style":999},[5151],{"type":57,"value":1027},{"type":52,"tag":992,"props":5153,"children":5154},{"style":999},[5155],{"type":57,"value":1032},{"type":52,"tag":992,"props":5157,"children":5158},{"style":1035},[5159],{"type":57,"value":884},{"type":52,"tag":992,"props":5161,"children":5162},{"style":999},[5163],{"type":57,"value":1022},{"type":52,"tag":992,"props":5165,"children":5166},{"style":999},[5167],{"type":57,"value":1046},{"type":52,"tag":992,"props":5169,"children":5170},{"class":994,"line":1258},[5171,5176,5180,5184,5188,5192],{"type":52,"tag":992,"props":5172,"children":5173},{"style":2134},[5174],{"type":57,"value":5175},"    es",{"type":52,"tag":992,"props":5177,"children":5178},{"style":999},[5179],{"type":57,"value":1027},{"type":52,"tag":992,"props":5181,"children":5182},{"style":999},[5183],{"type":57,"value":1032},{"type":52,"tag":992,"props":5185,"children":5186},{"style":1035},[5187],{"type":57,"value":895},{"type":52,"tag":992,"props":5189,"children":5190},{"style":999},[5191],{"type":57,"value":1022},{"type":52,"tag":992,"props":5193,"children":5194},{"style":999},[5195],{"type":57,"value":1046},{"type":52,"tag":992,"props":5197,"children":5198},{"class":994,"line":1283},[5199],{"type":52,"tag":992,"props":5200,"children":5201},{"style":999},[5202],{"type":57,"value":1255},{"type":52,"tag":992,"props":5204,"children":5205},{"class":994,"line":1316},[5206,5211,5215,5220,5224,5228],{"type":52,"tag":992,"props":5207,"children":5208},{"style":2134},[5209],{"type":57,"value":5210},"  clientTools",{"type":52,"tag":992,"props":5212,"children":5213},{"style":999},[5214],{"type":57,"value":1027},{"type":52,"tag":992,"props":5216,"children":5217},{"style":2041},[5218],{"type":57,"value":5219}," [] ",{"type":52,"tag":992,"props":5221,"children":5222},{"style":2025},[5223],{"type":57,"value":4075},{"type":52,"tag":992,"props":5225,"children":5226},{"style":1014},[5227],{"type":57,"value":2884},{"type":52,"tag":992,"props":5229,"children":5230},{"style":999},[5231],{"type":57,"value":1046},{"type":52,"tag":992,"props":5233,"children":5234},{"class":994,"line":1324},[5235],{"type":52,"tag":992,"props":5236,"children":5237},{"style":999},[5238],{"type":57,"value":2618},{"type":52,"tag":992,"props":5240,"children":5241},{"class":994,"line":1349},[5242],{"type":52,"tag":992,"props":5243,"children":5244},{"emptyLinePlaceholder":1837},[5245],{"type":57,"value":1840},{"type":52,"tag":992,"props":5247,"children":5248},{"class":994,"line":1387},[5249,5253,5258,5262,5267,5271,5276,5280,5284,5289,5294],{"type":52,"tag":992,"props":5250,"children":5251},{"style":1014},[5252],{"type":57,"value":2087},{"type":52,"tag":992,"props":5254,"children":5255},{"style":2041},[5256],{"type":57,"value":5257}," type ",{"type":52,"tag":992,"props":5259,"children":5260},{"style":999},[5261],{"type":57,"value":2358},{"type":52,"tag":992,"props":5263,"children":5264},{"style":2041},[5265],{"type":57,"value":5266},"PascalCase scenario id",{"type":52,"tag":992,"props":5268,"children":5269},{"style":999},[5270],{"type":57,"value":2377},{"type":52,"tag":992,"props":5272,"children":5273},{"style":2041},[5274],{"type":57,"value":5275},"Scenario ",{"type":52,"tag":992,"props":5277,"children":5278},{"style":999},[5279],{"type":57,"value":2894},{"type":52,"tag":992,"props":5281,"children":5282},{"style":999},[5283],{"type":57,"value":4015},{"type":52,"tag":992,"props":5285,"children":5286},{"style":999},[5287],{"type":57,"value":5288}," \u003C",{"type":52,"tag":992,"props":5290,"children":5291},{"style":1185},[5292],{"type":57,"value":5293},"SCENARIO_ID",{"type":52,"tag":992,"props":5295,"children":5296},{"style":999},[5297],{"type":57,"value":5298},">;\n",{"type":52,"tag":60,"props":5300,"children":5301},{},[5302,5304,5309,5311,5317],{"type":57,"value":5303},"If ",{"type":52,"tag":66,"props":5305,"children":5307},{"className":5306},[],[5308],{"type":57,"value":884},{"type":57,"value":5310}," is long, break it across concatenated string segments for readability (one logical clause per line, joined with ",{"type":52,"tag":66,"props":5312,"children":5314},{"className":5313},[],[5315],{"type":57,"value":5316},"\" + \"",{"type":57,"value":5318},").",{"type":52,"tag":969,"props":5320,"children":5322},{"id":5321},"srcassistantspromptsscenario_idbodymd",[5323],{"type":52,"tag":66,"props":5324,"children":5326},{"className":5325},[],[5327],{"type":57,"value":5328},"src\u002Fassistants\u002Fprompts\u002F\u003CSCENARIO_ID>\u002Fbody.md",{"type":52,"tag":60,"props":5330,"children":5331},{},[5332],{"type":57,"value":5333},"Rough first draft — persona-driven, not a contract. Suggested shape:",{"type":52,"tag":981,"props":5335,"children":5339},{"className":5336,"code":5337,"language":5338,"meta":986,"style":986},"language-md shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# \u003CSCENARIO_NAME> voice agent\n\nYou are the \u003CSCENARIO_NAME> voice agent for Vapi. \u003COne sentence on context — who you're talking to and why.>\n\n\u003COne paragraph distilling **What happens** from the rough draft: the questions to ask, the data to collect, the routing logic, the wrap-up.>\n\nBe warm and curious. Ask one question at a time. If they go off-topic, redirect briefly and return to the next missing field. Keep replies short — you are speaking, not typing.\n","md",[5340],{"type":52,"tag":66,"props":5341,"children":5342},{"__ignoreMap":986},[5343,5356,5363,5371,5378,5407,5414],{"type":52,"tag":992,"props":5344,"children":5345},{"class":994,"line":995},[5346,5351],{"type":52,"tag":992,"props":5347,"children":5348},{"style":999},[5349],{"type":57,"value":5350},"# ",{"type":52,"tag":992,"props":5352,"children":5353},{"style":1185},[5354],{"type":57,"value":5355},"\u003CSCENARIO_NAME> voice agent\n",{"type":52,"tag":992,"props":5357,"children":5358},{"class":994,"line":1005},[5359],{"type":52,"tag":992,"props":5360,"children":5361},{"emptyLinePlaceholder":1837},[5362],{"type":57,"value":1840},{"type":52,"tag":992,"props":5364,"children":5365},{"class":994,"line":1049},[5366],{"type":52,"tag":992,"props":5367,"children":5368},{"style":2041},[5369],{"type":57,"value":5370},"You are the \u003CSCENARIO_NAME> voice agent for Vapi. \u003COne sentence on context — who you're talking to and why.>\n",{"type":52,"tag":992,"props":5372,"children":5373},{"class":994,"line":1087},[5374],{"type":52,"tag":992,"props":5375,"children":5376},{"emptyLinePlaceholder":1837},[5377],{"type":57,"value":1840},{"type":52,"tag":992,"props":5379,"children":5380},{"class":994,"line":1113},[5381,5386,5392,5398,5402],{"type":52,"tag":992,"props":5382,"children":5383},{"style":2041},[5384],{"type":57,"value":5385},"\u003COne paragraph distilling ",{"type":52,"tag":992,"props":5387,"children":5389},{"style":5388},"--shiki-light:#39ADB5;--shiki-light-font-weight:bold;--shiki-default:#89DDFF;--shiki-default-font-weight:bold;--shiki-dark:#89DDFF;--shiki-dark-font-weight:bold",[5390],{"type":57,"value":5391},"**",{"type":52,"tag":992,"props":5393,"children":5395},{"style":5394},"--shiki-light:#E53935;--shiki-light-font-weight:bold;--shiki-default:#F07178;--shiki-default-font-weight:bold;--shiki-dark:#F07178;--shiki-dark-font-weight:bold",[5396],{"type":57,"value":5397},"What happens",{"type":52,"tag":992,"props":5399,"children":5400},{"style":5388},[5401],{"type":57,"value":5391},{"type":52,"tag":992,"props":5403,"children":5404},{"style":2041},[5405],{"type":57,"value":5406}," from the rough draft: the questions to ask, the data to collect, the routing logic, the wrap-up.>\n",{"type":52,"tag":992,"props":5408,"children":5409},{"class":994,"line":1151},[5410],{"type":52,"tag":992,"props":5411,"children":5412},{"emptyLinePlaceholder":1837},[5413],{"type":57,"value":1840},{"type":52,"tag":992,"props":5415,"children":5416},{"class":994,"line":30},[5417],{"type":52,"tag":992,"props":5418,"children":5419},{"style":2041},[5420],{"type":57,"value":5421},"Be warm and curious. Ask one question at a time. If they go off-topic, redirect briefly and return to the next missing field. Keep replies short — you are speaking, not typing.\n",{"type":52,"tag":60,"props":5423,"children":5424},{},[5425,5427,5433],{"type":57,"value":5426},"No ",{"type":52,"tag":66,"props":5428,"children":5430},{"className":5429},[],[5431],{"type":57,"value":5432},"## Absolute rules",{"type":57,"value":5434},", no failure rules, no scripted off-ramps. Those are a later step.",{"type":52,"tag":969,"props":5436,"children":5438},{"id":5437},"srcassistantspromptsscenario_idoff-topic-esmd",[5439],{"type":52,"tag":66,"props":5440,"children":5442},{"className":5441},[],[5443],{"type":57,"value":5444},"src\u002Fassistants\u002Fprompts\u002F\u003CSCENARIO_ID>\u002Foff-topic-es.md",{"type":52,"tag":60,"props":5446,"children":5447},{},[5448],{"type":57,"value":5449},"Two short Spanish redirect lines specific to this scenario:",{"type":52,"tag":981,"props":5451,"children":5453},{"className":5336,"code":5452,"language":5338,"meta":986,"style":986},"- \"Buena pregunta — el equipo te puede ayudar con eso. ¿Podemos seguir con \u003Cnext field>?\"\n- \"Tomo nota, lo vemos después. Mientras tanto, cuéntame \u003Cone short ask tied to the scenario>.\"\n",[5454],{"type":52,"tag":66,"props":5455,"children":5456},{"__ignoreMap":986},[5457,5470],{"type":52,"tag":992,"props":5458,"children":5459},{"class":994,"line":995},[5460,5465],{"type":52,"tag":992,"props":5461,"children":5462},{"style":999},[5463],{"type":57,"value":5464},"-",{"type":52,"tag":992,"props":5466,"children":5467},{"style":2041},[5468],{"type":57,"value":5469}," \"Buena pregunta — el equipo te puede ayudar con eso. ¿Podemos seguir con \u003Cnext field>?\"\n",{"type":52,"tag":992,"props":5471,"children":5472},{"class":994,"line":1005},[5473,5477],{"type":52,"tag":992,"props":5474,"children":5475},{"style":999},[5476],{"type":57,"value":5464},{"type":52,"tag":992,"props":5478,"children":5479},{"style":2041},[5480],{"type":57,"value":5481}," \"Tomo nota, lo vemos después. Mientras tanto, cuéntame \u003Cone short ask tied to the scenario>.\"\n",{"type":52,"tag":969,"props":5483,"children":5485},{"id":5484},"srcassistantspromptssharedpreamblesesmd",[5486],{"type":52,"tag":66,"props":5487,"children":5489},{"className":5488},[],[5490],{"type":57,"value":283},{"type":52,"tag":981,"props":5492,"children":5494},{"className":5336,"code":5493,"language":5338,"meta":986,"style":986},"# IDIOMA \u002F LANGUAGE OVERRIDE\n\nThe contract that follows this preamble is written in English. **This call is in Spanish.**\n\nOverride the language rule of the contract:\n\n- ALL agent speech MUST be in natural, conversational Latin American Spanish. Translate the exact wordings, examples, and acks from the contract — don't switch back to English mid-sentence.\n- Read brand and product names in their original form. Don't translate them.\n- When you call any capture tool, **always pass free-text fields as a short English summary**, regardless of the call language. Cross-language analytics depend on it.\n\n## Off-topic redirects (use verbatim)\n\nIf the visitor goes off-topic, pick one of these and then return to the next missing field:\n\n{{OFF_TOPIC_LINES}}\n\n---\n",[5495],{"type":52,"tag":66,"props":5496,"children":5497},{"__ignoreMap":986},[5498,5510,5517,5539,5546,5554,5561,5573,5585,5615,5622,5635,5642,5650,5657,5665,5672],{"type":52,"tag":992,"props":5499,"children":5500},{"class":994,"line":995},[5501,5505],{"type":52,"tag":992,"props":5502,"children":5503},{"style":999},[5504],{"type":57,"value":5350},{"type":52,"tag":992,"props":5506,"children":5507},{"style":1185},[5508],{"type":57,"value":5509},"IDIOMA \u002F LANGUAGE OVERRIDE\n",{"type":52,"tag":992,"props":5511,"children":5512},{"class":994,"line":1005},[5513],{"type":52,"tag":992,"props":5514,"children":5515},{"emptyLinePlaceholder":1837},[5516],{"type":57,"value":1840},{"type":52,"tag":992,"props":5518,"children":5519},{"class":994,"line":1049},[5520,5525,5529,5534],{"type":52,"tag":992,"props":5521,"children":5522},{"style":2041},[5523],{"type":57,"value":5524},"The contract that follows this preamble is written in English. ",{"type":52,"tag":992,"props":5526,"children":5527},{"style":5388},[5528],{"type":57,"value":5391},{"type":52,"tag":992,"props":5530,"children":5531},{"style":5394},[5532],{"type":57,"value":5533},"This call is in Spanish.",{"type":52,"tag":992,"props":5535,"children":5536},{"style":5388},[5537],{"type":57,"value":5538},"**\n",{"type":52,"tag":992,"props":5540,"children":5541},{"class":994,"line":1087},[5542],{"type":52,"tag":992,"props":5543,"children":5544},{"emptyLinePlaceholder":1837},[5545],{"type":57,"value":1840},{"type":52,"tag":992,"props":5547,"children":5548},{"class":994,"line":1113},[5549],{"type":52,"tag":992,"props":5550,"children":5551},{"style":2041},[5552],{"type":57,"value":5553},"Override the language rule of the contract:\n",{"type":52,"tag":992,"props":5555,"children":5556},{"class":994,"line":1151},[5557],{"type":52,"tag":992,"props":5558,"children":5559},{"emptyLinePlaceholder":1837},[5560],{"type":57,"value":1840},{"type":52,"tag":992,"props":5562,"children":5563},{"class":994,"line":30},[5564,5568],{"type":52,"tag":992,"props":5565,"children":5566},{"style":999},[5567],{"type":57,"value":5464},{"type":52,"tag":992,"props":5569,"children":5570},{"style":2041},[5571],{"type":57,"value":5572}," ALL agent speech MUST be in natural, conversational Latin American Spanish. Translate the exact wordings, examples, and acks from the contract — don't switch back to English mid-sentence.\n",{"type":52,"tag":992,"props":5574,"children":5575},{"class":994,"line":1215},[5576,5580],{"type":52,"tag":992,"props":5577,"children":5578},{"style":999},[5579],{"type":57,"value":5464},{"type":52,"tag":992,"props":5581,"children":5582},{"style":2041},[5583],{"type":57,"value":5584}," Read brand and product names in their original form. Don't translate them.\n",{"type":52,"tag":992,"props":5586,"children":5587},{"class":994,"line":1249},[5588,5592,5597,5601,5606,5610],{"type":52,"tag":992,"props":5589,"children":5590},{"style":999},[5591],{"type":57,"value":5464},{"type":52,"tag":992,"props":5593,"children":5594},{"style":2041},[5595],{"type":57,"value":5596}," When you call any capture tool, ",{"type":52,"tag":992,"props":5598,"children":5599},{"style":5388},[5600],{"type":57,"value":5391},{"type":52,"tag":992,"props":5602,"children":5603},{"style":5394},[5604],{"type":57,"value":5605},"always pass free-text fields as a short English summary",{"type":52,"tag":992,"props":5607,"children":5608},{"style":5388},[5609],{"type":57,"value":5391},{"type":52,"tag":992,"props":5611,"children":5612},{"style":2041},[5613],{"type":57,"value":5614},", regardless of the call language. Cross-language analytics depend on it.\n",{"type":52,"tag":992,"props":5616,"children":5617},{"class":994,"line":1258},[5618],{"type":52,"tag":992,"props":5619,"children":5620},{"emptyLinePlaceholder":1837},[5621],{"type":57,"value":1840},{"type":52,"tag":992,"props":5623,"children":5624},{"class":994,"line":1283},[5625,5630],{"type":52,"tag":992,"props":5626,"children":5627},{"style":999},[5628],{"type":57,"value":5629},"## ",{"type":52,"tag":992,"props":5631,"children":5632},{"style":1185},[5633],{"type":57,"value":5634},"Off-topic redirects (use verbatim)\n",{"type":52,"tag":992,"props":5636,"children":5637},{"class":994,"line":1316},[5638],{"type":52,"tag":992,"props":5639,"children":5640},{"emptyLinePlaceholder":1837},[5641],{"type":57,"value":1840},{"type":52,"tag":992,"props":5643,"children":5644},{"class":994,"line":1324},[5645],{"type":52,"tag":992,"props":5646,"children":5647},{"style":2041},[5648],{"type":57,"value":5649},"If the visitor goes off-topic, pick one of these and then return to the next missing field:\n",{"type":52,"tag":992,"props":5651,"children":5652},{"class":994,"line":1349},[5653],{"type":52,"tag":992,"props":5654,"children":5655},{"emptyLinePlaceholder":1837},[5656],{"type":57,"value":1840},{"type":52,"tag":992,"props":5658,"children":5659},{"class":994,"line":1387},[5660],{"type":52,"tag":992,"props":5661,"children":5662},{"style":2041},[5663],{"type":57,"value":5664},"{{OFF_TOPIC_LINES}}\n",{"type":52,"tag":992,"props":5666,"children":5667},{"class":994,"line":1420},[5668],{"type":52,"tag":992,"props":5669,"children":5670},{"emptyLinePlaceholder":1837},[5671],{"type":57,"value":1840},{"type":52,"tag":992,"props":5673,"children":5674},{"class":994,"line":1428},[5675],{"type":52,"tag":992,"props":5676,"children":5677},{"style":999},[5678],{"type":57,"value":5679},"---\n",{"type":52,"tag":969,"props":5681,"children":5683},{"id":5682},"srcbootstrapts",[5684],{"type":52,"tag":66,"props":5685,"children":5687},{"className":5686},[],[5688],{"type":57,"value":353},{"type":52,"tag":981,"props":5690,"children":5692},{"className":1980,"code":5691,"language":1982,"meta":986,"style":986},"\u002F**\n * Idempotent upsert across (scenario × language). One entry per tuple, keyed\n * by VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>. First run creates + prints ids;\n * subsequent runs update in place.\n *\n * Run with `bun run bootstrap`. Bun auto-loads .env.local.\n *\u002F\nimport { VapiClient } from \"@vapi-ai\u002Fserver-sdk\";\n\nimport {\n  buildAssistant,\n  type LanguageId,\n  type ScenarioId,\n} from \".\u002Fassistants\u002FbuildAssistant.ts\";\nimport { SCENARIO_IDS } from \".\u002Fassistants\u002Fscenarios\u002Findex.ts\";\n\nconst LANGUAGES: LanguageId[] = [\"en\", \"es\"];\n\nconst envVarFor = (scenarioId: ScenarioId, languageId: LanguageId): string =>\n  `VAPI_ASSISTANT_${scenarioId.toUpperCase()}_${languageId.toUpperCase()}`;\n\nconst requireEnv = (name: string): string => {\n  const value = process.env[name];\n  if (!value) {\n    console.error(`✗ Missing env var: ${name}. See .env.example.`);\n    process.exit(1);\n  }\n  return value;\n};\n\nconst main = async () => {\n  const vapi = new VapiClient({ token: requireEnv(\"VAPI_API_KEY\") });\n  const created: Array\u003C{ envVar: string; id: string }> = [];\n\n  for (const scenarioId of SCENARIO_IDS) {\n    for (const languageId of LANGUAGES) {\n      const envVar = envVarFor(scenarioId, languageId);\n      const existingId = process.env[envVar];\n      const body = buildAssistant(\n        scenarioId,\n        languageId,\n      ) as unknown as Parameters\u003Ctypeof vapi.assistants.create>[0];\n\n      const label = `${scenarioId}\u002F${languageId}`;\n      let updated = false;\n\n      if (existingId) {\n        try {\n          await vapi.assistants.update({\n            id: existingId,\n            ...body,\n          } as unknown as Parameters\u003Ctypeof vapi.assistants.update>[0]);\n          console.log(`✓ Updated ${label} → ${existingId}`);\n          updated = true;\n        } catch (err) {\n          const statusCode = (err as { statusCode?: number })?.statusCode;\n          if (statusCode === 404) {\n            console.log(\n              `  ${envVar}=${existingId} not found in this org; creating a new assistant.`,\n            );\n          } else {\n            throw err;\n          }\n        }\n      }\n\n      if (!updated) {\n        const assistant = await vapi.assistants.create(body);\n        console.log(`✓ Created ${label} → ${assistant.id}`);\n        created.push({ envVar, id: assistant.id });\n      }\n    }\n  }\n\n  if (created.length > 0) {\n    console.log(\"\\nAdd these to .env.local:\");\n    for (const { envVar, id } of created) {\n      console.log(`  ${envVar}=${id}`);\n    }\n    console.log(\n      \"\\nThen re-run `bun run bootstrap` to confirm idempotent updates.\",\n    );\n  } else {\n    console.log(\n      `\\nAll ${SCENARIO_IDS.length * LANGUAGES.length} assistants updated in place.`,\n    );\n  }\n};\n\nmain().catch((err) => {\n  console.error(\"✗ Bootstrap failed:\", err);\n  process.exit(1);\n});\n",[5693],{"type":52,"tag":66,"props":5694,"children":5695},{"__ignoreMap":986},[5696,5703,5711,5719,5727,5735,5743,5750,5790,5797,5808,5820,5836,5851,5879,5920,5927,5996,6003,6063,6133,6140,6188,6234,6263,6322,6356,6364,6379,6386,6393,6427,6506,6581,6588,6626,6662,6707,6752,6776,6788,6800,6874,6881,6931,6959,6967,6993,7006,7044,7065,7082,7152,7220,7242,7273,7343,7377,7398,7449,7462,7479,7497,7506,7515,7524,7532,7561,7620,7695,7761,7769,7778,7786,7794,7838,7884,7936,7997,8005,8025,8051,8064,8081,8101,8170,8182,8190,8198,8206,8252,8302,8335],{"type":52,"tag":992,"props":5697,"children":5698},{"class":994,"line":995},[5699],{"type":52,"tag":992,"props":5700,"children":5701},{"style":1992},[5702],{"type":57,"value":1995},{"type":52,"tag":992,"props":5704,"children":5705},{"class":994,"line":1005},[5706],{"type":52,"tag":992,"props":5707,"children":5708},{"style":1992},[5709],{"type":57,"value":5710}," * Idempotent upsert across (scenario × language). One entry per tuple, keyed\n",{"type":52,"tag":992,"props":5712,"children":5713},{"class":994,"line":1049},[5714],{"type":52,"tag":992,"props":5715,"children":5716},{"style":1992},[5717],{"type":57,"value":5718}," * by VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>. First run creates + prints ids;\n",{"type":52,"tag":992,"props":5720,"children":5721},{"class":994,"line":1087},[5722],{"type":52,"tag":992,"props":5723,"children":5724},{"style":1992},[5725],{"type":57,"value":5726}," * subsequent runs update in place.\n",{"type":52,"tag":992,"props":5728,"children":5729},{"class":994,"line":1113},[5730],{"type":52,"tag":992,"props":5731,"children":5732},{"style":1992},[5733],{"type":57,"value":5734}," *\n",{"type":52,"tag":992,"props":5736,"children":5737},{"class":994,"line":1151},[5738],{"type":52,"tag":992,"props":5739,"children":5740},{"style":1992},[5741],{"type":57,"value":5742}," * Run with `bun run bootstrap`. Bun auto-loads .env.local.\n",{"type":52,"tag":992,"props":5744,"children":5745},{"class":994,"line":30},[5746],{"type":52,"tag":992,"props":5747,"children":5748},{"style":1992},[5749],{"type":57,"value":2019},{"type":52,"tag":992,"props":5751,"children":5752},{"class":994,"line":1215},[5753,5757,5761,5766,5770,5774,5778,5782,5786],{"type":52,"tag":992,"props":5754,"children":5755},{"style":2025},[5756],{"type":57,"value":2028},{"type":52,"tag":992,"props":5758,"children":5759},{"style":999},[5760],{"type":57,"value":2038},{"type":52,"tag":992,"props":5762,"children":5763},{"style":2041},[5764],{"type":57,"value":5765}," VapiClient",{"type":52,"tag":992,"props":5767,"children":5768},{"style":999},[5769],{"type":57,"value":2049},{"type":52,"tag":992,"props":5771,"children":5772},{"style":2025},[5773],{"type":57,"value":2054},{"type":52,"tag":992,"props":5775,"children":5776},{"style":999},[5777],{"type":57,"value":1032},{"type":52,"tag":992,"props":5779,"children":5780},{"style":1035},[5781],{"type":57,"value":129},{"type":52,"tag":992,"props":5783,"children":5784},{"style":999},[5785],{"type":57,"value":1022},{"type":52,"tag":992,"props":5787,"children":5788},{"style":999},[5789],{"type":57,"value":2072},{"type":52,"tag":992,"props":5791,"children":5792},{"class":994,"line":1249},[5793],{"type":52,"tag":992,"props":5794,"children":5795},{"emptyLinePlaceholder":1837},[5796],{"type":57,"value":1840},{"type":52,"tag":992,"props":5798,"children":5799},{"class":994,"line":1258},[5800,5804],{"type":52,"tag":992,"props":5801,"children":5802},{"style":2025},[5803],{"type":57,"value":2028},{"type":52,"tag":992,"props":5805,"children":5806},{"style":999},[5807],{"type":57,"value":1174},{"type":52,"tag":992,"props":5809,"children":5810},{"class":994,"line":1283},[5811,5816],{"type":52,"tag":992,"props":5812,"children":5813},{"style":2041},[5814],{"type":57,"value":5815},"  buildAssistant",{"type":52,"tag":992,"props":5817,"children":5818},{"style":999},[5819],{"type":57,"value":1046},{"type":52,"tag":992,"props":5821,"children":5822},{"class":994,"line":1316},[5823,5828,5832],{"type":52,"tag":992,"props":5824,"children":5825},{"style":2025},[5826],{"type":57,"value":5827},"  type",{"type":52,"tag":992,"props":5829,"children":5830},{"style":2041},[5831],{"type":57,"value":2044},{"type":52,"tag":992,"props":5833,"children":5834},{"style":999},[5835],{"type":57,"value":1046},{"type":52,"tag":992,"props":5837,"children":5838},{"class":994,"line":1324},[5839,5843,5847],{"type":52,"tag":992,"props":5840,"children":5841},{"style":2025},[5842],{"type":57,"value":5827},{"type":52,"tag":992,"props":5844,"children":5845},{"style":2041},[5846],{"type":57,"value":4001},{"type":52,"tag":992,"props":5848,"children":5849},{"style":999},[5850],{"type":57,"value":1046},{"type":52,"tag":992,"props":5852,"children":5853},{"class":994,"line":1349},[5854,5858,5862,5866,5871,5875],{"type":52,"tag":992,"props":5855,"children":5856},{"style":999},[5857],{"type":57,"value":3528},{"type":52,"tag":992,"props":5859,"children":5860},{"style":2025},[5861],{"type":57,"value":2054},{"type":52,"tag":992,"props":5863,"children":5864},{"style":999},[5865],{"type":57,"value":1032},{"type":52,"tag":992,"props":5867,"children":5868},{"style":1035},[5869],{"type":57,"value":5870},".\u002Fassistants\u002FbuildAssistant.ts",{"type":52,"tag":992,"props":5872,"children":5873},{"style":999},[5874],{"type":57,"value":1022},{"type":52,"tag":992,"props":5876,"children":5877},{"style":999},[5878],{"type":57,"value":2072},{"type":52,"tag":992,"props":5880,"children":5881},{"class":994,"line":1387},[5882,5886,5890,5895,5899,5903,5907,5912,5916],{"type":52,"tag":992,"props":5883,"children":5884},{"style":2025},[5885],{"type":57,"value":2028},{"type":52,"tag":992,"props":5887,"children":5888},{"style":999},[5889],{"type":57,"value":2038},{"type":52,"tag":992,"props":5891,"children":5892},{"style":2041},[5893],{"type":57,"value":5894}," SCENARIO_IDS",{"type":52,"tag":992,"props":5896,"children":5897},{"style":999},[5898],{"type":57,"value":2049},{"type":52,"tag":992,"props":5900,"children":5901},{"style":2025},[5902],{"type":57,"value":2054},{"type":52,"tag":992,"props":5904,"children":5905},{"style":999},[5906],{"type":57,"value":1032},{"type":52,"tag":992,"props":5908,"children":5909},{"style":1035},[5910],{"type":57,"value":5911},".\u002Fassistants\u002Fscenarios\u002Findex.ts",{"type":52,"tag":992,"props":5913,"children":5914},{"style":999},[5915],{"type":57,"value":1022},{"type":52,"tag":992,"props":5917,"children":5918},{"style":999},[5919],{"type":57,"value":2072},{"type":52,"tag":992,"props":5921,"children":5922},{"class":994,"line":1420},[5923],{"type":52,"tag":992,"props":5924,"children":5925},{"emptyLinePlaceholder":1837},[5926],{"type":57,"value":1840},{"type":52,"tag":992,"props":5928,"children":5929},{"class":994,"line":1428},[5930,5934,5939,5943,5947,5952,5956,5960,5964,5968,5972,5976,5980,5984,5988,5992],{"type":52,"tag":992,"props":5931,"children":5932},{"style":1014},[5933],{"type":57,"value":2339},{"type":52,"tag":992,"props":5935,"children":5936},{"style":2041},[5937],{"type":57,"value":5938}," LANGUAGES",{"type":52,"tag":992,"props":5940,"children":5941},{"style":999},[5942],{"type":57,"value":1027},{"type":52,"tag":992,"props":5944,"children":5945},{"style":1185},[5946],{"type":57,"value":2044},{"type":52,"tag":992,"props":5948,"children":5949},{"style":2041},[5950],{"type":57,"value":5951},"[] ",{"type":52,"tag":992,"props":5953,"children":5954},{"style":999},[5955],{"type":57,"value":2894},{"type":52,"tag":992,"props":5957,"children":5958},{"style":2041},[5959],{"type":57,"value":1722},{"type":52,"tag":992,"props":5961,"children":5962},{"style":999},[5963],{"type":57,"value":1022},{"type":52,"tag":992,"props":5965,"children":5966},{"style":1035},[5967],{"type":57,"value":366},{"type":52,"tag":992,"props":5969,"children":5970},{"style":999},[5971],{"type":57,"value":1022},{"type":52,"tag":992,"props":5973,"children":5974},{"style":999},[5975],{"type":57,"value":2368},{"type":52,"tag":992,"props":5977,"children":5978},{"style":999},[5979],{"type":57,"value":1032},{"type":52,"tag":992,"props":5981,"children":5982},{"style":1035},[5983],{"type":57,"value":374},{"type":52,"tag":992,"props":5985,"children":5986},{"style":999},[5987],{"type":57,"value":1022},{"type":52,"tag":992,"props":5989,"children":5990},{"style":2041},[5991],{"type":57,"value":4686},{"type":52,"tag":992,"props":5993,"children":5994},{"style":999},[5995],{"type":57,"value":2072},{"type":52,"tag":992,"props":5997,"children":5998},{"class":994,"line":1462},[5999],{"type":52,"tag":992,"props":6000,"children":6001},{"emptyLinePlaceholder":1837},[6002],{"type":57,"value":1840},{"type":52,"tag":992,"props":6004,"children":6005},{"class":994,"line":2317},[6006,6010,6015,6019,6023,6027,6031,6035,6039,6043,6047,6051,6055,6059],{"type":52,"tag":992,"props":6007,"children":6008},{"style":1014},[6009],{"type":57,"value":2339},{"type":52,"tag":992,"props":6011,"children":6012},{"style":2041},[6013],{"type":57,"value":6014}," envVarFor ",{"type":52,"tag":992,"props":6016,"children":6017},{"style":999},[6018],{"type":57,"value":2894},{"type":52,"tag":992,"props":6020,"children":6021},{"style":999},[6022],{"type":57,"value":2899},{"type":52,"tag":992,"props":6024,"children":6025},{"style":2902},[6026],{"type":57,"value":486},{"type":52,"tag":992,"props":6028,"children":6029},{"style":999},[6030],{"type":57,"value":1027},{"type":52,"tag":992,"props":6032,"children":6033},{"style":1185},[6034],{"type":57,"value":4001},{"type":52,"tag":992,"props":6036,"children":6037},{"style":999},[6038],{"type":57,"value":2368},{"type":52,"tag":992,"props":6040,"children":6041},{"style":2902},[6042],{"type":57,"value":4554},{"type":52,"tag":992,"props":6044,"children":6045},{"style":999},[6046],{"type":57,"value":1027},{"type":52,"tag":992,"props":6048,"children":6049},{"style":1185},[6050],{"type":57,"value":2044},{"type":52,"tag":992,"props":6052,"children":6053},{"style":999},[6054],{"type":57,"value":2918},{"type":52,"tag":992,"props":6056,"children":6057},{"style":1185},[6058],{"type":57,"value":2175},{"type":52,"tag":992,"props":6060,"children":6061},{"style":1014},[6062],{"type":57,"value":2927},{"type":52,"tag":992,"props":6064,"children":6065},{"class":994,"line":2325},[6066,6071,6076,6080,6084,6088,6092,6096,6100,6105,6109,6113,6117,6121,6125,6129],{"type":52,"tag":992,"props":6067,"children":6068},{"style":999},[6069],{"type":57,"value":6070},"  `",{"type":52,"tag":992,"props":6072,"children":6073},{"style":1035},[6074],{"type":57,"value":6075},"VAPI_ASSISTANT_",{"type":52,"tag":992,"props":6077,"children":6078},{"style":999},[6079],{"type":57,"value":3650},{"type":52,"tag":992,"props":6081,"children":6082},{"style":2041},[6083],{"type":57,"value":486},{"type":52,"tag":992,"props":6085,"children":6086},{"style":999},[6087],{"type":57,"value":89},{"type":52,"tag":992,"props":6089,"children":6090},{"style":3230},[6091],{"type":57,"value":4609},{"type":52,"tag":992,"props":6093,"children":6094},{"style":2041},[6095],{"type":57,"value":3685},{"type":52,"tag":992,"props":6097,"children":6098},{"style":999},[6099],{"type":57,"value":3528},{"type":52,"tag":992,"props":6101,"children":6102},{"style":1035},[6103],{"type":57,"value":6104},"_",{"type":52,"tag":992,"props":6106,"children":6107},{"style":999},[6108],{"type":57,"value":3650},{"type":52,"tag":992,"props":6110,"children":6111},{"style":2041},[6112],{"type":57,"value":2905},{"type":52,"tag":992,"props":6114,"children":6115},{"style":999},[6116],{"type":57,"value":89},{"type":52,"tag":992,"props":6118,"children":6119},{"style":3230},[6120],{"type":57,"value":4609},{"type":52,"tag":992,"props":6122,"children":6123},{"style":2041},[6124],{"type":57,"value":3685},{"type":52,"tag":992,"props":6126,"children":6127},{"style":999},[6128],{"type":57,"value":3845},{"type":52,"tag":992,"props":6130,"children":6131},{"style":999},[6132],{"type":57,"value":2072},{"type":52,"tag":992,"props":6134,"children":6135},{"class":994,"line":2333},[6136],{"type":52,"tag":992,"props":6137,"children":6138},{"emptyLinePlaceholder":1837},[6139],{"type":57,"value":1840},{"type":52,"tag":992,"props":6141,"children":6142},{"class":994,"line":2389},[6143,6147,6152,6156,6160,6164,6168,6172,6176,6180,6184],{"type":52,"tag":992,"props":6144,"children":6145},{"style":1014},[6146],{"type":57,"value":2339},{"type":52,"tag":992,"props":6148,"children":6149},{"style":2041},[6150],{"type":57,"value":6151}," requireEnv ",{"type":52,"tag":992,"props":6153,"children":6154},{"style":999},[6155],{"type":57,"value":2894},{"type":52,"tag":992,"props":6157,"children":6158},{"style":999},[6159],{"type":57,"value":2899},{"type":52,"tag":992,"props":6161,"children":6162},{"style":2902},[6163],{"type":57,"value":1017},{"type":52,"tag":992,"props":6165,"children":6166},{"style":999},[6167],{"type":57,"value":1027},{"type":52,"tag":992,"props":6169,"children":6170},{"style":1185},[6171],{"type":57,"value":2175},{"type":52,"tag":992,"props":6173,"children":6174},{"style":999},[6175],{"type":57,"value":2918},{"type":52,"tag":992,"props":6177,"children":6178},{"style":1185},[6179],{"type":57,"value":2175},{"type":52,"tag":992,"props":6181,"children":6182},{"style":1014},[6183],{"type":57,"value":3484},{"type":52,"tag":992,"props":6185,"children":6186},{"style":999},[6187],{"type":57,"value":1174},{"type":52,"tag":992,"props":6189,"children":6190},{"class":994,"line":2406},[6191,6195,6200,6204,6209,6213,6218,6222,6226,6230],{"type":52,"tag":992,"props":6192,"children":6193},{"style":1014},[6194],{"type":57,"value":3496},{"type":52,"tag":992,"props":6196,"children":6197},{"style":2041},[6198],{"type":57,"value":6199}," value",{"type":52,"tag":992,"props":6201,"children":6202},{"style":999},[6203],{"type":57,"value":2382},{"type":52,"tag":992,"props":6205,"children":6206},{"style":2041},[6207],{"type":57,"value":6208}," process",{"type":52,"tag":992,"props":6210,"children":6211},{"style":999},[6212],{"type":57,"value":89},{"type":52,"tag":992,"props":6214,"children":6215},{"style":2041},[6216],{"type":57,"value":6217},"env",{"type":52,"tag":992,"props":6219,"children":6220},{"style":2134},[6221],{"type":57,"value":4677},{"type":52,"tag":992,"props":6223,"children":6224},{"style":2041},[6225],{"type":57,"value":1017},{"type":52,"tag":992,"props":6227,"children":6228},{"style":2134},[6229],{"type":57,"value":4686},{"type":52,"tag":992,"props":6231,"children":6232},{"style":999},[6233],{"type":57,"value":2072},{"type":52,"tag":992,"props":6235,"children":6236},{"class":994,"line":2435},[6237,6241,6245,6250,6255,6259],{"type":52,"tag":992,"props":6238,"children":6239},{"style":2025},[6240],{"type":57,"value":3554},{"type":52,"tag":992,"props":6242,"children":6243},{"style":2134},[6244],{"type":57,"value":2899},{"type":52,"tag":992,"props":6246,"children":6247},{"style":999},[6248],{"type":57,"value":6249},"!",{"type":52,"tag":992,"props":6251,"children":6252},{"style":2041},[6253],{"type":57,"value":6254},"value",{"type":52,"tag":992,"props":6256,"children":6257},{"style":2134},[6258],{"type":57,"value":3584},{"type":52,"tag":992,"props":6260,"children":6261},{"style":999},[6262],{"type":57,"value":1002},{"type":52,"tag":992,"props":6264,"children":6265},{"class":994,"line":2464},[6266,6271,6275,6280,6284,6288,6293,6297,6301,6305,6310,6314,6318],{"type":52,"tag":992,"props":6267,"children":6268},{"style":2041},[6269],{"type":57,"value":6270},"    console",{"type":52,"tag":992,"props":6272,"children":6273},{"style":999},[6274],{"type":57,"value":89},{"type":52,"tag":992,"props":6276,"children":6277},{"style":3230},[6278],{"type":57,"value":6279},"error",{"type":52,"tag":992,"props":6281,"children":6282},{"style":2134},[6283],{"type":57,"value":3237},{"type":52,"tag":992,"props":6285,"children":6286},{"style":999},[6287],{"type":57,"value":3538},{"type":52,"tag":992,"props":6289,"children":6290},{"style":1035},[6291],{"type":57,"value":6292},"✗ Missing env var: ",{"type":52,"tag":992,"props":6294,"children":6295},{"style":999},[6296],{"type":57,"value":3650},{"type":52,"tag":992,"props":6298,"children":6299},{"style":2041},[6300],{"type":57,"value":1017},{"type":52,"tag":992,"props":6302,"children":6303},{"style":999},[6304],{"type":57,"value":3528},{"type":52,"tag":992,"props":6306,"children":6307},{"style":1035},[6308],{"type":57,"value":6309},". See .env.example.",{"type":52,"tag":992,"props":6311,"children":6312},{"style":999},[6313],{"type":57,"value":3538},{"type":52,"tag":992,"props":6315,"children":6316},{"style":2134},[6317],{"type":57,"value":857},{"type":52,"tag":992,"props":6319,"children":6320},{"style":999},[6321],{"type":57,"value":2072},{"type":52,"tag":992,"props":6323,"children":6324},{"class":994,"line":2494},[6325,6330,6334,6339,6343,6348,6352],{"type":52,"tag":992,"props":6326,"children":6327},{"style":2041},[6328],{"type":57,"value":6329},"    process",{"type":52,"tag":992,"props":6331,"children":6332},{"style":999},[6333],{"type":57,"value":89},{"type":52,"tag":992,"props":6335,"children":6336},{"style":3230},[6337],{"type":57,"value":6338},"exit",{"type":52,"tag":992,"props":6340,"children":6341},{"style":2134},[6342],{"type":57,"value":3237},{"type":52,"tag":992,"props":6344,"children":6345},{"style":4850},[6346],{"type":57,"value":6347},"1",{"type":52,"tag":992,"props":6349,"children":6350},{"style":2134},[6351],{"type":57,"value":857},{"type":52,"tag":992,"props":6353,"children":6354},{"style":999},[6355],{"type":57,"value":2072},{"type":52,"tag":992,"props":6357,"children":6358},{"class":994,"line":2502},[6359],{"type":52,"tag":992,"props":6360,"children":6361},{"style":999},[6362],{"type":57,"value":6363},"  }\n",{"type":52,"tag":992,"props":6365,"children":6366},{"class":994,"line":2519},[6367,6371,6375],{"type":52,"tag":992,"props":6368,"children":6369},{"style":2025},[6370],{"type":57,"value":3812},{"type":52,"tag":992,"props":6372,"children":6373},{"style":2041},[6374],{"type":57,"value":6199},{"type":52,"tag":992,"props":6376,"children":6377},{"style":999},[6378],{"type":57,"value":2072},{"type":52,"tag":992,"props":6380,"children":6381},{"class":994,"line":2547},[6382],{"type":52,"tag":992,"props":6383,"children":6384},{"style":999},[6385],{"type":57,"value":2618},{"type":52,"tag":992,"props":6387,"children":6388},{"class":994,"line":2575},[6389],{"type":52,"tag":992,"props":6390,"children":6391},{"emptyLinePlaceholder":1837},[6392],{"type":57,"value":1840},{"type":52,"tag":992,"props":6394,"children":6395},{"class":994,"line":2604},[6396,6400,6405,6409,6414,6419,6423],{"type":52,"tag":992,"props":6397,"children":6398},{"style":1014},[6399],{"type":57,"value":2339},{"type":52,"tag":992,"props":6401,"children":6402},{"style":2041},[6403],{"type":57,"value":6404}," main ",{"type":52,"tag":992,"props":6406,"children":6407},{"style":999},[6408],{"type":57,"value":2894},{"type":52,"tag":992,"props":6410,"children":6411},{"style":1014},[6412],{"type":57,"value":6413}," async",{"type":52,"tag":992,"props":6415,"children":6416},{"style":999},[6417],{"type":57,"value":6418}," ()",{"type":52,"tag":992,"props":6420,"children":6421},{"style":1014},[6422],{"type":57,"value":3484},{"type":52,"tag":992,"props":6424,"children":6425},{"style":999},[6426],{"type":57,"value":1174},{"type":52,"tag":992,"props":6428,"children":6429},{"class":994,"line":2612},[6430,6434,6439,6443,6448,6452,6456,6460,6465,6469,6474,6478,6482,6486,6490,6494,6498,6502],{"type":52,"tag":992,"props":6431,"children":6432},{"style":1014},[6433],{"type":57,"value":3496},{"type":52,"tag":992,"props":6435,"children":6436},{"style":2041},[6437],{"type":57,"value":6438}," vapi",{"type":52,"tag":992,"props":6440,"children":6441},{"style":999},[6442],{"type":57,"value":2382},{"type":52,"tag":992,"props":6444,"children":6445},{"style":999},[6446],{"type":57,"value":6447}," new",{"type":52,"tag":992,"props":6449,"children":6450},{"style":3230},[6451],{"type":57,"value":5765},{"type":52,"tag":992,"props":6453,"children":6454},{"style":2134},[6455],{"type":57,"value":3237},{"type":52,"tag":992,"props":6457,"children":6458},{"style":999},[6459],{"type":57,"value":4878},{"type":52,"tag":992,"props":6461,"children":6462},{"style":2134},[6463],{"type":57,"value":6464}," token",{"type":52,"tag":992,"props":6466,"children":6467},{"style":999},[6468],{"type":57,"value":1027},{"type":52,"tag":992,"props":6470,"children":6471},{"style":3230},[6472],{"type":57,"value":6473}," requireEnv",{"type":52,"tag":992,"props":6475,"children":6476},{"style":2134},[6477],{"type":57,"value":3237},{"type":52,"tag":992,"props":6479,"children":6480},{"style":999},[6481],{"type":57,"value":1022},{"type":52,"tag":992,"props":6483,"children":6484},{"style":1035},[6485],{"type":57,"value":167},{"type":52,"tag":992,"props":6487,"children":6488},{"style":999},[6489],{"type":57,"value":1022},{"type":52,"tag":992,"props":6491,"children":6492},{"style":2134},[6493],{"type":57,"value":3584},{"type":52,"tag":992,"props":6495,"children":6496},{"style":999},[6497],{"type":57,"value":3528},{"type":52,"tag":992,"props":6499,"children":6500},{"style":2134},[6501],{"type":57,"value":857},{"type":52,"tag":992,"props":6503,"children":6504},{"style":999},[6505],{"type":57,"value":2072},{"type":52,"tag":992,"props":6507,"children":6508},{"class":994,"line":2621},[6509,6513,6518,6522,6527,6532,6537,6541,6545,6550,6555,6559,6563,6568,6572,6577],{"type":52,"tag":992,"props":6510,"children":6511},{"style":1014},[6512],{"type":57,"value":3496},{"type":52,"tag":992,"props":6514,"children":6515},{"style":2041},[6516],{"type":57,"value":6517}," created",{"type":52,"tag":992,"props":6519,"children":6520},{"style":999},[6521],{"type":57,"value":1027},{"type":52,"tag":992,"props":6523,"children":6524},{"style":1185},[6525],{"type":57,"value":6526}," Array",{"type":52,"tag":992,"props":6528,"children":6529},{"style":999},[6530],{"type":57,"value":6531},"\u003C{",{"type":52,"tag":992,"props":6533,"children":6534},{"style":2134},[6535],{"type":57,"value":6536}," envVar",{"type":52,"tag":992,"props":6538,"children":6539},{"style":999},[6540],{"type":57,"value":1027},{"type":52,"tag":992,"props":6542,"children":6543},{"style":1185},[6544],{"type":57,"value":2175},{"type":52,"tag":992,"props":6546,"children":6547},{"style":999},[6548],{"type":57,"value":6549},";",{"type":52,"tag":992,"props":6551,"children":6552},{"style":2134},[6553],{"type":57,"value":6554}," id",{"type":52,"tag":992,"props":6556,"children":6557},{"style":999},[6558],{"type":57,"value":1027},{"type":52,"tag":992,"props":6560,"children":6561},{"style":1185},[6562],{"type":57,"value":2175},{"type":52,"tag":992,"props":6564,"children":6565},{"style":999},[6566],{"type":57,"value":6567}," }>",{"type":52,"tag":992,"props":6569,"children":6570},{"style":999},[6571],{"type":57,"value":2382},{"type":52,"tag":992,"props":6573,"children":6574},{"style":2134},[6575],{"type":57,"value":6576}," []",{"type":52,"tag":992,"props":6578,"children":6579},{"style":999},[6580],{"type":57,"value":2072},{"type":52,"tag":992,"props":6582,"children":6583},{"class":994,"line":2629},[6584],{"type":52,"tag":992,"props":6585,"children":6586},{"emptyLinePlaceholder":1837},[6587],{"type":57,"value":1840},{"type":52,"tag":992,"props":6589,"children":6590},{"class":994,"line":2678},[6591,6596,6600,6604,6609,6614,6618,6622],{"type":52,"tag":992,"props":6592,"children":6593},{"style":2025},[6594],{"type":57,"value":6595},"  for",{"type":52,"tag":992,"props":6597,"children":6598},{"style":2134},[6599],{"type":57,"value":2899},{"type":52,"tag":992,"props":6601,"children":6602},{"style":1014},[6603],{"type":57,"value":2339},{"type":52,"tag":992,"props":6605,"children":6606},{"style":2041},[6607],{"type":57,"value":6608}," scenarioId",{"type":52,"tag":992,"props":6610,"children":6611},{"style":999},[6612],{"type":57,"value":6613}," of",{"type":52,"tag":992,"props":6615,"children":6616},{"style":2041},[6617],{"type":57,"value":5894},{"type":52,"tag":992,"props":6619,"children":6620},{"style":2134},[6621],{"type":57,"value":3584},{"type":52,"tag":992,"props":6623,"children":6624},{"style":999},[6625],{"type":57,"value":1002},{"type":52,"tag":992,"props":6627,"children":6628},{"class":994,"line":2770},[6629,6634,6638,6642,6646,6650,6654,6658],{"type":52,"tag":992,"props":6630,"children":6631},{"style":2025},[6632],{"type":57,"value":6633},"    for",{"type":52,"tag":992,"props":6635,"children":6636},{"style":2134},[6637],{"type":57,"value":2899},{"type":52,"tag":992,"props":6639,"children":6640},{"style":1014},[6641],{"type":57,"value":2339},{"type":52,"tag":992,"props":6643,"children":6644},{"style":2041},[6645],{"type":57,"value":4554},{"type":52,"tag":992,"props":6647,"children":6648},{"style":999},[6649],{"type":57,"value":6613},{"type":52,"tag":992,"props":6651,"children":6652},{"style":2041},[6653],{"type":57,"value":5938},{"type":52,"tag":992,"props":6655,"children":6656},{"style":2134},[6657],{"type":57,"value":3584},{"type":52,"tag":992,"props":6659,"children":6660},{"style":999},[6661],{"type":57,"value":1002},{"type":52,"tag":992,"props":6663,"children":6664},{"class":994,"line":2858},[6665,6670,6674,6678,6683,6687,6691,6695,6699,6703],{"type":52,"tag":992,"props":6666,"children":6667},{"style":1014},[6668],{"type":57,"value":6669},"      const",{"type":52,"tag":992,"props":6671,"children":6672},{"style":2041},[6673],{"type":57,"value":6536},{"type":52,"tag":992,"props":6675,"children":6676},{"style":999},[6677],{"type":57,"value":2382},{"type":52,"tag":992,"props":6679,"children":6680},{"style":3230},[6681],{"type":57,"value":6682}," envVarFor",{"type":52,"tag":992,"props":6684,"children":6685},{"style":2134},[6686],{"type":57,"value":3237},{"type":52,"tag":992,"props":6688,"children":6689},{"style":2041},[6690],{"type":57,"value":486},{"type":52,"tag":992,"props":6692,"children":6693},{"style":999},[6694],{"type":57,"value":2368},{"type":52,"tag":992,"props":6696,"children":6697},{"style":2041},[6698],{"type":57,"value":4554},{"type":52,"tag":992,"props":6700,"children":6701},{"style":2134},[6702],{"type":57,"value":857},{"type":52,"tag":992,"props":6704,"children":6705},{"style":999},[6706],{"type":57,"value":2072},{"type":52,"tag":992,"props":6708,"children":6709},{"class":994,"line":2866},[6710,6714,6719,6723,6727,6731,6735,6739,6744,6748],{"type":52,"tag":992,"props":6711,"children":6712},{"style":1014},[6713],{"type":57,"value":6669},{"type":52,"tag":992,"props":6715,"children":6716},{"style":2041},[6717],{"type":57,"value":6718}," existingId",{"type":52,"tag":992,"props":6720,"children":6721},{"style":999},[6722],{"type":57,"value":2382},{"type":52,"tag":992,"props":6724,"children":6725},{"style":2041},[6726],{"type":57,"value":6208},{"type":52,"tag":992,"props":6728,"children":6729},{"style":999},[6730],{"type":57,"value":89},{"type":52,"tag":992,"props":6732,"children":6733},{"style":2041},[6734],{"type":57,"value":6217},{"type":52,"tag":992,"props":6736,"children":6737},{"style":2134},[6738],{"type":57,"value":4677},{"type":52,"tag":992,"props":6740,"children":6741},{"style":2041},[6742],{"type":57,"value":6743},"envVar",{"type":52,"tag":992,"props":6745,"children":6746},{"style":2134},[6747],{"type":57,"value":4686},{"type":52,"tag":992,"props":6749,"children":6750},{"style":999},[6751],{"type":57,"value":2072},{"type":52,"tag":992,"props":6753,"children":6754},{"class":994,"line":2874},[6755,6759,6763,6767,6772],{"type":52,"tag":992,"props":6756,"children":6757},{"style":1014},[6758],{"type":57,"value":6669},{"type":52,"tag":992,"props":6760,"children":6761},{"style":2041},[6762],{"type":57,"value":3501},{"type":52,"tag":992,"props":6764,"children":6765},{"style":999},[6766],{"type":57,"value":2382},{"type":52,"tag":992,"props":6768,"children":6769},{"style":3230},[6770],{"type":57,"value":6771}," buildAssistant",{"type":52,"tag":992,"props":6773,"children":6774},{"style":2134},[6775],{"type":57,"value":3760},{"type":52,"tag":992,"props":6777,"children":6778},{"class":994,"line":2930},[6779,6784],{"type":52,"tag":992,"props":6780,"children":6781},{"style":2041},[6782],{"type":57,"value":6783},"        scenarioId",{"type":52,"tag":992,"props":6785,"children":6786},{"style":999},[6787],{"type":57,"value":1046},{"type":52,"tag":992,"props":6789,"children":6790},{"class":994,"line":2943},[6791,6796],{"type":52,"tag":992,"props":6792,"children":6793},{"style":2041},[6794],{"type":57,"value":6795},"        languageId",{"type":52,"tag":992,"props":6797,"children":6798},{"style":999},[6799],{"type":57,"value":1046},{"type":52,"tag":992,"props":6801,"children":6802},{"class":994,"line":2951},[6803,6808,6812,6817,6821,6826,6831,6835,6839,6844,6848,6853,6857,6861,6866,6870],{"type":52,"tag":992,"props":6804,"children":6805},{"style":2134},[6806],{"type":57,"value":6807},"      ) ",{"type":52,"tag":992,"props":6809,"children":6810},{"style":2025},[6811],{"type":57,"value":4075},{"type":52,"tag":992,"props":6813,"children":6814},{"style":1185},[6815],{"type":57,"value":6816}," unknown",{"type":52,"tag":992,"props":6818,"children":6819},{"style":2025},[6820],{"type":57,"value":3970},{"type":52,"tag":992,"props":6822,"children":6823},{"style":1185},[6824],{"type":57,"value":6825}," Parameters",{"type":52,"tag":992,"props":6827,"children":6828},{"style":999},[6829],{"type":57,"value":6830},"\u003Ctypeof",{"type":52,"tag":992,"props":6832,"children":6833},{"style":2041},[6834],{"type":57,"value":6438},{"type":52,"tag":992,"props":6836,"children":6837},{"style":999},[6838],{"type":57,"value":89},{"type":52,"tag":992,"props":6840,"children":6841},{"style":2041},[6842],{"type":57,"value":6843},"assistants",{"type":52,"tag":992,"props":6845,"children":6846},{"style":999},[6847],{"type":57,"value":89},{"type":52,"tag":992,"props":6849,"children":6850},{"style":2041},[6851],{"type":57,"value":6852},"create",{"type":52,"tag":992,"props":6854,"children":6855},{"style":999},[6856],{"type":57,"value":2377},{"type":52,"tag":992,"props":6858,"children":6859},{"style":2134},[6860],{"type":57,"value":4677},{"type":52,"tag":992,"props":6862,"children":6863},{"style":4850},[6864],{"type":57,"value":6865},"0",{"type":52,"tag":992,"props":6867,"children":6868},{"style":2134},[6869],{"type":57,"value":4686},{"type":52,"tag":992,"props":6871,"children":6872},{"style":999},[6873],{"type":57,"value":2072},{"type":52,"tag":992,"props":6875,"children":6876},{"class":994,"line":3000},[6877],{"type":52,"tag":992,"props":6878,"children":6879},{"emptyLinePlaceholder":1837},[6880],{"type":57,"value":1840},{"type":52,"tag":992,"props":6882,"children":6884},{"class":994,"line":6883},44,[6885,6889,6894,6898,6902,6906,6910,6915,6919,6923,6927],{"type":52,"tag":992,"props":6886,"children":6887},{"style":1014},[6888],{"type":57,"value":6669},{"type":52,"tag":992,"props":6890,"children":6891},{"style":2041},[6892],{"type":57,"value":6893}," label",{"type":52,"tag":992,"props":6895,"children":6896},{"style":999},[6897],{"type":57,"value":2382},{"type":52,"tag":992,"props":6899,"children":6900},{"style":999},[6901],{"type":57,"value":3817},{"type":52,"tag":992,"props":6903,"children":6904},{"style":2041},[6905],{"type":57,"value":486},{"type":52,"tag":992,"props":6907,"children":6908},{"style":999},[6909],{"type":57,"value":3528},{"type":52,"tag":992,"props":6911,"children":6912},{"style":1035},[6913],{"type":57,"value":6914},"\u002F",{"type":52,"tag":992,"props":6916,"children":6917},{"style":999},[6918],{"type":57,"value":3650},{"type":52,"tag":992,"props":6920,"children":6921},{"style":2041},[6922],{"type":57,"value":2905},{"type":52,"tag":992,"props":6924,"children":6925},{"style":999},[6926],{"type":57,"value":3845},{"type":52,"tag":992,"props":6928,"children":6929},{"style":999},[6930],{"type":57,"value":2072},{"type":52,"tag":992,"props":6932,"children":6934},{"class":994,"line":6933},45,[6935,6940,6945,6949,6955],{"type":52,"tag":992,"props":6936,"children":6937},{"style":1014},[6938],{"type":57,"value":6939},"      let",{"type":52,"tag":992,"props":6941,"children":6942},{"style":2041},[6943],{"type":57,"value":6944}," updated",{"type":52,"tag":992,"props":6946,"children":6947},{"style":999},[6948],{"type":57,"value":2382},{"type":52,"tag":992,"props":6950,"children":6952},{"style":6951},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[6953],{"type":57,"value":6954}," false",{"type":52,"tag":992,"props":6956,"children":6957},{"style":999},[6958],{"type":57,"value":2072},{"type":52,"tag":992,"props":6960,"children":6962},{"class":994,"line":6961},46,[6963],{"type":52,"tag":992,"props":6964,"children":6965},{"emptyLinePlaceholder":1837},[6966],{"type":57,"value":1840},{"type":52,"tag":992,"props":6968,"children":6970},{"class":994,"line":6969},47,[6971,6976,6980,6985,6989],{"type":52,"tag":992,"props":6972,"children":6973},{"style":2025},[6974],{"type":57,"value":6975},"      if",{"type":52,"tag":992,"props":6977,"children":6978},{"style":2134},[6979],{"type":57,"value":2899},{"type":52,"tag":992,"props":6981,"children":6982},{"style":2041},[6983],{"type":57,"value":6984},"existingId",{"type":52,"tag":992,"props":6986,"children":6987},{"style":2134},[6988],{"type":57,"value":3584},{"type":52,"tag":992,"props":6990,"children":6991},{"style":999},[6992],{"type":57,"value":1002},{"type":52,"tag":992,"props":6994,"children":6996},{"class":994,"line":6995},48,[6997,7002],{"type":52,"tag":992,"props":6998,"children":6999},{"style":2025},[7000],{"type":57,"value":7001},"        try",{"type":52,"tag":992,"props":7003,"children":7004},{"style":999},[7005],{"type":57,"value":1174},{"type":52,"tag":992,"props":7007,"children":7009},{"class":994,"line":7008},49,[7010,7015,7019,7023,7027,7031,7036,7040],{"type":52,"tag":992,"props":7011,"children":7012},{"style":2025},[7013],{"type":57,"value":7014},"          await",{"type":52,"tag":992,"props":7016,"children":7017},{"style":2041},[7018],{"type":57,"value":6438},{"type":52,"tag":992,"props":7020,"children":7021},{"style":999},[7022],{"type":57,"value":89},{"type":52,"tag":992,"props":7024,"children":7025},{"style":2041},[7026],{"type":57,"value":6843},{"type":52,"tag":992,"props":7028,"children":7029},{"style":999},[7030],{"type":57,"value":89},{"type":52,"tag":992,"props":7032,"children":7033},{"style":3230},[7034],{"type":57,"value":7035},"update",{"type":52,"tag":992,"props":7037,"children":7038},{"style":2134},[7039],{"type":57,"value":3237},{"type":52,"tag":992,"props":7041,"children":7042},{"style":999},[7043],{"type":57,"value":1002},{"type":52,"tag":992,"props":7045,"children":7047},{"class":994,"line":7046},50,[7048,7053,7057,7061],{"type":52,"tag":992,"props":7049,"children":7050},{"style":2134},[7051],{"type":57,"value":7052},"            id",{"type":52,"tag":992,"props":7054,"children":7055},{"style":999},[7056],{"type":57,"value":1027},{"type":52,"tag":992,"props":7058,"children":7059},{"style":2041},[7060],{"type":57,"value":6718},{"type":52,"tag":992,"props":7062,"children":7063},{"style":999},[7064],{"type":57,"value":1046},{"type":52,"tag":992,"props":7066,"children":7068},{"class":994,"line":7067},51,[7069,7074,7078],{"type":52,"tag":992,"props":7070,"children":7071},{"style":999},[7072],{"type":57,"value":7073},"            ...",{"type":52,"tag":992,"props":7075,"children":7076},{"style":2041},[7077],{"type":57,"value":3840},{"type":52,"tag":992,"props":7079,"children":7080},{"style":999},[7081],{"type":57,"value":1046},{"type":52,"tag":992,"props":7083,"children":7085},{"class":994,"line":7084},52,[7086,7091,7095,7099,7103,7107,7111,7115,7119,7123,7127,7131,7135,7139,7143,7148],{"type":52,"tag":992,"props":7087,"children":7088},{"style":999},[7089],{"type":57,"value":7090},"          }",{"type":52,"tag":992,"props":7092,"children":7093},{"style":2025},[7094],{"type":57,"value":3970},{"type":52,"tag":992,"props":7096,"children":7097},{"style":1185},[7098],{"type":57,"value":6816},{"type":52,"tag":992,"props":7100,"children":7101},{"style":2025},[7102],{"type":57,"value":3970},{"type":52,"tag":992,"props":7104,"children":7105},{"style":1185},[7106],{"type":57,"value":6825},{"type":52,"tag":992,"props":7108,"children":7109},{"style":999},[7110],{"type":57,"value":6830},{"type":52,"tag":992,"props":7112,"children":7113},{"style":2041},[7114],{"type":57,"value":6438},{"type":52,"tag":992,"props":7116,"children":7117},{"style":999},[7118],{"type":57,"value":89},{"type":52,"tag":992,"props":7120,"children":7121},{"style":2041},[7122],{"type":57,"value":6843},{"type":52,"tag":992,"props":7124,"children":7125},{"style":999},[7126],{"type":57,"value":89},{"type":52,"tag":992,"props":7128,"children":7129},{"style":2041},[7130],{"type":57,"value":7035},{"type":52,"tag":992,"props":7132,"children":7133},{"style":999},[7134],{"type":57,"value":2377},{"type":52,"tag":992,"props":7136,"children":7137},{"style":2134},[7138],{"type":57,"value":4677},{"type":52,"tag":992,"props":7140,"children":7141},{"style":4850},[7142],{"type":57,"value":6865},{"type":52,"tag":992,"props":7144,"children":7145},{"style":2134},[7146],{"type":57,"value":7147},"])",{"type":52,"tag":992,"props":7149,"children":7150},{"style":999},[7151],{"type":57,"value":2072},{"type":52,"tag":992,"props":7153,"children":7154},{"class":994,"line":26},[7155,7160,7164,7169,7173,7177,7182,7186,7191,7195,7200,7204,7208,7212,7216],{"type":52,"tag":992,"props":7156,"children":7157},{"style":2041},[7158],{"type":57,"value":7159},"          console",{"type":52,"tag":992,"props":7161,"children":7162},{"style":999},[7163],{"type":57,"value":89},{"type":52,"tag":992,"props":7165,"children":7166},{"style":3230},[7167],{"type":57,"value":7168},"log",{"type":52,"tag":992,"props":7170,"children":7171},{"style":2134},[7172],{"type":57,"value":3237},{"type":52,"tag":992,"props":7174,"children":7175},{"style":999},[7176],{"type":57,"value":3538},{"type":52,"tag":992,"props":7178,"children":7179},{"style":1035},[7180],{"type":57,"value":7181},"✓ Updated ",{"type":52,"tag":992,"props":7183,"children":7184},{"style":999},[7185],{"type":57,"value":3650},{"type":52,"tag":992,"props":7187,"children":7188},{"style":2041},[7189],{"type":57,"value":7190},"label",{"type":52,"tag":992,"props":7192,"children":7193},{"style":999},[7194],{"type":57,"value":3528},{"type":52,"tag":992,"props":7196,"children":7197},{"style":1035},[7198],{"type":57,"value":7199}," → ",{"type":52,"tag":992,"props":7201,"children":7202},{"style":999},[7203],{"type":57,"value":3650},{"type":52,"tag":992,"props":7205,"children":7206},{"style":2041},[7207],{"type":57,"value":6984},{"type":52,"tag":992,"props":7209,"children":7210},{"style":999},[7211],{"type":57,"value":3845},{"type":52,"tag":992,"props":7213,"children":7214},{"style":2134},[7215],{"type":57,"value":857},{"type":52,"tag":992,"props":7217,"children":7218},{"style":999},[7219],{"type":57,"value":2072},{"type":52,"tag":992,"props":7221,"children":7223},{"class":994,"line":7222},54,[7224,7229,7233,7238],{"type":52,"tag":992,"props":7225,"children":7226},{"style":2041},[7227],{"type":57,"value":7228},"          updated",{"type":52,"tag":992,"props":7230,"children":7231},{"style":999},[7232],{"type":57,"value":2382},{"type":52,"tag":992,"props":7234,"children":7235},{"style":6951},[7236],{"type":57,"value":7237}," true",{"type":52,"tag":992,"props":7239,"children":7240},{"style":999},[7241],{"type":57,"value":2072},{"type":52,"tag":992,"props":7243,"children":7245},{"class":994,"line":7244},55,[7246,7251,7256,7260,7265,7269],{"type":52,"tag":992,"props":7247,"children":7248},{"style":999},[7249],{"type":57,"value":7250},"        }",{"type":52,"tag":992,"props":7252,"children":7253},{"style":2025},[7254],{"type":57,"value":7255}," catch",{"type":52,"tag":992,"props":7257,"children":7258},{"style":2134},[7259],{"type":57,"value":2899},{"type":52,"tag":992,"props":7261,"children":7262},{"style":2041},[7263],{"type":57,"value":7264},"err",{"type":52,"tag":992,"props":7266,"children":7267},{"style":2134},[7268],{"type":57,"value":3584},{"type":52,"tag":992,"props":7270,"children":7271},{"style":999},[7272],{"type":57,"value":1002},{"type":52,"tag":992,"props":7274,"children":7276},{"class":994,"line":7275},56,[7277,7282,7287,7291,7295,7299,7303,7307,7311,7316,7321,7325,7329,7334,7339],{"type":52,"tag":992,"props":7278,"children":7279},{"style":1014},[7280],{"type":57,"value":7281},"          const",{"type":52,"tag":992,"props":7283,"children":7284},{"style":2041},[7285],{"type":57,"value":7286}," statusCode",{"type":52,"tag":992,"props":7288,"children":7289},{"style":999},[7290],{"type":57,"value":2382},{"type":52,"tag":992,"props":7292,"children":7293},{"style":2134},[7294],{"type":57,"value":2899},{"type":52,"tag":992,"props":7296,"children":7297},{"style":2041},[7298],{"type":57,"value":7264},{"type":52,"tag":992,"props":7300,"children":7301},{"style":2025},[7302],{"type":57,"value":3970},{"type":52,"tag":992,"props":7304,"children":7305},{"style":999},[7306],{"type":57,"value":2038},{"type":52,"tag":992,"props":7308,"children":7309},{"style":2134},[7310],{"type":57,"value":7286},{"type":52,"tag":992,"props":7312,"children":7313},{"style":999},[7314],{"type":57,"value":7315},"?:",{"type":52,"tag":992,"props":7317,"children":7318},{"style":1185},[7319],{"type":57,"value":7320}," number",{"type":52,"tag":992,"props":7322,"children":7323},{"style":999},[7324],{"type":57,"value":2049},{"type":52,"tag":992,"props":7326,"children":7327},{"style":2134},[7328],{"type":57,"value":857},{"type":52,"tag":992,"props":7330,"children":7331},{"style":999},[7332],{"type":57,"value":7333},"?.",{"type":52,"tag":992,"props":7335,"children":7336},{"style":2041},[7337],{"type":57,"value":7338},"statusCode",{"type":52,"tag":992,"props":7340,"children":7341},{"style":999},[7342],{"type":57,"value":2072},{"type":52,"tag":992,"props":7344,"children":7346},{"class":994,"line":7345},57,[7347,7352,7356,7360,7364,7369,7373],{"type":52,"tag":992,"props":7348,"children":7349},{"style":2025},[7350],{"type":57,"value":7351},"          if",{"type":52,"tag":992,"props":7353,"children":7354},{"style":2134},[7355],{"type":57,"value":2899},{"type":52,"tag":992,"props":7357,"children":7358},{"style":2041},[7359],{"type":57,"value":7338},{"type":52,"tag":992,"props":7361,"children":7362},{"style":999},[7363],{"type":57,"value":3567},{"type":52,"tag":992,"props":7365,"children":7366},{"style":4850},[7367],{"type":57,"value":7368}," 404",{"type":52,"tag":992,"props":7370,"children":7371},{"style":2134},[7372],{"type":57,"value":3584},{"type":52,"tag":992,"props":7374,"children":7375},{"style":999},[7376],{"type":57,"value":1002},{"type":52,"tag":992,"props":7378,"children":7380},{"class":994,"line":7379},58,[7381,7386,7390,7394],{"type":52,"tag":992,"props":7382,"children":7383},{"style":2041},[7384],{"type":57,"value":7385},"            console",{"type":52,"tag":992,"props":7387,"children":7388},{"style":999},[7389],{"type":57,"value":89},{"type":52,"tag":992,"props":7391,"children":7392},{"style":3230},[7393],{"type":57,"value":7168},{"type":52,"tag":992,"props":7395,"children":7396},{"style":2134},[7397],{"type":57,"value":3760},{"type":52,"tag":992,"props":7399,"children":7401},{"class":994,"line":7400},59,[7402,7407,7412,7416,7420,7424,7428,7432,7436,7441,7445],{"type":52,"tag":992,"props":7403,"children":7404},{"style":999},[7405],{"type":57,"value":7406},"              `",{"type":52,"tag":992,"props":7408,"children":7409},{"style":999},[7410],{"type":57,"value":7411},"  ${",{"type":52,"tag":992,"props":7413,"children":7414},{"style":2041},[7415],{"type":57,"value":6743},{"type":52,"tag":992,"props":7417,"children":7418},{"style":999},[7419],{"type":57,"value":3528},{"type":52,"tag":992,"props":7421,"children":7422},{"style":1035},[7423],{"type":57,"value":2894},{"type":52,"tag":992,"props":7425,"children":7426},{"style":999},[7427],{"type":57,"value":3650},{"type":52,"tag":992,"props":7429,"children":7430},{"style":2041},[7431],{"type":57,"value":6984},{"type":52,"tag":992,"props":7433,"children":7434},{"style":999},[7435],{"type":57,"value":3528},{"type":52,"tag":992,"props":7437,"children":7438},{"style":1035},[7439],{"type":57,"value":7440}," not found in this org; creating a new assistant.",{"type":52,"tag":992,"props":7442,"children":7443},{"style":999},[7444],{"type":57,"value":3538},{"type":52,"tag":992,"props":7446,"children":7447},{"style":999},[7448],{"type":57,"value":1046},{"type":52,"tag":992,"props":7450,"children":7452},{"class":994,"line":7451},60,[7453,7458],{"type":52,"tag":992,"props":7454,"children":7455},{"style":2134},[7456],{"type":57,"value":7457},"            )",{"type":52,"tag":992,"props":7459,"children":7460},{"style":999},[7461],{"type":57,"value":2072},{"type":52,"tag":992,"props":7463,"children":7465},{"class":994,"line":7464},61,[7466,7470,7475],{"type":52,"tag":992,"props":7467,"children":7468},{"style":999},[7469],{"type":57,"value":7090},{"type":52,"tag":992,"props":7471,"children":7472},{"style":2025},[7473],{"type":57,"value":7474}," else",{"type":52,"tag":992,"props":7476,"children":7477},{"style":999},[7478],{"type":57,"value":1174},{"type":52,"tag":992,"props":7480,"children":7482},{"class":994,"line":7481},62,[7483,7488,7493],{"type":52,"tag":992,"props":7484,"children":7485},{"style":2025},[7486],{"type":57,"value":7487},"            throw",{"type":52,"tag":992,"props":7489,"children":7490},{"style":2041},[7491],{"type":57,"value":7492}," err",{"type":52,"tag":992,"props":7494,"children":7495},{"style":999},[7496],{"type":57,"value":2072},{"type":52,"tag":992,"props":7498,"children":7500},{"class":994,"line":7499},63,[7501],{"type":52,"tag":992,"props":7502,"children":7503},{"style":999},[7504],{"type":57,"value":7505},"          }\n",{"type":52,"tag":992,"props":7507,"children":7509},{"class":994,"line":7508},64,[7510],{"type":52,"tag":992,"props":7511,"children":7512},{"style":999},[7513],{"type":57,"value":7514},"        }\n",{"type":52,"tag":992,"props":7516,"children":7518},{"class":994,"line":7517},65,[7519],{"type":52,"tag":992,"props":7520,"children":7521},{"style":999},[7522],{"type":57,"value":7523},"      }\n",{"type":52,"tag":992,"props":7525,"children":7527},{"class":994,"line":7526},66,[7528],{"type":52,"tag":992,"props":7529,"children":7530},{"emptyLinePlaceholder":1837},[7531],{"type":57,"value":1840},{"type":52,"tag":992,"props":7533,"children":7535},{"class":994,"line":7534},67,[7536,7540,7544,7548,7553,7557],{"type":52,"tag":992,"props":7537,"children":7538},{"style":2025},[7539],{"type":57,"value":6975},{"type":52,"tag":992,"props":7541,"children":7542},{"style":2134},[7543],{"type":57,"value":2899},{"type":52,"tag":992,"props":7545,"children":7546},{"style":999},[7547],{"type":57,"value":6249},{"type":52,"tag":992,"props":7549,"children":7550},{"style":2041},[7551],{"type":57,"value":7552},"updated",{"type":52,"tag":992,"props":7554,"children":7555},{"style":2134},[7556],{"type":57,"value":3584},{"type":52,"tag":992,"props":7558,"children":7559},{"style":999},[7560],{"type":57,"value":1002},{"type":52,"tag":992,"props":7562,"children":7564},{"class":994,"line":7563},68,[7565,7570,7575,7579,7584,7588,7592,7596,7600,7604,7608,7612,7616],{"type":52,"tag":992,"props":7566,"children":7567},{"style":1014},[7568],{"type":57,"value":7569},"        const",{"type":52,"tag":992,"props":7571,"children":7572},{"style":2041},[7573],{"type":57,"value":7574}," assistant",{"type":52,"tag":992,"props":7576,"children":7577},{"style":999},[7578],{"type":57,"value":2382},{"type":52,"tag":992,"props":7580,"children":7581},{"style":2025},[7582],{"type":57,"value":7583}," await",{"type":52,"tag":992,"props":7585,"children":7586},{"style":2041},[7587],{"type":57,"value":6438},{"type":52,"tag":992,"props":7589,"children":7590},{"style":999},[7591],{"type":57,"value":89},{"type":52,"tag":992,"props":7593,"children":7594},{"style":2041},[7595],{"type":57,"value":6843},{"type":52,"tag":992,"props":7597,"children":7598},{"style":999},[7599],{"type":57,"value":89},{"type":52,"tag":992,"props":7601,"children":7602},{"style":3230},[7603],{"type":57,"value":6852},{"type":52,"tag":992,"props":7605,"children":7606},{"style":2134},[7607],{"type":57,"value":3237},{"type":52,"tag":992,"props":7609,"children":7610},{"style":2041},[7611],{"type":57,"value":3840},{"type":52,"tag":992,"props":7613,"children":7614},{"style":2134},[7615],{"type":57,"value":857},{"type":52,"tag":992,"props":7617,"children":7618},{"style":999},[7619],{"type":57,"value":2072},{"type":52,"tag":992,"props":7621,"children":7623},{"class":994,"line":7622},69,[7624,7629,7633,7637,7641,7645,7650,7654,7658,7662,7666,7670,7675,7679,7683,7687,7691],{"type":52,"tag":992,"props":7625,"children":7626},{"style":2041},[7627],{"type":57,"value":7628},"        console",{"type":52,"tag":992,"props":7630,"children":7631},{"style":999},[7632],{"type":57,"value":89},{"type":52,"tag":992,"props":7634,"children":7635},{"style":3230},[7636],{"type":57,"value":7168},{"type":52,"tag":992,"props":7638,"children":7639},{"style":2134},[7640],{"type":57,"value":3237},{"type":52,"tag":992,"props":7642,"children":7643},{"style":999},[7644],{"type":57,"value":3538},{"type":52,"tag":992,"props":7646,"children":7647},{"style":1035},[7648],{"type":57,"value":7649},"✓ Created ",{"type":52,"tag":992,"props":7651,"children":7652},{"style":999},[7653],{"type":57,"value":3650},{"type":52,"tag":992,"props":7655,"children":7656},{"style":2041},[7657],{"type":57,"value":7190},{"type":52,"tag":992,"props":7659,"children":7660},{"style":999},[7661],{"type":57,"value":3528},{"type":52,"tag":992,"props":7663,"children":7664},{"style":1035},[7665],{"type":57,"value":7199},{"type":52,"tag":992,"props":7667,"children":7668},{"style":999},[7669],{"type":57,"value":3650},{"type":52,"tag":992,"props":7671,"children":7672},{"style":2041},[7673],{"type":57,"value":7674},"assistant",{"type":52,"tag":992,"props":7676,"children":7677},{"style":999},[7678],{"type":57,"value":89},{"type":52,"tag":992,"props":7680,"children":7681},{"style":2041},[7682],{"type":57,"value":4124},{"type":52,"tag":992,"props":7684,"children":7685},{"style":999},[7686],{"type":57,"value":3845},{"type":52,"tag":992,"props":7688,"children":7689},{"style":2134},[7690],{"type":57,"value":857},{"type":52,"tag":992,"props":7692,"children":7693},{"style":999},[7694],{"type":57,"value":2072},{"type":52,"tag":992,"props":7696,"children":7698},{"class":994,"line":7697},70,[7699,7704,7708,7713,7717,7721,7725,7729,7733,7737,7741,7745,7749,7753,7757],{"type":52,"tag":992,"props":7700,"children":7701},{"style":2041},[7702],{"type":57,"value":7703},"        created",{"type":52,"tag":992,"props":7705,"children":7706},{"style":999},[7707],{"type":57,"value":89},{"type":52,"tag":992,"props":7709,"children":7710},{"style":3230},[7711],{"type":57,"value":7712},"push",{"type":52,"tag":992,"props":7714,"children":7715},{"style":2134},[7716],{"type":57,"value":3237},{"type":52,"tag":992,"props":7718,"children":7719},{"style":999},[7720],{"type":57,"value":4878},{"type":52,"tag":992,"props":7722,"children":7723},{"style":2041},[7724],{"type":57,"value":6536},{"type":52,"tag":992,"props":7726,"children":7727},{"style":999},[7728],{"type":57,"value":2368},{"type":52,"tag":992,"props":7730,"children":7731},{"style":2134},[7732],{"type":57,"value":6554},{"type":52,"tag":992,"props":7734,"children":7735},{"style":999},[7736],{"type":57,"value":1027},{"type":52,"tag":992,"props":7738,"children":7739},{"style":2041},[7740],{"type":57,"value":7574},{"type":52,"tag":992,"props":7742,"children":7743},{"style":999},[7744],{"type":57,"value":89},{"type":52,"tag":992,"props":7746,"children":7747},{"style":2041},[7748],{"type":57,"value":4124},{"type":52,"tag":992,"props":7750,"children":7751},{"style":999},[7752],{"type":57,"value":2049},{"type":52,"tag":992,"props":7754,"children":7755},{"style":2134},[7756],{"type":57,"value":857},{"type":52,"tag":992,"props":7758,"children":7759},{"style":999},[7760],{"type":57,"value":2072},{"type":52,"tag":992,"props":7762,"children":7764},{"class":994,"line":7763},71,[7765],{"type":52,"tag":992,"props":7766,"children":7767},{"style":999},[7768],{"type":57,"value":7523},{"type":52,"tag":992,"props":7770,"children":7772},{"class":994,"line":7771},72,[7773],{"type":52,"tag":992,"props":7774,"children":7775},{"style":999},[7776],{"type":57,"value":7777},"    }\n",{"type":52,"tag":992,"props":7779,"children":7781},{"class":994,"line":7780},73,[7782],{"type":52,"tag":992,"props":7783,"children":7784},{"style":999},[7785],{"type":57,"value":6363},{"type":52,"tag":992,"props":7787,"children":7789},{"class":994,"line":7788},74,[7790],{"type":52,"tag":992,"props":7791,"children":7792},{"emptyLinePlaceholder":1837},[7793],{"type":57,"value":1840},{"type":52,"tag":992,"props":7795,"children":7797},{"class":994,"line":7796},75,[7798,7802,7806,7811,7815,7820,7825,7830,7834],{"type":52,"tag":992,"props":7799,"children":7800},{"style":2025},[7801],{"type":57,"value":3554},{"type":52,"tag":992,"props":7803,"children":7804},{"style":2134},[7805],{"type":57,"value":2899},{"type":52,"tag":992,"props":7807,"children":7808},{"style":2041},[7809],{"type":57,"value":7810},"created",{"type":52,"tag":992,"props":7812,"children":7813},{"style":999},[7814],{"type":57,"value":89},{"type":52,"tag":992,"props":7816,"children":7817},{"style":2041},[7818],{"type":57,"value":7819},"length",{"type":52,"tag":992,"props":7821,"children":7822},{"style":999},[7823],{"type":57,"value":7824}," >",{"type":52,"tag":992,"props":7826,"children":7827},{"style":4850},[7828],{"type":57,"value":7829}," 0",{"type":52,"tag":992,"props":7831,"children":7832},{"style":2134},[7833],{"type":57,"value":3584},{"type":52,"tag":992,"props":7835,"children":7836},{"style":999},[7837],{"type":57,"value":1002},{"type":52,"tag":992,"props":7839,"children":7841},{"class":994,"line":7840},76,[7842,7846,7850,7854,7858,7862,7867,7872,7876,7880],{"type":52,"tag":992,"props":7843,"children":7844},{"style":2041},[7845],{"type":57,"value":6270},{"type":52,"tag":992,"props":7847,"children":7848},{"style":999},[7849],{"type":57,"value":89},{"type":52,"tag":992,"props":7851,"children":7852},{"style":3230},[7853],{"type":57,"value":7168},{"type":52,"tag":992,"props":7855,"children":7856},{"style":2134},[7857],{"type":57,"value":3237},{"type":52,"tag":992,"props":7859,"children":7860},{"style":999},[7861],{"type":57,"value":1022},{"type":52,"tag":992,"props":7863,"children":7864},{"style":2041},[7865],{"type":57,"value":7866},"\\n",{"type":52,"tag":992,"props":7868,"children":7869},{"style":1035},[7870],{"type":57,"value":7871},"Add these to .env.local:",{"type":52,"tag":992,"props":7873,"children":7874},{"style":999},[7875],{"type":57,"value":1022},{"type":52,"tag":992,"props":7877,"children":7878},{"style":2134},[7879],{"type":57,"value":857},{"type":52,"tag":992,"props":7881,"children":7882},{"style":999},[7883],{"type":57,"value":2072},{"type":52,"tag":992,"props":7885,"children":7887},{"class":994,"line":7886},77,[7888,7892,7896,7900,7904,7908,7912,7916,7920,7924,7928,7932],{"type":52,"tag":992,"props":7889,"children":7890},{"style":2025},[7891],{"type":57,"value":6633},{"type":52,"tag":992,"props":7893,"children":7894},{"style":2134},[7895],{"type":57,"value":2899},{"type":52,"tag":992,"props":7897,"children":7898},{"style":1014},[7899],{"type":57,"value":2339},{"type":52,"tag":992,"props":7901,"children":7902},{"style":999},[7903],{"type":57,"value":2038},{"type":52,"tag":992,"props":7905,"children":7906},{"style":2041},[7907],{"type":57,"value":6536},{"type":52,"tag":992,"props":7909,"children":7910},{"style":999},[7911],{"type":57,"value":2368},{"type":52,"tag":992,"props":7913,"children":7914},{"style":2041},[7915],{"type":57,"value":6554},{"type":52,"tag":992,"props":7917,"children":7918},{"style":999},[7919],{"type":57,"value":2049},{"type":52,"tag":992,"props":7921,"children":7922},{"style":999},[7923],{"type":57,"value":6613},{"type":52,"tag":992,"props":7925,"children":7926},{"style":2041},[7927],{"type":57,"value":6517},{"type":52,"tag":992,"props":7929,"children":7930},{"style":2134},[7931],{"type":57,"value":3584},{"type":52,"tag":992,"props":7933,"children":7934},{"style":999},[7935],{"type":57,"value":1002},{"type":52,"tag":992,"props":7937,"children":7939},{"class":994,"line":7938},78,[7940,7945,7949,7953,7957,7961,7965,7969,7973,7977,7981,7985,7989,7993],{"type":52,"tag":992,"props":7941,"children":7942},{"style":2041},[7943],{"type":57,"value":7944},"      console",{"type":52,"tag":992,"props":7946,"children":7947},{"style":999},[7948],{"type":57,"value":89},{"type":52,"tag":992,"props":7950,"children":7951},{"style":3230},[7952],{"type":57,"value":7168},{"type":52,"tag":992,"props":7954,"children":7955},{"style":2134},[7956],{"type":57,"value":3237},{"type":52,"tag":992,"props":7958,"children":7959},{"style":999},[7960],{"type":57,"value":3538},{"type":52,"tag":992,"props":7962,"children":7963},{"style":999},[7964],{"type":57,"value":7411},{"type":52,"tag":992,"props":7966,"children":7967},{"style":2041},[7968],{"type":57,"value":6743},{"type":52,"tag":992,"props":7970,"children":7971},{"style":999},[7972],{"type":57,"value":3528},{"type":52,"tag":992,"props":7974,"children":7975},{"style":1035},[7976],{"type":57,"value":2894},{"type":52,"tag":992,"props":7978,"children":7979},{"style":999},[7980],{"type":57,"value":3650},{"type":52,"tag":992,"props":7982,"children":7983},{"style":2041},[7984],{"type":57,"value":4124},{"type":52,"tag":992,"props":7986,"children":7987},{"style":999},[7988],{"type":57,"value":3845},{"type":52,"tag":992,"props":7990,"children":7991},{"style":2134},[7992],{"type":57,"value":857},{"type":52,"tag":992,"props":7994,"children":7995},{"style":999},[7996],{"type":57,"value":2072},{"type":52,"tag":992,"props":7998,"children":8000},{"class":994,"line":7999},79,[8001],{"type":52,"tag":992,"props":8002,"children":8003},{"style":999},[8004],{"type":57,"value":7777},{"type":52,"tag":992,"props":8006,"children":8008},{"class":994,"line":8007},80,[8009,8013,8017,8021],{"type":52,"tag":992,"props":8010,"children":8011},{"style":2041},[8012],{"type":57,"value":6270},{"type":52,"tag":992,"props":8014,"children":8015},{"style":999},[8016],{"type":57,"value":89},{"type":52,"tag":992,"props":8018,"children":8019},{"style":3230},[8020],{"type":57,"value":7168},{"type":52,"tag":992,"props":8022,"children":8023},{"style":2134},[8024],{"type":57,"value":3760},{"type":52,"tag":992,"props":8026,"children":8028},{"class":994,"line":8027},81,[8029,8034,8038,8043,8047],{"type":52,"tag":992,"props":8030,"children":8031},{"style":999},[8032],{"type":57,"value":8033},"      \"",{"type":52,"tag":992,"props":8035,"children":8036},{"style":2041},[8037],{"type":57,"value":7866},{"type":52,"tag":992,"props":8039,"children":8040},{"style":1035},[8041],{"type":57,"value":8042},"Then re-run `bun run bootstrap` to confirm idempotent updates.",{"type":52,"tag":992,"props":8044,"children":8045},{"style":999},[8046],{"type":57,"value":1022},{"type":52,"tag":992,"props":8048,"children":8049},{"style":999},[8050],{"type":57,"value":1046},{"type":52,"tag":992,"props":8052,"children":8054},{"class":994,"line":8053},82,[8055,8060],{"type":52,"tag":992,"props":8056,"children":8057},{"style":2134},[8058],{"type":57,"value":8059},"    )",{"type":52,"tag":992,"props":8061,"children":8062},{"style":999},[8063],{"type":57,"value":2072},{"type":52,"tag":992,"props":8065,"children":8067},{"class":994,"line":8066},83,[8068,8073,8077],{"type":52,"tag":992,"props":8069,"children":8070},{"style":999},[8071],{"type":57,"value":8072},"  }",{"type":52,"tag":992,"props":8074,"children":8075},{"style":2025},[8076],{"type":57,"value":7474},{"type":52,"tag":992,"props":8078,"children":8079},{"style":999},[8080],{"type":57,"value":1174},{"type":52,"tag":992,"props":8082,"children":8084},{"class":994,"line":8083},84,[8085,8089,8093,8097],{"type":52,"tag":992,"props":8086,"children":8087},{"style":2041},[8088],{"type":57,"value":6270},{"type":52,"tag":992,"props":8090,"children":8091},{"style":999},[8092],{"type":57,"value":89},{"type":52,"tag":992,"props":8094,"children":8095},{"style":3230},[8096],{"type":57,"value":7168},{"type":52,"tag":992,"props":8098,"children":8099},{"style":2134},[8100],{"type":57,"value":3760},{"type":52,"tag":992,"props":8102,"children":8104},{"class":994,"line":8103},85,[8105,8110,8114,8119,8123,8127,8131,8136,8141,8145,8149,8153,8157,8162,8166],{"type":52,"tag":992,"props":8106,"children":8107},{"style":999},[8108],{"type":57,"value":8109},"      `",{"type":52,"tag":992,"props":8111,"children":8112},{"style":2041},[8113],{"type":57,"value":7866},{"type":52,"tag":992,"props":8115,"children":8116},{"style":1035},[8117],{"type":57,"value":8118},"All ",{"type":52,"tag":992,"props":8120,"children":8121},{"style":999},[8122],{"type":57,"value":3650},{"type":52,"tag":992,"props":8124,"children":8125},{"style":2041},[8126],{"type":57,"value":729},{"type":52,"tag":992,"props":8128,"children":8129},{"style":999},[8130],{"type":57,"value":89},{"type":52,"tag":992,"props":8132,"children":8133},{"style":2041},[8134],{"type":57,"value":8135},"length ",{"type":52,"tag":992,"props":8137,"children":8138},{"style":999},[8139],{"type":57,"value":8140},"*",{"type":52,"tag":992,"props":8142,"children":8143},{"style":2041},[8144],{"type":57,"value":5938},{"type":52,"tag":992,"props":8146,"children":8147},{"style":999},[8148],{"type":57,"value":89},{"type":52,"tag":992,"props":8150,"children":8151},{"style":2041},[8152],{"type":57,"value":7819},{"type":52,"tag":992,"props":8154,"children":8155},{"style":999},[8156],{"type":57,"value":3528},{"type":52,"tag":992,"props":8158,"children":8159},{"style":1035},[8160],{"type":57,"value":8161}," assistants updated in place.",{"type":52,"tag":992,"props":8163,"children":8164},{"style":999},[8165],{"type":57,"value":3538},{"type":52,"tag":992,"props":8167,"children":8168},{"style":999},[8169],{"type":57,"value":1046},{"type":52,"tag":992,"props":8171,"children":8173},{"class":994,"line":8172},86,[8174,8178],{"type":52,"tag":992,"props":8175,"children":8176},{"style":2134},[8177],{"type":57,"value":8059},{"type":52,"tag":992,"props":8179,"children":8180},{"style":999},[8181],{"type":57,"value":2072},{"type":52,"tag":992,"props":8183,"children":8185},{"class":994,"line":8184},87,[8186],{"type":52,"tag":992,"props":8187,"children":8188},{"style":999},[8189],{"type":57,"value":6363},{"type":52,"tag":992,"props":8191,"children":8193},{"class":994,"line":8192},88,[8194],{"type":52,"tag":992,"props":8195,"children":8196},{"style":999},[8197],{"type":57,"value":2618},{"type":52,"tag":992,"props":8199,"children":8201},{"class":994,"line":8200},89,[8202],{"type":52,"tag":992,"props":8203,"children":8204},{"emptyLinePlaceholder":1837},[8205],{"type":57,"value":1840},{"type":52,"tag":992,"props":8207,"children":8209},{"class":994,"line":8208},90,[8210,8215,8219,8223,8228,8232,8236,8240,8244,8248],{"type":52,"tag":992,"props":8211,"children":8212},{"style":3230},[8213],{"type":57,"value":8214},"main",{"type":52,"tag":992,"props":8216,"children":8217},{"style":2041},[8218],{"type":57,"value":3685},{"type":52,"tag":992,"props":8220,"children":8221},{"style":999},[8222],{"type":57,"value":89},{"type":52,"tag":992,"props":8224,"children":8225},{"style":3230},[8226],{"type":57,"value":8227},"catch",{"type":52,"tag":992,"props":8229,"children":8230},{"style":2041},[8231],{"type":57,"value":3237},{"type":52,"tag":992,"props":8233,"children":8234},{"style":999},[8235],{"type":57,"value":3237},{"type":52,"tag":992,"props":8237,"children":8238},{"style":2902},[8239],{"type":57,"value":7264},{"type":52,"tag":992,"props":8241,"children":8242},{"style":999},[8243],{"type":57,"value":857},{"type":52,"tag":992,"props":8245,"children":8246},{"style":1014},[8247],{"type":57,"value":3484},{"type":52,"tag":992,"props":8249,"children":8250},{"style":999},[8251],{"type":57,"value":1174},{"type":52,"tag":992,"props":8253,"children":8255},{"class":994,"line":8254},91,[8256,8261,8265,8269,8273,8277,8282,8286,8290,8294,8298],{"type":52,"tag":992,"props":8257,"children":8258},{"style":2041},[8259],{"type":57,"value":8260},"  console",{"type":52,"tag":992,"props":8262,"children":8263},{"style":999},[8264],{"type":57,"value":89},{"type":52,"tag":992,"props":8266,"children":8267},{"style":3230},[8268],{"type":57,"value":6279},{"type":52,"tag":992,"props":8270,"children":8271},{"style":2134},[8272],{"type":57,"value":3237},{"type":52,"tag":992,"props":8274,"children":8275},{"style":999},[8276],{"type":57,"value":1022},{"type":52,"tag":992,"props":8278,"children":8279},{"style":1035},[8280],{"type":57,"value":8281},"✗ Bootstrap failed:",{"type":52,"tag":992,"props":8283,"children":8284},{"style":999},[8285],{"type":57,"value":1022},{"type":52,"tag":992,"props":8287,"children":8288},{"style":999},[8289],{"type":57,"value":2368},{"type":52,"tag":992,"props":8291,"children":8292},{"style":2041},[8293],{"type":57,"value":7492},{"type":52,"tag":992,"props":8295,"children":8296},{"style":2134},[8297],{"type":57,"value":857},{"type":52,"tag":992,"props":8299,"children":8300},{"style":999},[8301],{"type":57,"value":2072},{"type":52,"tag":992,"props":8303,"children":8305},{"class":994,"line":8304},92,[8306,8311,8315,8319,8323,8327,8331],{"type":52,"tag":992,"props":8307,"children":8308},{"style":2041},[8309],{"type":57,"value":8310},"  process",{"type":52,"tag":992,"props":8312,"children":8313},{"style":999},[8314],{"type":57,"value":89},{"type":52,"tag":992,"props":8316,"children":8317},{"style":3230},[8318],{"type":57,"value":6338},{"type":52,"tag":992,"props":8320,"children":8321},{"style":2134},[8322],{"type":57,"value":3237},{"type":52,"tag":992,"props":8324,"children":8325},{"style":4850},[8326],{"type":57,"value":6347},{"type":52,"tag":992,"props":8328,"children":8329},{"style":2134},[8330],{"type":57,"value":857},{"type":52,"tag":992,"props":8332,"children":8333},{"style":999},[8334],{"type":57,"value":2072},{"type":52,"tag":992,"props":8336,"children":8338},{"class":994,"line":8337},93,[8339,8343,8347],{"type":52,"tag":992,"props":8340,"children":8341},{"style":999},[8342],{"type":57,"value":3528},{"type":52,"tag":992,"props":8344,"children":8345},{"style":2041},[8346],{"type":57,"value":857},{"type":52,"tag":992,"props":8348,"children":8349},{"style":999},[8350],{"type":57,"value":2072},{"type":52,"tag":91,"props":8352,"children":8354},{"id":8353},"rough_draftmd-template",[8355],{"type":57,"value":8356},"ROUGH_DRAFT.md template",{"type":52,"tag":60,"props":8358,"children":8359},{},[8360],{"type":57,"value":8361},"If the user has no rough draft yet, offer this skeleton (they fill in the angle-brackets and the skill scaffolds the project from it):",{"type":52,"tag":981,"props":8363,"children":8365},{"className":5336,"code":8364,"language":5338,"meta":986,"style":986},"# Rough draft — \u003Cproject name>\n\n## 1. \u003CFirst scenario name>\n\n**On the page**: \"\u003Cone verbatim opening line the agent will say>\"\n\n**What happens**: \u003COne paragraph: the questions the agent asks, the data it collects, what it does with edge cases, how it wraps up.>\n\n## 2. \u003CSecond scenario name>\n\n**Opening**: \"\u003Cone verbatim opening line>\"\n\n**What happens**: \u003COne paragraph.>\n",[8366],{"type":52,"tag":66,"props":8367,"children":8368},{"__ignoreMap":986},[8369,8381,8388,8400,8407,8428,8435,8455,8462,8474,8481,8502,8509],{"type":52,"tag":992,"props":8370,"children":8371},{"class":994,"line":995},[8372,8376],{"type":52,"tag":992,"props":8373,"children":8374},{"style":999},[8375],{"type":57,"value":5350},{"type":52,"tag":992,"props":8377,"children":8378},{"style":1185},[8379],{"type":57,"value":8380},"Rough draft — \u003Cproject name>\n",{"type":52,"tag":992,"props":8382,"children":8383},{"class":994,"line":1005},[8384],{"type":52,"tag":992,"props":8385,"children":8386},{"emptyLinePlaceholder":1837},[8387],{"type":57,"value":1840},{"type":52,"tag":992,"props":8389,"children":8390},{"class":994,"line":1049},[8391,8395],{"type":52,"tag":992,"props":8392,"children":8393},{"style":999},[8394],{"type":57,"value":5629},{"type":52,"tag":992,"props":8396,"children":8397},{"style":1185},[8398],{"type":57,"value":8399},"1. \u003CFirst scenario name>\n",{"type":52,"tag":992,"props":8401,"children":8402},{"class":994,"line":1087},[8403],{"type":52,"tag":992,"props":8404,"children":8405},{"emptyLinePlaceholder":1837},[8406],{"type":57,"value":1840},{"type":52,"tag":992,"props":8408,"children":8409},{"class":994,"line":1113},[8410,8414,8419,8423],{"type":52,"tag":992,"props":8411,"children":8412},{"style":5388},[8413],{"type":57,"value":5391},{"type":52,"tag":992,"props":8415,"children":8416},{"style":5394},[8417],{"type":57,"value":8418},"On the page",{"type":52,"tag":992,"props":8420,"children":8421},{"style":5388},[8422],{"type":57,"value":5391},{"type":52,"tag":992,"props":8424,"children":8425},{"style":2041},[8426],{"type":57,"value":8427},": \"\u003Cone verbatim opening line the agent will say>\"\n",{"type":52,"tag":992,"props":8429,"children":8430},{"class":994,"line":1151},[8431],{"type":52,"tag":992,"props":8432,"children":8433},{"emptyLinePlaceholder":1837},[8434],{"type":57,"value":1840},{"type":52,"tag":992,"props":8436,"children":8437},{"class":994,"line":30},[8438,8442,8446,8450],{"type":52,"tag":992,"props":8439,"children":8440},{"style":5388},[8441],{"type":57,"value":5391},{"type":52,"tag":992,"props":8443,"children":8444},{"style":5394},[8445],{"type":57,"value":5397},{"type":52,"tag":992,"props":8447,"children":8448},{"style":5388},[8449],{"type":57,"value":5391},{"type":52,"tag":992,"props":8451,"children":8452},{"style":2041},[8453],{"type":57,"value":8454},": \u003COne paragraph: the questions the agent asks, the data it collects, what it does with edge cases, how it wraps up.>\n",{"type":52,"tag":992,"props":8456,"children":8457},{"class":994,"line":1215},[8458],{"type":52,"tag":992,"props":8459,"children":8460},{"emptyLinePlaceholder":1837},[8461],{"type":57,"value":1840},{"type":52,"tag":992,"props":8463,"children":8464},{"class":994,"line":1249},[8465,8469],{"type":52,"tag":992,"props":8466,"children":8467},{"style":999},[8468],{"type":57,"value":5629},{"type":52,"tag":992,"props":8470,"children":8471},{"style":1185},[8472],{"type":57,"value":8473},"2. \u003CSecond scenario name>\n",{"type":52,"tag":992,"props":8475,"children":8476},{"class":994,"line":1258},[8477],{"type":52,"tag":992,"props":8478,"children":8479},{"emptyLinePlaceholder":1837},[8480],{"type":57,"value":1840},{"type":52,"tag":992,"props":8482,"children":8483},{"class":994,"line":1283},[8484,8488,8493,8497],{"type":52,"tag":992,"props":8485,"children":8486},{"style":5388},[8487],{"type":57,"value":5391},{"type":52,"tag":992,"props":8489,"children":8490},{"style":5394},[8491],{"type":57,"value":8492},"Opening",{"type":52,"tag":992,"props":8494,"children":8495},{"style":5388},[8496],{"type":57,"value":5391},{"type":52,"tag":992,"props":8498,"children":8499},{"style":2041},[8500],{"type":57,"value":8501},": \"\u003Cone verbatim opening line>\"\n",{"type":52,"tag":992,"props":8503,"children":8504},{"class":994,"line":1316},[8505],{"type":52,"tag":992,"props":8506,"children":8507},{"emptyLinePlaceholder":1837},[8508],{"type":57,"value":1840},{"type":52,"tag":992,"props":8510,"children":8511},{"class":994,"line":1324},[8512,8516,8520,8524],{"type":52,"tag":992,"props":8513,"children":8514},{"style":5388},[8515],{"type":57,"value":5391},{"type":52,"tag":992,"props":8517,"children":8518},{"style":5394},[8519],{"type":57,"value":5397},{"type":52,"tag":992,"props":8521,"children":8522},{"style":5388},[8523],{"type":57,"value":5391},{"type":52,"tag":992,"props":8525,"children":8526},{"style":2041},[8527],{"type":57,"value":8528},": \u003COne paragraph.>\n",{"type":52,"tag":60,"props":8530,"children":8531},{},[8532],{"type":57,"value":8533},"One scenario is fine. Three is fine too. The skill scales the bootstrap loop to whatever's in the rough draft.",{"type":52,"tag":91,"props":8535,"children":8537},{"id":8536},"adapting-the-defaults",[8538],{"type":57,"value":8539},"Adapting the defaults",{"type":52,"tag":60,"props":8541,"children":8542},{},[8543],{"type":57,"value":8544},"If the user asks for different defaults, change only the matching slot — never the surrounding shape:",{"type":52,"tag":109,"props":8546,"children":8547},{},[8548,8632,8650],{"type":52,"tag":113,"props":8549,"children":8550},{},[8551,8556,8558,8564,8565,8571,8573,8578,8580,8586,8588,8594,8595,8601,8603,8609,8611,8617,8619,8624,8626,8631],{"type":52,"tag":101,"props":8552,"children":8553},{},[8554],{"type":57,"value":8555},"Different languages",{"type":57,"value":8557},": add an entry to ",{"type":52,"tag":66,"props":8559,"children":8561},{"className":8560},[],[8562],{"type":57,"value":8563},"VOICE_BY_LANGUAGE",{"type":57,"value":640},{"type":52,"tag":66,"props":8566,"children":8568},{"className":8567},[],[8569],{"type":57,"value":8570},"TRANSCRIBER_BY_LANGUAGE",{"type":57,"value":8572},", extend the ",{"type":52,"tag":66,"props":8574,"children":8576},{"className":8575},[],[8577],{"type":57,"value":2363},{"type":57,"value":8579}," union in ",{"type":52,"tag":66,"props":8581,"children":8583},{"className":8582},[],[8584],{"type":57,"value":8585},"loadPrompt.ts",{"type":57,"value":8587},", add a ",{"type":52,"tag":66,"props":8589,"children":8591},{"className":8590},[],[8592],{"type":57,"value":8593},"prompts\u002Fshared\u002Fpreambles\u002F\u003Clang>.md",{"type":57,"value":8587},{"type":52,"tag":66,"props":8596,"children":8598},{"className":8597},[],[8599],{"type":57,"value":8600},"firstMessage.\u003Clang>",{"type":57,"value":8602}," per scenario, add the lang to ",{"type":52,"tag":66,"props":8604,"children":8606},{"className":8605},[],[8607],{"type":57,"value":8608},"LANGUAGES",{"type":57,"value":8610}," in ",{"type":52,"tag":66,"props":8612,"children":8614},{"className":8613},[],[8615],{"type":57,"value":8616},"bootstrap.ts",{"type":57,"value":8618},", and add the matching ",{"type":52,"tag":66,"props":8620,"children":8622},{"className":8621},[],[8623],{"type":57,"value":617},{"type":57,"value":8625}," slots to ",{"type":52,"tag":66,"props":8627,"children":8629},{"className":8628},[],[8630],{"type":57,"value":159},{"type":57,"value":89},{"type":52,"tag":113,"props":8633,"children":8634},{},[8635,8640,8642,8648],{"type":52,"tag":101,"props":8636,"children":8637},{},[8638],{"type":57,"value":8639},"Different model \u002F temperature",{"type":57,"value":8641},": change ",{"type":52,"tag":66,"props":8643,"children":8645},{"className":8644},[],[8646],{"type":57,"value":8647},"buildAssistant.ts",{"type":57,"value":8649}," only.",{"type":52,"tag":113,"props":8651,"children":8652},{},[8653,8658,8660,8666,8667,8672,8673,8679],{"type":52,"tag":101,"props":8654,"children":8655},{},[8656],{"type":57,"value":8657},"Different voice provider",{"type":57,"value":8659},": update ",{"type":52,"tag":66,"props":8661,"children":8663},{"className":8662},[],[8664],{"type":57,"value":8665},"VoiceConfig",{"type":57,"value":368},{"type":52,"tag":66,"props":8668,"children":8670},{"className":8669},[],[8671],{"type":57,"value":8563},{"type":57,"value":8610},{"type":52,"tag":66,"props":8674,"children":8676},{"className":8675},[],[8677],{"type":57,"value":8678},"languages.ts",{"type":57,"value":8649},{"type":52,"tag":91,"props":8681,"children":8683},{"id":8682},"verification",[8684],{"type":57,"value":8685},"Verification",{"type":52,"tag":60,"props":8687,"children":8688},{},[8689],{"type":57,"value":8690},"After generating files, tell the user to run:",{"type":52,"tag":981,"props":8692,"children":8696},{"className":8693,"code":8694,"language":8695,"meta":986,"style":986},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","bun install\nbun run typecheck              # validates locally; creates nothing in Vapi\ncp .env.example .env.local     # add VAPI_API_KEY from dashboard.vapi.ai\u002Forg\u002Fapi-keys\nbun run bootstrap              # creates one assistant per (scenario × language)\n# paste the printed VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>=\u003Cid> lines into .env.local\nbun run bootstrap              # second run prints \"Updated ...\" for every tuple\n","bash",[8697],{"type":52,"tag":66,"props":8698,"children":8699},{"__ignoreMap":986},[8700,8712,8734,8757,8778,8786],{"type":52,"tag":992,"props":8701,"children":8702},{"class":994,"line":995},[8703,8707],{"type":52,"tag":992,"props":8704,"children":8705},{"style":1185},[8706],{"type":57,"value":1731},{"type":52,"tag":992,"props":8708,"children":8709},{"style":1035},[8710],{"type":57,"value":8711}," install\n",{"type":52,"tag":992,"props":8713,"children":8714},{"class":994,"line":1005},[8715,8719,8724,8729],{"type":52,"tag":992,"props":8716,"children":8717},{"style":1185},[8718],{"type":57,"value":1731},{"type":52,"tag":992,"props":8720,"children":8721},{"style":1035},[8722],{"type":57,"value":8723}," run",{"type":52,"tag":992,"props":8725,"children":8726},{"style":1035},[8727],{"type":57,"value":8728}," typecheck",{"type":52,"tag":992,"props":8730,"children":8731},{"style":1992},[8732],{"type":57,"value":8733},"              # validates locally; creates nothing in Vapi\n",{"type":52,"tag":992,"props":8735,"children":8736},{"class":994,"line":1049},[8737,8742,8747,8752],{"type":52,"tag":992,"props":8738,"children":8739},{"style":1185},[8740],{"type":57,"value":8741},"cp",{"type":52,"tag":992,"props":8743,"children":8744},{"style":1035},[8745],{"type":57,"value":8746}," .env.example",{"type":52,"tag":992,"props":8748,"children":8749},{"style":1035},[8750],{"type":57,"value":8751}," .env.local",{"type":52,"tag":992,"props":8753,"children":8754},{"style":1992},[8755],{"type":57,"value":8756},"     # add VAPI_API_KEY from dashboard.vapi.ai\u002Forg\u002Fapi-keys\n",{"type":52,"tag":992,"props":8758,"children":8759},{"class":994,"line":1087},[8760,8764,8768,8773],{"type":52,"tag":992,"props":8761,"children":8762},{"style":1185},[8763],{"type":57,"value":1731},{"type":52,"tag":992,"props":8765,"children":8766},{"style":1035},[8767],{"type":57,"value":8723},{"type":52,"tag":992,"props":8769,"children":8770},{"style":1035},[8771],{"type":57,"value":8772}," bootstrap",{"type":52,"tag":992,"props":8774,"children":8775},{"style":1992},[8776],{"type":57,"value":8777},"              # creates one assistant per (scenario × language)\n",{"type":52,"tag":992,"props":8779,"children":8780},{"class":994,"line":1113},[8781],{"type":52,"tag":992,"props":8782,"children":8783},{"style":1992},[8784],{"type":57,"value":8785},"# paste the printed VAPI_ASSISTANT_\u003CSCENARIO>_\u003CLANG>=\u003Cid> lines into .env.local\n",{"type":52,"tag":992,"props":8787,"children":8788},{"class":994,"line":1151},[8789,8793,8797,8801],{"type":52,"tag":992,"props":8790,"children":8791},{"style":1185},[8792],{"type":57,"value":1731},{"type":52,"tag":992,"props":8794,"children":8795},{"style":1035},[8796],{"type":57,"value":8723},{"type":52,"tag":992,"props":8798,"children":8799},{"style":1035},[8800],{"type":57,"value":8772},{"type":52,"tag":992,"props":8802,"children":8803},{"style":1992},[8804],{"type":57,"value":8805},"              # second run prints \"Updated ...\" for every tuple\n",{"type":52,"tag":60,"props":8807,"children":8808},{},[8809,8811,8819],{"type":57,"value":8810},"For N scenarios × 2 languages they should see N × 2 assistants in ",{"type":52,"tag":8812,"props":8813,"children":8817},"a",{"href":8814,"rel":8815},"https:\u002F\u002Fdashboard.vapi.ai",[8816],"nofollow",[8818],{"type":57,"value":87},{"type":57,"value":8820},". Each one has a green \"Talk to assistant\" button — the agents will walk the flow but are still rough (no failure rules, no capture tools yet). That's expected; later prompts harden them.",{"type":52,"tag":8822,"props":8823,"children":8824},"style",{},[8825],{"type":57,"value":8826},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":8828,"total":1249},[8829,8841,8856,8870,8882,8895,8909],{"slug":8830,"name":8830,"fn":8831,"description":8832,"org":8833,"tags":8834,"stars":26,"repoUrl":27,"updatedAt":8840},"create-assistant","create Vapi voice AI assistants","Create Vapi voice AI assistant payloads or assistants through the Vapi API. Use when building phone or web call agents, generating assistant JSON, choosing safe default model\u002Fvoice\u002Ftranscriber settings, attaching existing Vapi tool IDs, adding assistant hooks, configuring HIPAA\u002Fcompliance only when explicitly requested, or fixing Vapi assistant API validation errors.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8835,8836,8839],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},"API Development","api-development",{"name":24,"slug":25,"type":16},"2026-07-20T05:57:28.680409",{"slug":8842,"name":8842,"fn":8843,"description":8844,"org":8845,"tags":8846,"stars":26,"repoUrl":27,"updatedAt":8855},"create-call","create automated phone calls with Vapi","Create outbound phone calls, web calls, and batch calls using the Vapi API. Use when making automated calls, testing voice assistants, scheduling call campaigns, or initiating conversations programmatically.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8847,8848,8851,8854],{"name":18,"slug":19,"type":16},{"name":8849,"slug":8850,"type":16},"Automation","automation",{"name":8852,"slug":8853,"type":16},"Speech","speech",{"name":24,"slug":25,"type":16},"2026-07-20T05:57:32.68652",{"slug":8857,"name":8857,"fn":8858,"description":8859,"org":8860,"tags":8861,"stars":26,"repoUrl":27,"updatedAt":8869},"create-phone-number","manage Vapi phone numbers","Set up and manage phone numbers in Vapi for inbound and outbound voice AI calls. Use when importing Twilio, Vonage, or Telnyx numbers, buying Vapi numbers, or configuring phone numbers for assistants.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8862,8865,8868],{"name":8863,"slug":8864,"type":16},"Operations","operations",{"name":8866,"slug":8867,"type":16},"Twilio","twilio",{"name":24,"slug":25,"type":16},"2026-07-20T05:57:29.699227",{"slug":8871,"name":8871,"fn":8872,"description":8873,"org":8874,"tags":8875,"stars":26,"repoUrl":27,"updatedAt":8881},"create-squad","create multi-assistant voice agent squads","Create multi-assistant squads in Vapi with handoffs between specialized voice agents. Use when building complex voice workflows that need multiple assistants with different roles, like triage-to-booking or sales-to-support handoffs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8876,8877,8880],{"name":18,"slug":19,"type":16},{"name":8878,"slug":8879,"type":16},"Multi-Agent","multi-agent",{"name":24,"slug":25,"type":16},"2026-07-20T05:57:30.690452",{"slug":8883,"name":8883,"fn":8884,"description":8885,"org":8886,"tags":8887,"stars":26,"repoUrl":27,"updatedAt":8894},"create-tool","create custom tools for Vapi assistants","Create custom tools for Vapi voice assistants including function tools, API request tools, transfer call tools, end call tools, and integrations with Google Calendar, Sheets, Slack, and more. Use when adding capabilities to voice agents, building tool servers, or integrating external APIs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8888,8889,8890,8891],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8892,"slug":8893,"type":16},"Integrations","integrations","2026-07-20T05:57:27.69122",{"slug":8896,"name":8896,"fn":8897,"description":8898,"org":8899,"tags":8900,"stars":26,"repoUrl":27,"updatedAt":8908},"setup-api-key","configure Vapi API authentication","Guide users through obtaining and configuring a Vapi API key. Use when the user needs to set up Vapi, when API calls fail due to missing keys, or when the user mentions needing access to Vapi's voice AI platform.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8901,8902,8905],{"name":8837,"slug":8838,"type":16},{"name":8903,"slug":8904,"type":16},"Auth","auth",{"name":8906,"slug":8907,"type":16},"Configuration","configuration","2026-07-20T05:57:25.717229",{"slug":8910,"name":8910,"fn":8911,"description":8912,"org":8913,"tags":8914,"stars":26,"repoUrl":27,"updatedAt":8921},"setup-webhook","configure Vapi webhooks for call events","Configure Vapi server URLs and webhooks to receive real-time call events, transcripts, tool calls, and end-of-call reports. Use when setting up webhook endpoints, building tool servers, or integrating Vapi events into your application.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8915,8916,8917,8918],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8919,"slug":8920,"type":16},"Webhooks","webhooks","2026-07-20T05:57:31.703006",{"items":8923,"total":1258},[8924,8938,8944,8951,8957,8963,8970,8976,8983,8990],{"slug":8,"name":8,"fn":8925,"description":8926,"org":8927,"tags":8928,"stars":7275,"repoUrl":8936,"updatedAt":8937},"build AI voice assistants with Vapi","Build AI voice assistants and phone agents with Vapi. Use this skill when users want to create voice agents, phone bots, IVR systems, outbound calling campaigns, or any voice-based AI application.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8929,8930,8931,8932,8935],{"name":18,"slug":19,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8852,"slug":8853,"type":16},{"name":8933,"slug":8934,"type":16},"Text-to-Speech","text-to-speech",{"name":24,"slug":25,"type":16},"https:\u002F\u002Fgithub.com\u002FVapiAI\u002Fmcp-server","2026-07-17T06:06:13.535114",{"slug":8830,"name":8830,"fn":8831,"description":8832,"org":8939,"tags":8940,"stars":26,"repoUrl":27,"updatedAt":8840},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8941,8942,8943],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},{"name":24,"slug":25,"type":16},{"slug":8842,"name":8842,"fn":8843,"description":8844,"org":8945,"tags":8946,"stars":26,"repoUrl":27,"updatedAt":8855},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8947,8948,8949,8950],{"name":18,"slug":19,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8852,"slug":8853,"type":16},{"name":24,"slug":25,"type":16},{"slug":8857,"name":8857,"fn":8858,"description":8859,"org":8952,"tags":8953,"stars":26,"repoUrl":27,"updatedAt":8869},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8954,8955,8956],{"name":8863,"slug":8864,"type":16},{"name":8866,"slug":8867,"type":16},{"name":24,"slug":25,"type":16},{"slug":8871,"name":8871,"fn":8872,"description":8873,"org":8958,"tags":8959,"stars":26,"repoUrl":27,"updatedAt":8881},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8960,8961,8962],{"name":18,"slug":19,"type":16},{"name":8878,"slug":8879,"type":16},{"name":24,"slug":25,"type":16},{"slug":8883,"name":8883,"fn":8884,"description":8885,"org":8964,"tags":8965,"stars":26,"repoUrl":27,"updatedAt":8894},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8966,8967,8968,8969],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8892,"slug":8893,"type":16},{"slug":8896,"name":8896,"fn":8897,"description":8898,"org":8971,"tags":8972,"stars":26,"repoUrl":27,"updatedAt":8908},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8973,8974,8975],{"name":8837,"slug":8838,"type":16},{"name":8903,"slug":8904,"type":16},{"name":8906,"slug":8907,"type":16},{"slug":8910,"name":8910,"fn":8911,"description":8912,"org":8977,"tags":8978,"stars":26,"repoUrl":27,"updatedAt":8921},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8979,8980,8981,8982],{"name":18,"slug":19,"type":16},{"name":8837,"slug":8838,"type":16},{"name":8849,"slug":8850,"type":16},{"name":8919,"slug":8920,"type":16},{"slug":4,"name":4,"fn":5,"description":6,"org":8984,"tags":8985,"stars":26,"repoUrl":27,"updatedAt":28},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8986,8987,8988,8989],{"name":18,"slug":19,"type":16},{"name":21,"slug":22,"type":16},{"name":14,"slug":15,"type":16},{"name":24,"slug":25,"type":16},{"slug":8991,"name":8991,"fn":8992,"description":8993,"org":8994,"tags":8995,"stars":26,"repoUrl":27,"updatedAt":9002},"vapi-prompt-builder","design and audit Vapi voice agent prompts","Create, improve, or audit Vapi voice agent and Squad system prompts for production phone and web based voice agents. Use when the user wants help designing a Vapi assistant prompt, multi-assistant Squad prompt set, refining an existing prompt, creating prompt sections, building an intake or handoff workflow, improving tool-use instructions, adding guardrails, or optimizing voice-agent behavior for brevity, turn-taking, error handling, caller data collection, escalation, handoffs, and spoken formatting.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[8996,8997,9000,9001],{"name":18,"slug":19,"type":16},{"name":8998,"slug":8999,"type":16},"Prompt Engineering","prompt-engineering",{"name":8852,"slug":8853,"type":16},{"name":24,"slug":25,"type":16},"2026-07-17T06:08:21.647767"]