[{"data":1,"prerenderedAt":2937},["ShallowReactive",2],{"navigation_docs":3,"-use-cases-ai-sdk-usage":443,"-use-cases-ai-sdk-usage-surround":2932},[4,30,80,249,357,412],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Start","\u002Fstart","1.start",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fstart\u002Fintroduction","1.start\u002F1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Why start with evlog","\u002Fstart\u002Fwhy-evlog","1.start\u002F2.why-evlog","i-lucide-rocket",{"title":20,"path":21,"stem":22,"icon":23},"Installation","\u002Fstart\u002Finstallation","1.start\u002F3.installation","i-lucide-download",{"title":25,"path":26,"stem":27,"icon":28},"Quick Start","\u002Fstart\u002Fquick-start","1.start\u002F4.quick-start","i-lucide-zap",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Learn","\u002Flearn","2.learn",[35,40,45,50,55,60,65,70,75],{"title":36,"path":37,"stem":38,"icon":39},"Overview","\u002Flearn\u002Foverview","2.learn\u002F0.overview","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Simple Logging","\u002Flearn\u002Fsimple-logging","2.learn\u002F1.simple-logging","i-lucide-terminal",{"title":46,"path":47,"stem":48,"icon":49},"Wide Events","\u002Flearn\u002Fwide-events","2.learn\u002F2.wide-events","i-lucide-layers",{"title":51,"path":52,"stem":53,"icon":54},"Structured Errors","\u002Flearn\u002Fstructured-errors","2.learn\u002F3.structured-errors","i-lucide-shield-alert",{"title":56,"path":57,"stem":58,"icon":59},"Lifecycle","\u002Flearn\u002Flifecycle","2.learn\u002F4.lifecycle","i-lucide-arrow-right-left",{"title":61,"path":62,"stem":63,"icon":64},"Sampling","\u002Flearn\u002Fsampling","2.learn\u002F5.sampling","i-lucide-filter",{"title":66,"path":67,"stem":68,"icon":69},"Auto-Redaction","\u002Flearn\u002Fredaction","2.learn\u002F6.redaction","i-lucide-eye-off",{"title":71,"path":72,"stem":73,"icon":74},"Typed Fields","\u002Flearn\u002Ftyped-fields","2.learn\u002F7.typed-fields","i-simple-icons-typescript",{"title":76,"path":77,"stem":78,"icon":79},"Catalogs","\u002Flearn\u002Fcatalogs","2.learn\u002F8.catalogs","i-lucide-book-open",{"title":81,"path":82,"stem":83,"children":84,"page":29},"Integrate","\u002Fintegrate","3.integrate",[85,89,157],{"title":36,"path":86,"stem":87,"icon":88},"\u002Fintegrate\u002Foverview","3.integrate\u002F0.overview","i-lucide-plug",{"title":90,"path":91,"stem":92,"children":93,"page":29},"Adapters","\u002Fintegrate\u002Fadapters","3.integrate\u002Fadapters",[94,97,137],{"title":36,"path":95,"stem":96,"icon":39},"\u002Fintegrate\u002Fadapters\u002Foverview","3.integrate\u002Fadapters\u002F01.overview",{"title":98,"path":99,"stem":100,"children":101,"page":29},"Cloud","\u002Fintegrate\u002Fadapters\u002Fcloud","3.integrate\u002Fadapters\u002Fcloud",[102,107,112,117,122,127,132],{"title":103,"path":104,"stem":105,"icon":106},"Axiom","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Faxiom","3.integrate\u002Fadapters\u002Fcloud\u002F01.axiom","i-custom-axiom",{"title":108,"path":109,"stem":110,"icon":111},"OTLP","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fotlp","3.integrate\u002Fadapters\u002Fcloud\u002F02.otlp","i-simple-icons-opentelemetry",{"title":113,"path":114,"stem":115,"icon":116},"PostHog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog","3.integrate\u002Fadapters\u002Fcloud\u002F03.posthog","i-simple-icons-posthog",{"title":118,"path":119,"stem":120,"icon":121},"Sentry","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fsentry","3.integrate\u002Fadapters\u002Fcloud\u002F04.sentry","i-simple-icons-sentry",{"title":123,"path":124,"stem":125,"icon":126},"Better Stack","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fbetter-stack","3.integrate\u002Fadapters\u002Fcloud\u002F05.better-stack","i-simple-icons-betterstack",{"title":128,"path":129,"stem":130,"icon":131},"Datadog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fdatadog","3.integrate\u002Fadapters\u002Fcloud\u002F06.datadog","i-simple-icons-datadog",{"title":133,"path":134,"stem":135,"icon":136},"HyperDX","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fhyperdx","3.integrate\u002Fadapters\u002Fcloud\u002F07.hyperdx","i-custom-hyperdx",{"title":138,"path":139,"stem":140,"children":141,"page":29},"Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fself-hosted","3.integrate\u002Fadapters\u002Fself-hosted",[142,147,152],{"title":143,"path":144,"stem":145,"icon":146},"File System","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Ffs","3.integrate\u002Fadapters\u002Fself-hosted\u002F01.fs","i-lucide-hard-drive",{"title":148,"path":149,"stem":150,"icon":151},"NuxtHub","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fnuxthub","3.integrate\u002Fadapters\u002Fself-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":153,"path":154,"stem":155,"icon":156},"Memory","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fmemory","3.integrate\u002Fadapters\u002Fself-hosted\u002F03.memory","i-lucide-cpu",{"title":158,"path":159,"stem":160,"children":161,"page":29},"Frameworks","\u002Fintegrate\u002Fframeworks","3.integrate\u002Fframeworks",[162,166,171,176,181,186,191,196,201,206,211,216,221,226,230,235,240,245],{"title":36,"path":163,"stem":164,"icon":165},"\u002Fintegrate\u002Fframeworks\u002Foverview","3.integrate\u002Fframeworks\u002F00.overview","i-lucide-layout-grid",{"title":167,"path":168,"stem":169,"icon":170},"Nuxt","\u002Fintegrate\u002Fframeworks\u002Fnuxt","3.integrate\u002Fframeworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":172,"path":173,"stem":174,"icon":175},"Next.js","\u002Fintegrate\u002Fframeworks\u002Fnextjs","3.integrate\u002Fframeworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":177,"path":178,"stem":179,"icon":180},"SvelteKit","\u002Fintegrate\u002Fframeworks\u002Fsveltekit","3.integrate\u002Fframeworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":182,"path":183,"stem":184,"icon":185},"Nitro","\u002Fintegrate\u002Fframeworks\u002Fnitro","3.integrate\u002Fframeworks\u002F04.nitro","i-custom-nitro",{"title":187,"path":188,"stem":189,"icon":190},"TanStack Start","\u002Fintegrate\u002Fframeworks\u002Ftanstack-start","3.integrate\u002Fframeworks\u002F05.tanstack-start","i-custom-tanstack",{"title":192,"path":193,"stem":194,"icon":195},"NestJS","\u002Fintegrate\u002Fframeworks\u002Fnestjs","3.integrate\u002Fframeworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":197,"path":198,"stem":199,"icon":200},"Express","\u002Fintegrate\u002Fframeworks\u002Fexpress","3.integrate\u002Fframeworks\u002F07.express","i-simple-icons-express",{"title":202,"path":203,"stem":204,"icon":205},"Hono","\u002Fintegrate\u002Fframeworks\u002Fhono","3.integrate\u002Fframeworks\u002F08.hono","i-simple-icons-hono",{"title":207,"path":208,"stem":209,"icon":210},"Fastify","\u002Fintegrate\u002Fframeworks\u002Ffastify","3.integrate\u002Fframeworks\u002F09.fastify","i-simple-icons-fastify",{"title":212,"path":213,"stem":214,"icon":215},"Elysia","\u002Fintegrate\u002Fframeworks\u002Felysia","3.integrate\u002Fframeworks\u002F10.elysia","i-custom-elysia",{"title":217,"path":218,"stem":219,"icon":220},"React Router","\u002Fintegrate\u002Fframeworks\u002Freact-router","3.integrate\u002Fframeworks\u002F11.react-router","i-custom-reactrouter",{"title":222,"path":223,"stem":224,"icon":225},"Cloudflare Workers","\u002Fintegrate\u002Fframeworks\u002Fcloudflare-workers","3.integrate\u002Fframeworks\u002F12.cloudflare-workers","i-simple-icons-cloudflare",{"title":227,"path":228,"stem":229,"icon":74},"Standalone","\u002Fintegrate\u002Fframeworks\u002Fstandalone","3.integrate\u002Fframeworks\u002F13.standalone",{"title":231,"path":232,"stem":233,"icon":234},"Astro","\u002Fintegrate\u002Fframeworks\u002Fastro","3.integrate\u002Fframeworks\u002F14.astro","i-simple-icons-astro",{"title":236,"path":237,"stem":238,"icon":239},"oRPC","\u002Fintegrate\u002Fframeworks\u002Forpc","3.integrate\u002Fframeworks\u002F15.orpc","i-lucide-network",{"title":241,"path":242,"stem":243,"icon":244},"AWS Lambda","\u002Fintegrate\u002Fframeworks\u002Faws-lambda","3.integrate\u002Fframeworks\u002F16.aws-lambda","i-custom-lambda",{"title":246,"path":247,"stem":248,"icon":44},"CLI","\u002Fintegrate\u002Fframeworks\u002Fcli","3.integrate\u002Fframeworks\u002F17.cli",{"title":250,"path":251,"stem":252,"children":253,"page":29},"Use Cases","\u002Fuse-cases","4.use-cases",[254,258,263,292,320,352],{"title":36,"path":255,"stem":256,"icon":257},"\u002Fuse-cases\u002Foverview","4.use-cases\u002F0.overview","i-lucide-list-checks",{"title":259,"path":260,"stem":261,"icon":262},"Client Logging","\u002Fuse-cases\u002Fclient-logging","4.use-cases\u002F1.client-logging","i-lucide-monitor",{"title":264,"icon":265,"path":266,"stem":267,"children":268,"page":29},"AI SDK","i-simple-icons-vercel","\u002Fuse-cases\u002Fai-sdk","4.use-cases\u002F2.ai-sdk",[269,272,277,282,287],{"title":36,"path":270,"stem":271,"icon":39},"\u002Fuse-cases\u002Fai-sdk\u002Foverview","4.use-cases\u002F2.ai-sdk\u002F01.overview",{"title":273,"path":274,"stem":275,"icon":276},"Usage","\u002Fuse-cases\u002Fai-sdk\u002Fusage","4.use-cases\u002F2.ai-sdk\u002F02.usage","i-lucide-code",{"title":278,"path":279,"stem":280,"icon":281},"Options","\u002Fuse-cases\u002Fai-sdk\u002Foptions","4.use-cases\u002F2.ai-sdk\u002F03.options","i-lucide-sliders",{"title":283,"path":284,"stem":285,"icon":286},"Metadata","\u002Fuse-cases\u002Fai-sdk\u002Fmetadata","4.use-cases\u002F2.ai-sdk\u002F04.metadata","i-lucide-database",{"title":288,"path":289,"stem":290,"icon":291},"Telemetry","\u002Fuse-cases\u002Fai-sdk\u002Ftelemetry","4.use-cases\u002F2.ai-sdk\u002F05.telemetry","i-lucide-activity",{"title":293,"icon":294,"path":295,"stem":296,"children":297,"page":29},"Better Auth","i-simple-icons-betterauth","\u002Fuse-cases\u002Fbetter-auth","4.use-cases\u002F3.better-auth",[298,301,306,311,315],{"title":36,"path":299,"stem":300,"icon":39},"\u002Fuse-cases\u002Fbetter-auth\u002Foverview","4.use-cases\u002F3.better-auth\u002F01.overview",{"title":302,"path":303,"stem":304,"icon":305},"Identify User","\u002Fuse-cases\u002Fbetter-auth\u002Fidentify-user","4.use-cases\u002F3.better-auth\u002F02.identify-user","i-lucide-user-check",{"title":307,"path":308,"stem":309,"icon":310},"Middleware","\u002Fuse-cases\u002Fbetter-auth\u002Fmiddleware","4.use-cases\u002F3.better-auth\u002F03.middleware","i-lucide-shield",{"title":312,"path":313,"stem":314,"icon":262},"Client Sync","\u002Fuse-cases\u002Fbetter-auth\u002Fclient-sync","4.use-cases\u002F3.better-auth\u002F04.client-sync",{"title":316,"path":317,"stem":318,"icon":319},"Performance","\u002Fuse-cases\u002Fbetter-auth\u002Fperformance","4.use-cases\u002F3.better-auth\u002F05.performance","i-lucide-gauge",{"title":321,"icon":322,"path":323,"stem":324,"children":325,"page":29},"Audit Logs","i-lucide-shield-check","\u002Fuse-cases\u002Faudit","4.use-cases\u002F4.audit",[326,329,334,339,344,348],{"title":36,"path":327,"stem":328,"icon":39},"\u002Fuse-cases\u002Faudit\u002Foverview","4.use-cases\u002F4.audit\u002F01.overview",{"title":330,"path":331,"stem":332,"icon":333},"Schema","\u002Fuse-cases\u002Faudit\u002Fschema","4.use-cases\u002F4.audit\u002F02.schema","i-lucide-file-text",{"title":335,"path":336,"stem":337,"icon":338},"Recording","\u002Fuse-cases\u002Faudit\u002Frecording","4.use-cases\u002F4.audit\u002F03.recording","i-lucide-pen-line",{"title":340,"path":341,"stem":342,"icon":343},"Drains","\u002Fuse-cases\u002Faudit\u002Fpipeline","4.use-cases\u002F4.audit\u002F04.pipeline","i-lucide-link",{"title":345,"path":346,"stem":347,"icon":322},"Compliance","\u002Fuse-cases\u002Faudit\u002Fcompliance","4.use-cases\u002F4.audit\u002F05.compliance",{"title":349,"path":350,"stem":351,"icon":79},"Recipes","\u002Fuse-cases\u002Faudit\u002Frecipes","4.use-cases\u002F4.audit\u002F06.recipes",{"title":353,"path":354,"stem":355,"icon":356},"Enrichers","\u002Fuse-cases\u002Fenrichers","4.use-cases\u002F5.enrichers","i-lucide-sparkles",{"title":358,"path":359,"stem":360,"children":361,"page":29},"Extend","\u002Fextend","5.extend",[362,366,371,376,381,385,389,393,397,402,407],{"title":36,"path":363,"stem":364,"icon":365},"\u002Fextend\u002Foverview","5.extend\u002F0.overview","i-lucide-blocks",{"title":367,"path":368,"stem":369,"icon":370},"Stream","\u002Fextend\u002Fstream","5.extend\u002F1.stream","i-lucide-radio-tower",{"title":372,"path":373,"stem":374,"icon":375},"Custom framework","\u002Fextend\u002Fcustom-framework","5.extend\u002F10.custom-framework","i-lucide-puzzle",{"title":377,"path":378,"stem":379,"icon":380},"FS reader","\u002Fextend\u002Ffs-reader","5.extend\u002F2.fs-reader","i-lucide-folder-search",{"title":349,"path":382,"stem":383,"icon":384},"\u002Fextend\u002Fconsumer-recipes","5.extend\u002F3.consumer-recipes","i-lucide-chef-hat",{"title":386,"path":387,"stem":388,"icon":365},"Plugins","\u002Fextend\u002Fplugins","5.extend\u002F4.plugins",{"title":390,"path":391,"stem":392,"icon":356},"Custom enrichers","\u002Fextend\u002Fcustom-enrichers","5.extend\u002F5.custom-enrichers",{"title":394,"path":395,"stem":396,"icon":64},"Tail sampling","\u002Fextend\u002Ftail-sampling","5.extend\u002F6.tail-sampling",{"title":398,"path":399,"stem":400,"icon":401},"Identity headers","\u002Fextend\u002Fidentity-headers","5.extend\u002F7.identity-headers","i-lucide-fingerprint",{"title":403,"path":404,"stem":405,"icon":406},"Custom drains","\u002Fextend\u002Fcustom-drains","5.extend\u002F8.custom-drains","i-lucide-share-2",{"title":408,"path":409,"stem":410,"icon":411},"Drain pipeline","\u002Fextend\u002Fdrain-pipeline","5.extend\u002F9.drain-pipeline","i-lucide-workflow",{"title":413,"path":414,"stem":415,"children":416,"page":29},"Reference","\u002Freference","6.reference",[417,422,425,430,434,439],{"title":418,"path":419,"stem":420,"icon":421},"Configuration","\u002Freference\u002Fconfiguration","6.reference\u002F1.configuration","i-lucide-settings",{"title":316,"path":423,"stem":424,"icon":319},"\u002Freference\u002Fperformance","6.reference\u002F2.performance",{"title":426,"path":427,"stem":428,"icon":429},"Vite Plugin","\u002Freference\u002Fvite-plugin","6.reference\u002F3.vite-plugin","i-custom-vite",{"title":431,"path":432,"stem":433,"icon":322},"Best Practices","\u002Freference\u002Fbest-practices","6.reference\u002F4.best-practices",{"title":435,"path":436,"stem":437,"icon":438},"vs Other Loggers","\u002Freference\u002Fvs-other-loggers","6.reference\u002F5.vs-other-loggers","i-lucide-scale",{"title":440,"path":441,"stem":442,"icon":356},"Agent Skills","\u002Freference\u002Fagent-skills","6.reference\u002F6.agent-skills",{"id":444,"title":445,"body":446,"description":2921,"extension":2922,"links":2923,"meta":2928,"navigation":2929,"path":274,"seo":2930,"stem":275,"__hash__":2931},"docs\u002F4.use-cases\u002F2.ai-sdk\u002F02.usage.md","Usage Patterns",{"type":447,"value":448,"toc":2913},"minimark",[449,462,467,470,836,843,847,850,1046,1050,1053,1369,1372,1996,2007,2011,2018,2389,2396,2517,2521,2531,2840,2844,2850,2909],[450,451,452,453,457,458,461],"p",{},"Every pattern below uses the same ",[454,455,456],"code",{},"createAILogger(log)"," setup. Wrap the model with ",[454,459,460],{},"ai.wrap()"," and the middleware accumulates tokens, tools, and timing on the wide event automatically.",[463,464,466],"h2",{"id":465},"streamtext","streamText",[450,468,469],{},"The most common pattern — streaming chat with full observability:",[471,472,478],"pre",{"className":473,"code":474,"filename":475,"language":476,"meta":477,"style":477},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { streamText } from 'ai'\nimport { createAILogger } from 'evlog\u002Fai'\n\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const ai = createAILogger(log)\n  const { messages } = await readBody(event)\n\n  log.set({ action: 'chat', messagesCount: messages.length })\n\n  const result = streamText({\n    model: ai.wrap('anthropic\u002Fclaude-sonnet-4.6'),\n    messages,\n    onFinish: ({ text }) => {\n      saveConversation(text)\n    },\n  })\n\n  return result.toTextStreamResponse()\n})\n","server\u002Fapi\u002Fchat.post.ts","typescript","",[454,479,480,513,534,541,577,600,619,645,650,700,705,722,751,759,780,793,799,807,812,828],{"__ignoreMap":477},[481,482,485,489,493,497,500,503,506,510],"span",{"class":483,"line":484},"line",1,[481,486,488],{"class":487},"s7zQu","import",[481,490,492],{"class":491},"sMK4o"," {",[481,494,496],{"class":495},"sTEyZ"," streamText",[481,498,499],{"class":491}," }",[481,501,502],{"class":487}," from",[481,504,505],{"class":491}," '",[481,507,509],{"class":508},"sfazB","ai",[481,511,512],{"class":491},"'\n",[481,514,516,518,520,523,525,527,529,532],{"class":483,"line":515},2,[481,517,488],{"class":487},[481,519,492],{"class":491},[481,521,522],{"class":495}," createAILogger",[481,524,499],{"class":491},[481,526,502],{"class":487},[481,528,505],{"class":491},[481,530,531],{"class":508},"evlog\u002Fai",[481,533,512],{"class":491},[481,535,537],{"class":483,"line":536},3,[481,538,540],{"emptyLinePlaceholder":539},true,"\n",[481,542,544,547,550,554,557,561,564,568,571,574],{"class":483,"line":543},4,[481,545,546],{"class":487},"export",[481,548,549],{"class":487}," default",[481,551,553],{"class":552},"s2Zo4"," defineEventHandler",[481,555,556],{"class":495},"(",[481,558,560],{"class":559},"spNyl","async",[481,562,563],{"class":491}," (",[481,565,567],{"class":566},"sHdIc","event",[481,569,570],{"class":491},")",[481,572,573],{"class":559}," =>",[481,575,576],{"class":491}," {\n",[481,578,580,583,586,589,592,595,597],{"class":483,"line":579},5,[481,581,582],{"class":559},"  const",[481,584,585],{"class":495}," log",[481,587,588],{"class":491}," =",[481,590,591],{"class":552}," useLogger",[481,593,556],{"class":594},"swJcz",[481,596,567],{"class":495},[481,598,599],{"class":594},")\n",[481,601,603,605,608,610,612,614,617],{"class":483,"line":602},6,[481,604,582],{"class":559},[481,606,607],{"class":495}," ai",[481,609,588],{"class":491},[481,611,522],{"class":552},[481,613,556],{"class":594},[481,615,616],{"class":495},"log",[481,618,599],{"class":594},[481,620,622,624,626,629,631,633,636,639,641,643],{"class":483,"line":621},7,[481,623,582],{"class":559},[481,625,492],{"class":491},[481,627,628],{"class":495}," messages",[481,630,499],{"class":491},[481,632,588],{"class":491},[481,634,635],{"class":487}," await",[481,637,638],{"class":552}," readBody",[481,640,556],{"class":594},[481,642,567],{"class":495},[481,644,599],{"class":594},[481,646,648],{"class":483,"line":647},8,[481,649,540],{"emptyLinePlaceholder":539},[481,651,653,656,659,662,664,667,670,673,675,678,681,684,687,689,691,693,696,698],{"class":483,"line":652},9,[481,654,655],{"class":495},"  log",[481,657,658],{"class":491},".",[481,660,661],{"class":552},"set",[481,663,556],{"class":594},[481,665,666],{"class":491},"{",[481,668,669],{"class":594}," action",[481,671,672],{"class":491},":",[481,674,505],{"class":491},[481,676,677],{"class":508},"chat",[481,679,680],{"class":491},"'",[481,682,683],{"class":491},",",[481,685,686],{"class":594}," messagesCount",[481,688,672],{"class":491},[481,690,628],{"class":495},[481,692,658],{"class":491},[481,694,695],{"class":495},"length",[481,697,499],{"class":491},[481,699,599],{"class":594},[481,701,703],{"class":483,"line":702},10,[481,704,540],{"emptyLinePlaceholder":539},[481,706,708,710,713,715,717,719],{"class":483,"line":707},11,[481,709,582],{"class":559},[481,711,712],{"class":495}," result",[481,714,588],{"class":491},[481,716,496],{"class":552},[481,718,556],{"class":594},[481,720,721],{"class":491},"{\n",[481,723,725,728,730,732,734,737,739,741,744,746,748],{"class":483,"line":724},12,[481,726,727],{"class":594},"    model",[481,729,672],{"class":491},[481,731,607],{"class":495},[481,733,658],{"class":491},[481,735,736],{"class":552},"wrap",[481,738,556],{"class":594},[481,740,680],{"class":491},[481,742,743],{"class":508},"anthropic\u002Fclaude-sonnet-4.6",[481,745,680],{"class":491},[481,747,570],{"class":594},[481,749,750],{"class":491},",\n",[481,752,754,757],{"class":483,"line":753},13,[481,755,756],{"class":495},"    messages",[481,758,750],{"class":491},[481,760,762,765,767,770,773,776,778],{"class":483,"line":761},14,[481,763,764],{"class":552},"    onFinish",[481,766,672],{"class":491},[481,768,769],{"class":491}," ({",[481,771,772],{"class":566}," text",[481,774,775],{"class":491}," })",[481,777,573],{"class":559},[481,779,576],{"class":491},[481,781,783,786,788,791],{"class":483,"line":782},15,[481,784,785],{"class":552},"      saveConversation",[481,787,556],{"class":594},[481,789,790],{"class":495},"text",[481,792,599],{"class":594},[481,794,796],{"class":483,"line":795},16,[481,797,798],{"class":491},"    },\n",[481,800,802,805],{"class":483,"line":801},17,[481,803,804],{"class":491},"  }",[481,806,599],{"class":594},[481,808,810],{"class":483,"line":809},18,[481,811,540],{"emptyLinePlaceholder":539},[481,813,815,818,820,822,825],{"class":483,"line":814},19,[481,816,817],{"class":487},"  return",[481,819,712],{"class":495},[481,821,658],{"class":491},[481,823,824],{"class":552},"toTextStreamResponse",[481,826,827],{"class":594},"()\n",[481,829,831,834],{"class":483,"line":830},20,[481,832,833],{"class":491},"}",[481,835,599],{"class":495},[450,837,838,839,842],{},"The middleware never touches your ",[454,840,841],{},"onFinish"," callback — your code runs as usual.",[463,844,846],{"id":845},"generatetext","generateText",[450,848,849],{},"Synchronous generation. The middleware captures the result automatically:",[471,851,854],{"className":473,"code":852,"filename":853,"language":476,"meta":477,"style":477},"import { generateText } from 'ai'\nimport { createAILogger } from 'evlog\u002Fai'\n\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const ai = createAILogger(log)\n\n  const result = await generateText({\n    model: ai.wrap('anthropic\u002Fclaude-sonnet-4.6'),\n    prompt: 'Summarize this document',\n  })\n\n  return { text: result.text }\n})\n","server\u002Fapi\u002Fsummarize.post.ts",[454,855,856,875,893,897,919,935,951,955,971,995,1011,1017,1021,1040],{"__ignoreMap":477},[481,857,858,860,862,865,867,869,871,873],{"class":483,"line":484},[481,859,488],{"class":487},[481,861,492],{"class":491},[481,863,864],{"class":495}," generateText",[481,866,499],{"class":491},[481,868,502],{"class":487},[481,870,505],{"class":491},[481,872,509],{"class":508},[481,874,512],{"class":491},[481,876,877,879,881,883,885,887,889,891],{"class":483,"line":515},[481,878,488],{"class":487},[481,880,492],{"class":491},[481,882,522],{"class":495},[481,884,499],{"class":491},[481,886,502],{"class":487},[481,888,505],{"class":491},[481,890,531],{"class":508},[481,892,512],{"class":491},[481,894,895],{"class":483,"line":536},[481,896,540],{"emptyLinePlaceholder":539},[481,898,899,901,903,905,907,909,911,913,915,917],{"class":483,"line":543},[481,900,546],{"class":487},[481,902,549],{"class":487},[481,904,553],{"class":552},[481,906,556],{"class":495},[481,908,560],{"class":559},[481,910,563],{"class":491},[481,912,567],{"class":566},[481,914,570],{"class":491},[481,916,573],{"class":559},[481,918,576],{"class":491},[481,920,921,923,925,927,929,931,933],{"class":483,"line":579},[481,922,582],{"class":559},[481,924,585],{"class":495},[481,926,588],{"class":491},[481,928,591],{"class":552},[481,930,556],{"class":594},[481,932,567],{"class":495},[481,934,599],{"class":594},[481,936,937,939,941,943,945,947,949],{"class":483,"line":602},[481,938,582],{"class":559},[481,940,607],{"class":495},[481,942,588],{"class":491},[481,944,522],{"class":552},[481,946,556],{"class":594},[481,948,616],{"class":495},[481,950,599],{"class":594},[481,952,953],{"class":483,"line":621},[481,954,540],{"emptyLinePlaceholder":539},[481,956,957,959,961,963,965,967,969],{"class":483,"line":647},[481,958,582],{"class":559},[481,960,712],{"class":495},[481,962,588],{"class":491},[481,964,635],{"class":487},[481,966,864],{"class":552},[481,968,556],{"class":594},[481,970,721],{"class":491},[481,972,973,975,977,979,981,983,985,987,989,991,993],{"class":483,"line":652},[481,974,727],{"class":594},[481,976,672],{"class":491},[481,978,607],{"class":495},[481,980,658],{"class":491},[481,982,736],{"class":552},[481,984,556],{"class":594},[481,986,680],{"class":491},[481,988,743],{"class":508},[481,990,680],{"class":491},[481,992,570],{"class":594},[481,994,750],{"class":491},[481,996,997,1000,1002,1004,1007,1009],{"class":483,"line":702},[481,998,999],{"class":594},"    prompt",[481,1001,672],{"class":491},[481,1003,505],{"class":491},[481,1005,1006],{"class":508},"Summarize this document",[481,1008,680],{"class":491},[481,1010,750],{"class":491},[481,1012,1013,1015],{"class":483,"line":707},[481,1014,804],{"class":491},[481,1016,599],{"class":594},[481,1018,1019],{"class":483,"line":724},[481,1020,540],{"emptyLinePlaceholder":539},[481,1022,1023,1025,1027,1029,1031,1033,1035,1037],{"class":483,"line":753},[481,1024,817],{"class":487},[481,1026,492],{"class":491},[481,1028,772],{"class":594},[481,1030,672],{"class":491},[481,1032,712],{"class":495},[481,1034,658],{"class":491},[481,1036,790],{"class":495},[481,1038,1039],{"class":491}," }\n",[481,1041,1042,1044],{"class":483,"line":761},[481,1043,833],{"class":491},[481,1045,599],{"class":495},[463,1047,1049],{"id":1048},"multi-step-agents","Multi-step Agents",[450,1051,1052],{},"The middleware fires for each step automatically. Steps, tool calls, and tokens are accumulated across the agent loop:",[471,1054,1057],{"className":473,"code":1055,"filename":1056,"language":476,"meta":477,"style":477},"import { ToolLoopAgent, createAgentUIStreamResponse, stepCountIs } from 'ai'\nimport { useLogger } from 'evlog'\nimport { createAILogger } from 'evlog\u002Fai'\n\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const { messages } = await readBody(event)\n  const ai = createAILogger(log, {\n    toolInputs: { maxLength: 500 },\n  })\n\n  const agent = new ToolLoopAgent({\n    model: ai.wrap('anthropic\u002Fclaude-sonnet-4.6'),\n    tools: { searchWeb, queryDatabase },\n    stopWhen: stepCountIs(5),\n  })\n\n  return createAgentUIStreamResponse({\n    agent,\n    uiMessages: messages,\n  })\n})\n","server\u002Fapi\u002Fagent.post.ts",[454,1058,1059,1088,1107,1125,1129,1151,1167,1189,1207,1228,1234,1238,1256,1280,1299,1317,1323,1327,1337,1344,1355,1362],{"__ignoreMap":477},[481,1060,1061,1063,1065,1068,1070,1073,1075,1078,1080,1082,1084,1086],{"class":483,"line":484},[481,1062,488],{"class":487},[481,1064,492],{"class":491},[481,1066,1067],{"class":495}," ToolLoopAgent",[481,1069,683],{"class":491},[481,1071,1072],{"class":495}," createAgentUIStreamResponse",[481,1074,683],{"class":491},[481,1076,1077],{"class":495}," stepCountIs",[481,1079,499],{"class":491},[481,1081,502],{"class":487},[481,1083,505],{"class":491},[481,1085,509],{"class":508},[481,1087,512],{"class":491},[481,1089,1090,1092,1094,1096,1098,1100,1102,1105],{"class":483,"line":515},[481,1091,488],{"class":487},[481,1093,492],{"class":491},[481,1095,591],{"class":495},[481,1097,499],{"class":491},[481,1099,502],{"class":487},[481,1101,505],{"class":491},[481,1103,1104],{"class":508},"evlog",[481,1106,512],{"class":491},[481,1108,1109,1111,1113,1115,1117,1119,1121,1123],{"class":483,"line":536},[481,1110,488],{"class":487},[481,1112,492],{"class":491},[481,1114,522],{"class":495},[481,1116,499],{"class":491},[481,1118,502],{"class":487},[481,1120,505],{"class":491},[481,1122,531],{"class":508},[481,1124,512],{"class":491},[481,1126,1127],{"class":483,"line":543},[481,1128,540],{"emptyLinePlaceholder":539},[481,1130,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149],{"class":483,"line":579},[481,1132,546],{"class":487},[481,1134,549],{"class":487},[481,1136,553],{"class":552},[481,1138,556],{"class":495},[481,1140,560],{"class":559},[481,1142,563],{"class":491},[481,1144,567],{"class":566},[481,1146,570],{"class":491},[481,1148,573],{"class":559},[481,1150,576],{"class":491},[481,1152,1153,1155,1157,1159,1161,1163,1165],{"class":483,"line":602},[481,1154,582],{"class":559},[481,1156,585],{"class":495},[481,1158,588],{"class":491},[481,1160,591],{"class":552},[481,1162,556],{"class":594},[481,1164,567],{"class":495},[481,1166,599],{"class":594},[481,1168,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187],{"class":483,"line":621},[481,1170,582],{"class":559},[481,1172,492],{"class":491},[481,1174,628],{"class":495},[481,1176,499],{"class":491},[481,1178,588],{"class":491},[481,1180,635],{"class":487},[481,1182,638],{"class":552},[481,1184,556],{"class":594},[481,1186,567],{"class":495},[481,1188,599],{"class":594},[481,1190,1191,1193,1195,1197,1199,1201,1203,1205],{"class":483,"line":647},[481,1192,582],{"class":559},[481,1194,607],{"class":495},[481,1196,588],{"class":491},[481,1198,522],{"class":552},[481,1200,556],{"class":594},[481,1202,616],{"class":495},[481,1204,683],{"class":491},[481,1206,576],{"class":491},[481,1208,1209,1212,1214,1216,1219,1221,1225],{"class":483,"line":652},[481,1210,1211],{"class":594},"    toolInputs",[481,1213,672],{"class":491},[481,1215,492],{"class":491},[481,1217,1218],{"class":594}," maxLength",[481,1220,672],{"class":491},[481,1222,1224],{"class":1223},"sbssI"," 500",[481,1226,1227],{"class":491}," },\n",[481,1229,1230,1232],{"class":483,"line":702},[481,1231,804],{"class":491},[481,1233,599],{"class":594},[481,1235,1236],{"class":483,"line":707},[481,1237,540],{"emptyLinePlaceholder":539},[481,1239,1240,1242,1245,1247,1250,1252,1254],{"class":483,"line":724},[481,1241,582],{"class":559},[481,1243,1244],{"class":495}," agent",[481,1246,588],{"class":491},[481,1248,1249],{"class":491}," new",[481,1251,1067],{"class":552},[481,1253,556],{"class":594},[481,1255,721],{"class":491},[481,1257,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278],{"class":483,"line":753},[481,1259,727],{"class":594},[481,1261,672],{"class":491},[481,1263,607],{"class":495},[481,1265,658],{"class":491},[481,1267,736],{"class":552},[481,1269,556],{"class":594},[481,1271,680],{"class":491},[481,1273,743],{"class":508},[481,1275,680],{"class":491},[481,1277,570],{"class":594},[481,1279,750],{"class":491},[481,1281,1282,1285,1287,1289,1292,1294,1297],{"class":483,"line":761},[481,1283,1284],{"class":594},"    tools",[481,1286,672],{"class":491},[481,1288,492],{"class":491},[481,1290,1291],{"class":495}," searchWeb",[481,1293,683],{"class":491},[481,1295,1296],{"class":495}," queryDatabase",[481,1298,1227],{"class":491},[481,1300,1301,1304,1306,1308,1310,1313,1315],{"class":483,"line":782},[481,1302,1303],{"class":594},"    stopWhen",[481,1305,672],{"class":491},[481,1307,1077],{"class":552},[481,1309,556],{"class":594},[481,1311,1312],{"class":1223},"5",[481,1314,570],{"class":594},[481,1316,750],{"class":491},[481,1318,1319,1321],{"class":483,"line":795},[481,1320,804],{"class":491},[481,1322,599],{"class":594},[481,1324,1325],{"class":483,"line":801},[481,1326,540],{"emptyLinePlaceholder":539},[481,1328,1329,1331,1333,1335],{"class":483,"line":809},[481,1330,817],{"class":487},[481,1332,1072],{"class":552},[481,1334,556],{"class":594},[481,1336,721],{"class":491},[481,1338,1339,1342],{"class":483,"line":814},[481,1340,1341],{"class":495},"    agent",[481,1343,750],{"class":491},[481,1345,1346,1349,1351,1353],{"class":483,"line":830},[481,1347,1348],{"class":594},"    uiMessages",[481,1350,672],{"class":491},[481,1352,628],{"class":495},[481,1354,750],{"class":491},[481,1356,1358,1360],{"class":483,"line":1357},21,[481,1359,804],{"class":491},[481,1361,599],{"class":594},[481,1363,1365,1367],{"class":483,"line":1364},22,[481,1366,833],{"class":491},[481,1368,599],{"class":495},[450,1370,1371],{},"Wide event after a 3-step agent run:",[471,1373,1378],{"className":1374,"code":1375,"filename":1376,"language":1377,"meta":477,"style":477},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"ai\": {\n    \"calls\": 3,\n    \"steps\": 3,\n    \"model\": \"claude-sonnet-4.6\",\n    \"provider\": \"anthropic\",\n    \"inputTokens\": 4500,\n    \"outputTokens\": 1200,\n    \"totalTokens\": 5700,\n    \"finishReason\": \"stop\",\n    \"toolCalls\": [\n      { \"name\": \"searchWeb\", \"input\": { \"query\": \"TypeScript 6.0 features\" } },\n      { \"name\": \"queryDatabase\", \"input\": { \"sql\": \"SELECT * FROM docs WHERE topic = 'typescript'\" } },\n      { \"name\": \"searchWeb\", \"input\": { \"query\": \"TypeScript 6.0 release date\" } }\n    ],\n    \"responseId\": \"msg_01XFDUDYJgAACzvnptvVoYEL\",\n    \"stepsUsage\": [\n      { \"model\": \"claude-sonnet-4.6\", \"inputTokens\": 1200, \"outputTokens\": 300, \"toolCalls\": [\"searchWeb\"] },\n      { \"model\": \"claude-sonnet-4.6\", \"inputTokens\": 1500, \"outputTokens\": 400, \"toolCalls\": [\"queryDatabase\", \"searchWeb\"] },\n      { \"model\": \"claude-sonnet-4.6\", \"inputTokens\": 1800, \"outputTokens\": 500 }\n    ],\n    \"msToFirstChunk\": 312,\n    \"msToFinish\": 8200,\n    \"tokensPerSecond\": 146\n  }\n}\n","Wide Event","json",[454,1379,1380,1384,1398,1416,1431,1452,1472,1488,1504,1520,1540,1554,1608,1659,1708,1713,1733,1746,1813,1887,1932,1936,1952,1969,1984,1990],{"__ignoreMap":477},[481,1381,1382],{"class":483,"line":484},[481,1383,721],{"class":491},[481,1385,1386,1389,1391,1394,1396],{"class":483,"line":515},[481,1387,1388],{"class":491},"  \"",[481,1390,509],{"class":559},[481,1392,1393],{"class":491},"\"",[481,1395,672],{"class":491},[481,1397,576],{"class":491},[481,1399,1400,1403,1407,1409,1411,1414],{"class":483,"line":536},[481,1401,1402],{"class":491},"    \"",[481,1404,1406],{"class":1405},"sBMFI","calls",[481,1408,1393],{"class":491},[481,1410,672],{"class":491},[481,1412,1413],{"class":1223}," 3",[481,1415,750],{"class":491},[481,1417,1418,1420,1423,1425,1427,1429],{"class":483,"line":543},[481,1419,1402],{"class":491},[481,1421,1422],{"class":1405},"steps",[481,1424,1393],{"class":491},[481,1426,672],{"class":491},[481,1428,1413],{"class":1223},[481,1430,750],{"class":491},[481,1432,1433,1435,1438,1440,1442,1445,1448,1450],{"class":483,"line":579},[481,1434,1402],{"class":491},[481,1436,1437],{"class":1405},"model",[481,1439,1393],{"class":491},[481,1441,672],{"class":491},[481,1443,1444],{"class":491}," \"",[481,1446,1447],{"class":508},"claude-sonnet-4.6",[481,1449,1393],{"class":491},[481,1451,750],{"class":491},[481,1453,1454,1456,1459,1461,1463,1465,1468,1470],{"class":483,"line":602},[481,1455,1402],{"class":491},[481,1457,1458],{"class":1405},"provider",[481,1460,1393],{"class":491},[481,1462,672],{"class":491},[481,1464,1444],{"class":491},[481,1466,1467],{"class":508},"anthropic",[481,1469,1393],{"class":491},[481,1471,750],{"class":491},[481,1473,1474,1476,1479,1481,1483,1486],{"class":483,"line":621},[481,1475,1402],{"class":491},[481,1477,1478],{"class":1405},"inputTokens",[481,1480,1393],{"class":491},[481,1482,672],{"class":491},[481,1484,1485],{"class":1223}," 4500",[481,1487,750],{"class":491},[481,1489,1490,1492,1495,1497,1499,1502],{"class":483,"line":647},[481,1491,1402],{"class":491},[481,1493,1494],{"class":1405},"outputTokens",[481,1496,1393],{"class":491},[481,1498,672],{"class":491},[481,1500,1501],{"class":1223}," 1200",[481,1503,750],{"class":491},[481,1505,1506,1508,1511,1513,1515,1518],{"class":483,"line":652},[481,1507,1402],{"class":491},[481,1509,1510],{"class":1405},"totalTokens",[481,1512,1393],{"class":491},[481,1514,672],{"class":491},[481,1516,1517],{"class":1223}," 5700",[481,1519,750],{"class":491},[481,1521,1522,1524,1527,1529,1531,1533,1536,1538],{"class":483,"line":702},[481,1523,1402],{"class":491},[481,1525,1526],{"class":1405},"finishReason",[481,1528,1393],{"class":491},[481,1530,672],{"class":491},[481,1532,1444],{"class":491},[481,1534,1535],{"class":508},"stop",[481,1537,1393],{"class":491},[481,1539,750],{"class":491},[481,1541,1542,1544,1547,1549,1551],{"class":483,"line":707},[481,1543,1402],{"class":491},[481,1545,1546],{"class":1405},"toolCalls",[481,1548,1393],{"class":491},[481,1550,672],{"class":491},[481,1552,1553],{"class":491}," [\n",[481,1555,1556,1559,1561,1564,1566,1568,1570,1573,1575,1577,1579,1582,1584,1586,1588,1590,1593,1595,1597,1599,1602,1604,1606],{"class":483,"line":724},[481,1557,1558],{"class":491},"      {",[481,1560,1444],{"class":491},[481,1562,1563],{"class":1223},"name",[481,1565,1393],{"class":491},[481,1567,672],{"class":491},[481,1569,1444],{"class":491},[481,1571,1572],{"class":508},"searchWeb",[481,1574,1393],{"class":491},[481,1576,683],{"class":491},[481,1578,1444],{"class":491},[481,1580,1581],{"class":1223},"input",[481,1583,1393],{"class":491},[481,1585,672],{"class":491},[481,1587,492],{"class":491},[481,1589,1444],{"class":491},[481,1591,1592],{"class":594},"query",[481,1594,1393],{"class":491},[481,1596,672],{"class":491},[481,1598,1444],{"class":491},[481,1600,1601],{"class":508},"TypeScript 6.0 features",[481,1603,1393],{"class":491},[481,1605,499],{"class":491},[481,1607,1227],{"class":491},[481,1609,1610,1612,1614,1616,1618,1620,1622,1625,1627,1629,1631,1633,1635,1637,1639,1641,1644,1646,1648,1650,1653,1655,1657],{"class":483,"line":753},[481,1611,1558],{"class":491},[481,1613,1444],{"class":491},[481,1615,1563],{"class":1223},[481,1617,1393],{"class":491},[481,1619,672],{"class":491},[481,1621,1444],{"class":491},[481,1623,1624],{"class":508},"queryDatabase",[481,1626,1393],{"class":491},[481,1628,683],{"class":491},[481,1630,1444],{"class":491},[481,1632,1581],{"class":1223},[481,1634,1393],{"class":491},[481,1636,672],{"class":491},[481,1638,492],{"class":491},[481,1640,1444],{"class":491},[481,1642,1643],{"class":594},"sql",[481,1645,1393],{"class":491},[481,1647,672],{"class":491},[481,1649,1444],{"class":491},[481,1651,1652],{"class":508},"SELECT * FROM docs WHERE topic = 'typescript'",[481,1654,1393],{"class":491},[481,1656,499],{"class":491},[481,1658,1227],{"class":491},[481,1660,1661,1663,1665,1667,1669,1671,1673,1675,1677,1679,1681,1683,1685,1687,1689,1691,1693,1695,1697,1699,1702,1704,1706],{"class":483,"line":761},[481,1662,1558],{"class":491},[481,1664,1444],{"class":491},[481,1666,1563],{"class":1223},[481,1668,1393],{"class":491},[481,1670,672],{"class":491},[481,1672,1444],{"class":491},[481,1674,1572],{"class":508},[481,1676,1393],{"class":491},[481,1678,683],{"class":491},[481,1680,1444],{"class":491},[481,1682,1581],{"class":1223},[481,1684,1393],{"class":491},[481,1686,672],{"class":491},[481,1688,492],{"class":491},[481,1690,1444],{"class":491},[481,1692,1592],{"class":594},[481,1694,1393],{"class":491},[481,1696,672],{"class":491},[481,1698,1444],{"class":491},[481,1700,1701],{"class":508},"TypeScript 6.0 release date",[481,1703,1393],{"class":491},[481,1705,499],{"class":491},[481,1707,1039],{"class":491},[481,1709,1710],{"class":483,"line":782},[481,1711,1712],{"class":491},"    ],\n",[481,1714,1715,1717,1720,1722,1724,1726,1729,1731],{"class":483,"line":795},[481,1716,1402],{"class":491},[481,1718,1719],{"class":1405},"responseId",[481,1721,1393],{"class":491},[481,1723,672],{"class":491},[481,1725,1444],{"class":491},[481,1727,1728],{"class":508},"msg_01XFDUDYJgAACzvnptvVoYEL",[481,1730,1393],{"class":491},[481,1732,750],{"class":491},[481,1734,1735,1737,1740,1742,1744],{"class":483,"line":801},[481,1736,1402],{"class":491},[481,1738,1739],{"class":1405},"stepsUsage",[481,1741,1393],{"class":491},[481,1743,672],{"class":491},[481,1745,1553],{"class":491},[481,1747,1748,1750,1752,1754,1756,1758,1760,1762,1764,1766,1768,1770,1772,1774,1776,1778,1780,1782,1784,1786,1789,1791,1793,1795,1797,1799,1802,1804,1806,1808,1811],{"class":483,"line":809},[481,1749,1558],{"class":491},[481,1751,1444],{"class":491},[481,1753,1437],{"class":1223},[481,1755,1393],{"class":491},[481,1757,672],{"class":491},[481,1759,1444],{"class":491},[481,1761,1447],{"class":508},[481,1763,1393],{"class":491},[481,1765,683],{"class":491},[481,1767,1444],{"class":491},[481,1769,1478],{"class":1223},[481,1771,1393],{"class":491},[481,1773,672],{"class":491},[481,1775,1501],{"class":1223},[481,1777,683],{"class":491},[481,1779,1444],{"class":491},[481,1781,1494],{"class":1223},[481,1783,1393],{"class":491},[481,1785,672],{"class":491},[481,1787,1788],{"class":1223}," 300",[481,1790,683],{"class":491},[481,1792,1444],{"class":491},[481,1794,1546],{"class":1223},[481,1796,1393],{"class":491},[481,1798,672],{"class":491},[481,1800,1801],{"class":491}," [",[481,1803,1393],{"class":491},[481,1805,1572],{"class":508},[481,1807,1393],{"class":491},[481,1809,1810],{"class":491},"]",[481,1812,1227],{"class":491},[481,1814,1815,1817,1819,1821,1823,1825,1827,1829,1831,1833,1835,1837,1839,1841,1844,1846,1848,1850,1852,1854,1857,1859,1861,1863,1865,1867,1869,1871,1873,1875,1877,1879,1881,1883,1885],{"class":483,"line":814},[481,1816,1558],{"class":491},[481,1818,1444],{"class":491},[481,1820,1437],{"class":1223},[481,1822,1393],{"class":491},[481,1824,672],{"class":491},[481,1826,1444],{"class":491},[481,1828,1447],{"class":508},[481,1830,1393],{"class":491},[481,1832,683],{"class":491},[481,1834,1444],{"class":491},[481,1836,1478],{"class":1223},[481,1838,1393],{"class":491},[481,1840,672],{"class":491},[481,1842,1843],{"class":1223}," 1500",[481,1845,683],{"class":491},[481,1847,1444],{"class":491},[481,1849,1494],{"class":1223},[481,1851,1393],{"class":491},[481,1853,672],{"class":491},[481,1855,1856],{"class":1223}," 400",[481,1858,683],{"class":491},[481,1860,1444],{"class":491},[481,1862,1546],{"class":1223},[481,1864,1393],{"class":491},[481,1866,672],{"class":491},[481,1868,1801],{"class":491},[481,1870,1393],{"class":491},[481,1872,1624],{"class":508},[481,1874,1393],{"class":491},[481,1876,683],{"class":491},[481,1878,1444],{"class":491},[481,1880,1572],{"class":508},[481,1882,1393],{"class":491},[481,1884,1810],{"class":491},[481,1886,1227],{"class":491},[481,1888,1889,1891,1893,1895,1897,1899,1901,1903,1905,1907,1909,1911,1913,1915,1918,1920,1922,1924,1926,1928,1930],{"class":483,"line":830},[481,1890,1558],{"class":491},[481,1892,1444],{"class":491},[481,1894,1437],{"class":1223},[481,1896,1393],{"class":491},[481,1898,672],{"class":491},[481,1900,1444],{"class":491},[481,1902,1447],{"class":508},[481,1904,1393],{"class":491},[481,1906,683],{"class":491},[481,1908,1444],{"class":491},[481,1910,1478],{"class":1223},[481,1912,1393],{"class":491},[481,1914,672],{"class":491},[481,1916,1917],{"class":1223}," 1800",[481,1919,683],{"class":491},[481,1921,1444],{"class":491},[481,1923,1494],{"class":1223},[481,1925,1393],{"class":491},[481,1927,672],{"class":491},[481,1929,1224],{"class":1223},[481,1931,1039],{"class":491},[481,1933,1934],{"class":483,"line":1357},[481,1935,1712],{"class":491},[481,1937,1938,1940,1943,1945,1947,1950],{"class":483,"line":1364},[481,1939,1402],{"class":491},[481,1941,1942],{"class":1405},"msToFirstChunk",[481,1944,1393],{"class":491},[481,1946,672],{"class":491},[481,1948,1949],{"class":1223}," 312",[481,1951,750],{"class":491},[481,1953,1955,1957,1960,1962,1964,1967],{"class":483,"line":1954},23,[481,1956,1402],{"class":491},[481,1958,1959],{"class":1405},"msToFinish",[481,1961,1393],{"class":491},[481,1963,672],{"class":491},[481,1965,1966],{"class":1223}," 8200",[481,1968,750],{"class":491},[481,1970,1972,1974,1977,1979,1981],{"class":483,"line":1971},24,[481,1973,1402],{"class":491},[481,1975,1976],{"class":1405},"tokensPerSecond",[481,1978,1393],{"class":491},[481,1980,672],{"class":491},[481,1982,1983],{"class":1223}," 146\n",[481,1985,1987],{"class":483,"line":1986},25,[481,1988,1989],{"class":491},"  }\n",[481,1991,1993],{"class":483,"line":1992},26,[481,1994,1995],{"class":491},"}\n",[1997,1998,1999,2000,2006],"tip",{},"Pair this with ",[2001,2002,2003],"a",{"href":289},[454,2004,2005],{},"createEvlogIntegration"," to also capture per-tool execution timing and the agent's total wall time.",[463,2008,2010],{"id":2009},"rag-embed-generate","RAG (embed + generate)",[450,2012,2013,2014,2017],{},"Embedding models use a different type that cannot be wrapped with middleware. Use ",[454,2015,2016],{},"captureEmbed"," instead:",[471,2019,2022],{"className":473,"code":2020,"filename":2021,"language":476,"meta":477,"style":477},"import { embed, generateText } from 'ai'\nimport { useLogger } from 'evlog'\nimport { createAILogger } from 'evlog\u002Fai'\n\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const ai = createAILogger(log)\n\n  const { embedding, usage } = await embed({\n    model: openai.embedding('text-embedding-3-small'),\n    value: query,\n  })\n  ai.captureEmbed({\n    usage,\n    model: 'text-embedding-3-small',\n    dimensions: 1536,\n  })\n\n  const docs = await findSimilar(embedding)\n\n  const result = await generateText({\n    model: ai.wrap('anthropic\u002Fclaude-sonnet-4.6'),\n    prompt: buildPrompt(docs),\n  })\n\n  return { text: result.text }\n})\n","server\u002Fapi\u002Frag.post.ts",[454,2023,2024,2047,2065,2083,2087,2109,2125,2141,2145,2171,2198,2210,2216,2229,2236,2250,2262,2268,2272,2292,2296,2312,2336,2354,2360,2364,2382],{"__ignoreMap":477},[481,2025,2026,2028,2030,2033,2035,2037,2039,2041,2043,2045],{"class":483,"line":484},[481,2027,488],{"class":487},[481,2029,492],{"class":491},[481,2031,2032],{"class":495}," embed",[481,2034,683],{"class":491},[481,2036,864],{"class":495},[481,2038,499],{"class":491},[481,2040,502],{"class":487},[481,2042,505],{"class":491},[481,2044,509],{"class":508},[481,2046,512],{"class":491},[481,2048,2049,2051,2053,2055,2057,2059,2061,2063],{"class":483,"line":515},[481,2050,488],{"class":487},[481,2052,492],{"class":491},[481,2054,591],{"class":495},[481,2056,499],{"class":491},[481,2058,502],{"class":487},[481,2060,505],{"class":491},[481,2062,1104],{"class":508},[481,2064,512],{"class":491},[481,2066,2067,2069,2071,2073,2075,2077,2079,2081],{"class":483,"line":536},[481,2068,488],{"class":487},[481,2070,492],{"class":491},[481,2072,522],{"class":495},[481,2074,499],{"class":491},[481,2076,502],{"class":487},[481,2078,505],{"class":491},[481,2080,531],{"class":508},[481,2082,512],{"class":491},[481,2084,2085],{"class":483,"line":543},[481,2086,540],{"emptyLinePlaceholder":539},[481,2088,2089,2091,2093,2095,2097,2099,2101,2103,2105,2107],{"class":483,"line":579},[481,2090,546],{"class":487},[481,2092,549],{"class":487},[481,2094,553],{"class":552},[481,2096,556],{"class":495},[481,2098,560],{"class":559},[481,2100,563],{"class":491},[481,2102,567],{"class":566},[481,2104,570],{"class":491},[481,2106,573],{"class":559},[481,2108,576],{"class":491},[481,2110,2111,2113,2115,2117,2119,2121,2123],{"class":483,"line":602},[481,2112,582],{"class":559},[481,2114,585],{"class":495},[481,2116,588],{"class":491},[481,2118,591],{"class":552},[481,2120,556],{"class":594},[481,2122,567],{"class":495},[481,2124,599],{"class":594},[481,2126,2127,2129,2131,2133,2135,2137,2139],{"class":483,"line":621},[481,2128,582],{"class":559},[481,2130,607],{"class":495},[481,2132,588],{"class":491},[481,2134,522],{"class":552},[481,2136,556],{"class":594},[481,2138,616],{"class":495},[481,2140,599],{"class":594},[481,2142,2143],{"class":483,"line":647},[481,2144,540],{"emptyLinePlaceholder":539},[481,2146,2147,2149,2151,2154,2156,2159,2161,2163,2165,2167,2169],{"class":483,"line":652},[481,2148,582],{"class":559},[481,2150,492],{"class":491},[481,2152,2153],{"class":495}," embedding",[481,2155,683],{"class":491},[481,2157,2158],{"class":495}," usage",[481,2160,499],{"class":491},[481,2162,588],{"class":491},[481,2164,635],{"class":487},[481,2166,2032],{"class":552},[481,2168,556],{"class":594},[481,2170,721],{"class":491},[481,2172,2173,2175,2177,2180,2182,2185,2187,2189,2192,2194,2196],{"class":483,"line":702},[481,2174,727],{"class":594},[481,2176,672],{"class":491},[481,2178,2179],{"class":495}," openai",[481,2181,658],{"class":491},[481,2183,2184],{"class":552},"embedding",[481,2186,556],{"class":594},[481,2188,680],{"class":491},[481,2190,2191],{"class":508},"text-embedding-3-small",[481,2193,680],{"class":491},[481,2195,570],{"class":594},[481,2197,750],{"class":491},[481,2199,2200,2203,2205,2208],{"class":483,"line":707},[481,2201,2202],{"class":594},"    value",[481,2204,672],{"class":491},[481,2206,2207],{"class":495}," query",[481,2209,750],{"class":491},[481,2211,2212,2214],{"class":483,"line":724},[481,2213,804],{"class":491},[481,2215,599],{"class":594},[481,2217,2218,2221,2223,2225,2227],{"class":483,"line":753},[481,2219,2220],{"class":495},"  ai",[481,2222,658],{"class":491},[481,2224,2016],{"class":552},[481,2226,556],{"class":594},[481,2228,721],{"class":491},[481,2230,2231,2234],{"class":483,"line":761},[481,2232,2233],{"class":495},"    usage",[481,2235,750],{"class":491},[481,2237,2238,2240,2242,2244,2246,2248],{"class":483,"line":782},[481,2239,727],{"class":594},[481,2241,672],{"class":491},[481,2243,505],{"class":491},[481,2245,2191],{"class":508},[481,2247,680],{"class":491},[481,2249,750],{"class":491},[481,2251,2252,2255,2257,2260],{"class":483,"line":795},[481,2253,2254],{"class":594},"    dimensions",[481,2256,672],{"class":491},[481,2258,2259],{"class":1223}," 1536",[481,2261,750],{"class":491},[481,2263,2264,2266],{"class":483,"line":801},[481,2265,804],{"class":491},[481,2267,599],{"class":594},[481,2269,2270],{"class":483,"line":809},[481,2271,540],{"emptyLinePlaceholder":539},[481,2273,2274,2276,2279,2281,2283,2286,2288,2290],{"class":483,"line":814},[481,2275,582],{"class":559},[481,2277,2278],{"class":495}," docs",[481,2280,588],{"class":491},[481,2282,635],{"class":487},[481,2284,2285],{"class":552}," findSimilar",[481,2287,556],{"class":594},[481,2289,2184],{"class":495},[481,2291,599],{"class":594},[481,2293,2294],{"class":483,"line":830},[481,2295,540],{"emptyLinePlaceholder":539},[481,2297,2298,2300,2302,2304,2306,2308,2310],{"class":483,"line":1357},[481,2299,582],{"class":559},[481,2301,712],{"class":495},[481,2303,588],{"class":491},[481,2305,635],{"class":487},[481,2307,864],{"class":552},[481,2309,556],{"class":594},[481,2311,721],{"class":491},[481,2313,2314,2316,2318,2320,2322,2324,2326,2328,2330,2332,2334],{"class":483,"line":1364},[481,2315,727],{"class":594},[481,2317,672],{"class":491},[481,2319,607],{"class":495},[481,2321,658],{"class":491},[481,2323,736],{"class":552},[481,2325,556],{"class":594},[481,2327,680],{"class":491},[481,2329,743],{"class":508},[481,2331,680],{"class":491},[481,2333,570],{"class":594},[481,2335,750],{"class":491},[481,2337,2338,2340,2342,2345,2347,2350,2352],{"class":483,"line":1954},[481,2339,999],{"class":594},[481,2341,672],{"class":491},[481,2343,2344],{"class":552}," buildPrompt",[481,2346,556],{"class":594},[481,2348,2349],{"class":495},"docs",[481,2351,570],{"class":594},[481,2353,750],{"class":491},[481,2355,2356,2358],{"class":483,"line":1971},[481,2357,804],{"class":491},[481,2359,599],{"class":594},[481,2361,2362],{"class":483,"line":1986},[481,2363,540],{"emptyLinePlaceholder":539},[481,2365,2366,2368,2370,2372,2374,2376,2378,2380],{"class":483,"line":1992},[481,2367,817],{"class":487},[481,2369,492],{"class":491},[481,2371,772],{"class":594},[481,2373,672],{"class":491},[481,2375,712],{"class":495},[481,2377,658],{"class":491},[481,2379,790],{"class":495},[481,2381,1039],{"class":491},[481,2383,2385,2387],{"class":483,"line":2384},27,[481,2386,833],{"class":491},[481,2388,599],{"class":495},[450,2390,2391,2392,2395],{},"For ",[454,2393,2394],{},"embedMany",", pass the batch count:",[471,2397,2399],{"className":473,"code":2398,"language":476,"meta":477,"style":477},"const { embeddings, usage } = await embedMany({\n  model: openai.embedding('text-embedding-3-small'),\n  values: documents,\n})\nai.captureEmbed({ usage, model: 'text-embedding-3-small', count: documents.length })\n",[454,2400,2401,2429,2454,2466,2472],{"__ignoreMap":477},[481,2402,2403,2406,2408,2411,2413,2416,2418,2420,2422,2425,2427],{"class":483,"line":484},[481,2404,2405],{"class":559},"const",[481,2407,492],{"class":491},[481,2409,2410],{"class":495}," embeddings",[481,2412,683],{"class":491},[481,2414,2415],{"class":495}," usage ",[481,2417,833],{"class":491},[481,2419,588],{"class":491},[481,2421,635],{"class":487},[481,2423,2424],{"class":552}," embedMany",[481,2426,556],{"class":495},[481,2428,721],{"class":491},[481,2430,2431,2434,2436,2438,2440,2442,2444,2446,2448,2450,2452],{"class":483,"line":515},[481,2432,2433],{"class":594},"  model",[481,2435,672],{"class":491},[481,2437,2179],{"class":495},[481,2439,658],{"class":491},[481,2441,2184],{"class":552},[481,2443,556],{"class":495},[481,2445,680],{"class":491},[481,2447,2191],{"class":508},[481,2449,680],{"class":491},[481,2451,570],{"class":495},[481,2453,750],{"class":491},[481,2455,2456,2459,2461,2464],{"class":483,"line":536},[481,2457,2458],{"class":594},"  values",[481,2460,672],{"class":491},[481,2462,2463],{"class":495}," documents",[481,2465,750],{"class":491},[481,2467,2468,2470],{"class":483,"line":543},[481,2469,833],{"class":491},[481,2471,599],{"class":495},[481,2473,2474,2476,2478,2480,2482,2484,2486,2488,2491,2493,2495,2497,2499,2501,2504,2506,2508,2510,2513,2515],{"class":483,"line":579},[481,2475,509],{"class":495},[481,2477,658],{"class":491},[481,2479,2016],{"class":552},[481,2481,556],{"class":495},[481,2483,666],{"class":491},[481,2485,2158],{"class":495},[481,2487,683],{"class":491},[481,2489,2490],{"class":594}," model",[481,2492,672],{"class":491},[481,2494,505],{"class":491},[481,2496,2191],{"class":508},[481,2498,680],{"class":491},[481,2500,683],{"class":491},[481,2502,2503],{"class":594}," count",[481,2505,672],{"class":491},[481,2507,2463],{"class":495},[481,2509,658],{"class":491},[481,2511,2512],{"class":495},"length ",[481,2514,833],{"class":491},[481,2516,599],{"class":495},[463,2518,2520],{"id":2519},"multiple-models","Multiple Models",[450,2522,2523,2524,2526,2527,2530],{},"Wrap each model separately — they share the same accumulator. When more than one model is used, the wide event includes both ",[454,2525,1437],{}," (last model) and ",[454,2528,2529],{},"models"," (all unique models):",[2532,2533,2534,2688],"code-group",{},[471,2535,2537],{"className":473,"code":2536,"filename":475,"language":476,"meta":477,"style":477},"const ai = createAILogger(log)\n\nconst fast = ai.wrap('anthropic\u002Fclaude-haiku-4.5')\nconst smart = ai.wrap('anthropic\u002Fclaude-sonnet-4.6')\n\nconst classification = await generateText({ model: fast, prompt: classifyPrompt })\nconst response = await generateText({ model: smart, prompt: detailedPrompt })\n",[454,2538,2539,2554,2558,2584,2609,2613,2651],{"__ignoreMap":477},[481,2540,2541,2543,2546,2549,2551],{"class":483,"line":484},[481,2542,2405],{"class":559},[481,2544,2545],{"class":495}," ai ",[481,2547,2548],{"class":491},"=",[481,2550,522],{"class":552},[481,2552,2553],{"class":495},"(log)\n",[481,2555,2556],{"class":483,"line":515},[481,2557,540],{"emptyLinePlaceholder":539},[481,2559,2560,2562,2565,2567,2569,2571,2573,2575,2577,2580,2582],{"class":483,"line":536},[481,2561,2405],{"class":559},[481,2563,2564],{"class":495}," fast ",[481,2566,2548],{"class":491},[481,2568,607],{"class":495},[481,2570,658],{"class":491},[481,2572,736],{"class":552},[481,2574,556],{"class":495},[481,2576,680],{"class":491},[481,2578,2579],{"class":508},"anthropic\u002Fclaude-haiku-4.5",[481,2581,680],{"class":491},[481,2583,599],{"class":495},[481,2585,2586,2588,2591,2593,2595,2597,2599,2601,2603,2605,2607],{"class":483,"line":543},[481,2587,2405],{"class":559},[481,2589,2590],{"class":495}," smart ",[481,2592,2548],{"class":491},[481,2594,607],{"class":495},[481,2596,658],{"class":491},[481,2598,736],{"class":552},[481,2600,556],{"class":495},[481,2602,680],{"class":491},[481,2604,743],{"class":508},[481,2606,680],{"class":491},[481,2608,599],{"class":495},[481,2610,2611],{"class":483,"line":579},[481,2612,540],{"emptyLinePlaceholder":539},[481,2614,2615,2617,2620,2622,2624,2626,2628,2630,2632,2634,2637,2639,2642,2644,2647,2649],{"class":483,"line":602},[481,2616,2405],{"class":559},[481,2618,2619],{"class":495}," classification ",[481,2621,2548],{"class":491},[481,2623,635],{"class":487},[481,2625,864],{"class":552},[481,2627,556],{"class":495},[481,2629,666],{"class":491},[481,2631,2490],{"class":594},[481,2633,672],{"class":491},[481,2635,2636],{"class":495}," fast",[481,2638,683],{"class":491},[481,2640,2641],{"class":594}," prompt",[481,2643,672],{"class":491},[481,2645,2646],{"class":495}," classifyPrompt ",[481,2648,833],{"class":491},[481,2650,599],{"class":495},[481,2652,2653,2655,2658,2660,2662,2664,2666,2668,2670,2672,2675,2677,2679,2681,2684,2686],{"class":483,"line":621},[481,2654,2405],{"class":559},[481,2656,2657],{"class":495}," response ",[481,2659,2548],{"class":491},[481,2661,635],{"class":487},[481,2663,864],{"class":552},[481,2665,556],{"class":495},[481,2667,666],{"class":491},[481,2669,2490],{"class":594},[481,2671,672],{"class":491},[481,2673,2674],{"class":495}," smart",[481,2676,683],{"class":491},[481,2678,2641],{"class":594},[481,2680,672],{"class":491},[481,2682,2683],{"class":495}," detailedPrompt ",[481,2685,833],{"class":491},[481,2687,599],{"class":495},[471,2689,2691],{"className":1374,"code":2690,"filename":1376,"language":1377,"meta":477,"style":477},"{\n  \"ai\": {\n    \"calls\": 2,\n    \"model\": \"claude-sonnet-4.6\",\n    \"models\": [\"claude-haiku-4.5\", \"claude-sonnet-4.6\"],\n    \"provider\": \"anthropic\",\n    \"inputTokens\": 450,\n    \"outputTokens\": 300,\n    \"totalTokens\": 750\n  }\n}\n",[454,2692,2693,2697,2709,2724,2742,2772,2790,2805,2819,2832,2836],{"__ignoreMap":477},[481,2694,2695],{"class":483,"line":484},[481,2696,721],{"class":491},[481,2698,2699,2701,2703,2705,2707],{"class":483,"line":515},[481,2700,1388],{"class":491},[481,2702,509],{"class":559},[481,2704,1393],{"class":491},[481,2706,672],{"class":491},[481,2708,576],{"class":491},[481,2710,2711,2713,2715,2717,2719,2722],{"class":483,"line":536},[481,2712,1402],{"class":491},[481,2714,1406],{"class":1405},[481,2716,1393],{"class":491},[481,2718,672],{"class":491},[481,2720,2721],{"class":1223}," 2",[481,2723,750],{"class":491},[481,2725,2726,2728,2730,2732,2734,2736,2738,2740],{"class":483,"line":543},[481,2727,1402],{"class":491},[481,2729,1437],{"class":1405},[481,2731,1393],{"class":491},[481,2733,672],{"class":491},[481,2735,1444],{"class":491},[481,2737,1447],{"class":508},[481,2739,1393],{"class":491},[481,2741,750],{"class":491},[481,2743,2744,2746,2748,2750,2752,2754,2756,2759,2761,2763,2765,2767,2769],{"class":483,"line":579},[481,2745,1402],{"class":491},[481,2747,2529],{"class":1405},[481,2749,1393],{"class":491},[481,2751,672],{"class":491},[481,2753,1801],{"class":491},[481,2755,1393],{"class":491},[481,2757,2758],{"class":508},"claude-haiku-4.5",[481,2760,1393],{"class":491},[481,2762,683],{"class":491},[481,2764,1444],{"class":491},[481,2766,1447],{"class":508},[481,2768,1393],{"class":491},[481,2770,2771],{"class":491},"],\n",[481,2773,2774,2776,2778,2780,2782,2784,2786,2788],{"class":483,"line":602},[481,2775,1402],{"class":491},[481,2777,1458],{"class":1405},[481,2779,1393],{"class":491},[481,2781,672],{"class":491},[481,2783,1444],{"class":491},[481,2785,1467],{"class":508},[481,2787,1393],{"class":491},[481,2789,750],{"class":491},[481,2791,2792,2794,2796,2798,2800,2803],{"class":483,"line":621},[481,2793,1402],{"class":491},[481,2795,1478],{"class":1405},[481,2797,1393],{"class":491},[481,2799,672],{"class":491},[481,2801,2802],{"class":1223}," 450",[481,2804,750],{"class":491},[481,2806,2807,2809,2811,2813,2815,2817],{"class":483,"line":647},[481,2808,1402],{"class":491},[481,2810,1494],{"class":1405},[481,2812,1393],{"class":491},[481,2814,672],{"class":491},[481,2816,1788],{"class":1223},[481,2818,750],{"class":491},[481,2820,2821,2823,2825,2827,2829],{"class":483,"line":652},[481,2822,1402],{"class":491},[481,2824,1510],{"class":1405},[481,2826,1393],{"class":491},[481,2828,672],{"class":491},[481,2830,2831],{"class":1223}," 750\n",[481,2833,2834],{"class":483,"line":702},[481,2835,1989],{"class":491},[481,2837,2838],{"class":483,"line":707},[481,2839,1995],{"class":491},[463,2841,2843],{"id":2842},"model-object-support","Model Object Support",[450,2845,2846,2849],{},[454,2847,2848],{},"wrap()"," also accepts model objects from provider SDKs if you prefer explicit imports:",[471,2851,2853],{"className":473,"code":2852,"filename":475,"language":476,"meta":477,"style":477},"import { anthropic } from '@ai-sdk\u002Fanthropic'\n\nconst model = ai.wrap(anthropic('claude-sonnet-4.6'))\n",[454,2854,2855,2875,2879],{"__ignoreMap":477},[481,2856,2857,2859,2861,2864,2866,2868,2870,2873],{"class":483,"line":484},[481,2858,488],{"class":487},[481,2860,492],{"class":491},[481,2862,2863],{"class":495}," anthropic",[481,2865,499],{"class":491},[481,2867,502],{"class":487},[481,2869,505],{"class":491},[481,2871,2872],{"class":508},"@ai-sdk\u002Fanthropic",[481,2874,512],{"class":491},[481,2876,2877],{"class":483,"line":515},[481,2878,540],{"emptyLinePlaceholder":539},[481,2880,2881,2883,2886,2888,2890,2892,2894,2896,2898,2900,2902,2904,2906],{"class":483,"line":536},[481,2882,2405],{"class":559},[481,2884,2885],{"class":495}," model ",[481,2887,2548],{"class":491},[481,2889,607],{"class":495},[481,2891,658],{"class":491},[481,2893,736],{"class":552},[481,2895,556],{"class":495},[481,2897,1467],{"class":552},[481,2899,556],{"class":495},[481,2901,680],{"class":491},[481,2903,1447],{"class":508},[481,2905,680],{"class":491},[481,2907,2908],{"class":495},"))\n",[2910,2911,2912],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}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);}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":477,"searchDepth":515,"depth":515,"links":2914},[2915,2916,2917,2918,2919,2920],{"id":465,"depth":515,"text":466},{"id":845,"depth":515,"text":846},{"id":1048,"depth":515,"text":1049},{"id":2009,"depth":515,"text":2010},{"id":2519,"depth":515,"text":2520},{"id":2842,"depth":515,"text":2843},"streamText, generateText, multi-step agents, RAG, and multiple models — every common AI SDK pattern wired into evlog.","md",[2924,2927],{"label":36,"icon":39,"to":270,"color":2925,"variant":2926},"neutral","subtle",{"label":278,"icon":281,"to":279,"color":2925,"variant":2926},{},{"title":273,"icon":276},{"title":445,"description":2921},"VQceeBqMPoUbreitcCNTQ_tuBWBEfYxD6HLySLHKpm4",[2933,2935],{"title":36,"path":270,"stem":271,"description":2934,"icon":39,"children":-1},"Capture token usage, tool calls, model info, and streaming metrics from the Vercel AI SDK into wide events. Wrap your model and get full AI observability with one line.",{"title":278,"path":279,"stem":280,"description":2936,"icon":281,"children":-1},"Configure tool input capture (with redaction and truncation), enable cost estimation per model, and handle errors during AI calls.",1780168570786]