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