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