[{"data":1,"prerenderedAt":609},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-agent-skills":171,"-getting-started-agent-skills-surround":604},[4,30,55,105,122,136],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","/getting-started","1.getting-started",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","/getting-started/introduction","1.getting-started/1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Installation","/getting-started/installation","1.getting-started/2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quick Start","/getting-started/quick-start","1.getting-started/3.quick-start","i-lucide-zap",{"title":25,"path":26,"stem":27,"icon":28},"Agent Skills","/getting-started/agent-skills","1.getting-started/4.agent-skills","i-lucide-sparkles",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Core Concepts","/core-concepts","2.core-concepts",[35,40,45,50],{"title":36,"path":37,"stem":38,"icon":39},"Wide Events","/core-concepts/wide-events","2.core-concepts/1.wide-events","i-lucide-layers",{"title":41,"path":42,"stem":43,"icon":44},"Structured Errors","/core-concepts/structured-errors","2.core-concepts/2.structured-errors","i-lucide-shield-alert",{"title":46,"path":47,"stem":48,"icon":49},"Best Practices","/core-concepts/best-practices","2.core-concepts/3.best-practices","i-lucide-shield-check",{"title":51,"path":52,"stem":53,"icon":54},"Typed Fields","/core-concepts/typed-fields","2.core-concepts/4.typed-fields","i-simple-icons-typescript",{"title":56,"path":57,"stem":58,"children":59,"page":29},"Adapters","/adapters","3.adapters",[60,65,70,75,80,85,90,95,100],{"title":61,"path":62,"stem":63,"icon":64},"Overview","/adapters/overview","3.adapters/1.overview","i-custom-plug",{"title":66,"path":67,"stem":68,"icon":69},"Axiom","/adapters/axiom","3.adapters/2.axiom","i-custom-axiom",{"title":71,"path":72,"stem":73,"icon":74},"OTLP","/adapters/otlp","3.adapters/3.otlp","i-simple-icons-opentelemetry",{"title":76,"path":77,"stem":78,"icon":79},"PostHog","/adapters/posthog","3.adapters/4.posthog","i-simple-icons-posthog",{"title":81,"path":82,"stem":83,"icon":84},"Sentry","/adapters/sentry","3.adapters/5.sentry","i-simple-icons-sentry",{"title":86,"path":87,"stem":88,"icon":89},"Better Stack","/adapters/better-stack","3.adapters/6.better-stack","i-simple-icons-betterstack",{"title":91,"path":92,"stem":93,"icon":94},"Custom Adapters","/adapters/custom","3.adapters/7.custom","i-lucide-code",{"title":96,"path":97,"stem":98,"icon":99},"Pipeline","/adapters/pipeline","3.adapters/8.pipeline","i-lucide-workflow",{"title":101,"path":102,"stem":103,"icon":104},"Browser","/adapters/browser","3.adapters/9.browser","i-lucide-globe",{"title":106,"path":107,"stem":108,"children":109,"page":29},"Enrichers","/enrichers","4.enrichers",[110,113,118],{"title":61,"path":111,"stem":112,"icon":28},"/enrichers/overview","4.enrichers/1.overview",{"title":114,"path":115,"stem":116,"icon":117},"Built-in","/enrichers/built-in","4.enrichers/2.built-in","i-lucide-puzzle",{"title":119,"path":120,"stem":121,"icon":94},"Custom","/enrichers/custom","4.enrichers/3.custom",{"title":123,"path":124,"stem":125,"children":126,"page":29},"NuxtHub","/nuxthub","5.nuxthub",[127,131],{"title":61,"path":128,"stem":129,"icon":130},"/nuxthub/overview","5.nuxthub/1.overview","i-lucide-database",{"title":132,"path":133,"stem":134,"icon":135},"Retention","/nuxthub/retention","5.nuxthub/2.retention","i-lucide-clock",{"title":137,"path":138,"stem":139,"children":140,"page":29},"Examples","/examples","6.examples",[141,146,151,156,161,166],{"title":142,"path":143,"stem":144,"icon":145},"Next.js","/examples/nextjs","6.examples/1.nextjs","i-simple-icons-nextdotjs",{"title":147,"path":148,"stem":149,"icon":150},"TanStack Start","/examples/tanstack-start","6.examples/2.tanstack-start","i-custom-tanstack",{"title":152,"path":153,"stem":154,"icon":155},"Hono","/examples/hono","6.examples/3.hono","i-simple-icons-hono",{"title":157,"path":158,"stem":159,"icon":160},"Express","/examples/express","6.examples/4.express","i-simple-icons-express",{"title":162,"path":163,"stem":164,"icon":165},"Elysia","/examples/elysia","6.examples/5.elysia","i-custom-elysia",{"title":167,"path":168,"stem":169,"icon":170},"Fastify","/examples/fastify","6.examples/6.fastify","i-simple-icons-fastify",{"id":172,"title":25,"body":173,"description":590,"extension":591,"links":592,"meta":600,"navigation":601,"path":26,"seo":602,"stem":27,"__hash__":603},"docs/1.getting-started/4.agent-skills.md",{"type":174,"value":175,"toc":572},"minimark",[176,180,185,194,217,221,252,256,259,262,291,295,300,303,341,345,348,373,377,380,388,394,400,406,410,416,420,423,427,438,442,453,457,468,472,475,547,551,568],[177,178,179],"p",{},"evlog includes agent skills that help AI assistants review your logging patterns and guide evlog adoption.",[181,182,184],"h2",{"id":183},"what-are-agent-skills","What are Agent Skills?",[177,186,187,193],{},[188,189,25],"a",{"href":190,"rel":191},"https://agentskills.io/",[192],"nofollow"," is an open specification for packaging AI assistant capabilities. Skills provide:",[195,196,197,205,211],"ul",{},[198,199,200,204],"li",{},[201,202,203],"strong",{},"Domain knowledge",": Best practices for wide events and structured errors",[198,206,207,210],{},[201,208,209],{},"Code review",": Identify logging anti-patterns in your codebase",[198,212,213,216],{},[201,214,215],{},"Guided adoption",": Step-by-step help migrating to evlog",[181,218,220],{"id":219},"available-skills","Available Skills",[222,223,224,237],"table",{},[225,226,227],"thead",{},[228,229,230,234],"tr",{},[231,232,233],"th",{},"Skill",[231,235,236],{},"Description",[238,239,240],"tbody",{},[228,241,242,249],{},[243,244,245],"td",{},[246,247,248],"code",{},"skills/evlog",[243,250,251],{},"Review code for logging patterns, suggest evlog adoption, guide wide event design",[181,253,255],{"id":254},"installing-the-skill","Installing the Skill",[177,257,258],{},"Compatible agents (Cursor, Claude Code, etc.) can discover and use skills automatically.",[177,260,261],{},"To manually install with the skills CLI:",[263,264,270],"pre",{"className":265,"code":266,"filename":267,"language":268,"meta":269,"style":269},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx skills add hugorcd/evlog\n","Terminal","bash","",[246,271,272],{"__ignoreMap":269},[273,274,277,281,285,288],"span",{"class":275,"line":276},"line",1,[273,278,280],{"class":279},"sBMFI","npx",[273,282,284],{"class":283},"sfazB"," skills",[273,286,287],{"class":283}," add",[273,289,290],{"class":283}," hugorcd/evlog\n",[181,292,294],{"id":293},"what-the-skill-does","What the Skill Does",[296,297,299],"h3",{"id":298},"code-review","Code Review",[177,301,302],{},"The skill analyzes your codebase for:",[195,304,305,319,325,335],{},[198,306,307,310,311,314,315,318],{},[201,308,309],{},"Scattered logging",": Multiple ",[246,312,313],{},"console.log"," or ",[246,316,317],{},"logger.info"," calls in request handlers",[198,320,321,324],{},[201,322,323],{},"Missing context",": Logs without user, request, or business context",[198,326,327,330,331,334],{},[201,328,329],{},"Unhelpful errors",": ",[246,332,333],{},"throw new Error()"," without structured fields",[198,336,337,340],{},[201,338,339],{},"Correlation gaps",": Missing request IDs or trace IDs",[296,342,344],{"id":343},"adoption-guidance","Adoption Guidance",[177,346,347],{},"The skill helps you:",[195,349,350,353,356,370],{},[198,351,352],{},"Convert traditional logging to wide events",[198,354,355],{},"Design effective wide event schemas",[198,357,358,359,362,363,366,367],{},"Implement structured errors with ",[246,360,361],{},"why",", ",[246,364,365],{},"fix",", and ",[246,368,369],{},"link",[198,371,372],{},"Set up evlog in Nuxt, Nitro, or standalone TypeScript",[296,374,376],{"id":375},"example-prompts","Example Prompts",[177,378,379],{},"Ask your AI assistant:",[263,381,386],{"className":382,"code":384,"language":385},[383],"language-text","Review this file for logging anti-patterns\n","text",[246,387,384],{"__ignoreMap":269},[263,389,392],{"className":390,"code":391,"language":385},[383],"Help me convert these console.log calls to a wide event\n",[246,393,391],{"__ignoreMap":269},[263,395,398],{"className":396,"code":397,"language":385},[383],"What context should I add to this wide event?\n",[246,399,397],{"__ignoreMap":269},[263,401,404],{"className":402,"code":403,"language":385},[383],"How do I structure this error with evlog?\n",[246,405,403],{"__ignoreMap":269},[181,407,409],{"id":408},"skill-structure","Skill Structure",[263,411,414],{"className":412,"code":413,"language":385},[383],"skills/\n└── evlog/\n    ├── SKILL.md              # Main skill instructions\n    └── references/\n        ├── wide-events.md    # Wide event patterns\n        ├── structured-errors.md # Error handling guide\n        └── code-review.md    # Review checklist\n",[246,415,413],{"__ignoreMap":269},[181,417,419],{"id":418},"reference-documents","Reference Documents",[177,421,422],{},"The skill includes reference documents that provide:",[296,424,426],{"id":425},"wide-eventsmd","wide-events.md",[195,428,429,432,435],{},[198,430,431],{},"Wide event anatomy and best practices",[198,433,434],{},"Context grouping patterns",[198,436,437],{},"Output format examples",[296,439,441],{"id":440},"structured-errorsmd","structured-errors.md",[195,443,444,447,450],{},[198,445,446],{},"Error field definitions",[198,448,449],{},"Status code guidelines",[198,451,452],{},"Frontend integration patterns",[296,454,456],{"id":455},"code-reviewmd","code-review.md",[195,458,459,462,465],{},[198,460,461],{},"Checklist for logging code review",[198,463,464],{},"Common anti-patterns to identify",[198,466,467],{},"Migration suggestions",[181,469,471],{"id":470},"creating-custom-skills","Creating Custom Skills",[177,473,474],{},"You can extend evlog's skills or create your own for team-specific patterns:",[263,476,481],{"className":477,"code":478,"filename":479,"language":480,"meta":269,"style":269},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# My Team Logging Skill\n\nExtends evlog skill with team-specific guidelines.\n\n## References\n- @evlog/skills/evlog\n\n## Custom Patterns\n- Always include `team` field in wide events\n- Use `X-Team-Request-Id` header for correlation\n- Log to DataDog with structured format\n","skills/my-team/SKILL.md","markdown",[246,482,483,488,495,501,506,512,518,523,529,535,541],{"__ignoreMap":269},[273,484,485],{"class":275,"line":276},[273,486,487],{},"# My Team Logging Skill\n",[273,489,491],{"class":275,"line":490},2,[273,492,494],{"emptyLinePlaceholder":493},true,"\n",[273,496,498],{"class":275,"line":497},3,[273,499,500],{},"Extends evlog skill with team-specific guidelines.\n",[273,502,504],{"class":275,"line":503},4,[273,505,494],{"emptyLinePlaceholder":493},[273,507,509],{"class":275,"line":508},5,[273,510,511],{},"## References\n",[273,513,515],{"class":275,"line":514},6,[273,516,517],{},"- @evlog/skills/evlog\n",[273,519,521],{"class":275,"line":520},7,[273,522,494],{"emptyLinePlaceholder":493},[273,524,526],{"class":275,"line":525},8,[273,527,528],{},"## Custom Patterns\n",[273,530,532],{"class":275,"line":531},9,[273,533,534],{},"- Always include `team` field in wide events\n",[273,536,538],{"class":275,"line":537},10,[273,539,540],{},"- Use `X-Team-Request-Id` header for correlation\n",[273,542,544],{"class":275,"line":543},11,[273,545,546],{},"- Log to DataDog with structured format\n",[181,548,550],{"id":549},"next-steps","Next Steps",[195,552,553,558,563],{},[198,554,555,557],{},[188,556,20],{"href":21}," - Get started with evlog",[198,559,560,562],{},[188,561,36],{"href":37}," - Learn wide event design",[198,564,565,567],{},[188,566,41],{"href":42}," - Error handling patterns",[569,570,571],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":269,"searchDepth":490,"depth":490,"links":573},[574,575,576,577,582,583,588,589],{"id":183,"depth":490,"text":184},{"id":219,"depth":490,"text":220},{"id":254,"depth":490,"text":255},{"id":293,"depth":490,"text":294,"children":578},[579,580,581],{"id":298,"depth":497,"text":299},{"id":343,"depth":497,"text":344},{"id":375,"depth":497,"text":376},{"id":408,"depth":490,"text":409},{"id":418,"depth":490,"text":419,"children":584},[585,586,587],{"id":425,"depth":497,"text":426},{"id":440,"depth":497,"text":441},{"id":455,"depth":497,"text":456},{"id":470,"depth":490,"text":471},{"id":549,"depth":490,"text":550},"AI-assisted code review and evlog adoption using Agent Skills. Let AI review your logging patterns and guide migration to wide events.","md",[593],{"label":594,"icon":595,"to":596,"target":597,"color":598,"variant":599},"Agent Skills Spec","i-lucide-external-link","https://agentskills.io","_blank","neutral","subtle",{},{"icon":28},{"title":25,"description":590},"LmPQSnTLAh2DQMX6ctzkTFEoOkkXtwED6kTjfZ8kp3Q",[605,607],{"title":20,"path":21,"stem":22,"description":606,"icon":23,"children":-1},"Get up and running with evlog in minutes. Learn useLogger, createError, parseError, and the log API for wide events and structured errors.",{"title":36,"path":37,"stem":38,"description":608,"icon":39,"children":-1},"Learn how to design effective wide events that capture everything you need in a single log. One comprehensive event per request with full context.",1772883105167]