[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CT1XNX25MWRGSSRVT8VWWX":3,"skill-same:01M6CT1XNX25MWRGSSRVT8VWWX":86},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M6CT1XNX25MWRGSSRVT8VWWX","nitro",null,"Build and deploy universal JavaScript servers with Nitro v3. Use when working with nitro.config.ts, defineNitroConfig, defineHandler, defineConfig, server.ts entry, filesystem routing, route rules, useStorage, defineCachedHandler, useDatabase, definePlugin, runtime hooks, Vercel\u002FCloudflare deployment, or migrating from Nitro v2\u002Fnitropack.","getsentry\u002Fjunior","getsentry","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1396951?v=4","01M6CHRN2S1A588Q46ASWA5335","Sentry","01M6CT1V0TF72B1X0MQT5MSYXF",418,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"use","when","entry","with","nitropack","v3","runtime","route","build","hooks","vercel","javascript","filesystem","Rules","server","cloudflare","routing","deployment","deploy","config","2026-11-10 10:12:30",false,"---\nname: nitro\ndescription: Build and deploy universal JavaScript servers with Nitro v3. Use when working with nitro.config.ts, defineNitroConfig, defineHandler, defineConfig, server.ts entry, filesystem routing, route rules, useStorage, defineCachedHandler, useDatabase, definePlugin, runtime hooks, Vercel\u002FCloudflare deployment, or migrating from Nitro v2\u002Fnitropack.\n---\n\nBuild, configure, and deploy Nitro v3 applications using correct APIs and patterns.\n\n## Step 1: Classify the request\n\n| Request type                                                           | Read first                                  |\n| ---------------------------------------------------------------------- | ------------------------------------------- |\n| API surface, handler signatures, imports, config options               | `references\u002Fapi-surface.md`                 |\n| Setup, routing, caching, storage, plugins, frameworks, common patterns | `references\u002Fcommon-use-cases.md`            |\n| Build failures, runtime errors, deployment issues, migration from v2   | `references\u002Ftroubleshooting-workarounds.md` |\n\nLoad only the reference(s) matching the request. If the task spans categories, load relevant files.\n\n## Step 2: Apply core guardrails\n\n1. Import `defineHandler` from `\"nitro\"`, not `defineEventHandler` (v2 API).\n2. Import config helpers from subpaths: `\"nitro\u002Fconfig\"`, `\"nitro\u002Fcache\"`, `\"nitro\u002Fstorage\"`, `\"nitro\u002Fdatabase\"`, `\"nitro\u002Fruntime-config\"`, `\"nitro\u002Ftypes\"`.\n3. Use web standard `event.req` (Request) for body\u002Fheaders — not v2 utilities like `readBody` or `getHeader`.\n4. Never return from middleware unless intentionally terminating the request.\n5. Only `GET`\u002F`HEAD` requests are cached by `defineCachedHandler`; other methods bypass automatically.\n6. `useDatabase` and `defineTask` require experimental feature flags.\n7. Use `\"nitro\"` package name, not `\"nitropack\"` (v2).\n\n## Step 3: Implement\n\n1. For new projects, use `defineConfig` from `\"nitro\"` in `nitro.config.ts` or add `nitro()` plugin from `\"nitro\u002Fvite\"` to `vite.config.ts`.\n2. For server entry, export a web-compatible `fetch(Request): Response` handler from `server.ts`, or use `server.node.ts` for Express\u002FFastify.\n3. For filesystem routes, place handlers in `routes\u002F` or `api\u002F` with `[param]` for dynamic segments and `.get.ts`\u002F`.post.ts` for method-specific routes.\n4. For caching, use `defineCachedHandler` from `\"nitro\u002Fcache\"` with `maxAge` and `swr` options.\n5. For storage, use `useStorage(namespace)` from `\"nitro\u002Fstorage\"` and configure drivers via `storage` config.\n6. For plugins, create files in `plugins\u002F` directory using `definePlugin` and hook into `request`, `response`, `error`, or `close`.\n7. For deployment, set `preset` in config or use `NITRO_PRESET` env var; Vercel\u002FNetlify\u002FCloudflare are auto-detected.\n\n## Step 4: Validate\n\n1. Run `nitro dev` and verify routes respond correctly.\n2. Run `nitro build` and check `.output\u002Fserver\u002F` contains expected files.\n3. For cached routes, verify cache headers (`etag`, `cache-control`) and 304 responses.\n4. For storage, verify data persists across requests with configured driver.\n5. For deployment, verify the preset produces correct output format.\n\n## Step 5: Troubleshoot\n\n1. `defineEventHandler is not defined` → use `defineHandler` from `\"nitro\"` (v3 API).\n2. `Cannot find module 'nitropack'` → rename to `\"nitro\"` in imports and package.json.\n3. Route not matched → check file is in `routes\u002F` or `api\u002F`, or verify `routes` config mapping.\n4. Middleware returning responses unexpectedly → ensure middleware does not return a value.\n5. For detailed diagnostics, read `references\u002Ftroubleshooting-workarounds.md`.\n","Build, configure, and deploy Nitro v3 applications using correct APIs and patterns.\n\n## Step 1: Classify the request\n\n| Request type                                                           | Read first                                  |\n| ---------------------------------------------------------------------- | ------------------------------------------- |\n| API surface, handler signatures, imports, config options               | `references\u002Fapi-surface.md`                 |\n| Setup, routing, caching, storage, plugins, frameworks, common patterns | `references\u002Fcommon-use-cases.md`            |\n| Build failures, runtime errors, deployment issues, migration from v2   | `references\u002Ftroubleshooting-workarounds.md` |\n\nLoad only the reference(s) matching the request. If the task spans categories, load relevant files.\n\n## Step 2: Apply core guardrails\n\n1. Import `defineHandler` from `\"nitro\"`, not `defineEventHandler` (v2 API).\n2. Import config helpers from subpaths: `\"nitro\u002Fconfig\"`, `\"nitro\u002Fcache\"`, `\"nitro\u002Fstorage\"`, `\"nitro\u002Fdatabase\"`, `\"nitro\u002Fruntime-config\"`, `\"nitro\u002Ftypes\"`.\n3. Use web standard `event.req` (Request) for body\u002Fheaders — not v2 utilities like `readBody` or `getHeader`.\n4. Never return from middleware unless intentionally terminating the request.\n5. Only `GET`\u002F`HEAD` requests are cached by `defineCachedHandler`; other methods bypass automatically.\n6. `useDatabase` and `defineTask` require experimental feature flags.\n7. Use `\"nitro\"` package name, not `\"nitropack\"` (v2).\n\n## Step 3: Implement\n\n1. For new projects, use `defineConfig` from `\"nitro\"` in `nitro.config.ts` or add `nitro()` plugin from `\"nitro\u002Fvite\"` to `vite.config.ts`.\n2. For server entry, export a web-compatible `fetch(Request): Response` handler from `server.ts`, or use `server.node.ts` for Express\u002FFastify.\n3. For filesystem routes, place handlers in `routes\u002F` or `api\u002F` with `[param]` for dynamic segments and `.get.ts`\u002F`.post.ts` for method-specific routes.\n4. For caching, use `defineCachedHandler` from `\"nitro\u002Fcache\"` with `maxAge` and `swr` options.\n5. For storage, use `useStorage(namespace)` from `\"nitro\u002Fstorage\"` and configure drivers via `storage` config.\n6. For plugins, create files in `plugins\u002F` directory using `definePlugin` and hook into `request`, `response`, `error`, or `close`.\n7. For deployment, set `preset` in config or use `NITRO_PRESET` env var; Vercel\u002FNetlify\u002FCloudflare are auto-detected.\n\n## Step 4: Validate\n\n1. Run `nitro dev` and verify routes respond correctly.\n2. Run `nitro build` and check `.output\u002Fserver\u002F` contains expected files.\n3. For cached routes, verify cache headers (`etag`, `cache-control`) and 304 responses.\n4. For storage, verify data persists across requests with configured driver.\n5. For deployment, verify the preset produces correct output format.\n\n## Step 5: Troubleshoot\n\n1. `defineEventHandler is not defined` → use `defineHandler` from `\"nitro\"` (v3 API).\n2. `Cannot find module 'nitropack'` → rename to `\"nitro\"` in imports and package.json.\n3. Route not matched → check file is in `routes\u002F` or `api\u002F`, or verify `routes` config mapping.\n4. Middleware returning responses unexpectedly → ensure middleware does not return a value.\n5. For detailed diagnostics, read `references\u002Ftroubleshooting-workarounds.md`.\n",{"name":5,"description":7},"main","5abc4b2bad9bd5ffe7b7fe0352f0999c6ca9c601",".agents\u002Fskills\u002Fnitro",45,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior","https:\u002F\u002Fjunior.sentry.dev","https:\u002F\u002Fgithub.com\u002Fgetsentry","https:\u002F\u002Fsentry.io","Real-time crash reporting for your web apps, mobile apps, and games.","2026-11-13 03:38:20",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add getsentry\u002Fjunior --skill nitro",{"tool":60,"command":61},"bunx","bunx skills add getsentry\u002Fjunior --skill nitro",{"tool":63,"command":64},"pnpm","pnpm dlx skills add getsentry\u002Fjunior --skill nitro","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002FSKILL.md",true,[68,74,78,82],{"path":69,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":72,"sourceHtmlUrl":73},"references\u002Fapi-surface.md","REFERENCE","参考文档",22548,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002Freferences\u002Fapi-surface.md",{"path":75,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":76,"sourceHtmlUrl":77},"references\u002Fcommon-use-cases.md",11757,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002Freferences\u002Fcommon-use-cases.md",{"path":79,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":80,"sourceHtmlUrl":81},"references\u002Ftroubleshooting-workarounds.md",11420,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002Freferences\u002Ftroubleshooting-workarounds.md",{"path":83,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":84,"sourceHtmlUrl":85},"SOURCES.md",10229,"https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnitro\u002FSOURCES.md",[87,118,146,169,192,211],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":98,"publishedAt":39},"01M6CT5E87W8P93FGAVYDWD6RD","junior","Build, review, or update Junior extension skills and plugins. Use when users ask to create a Junior SKILL.md, app skill, plugin, plugin.yaml, packaged plugin, MCP-backed plugin, OAuth or credentialed plugin, or to validate Junior extension files. Do not use for ordinary Junior usage, provider workflows, generic code editing, or non-Junior agent-skill authoring.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fskills\u002Fjunior\u002FSKILL.md",[93],{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[89,99,100,101,102,103,104,19,105,106,107,108,109,110,111,27,112,113,114,115,116,117,20],"do","provider","editing","skill authoring","files","MCP","OAuth","workflows","ask","code","review","create","plugin","update","app","usage","users","generic","for",{"skillNo":119,"name":120,"nameZh":6,"description":121,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":128,"publishedAt":39},"01M6CT5AQRDSG19SBJACXGPMY9","junior-qa","Validate Junior changes through local app-facing paths. Use for local client or agent QA, dashboard mock reporting UI QA, sharing a preview URL of a running UI, Docker sandbox provider QA (also from inside a Vercel Sandbox), PR readiness, plugin CLI commands, skill\u002Ftool\u002Fprompt\u002Fplugin behavior, and behavior that tests do not cover well but can be exercised with `pnpm cli -- chat ...`, another `pnpm cli` command, or `JUNIOR_DASHBOARD_MOCK_CONVERSATIONS=true pnpm dev`.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fskills\u002Fjunior-qa\u002FSKILL.md",[124,127],{"categoryNo":125,"categoryName":126,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},[129,130,89,113,131,132,133,134,135,136,137,138,139,140,141,142,143,144,63,145],"qa","junior qa","conversations","local","URL","preview","dashboard","cli","command","reporting","pr readiness","commands","paths","cover","ui","but","running",{"skillNo":147,"name":148,"nameZh":6,"description":149,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":153,"publishedAt":39},"01M6CT58D1SJNFZ19ZXK64ZX0R","eval-auth","Use for `\u002Feval-auth` requests in MCP auth-resume integration tests. Always connect through the disclosed MCP tool before answering, then continue the user's actual request using prior thread context when needed.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior\u002Ftests\u002Ffixtures\u002Fplugins\u002Feval-auth\u002Fskills\u002Feval-auth\u002FSKILL.md",[152],{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},[154,155,156,157,158,159,160,161,104,19,162,163,164,165,117,166,167,168,20],"eval auth","auth","eval","resume","integration tests","tool","integration","continue","connect","user","context","requests","request","tests","thread",{"skillNo":170,"name":171,"nameZh":6,"description":172,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":173,"categories":174,"keywords":175,"publishedAt":39},"01M6CT55MZKCVBJH2X7T1HCRPX","jr-rpc","Manage low-level config and plugin introspection flows via jr-rpc bash commands. Use only when the user explicitly asks to read or update provider defaults\u002Fconfig or list installed plugins. Do not use for PR, branch, push, or auth-order questions; load the matching provider skill instead.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior\u002Fskills\u002Fjr-rpc\u002FSKILL.md",[],[176,177,99,178,111,179,180,181,155,100,182,112,183,38,184,185,186,19,187,163,117,188,189,20,190,191],"jr rpc","rpc","branch","push","pr","introspection","manage","read","plugins","only","list","Bash","flows","load","via","questions",{"skillNo":193,"name":194,"nameZh":6,"description":195,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":196,"categories":197,"keywords":198,"publishedAt":39},"01M6PQN1EZPHRJ5XAJP2J3ZS2T","xdotcom","Read public X (Twitter) data through the read-only X API v2. Use when users share an x.com or twitter.com link, or ask what someone posted on X, what people are saying about a topic, product, or launch on X, how much chatter something got, or for a post's text, metrics, replies, or an account's recent posts. Do not use it to post, reply, like, repost, follow, or send DMs, or to read private or protected data.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-xdotcom\u002Fskills\u002Fxdotcom\u002FSKILL.md",[],[194,99,199,117,200,201,202,203,185,204,19,205,107,187,206,207,208,115,209,210,20],"posts","read-only","x api","send","twitter","chatter","people","api","share","replies","text","post",{"skillNo":212,"name":29,"nameZh":6,"description":213,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":214,"categories":215,"keywords":216,"publishedAt":39},"01M6CT5386D90KE6YH8Q8WGQZ0","Deploy and inspect Vercel apps, assign aliases, delete deployments, investigate logs, and monitor deployment outcomes. Use for Vercel deployment and log requests, not GitHub code changes or other cloud providers.","https:\u002F\u002Fgithub.com\u002Fgetsentry\u002Fjunior\u002Fblob\u002Fmain\u002Fpackages\u002Fjunior-vercel\u002Fskills\u002Fvercel\u002FSKILL.md",[],[29,217,218,219,220,36,221,222,223,224,225,19,37,108,226,227,228,117,229,230,231,232,165],"investigate","delete","outcomes","github","monitor","vercel deployment","github code","deployments","cloud","Providers","logs","log","inspect","assign","apps","changes"]