[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-netlify-netlify-identity-zh-CN":3,"guides-for-netlify-netlify-identity":540,"similar-k170mmr549jkqghjyp3y2gxcr186nh6y-zh-CN":541},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":15,"identity":241,"isFallback":225,"parentExtension":245,"providers":304,"relations":308,"repo":310,"tags":537,"workflow":538},1778694990914.8232,"k170mmr549jkqghjyp3y2gxcr186nh6y",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":13,"sourceUrl":14},"用于身份验证、用户注册、登录、密码恢复、OAuth 提供商、基于角色的访问控制或保护路由和函数。始终使用 `@netlify/identity`。切勿使用 `netlify-identity-widget` 或 `gotrue-js` — 它们已弃用。",{"claudeCode":12},"netlify/context-and-tools","netlify-identity","https://github.com/netlify/context-and-tools",{"_creationTime":16,"_id":17,"extensionId":5,"locale":18,"result":19,"trustSignals":223,"workflow":239},1778694990914.8235,"kn75arax1fnchw46fn5w7tn72586m63m","zh-CN",{"checks":20,"evaluatedAt":192,"extensionSummary":193,"features":194,"nonGoals":200,"promptVersionExtension":204,"promptVersionScoring":205,"purpose":206,"rationale":207,"score":208,"summary":209,"tags":210,"tier":217,"useCases":218},[21,26,29,32,36,39,44,48,51,54,58,62,65,69,72,75,78,81,84,87,91,95,99,103,107,110,113,116,120,123,126,129,132,135,138,142,146,150,153,157,160,163,166,169,173,176,179,182,185,189],{"category":22,"check":23,"severity":24,"summary":25},"Practical Utility","Problem relevance","pass","描述清楚地说明了用户身份验证和相关任务的问题，指定了目标构件（@netlify/identity）和用户意图（注册、登录等）。",{"category":22,"check":27,"severity":24,"summary":28},"Unique selling proposition","该技能为 Netlify Identity 提供了一个统一的无头 API，清楚地区分了它与已弃用的库，并提供了超越基本 API 调用的价值。",{"category":22,"check":30,"severity":24,"summary":31},"Production readiness","该技能提供了一个完整的身份验证 API，包括设置、快速入门示例、核心 API 函数、错误处理和高级模式，适合生产使用。",{"category":33,"check":34,"severity":24,"summary":35},"Scope","Single responsibility principle","该技能仅专注于 Netlify Identity 的用户身份验证和管理，遵循单一领域。",{"category":33,"check":37,"severity":24,"summary":38},"Description quality","描述准确地反映了该技能的功能，清楚地说明了其目的和推荐的库，同时警告不要使用已弃用的库。",{"category":40,"check":41,"severity":42,"summary":43},"Invocation","Scoped tools","not_applicable","这是一个技能，而不是基于工具的扩展，因此作用域工具不适用。",{"category":45,"check":46,"severity":24,"summary":47},"Documentation","Configuration & parameter reference","SKILL.md 提供了详细的 API 函数、错误类型和设置说明，包括 Netlify Identity 的配置详细信息。",{"category":33,"check":49,"severity":42,"summary":50},"Tool naming","这是一个技能，而不是基于工具的扩展，因此工具命名不适用。",{"category":33,"check":52,"severity":42,"summary":53},"Minimal I/O surface","这是一个技能，而不是基于工具的扩展，因此 I/O 表面不适用。",{"category":55,"check":56,"severity":24,"summary":57},"License","License usability","该项目包含标准的 MIT 许可证文件，清楚地表明了允许的开源许可证。",{"category":59,"check":60,"severity":24,"summary":61},"Maintenance","Commit recency","最后一次提交是在 2026 年 5 月 8 日，在过去 90 天内。",{"category":59,"check":63,"severity":24,"summary":64},"Dependency Management","SKILL.md 声明了 `npm install @netlify/identity`，README 指示使用 lockfile 进行安装。",{"category":66,"check":67,"severity":24,"summary":68},"Security","Secret Management","该技能的文档和示例不暴露秘密，并侧重于 API 交互，而不是直接的秘密处理。",{"category":66,"check":70,"severity":24,"summary":71},"Injection","该技能使用定义明确的 TypeScript API，并且似乎不会加载或执行外部、不受信任的数据作为指令。",{"category":66,"check":73,"severity":24,"summary":74},"Transitive Supply-Chain Grenades","该技能依赖于标准的 npm 包，并且在运行时不获取远程内容进行执行。",{"category":66,"check":76,"severity":24,"summary":77},"Sandbox Isolation","该技能与定义的 API 交互，并且不执行超出其预期范围的文件操作。",{"category":66,"check":79,"severity":24,"summary":80},"Sandbox escape primitives","在提供的代码片段中未检测到分离的进程或拒绝调用的重试循环。",{"category":66,"check":82,"severity":24,"summary":83},"Data Exfiltration","该技能的 API 函数在 Netlify 平台内处理身份验证和用户数据；没有明显的未记录的传出调用或机密数据提交。",{"category":66,"check":85,"severity":24,"summary":86},"Hidden Text Tricks","捆绑的 markdown 内容没有隐藏的控制技巧、不可见的 Unicode 或其他混淆方法。",{"category":88,"check":89,"severity":24,"summary":90},"Hooks","Opaque code execution","该技能使用标准的 TypeScript 和 npm 包；没有混淆的代码或运行时脚本获取。",{"category":92,"check":93,"severity":24,"summary":94},"Portability","Structural Assumption","该技能的假设主要关于 Netlify 环境和 `@netlify/identity` 包，而不是用户项目结构。",{"category":96,"check":97,"severity":24,"summary":98},"Trust","Issues Attention","在过去 90 天内，打开了 1 个问题，关闭了 4 个问题，表明维护者积极参与且关闭率健康。",{"category":100,"check":101,"severity":24,"summary":102},"Versioning","Release Management","该项目使用 `npm install @netlify/identity`，README 引用了最近的提交，这暗示了通过 npm 或 Git 进行版本管理。",{"category":104,"check":105,"severity":24,"summary":106},"Code Execution","Validation","TypeScript API 使用强类型，并且 `AuthError` 的错误处理表明包含了输入验证。",{"category":66,"check":108,"severity":24,"summary":109},"Unguarded Destructive Operations","身份验证操作本身不具有破坏性，而是通过 API 调用处理，而不是直接的文件系统操作。",{"category":104,"check":111,"severity":24,"summary":112},"Error Handling","该技能明确定义了 `AuthError` 和 `MissingIdentityError`，并提供了显示 try-catch 块以实现健壮错误管理的示例。",{"category":104,"check":114,"severity":42,"summary":115},"Logging","作为一个客户端/API 重点的技能，显式的本地审计日志不适用。",{"category":117,"check":118,"severity":24,"summary":119},"Compliance","GDPR","该技能在 Netlify 的平台内处理用户身份验证；数据处理由 Netlify 的基础设施管理，该基础设施是合规的。",{"category":117,"check":121,"severity":24,"summary":122},"Target market","该技能在全球范围内适用于任何 Netlify 项目，未检测到区域限制。",{"category":92,"check":124,"severity":24,"summary":125},"Runtime stability","该技能使用标准的 TypeScript 和 npm 包，确保在 Node.js 环境中的广泛兼容性。",{"category":45,"check":127,"severity":24,"summary":128},"README","README 提供了 Netlify 所有技能（包括此技能）的全面概述，并附有清晰的安装和使用说明。",{"category":33,"check":130,"severity":42,"summary":131},"Tool surface size","这是一个具有 API 的技能，而不是一组离散的工具，因此工具表面大小不适用。",{"category":40,"check":133,"severity":42,"summary":134},"Overlapping near-synonym tools","该技能公开了一个 API，而不是具有重叠近义词的离散工具。",{"category":45,"check":136,"severity":24,"summary":137},"Phantom features","所有宣传的功能（登录、注册、OAuth 等）都可以通过记录的 API 函数直接实现。",{"category":139,"check":140,"severity":24,"summary":141},"Install","Installation instruction","README 提供了适用于各种平台（Codex、Copilot CLI、Claude Code、Cursor）的清晰安装说明，并包括了调用示例。",{"category":143,"check":144,"severity":24,"summary":145},"Errors","Actionable error messages","该技能定义了带有状态码和消息的 `AuthError` 以及 `MissingIdentityError`，提供了失败的清晰原因和潜在的后续步骤。",{"category":147,"check":148,"severity":24,"summary":149},"Execution","Pinned dependencies","安装说明（`npm install @netlify/identity`）暗示了通过 npm 进行依赖项管理，npm 通常使用 lockfile。",{"category":33,"check":151,"severity":42,"summary":152},"Dry-run preview","身份验证操作不是以需要干运行预览的方式进行状态更改的。",{"category":154,"check":155,"severity":24,"summary":156},"Protocol","Idempotent retry & timeouts","API 函数处理身份验证，并且是为网络交互设计的，这意味着重试机制和超时由底层的 `@netlify/identity` 库管理。",{"category":117,"check":158,"severity":24,"summary":159},"Telemetry opt-in","该技能本身似乎不发出遥测数据；它依赖于 Netlify 的平台进行用户管理，该平台将有其自己的遥测策略。",{"category":40,"check":161,"severity":24,"summary":162},"Precise Purpose","描述清楚地定义了目的（用户身份验证）并指定了用例（注册、登录等）和边界（始终使用 @netlify/identity，避免使用已弃用的库）。",{"category":40,"check":164,"severity":24,"summary":165},"Concise Frontmatter","frontmatter 简洁明了，在字符限制内有效总结了技能的目的和范围。",{"category":45,"check":167,"severity":24,"summary":168},"Concise Body","SKILL.md 结构良好，侧重于基本的 API 详细信息、代码示例和错误处理，保持核心内容简洁。",{"category":170,"check":171,"severity":24,"summary":172},"Context","Progressive Disclosure","详细的高级模式和 API 参考资料分别提供在单独的 markdown 文件中或 npm 包 README 中，遵循了渐进式披露。",{"category":170,"check":174,"severity":42,"summary":175},"Forked exploration","此技能不是探索或代码审查工具，因此 `context: fork` 不适用。",{"category":22,"check":177,"severity":24,"summary":178},"Usage examples","为登录、注册、注销和 OAuth 等核心功能提供了足够的端到端 TypeScript 示例。",{"category":22,"check":180,"severity":24,"summary":181},"Edge cases","文档明确列出了身份验证操作的失败模式（例如，无效凭据、禁用注册），并附有相应的错误消息和隐含的恢复步骤。",{"category":104,"check":183,"severity":42,"summary":184},"Tool Fallback","此技能直接使用 `@netlify/identity` 包，不依赖外部 MCP 服务器或具有回退功能的工具。",{"category":186,"check":187,"severity":24,"summary":188},"Safety","Halt on unexpected state","API 中的错误处理和验证机制可用于在遇到意外状态（如无效凭据或禁用注册）时停止操作。",{"category":92,"check":190,"severity":24,"summary":191},"Cross-skill coupling","该技能是独立的，仅专注于 Netlify Identity，并且不隐式依赖其他技能。",1778694839668,"该技能提供了一个全面的 API 和文档，用于使用 `@netlify/identity` 包在 Netlify 项目中管理用户身份验证。它涵盖了注册、登录、密码恢复、OAuth、基于角色的访问控制和处理身份验证回调。",[195,196,197,198,199],"用户身份验证 API（登录、注册、注销）","OAuth 提供商集成","密码恢复和电子邮件更改流程","基于角色的访问控制和授权","处理身份验证回调和状态更改",[201,202,203],"提供身份验证表单的用户界面组件","管理身份验证元数据以外的用户数据","处理部署或托管配置","3.0.0","4.4.0","为开发人员提供一个可靠且文档齐全的参考，用于实现 Netlify 的用户身份验证功能。","该技能文档齐全，遵循安全和错误处理的最佳实践，并为其预期用途提供了清晰、可操作的示例。所有检查都以高度的信心通过。",100,"一个高质量的技能，用于管理 Netlify Identity 身份验证功能，拥有出色的文档和示例。",[211,212,213,214,215,216],"authentication","netlify","identity","javascript","typescript","api","verified",[219,220,221,222],"为 Web 应用程序实现用户注册和登录","根据用户角色保护路由和函数","集成第三方 OAuth 提供商进行身份验证","处理密码重置流程和电子邮件验证",{"codeQuality":224,"collectedAt":226,"documentation":227,"maintenance":230,"security":235,"testCoverage":237},{"hasLockfile":225},false,1778694822726,{"descriptionLength":228,"readmeSize":229},269,7052,{"closedIssues90d":231,"forks":231,"hasChangelog":225,"openIssues90d":232,"pushedAt":233,"stars":234},4,1,1778259488000,17,{"hasNpmPackage":225,"license":236,"smitheryVerified":225},"MIT",{"hasCi":238,"hasTests":225},true,{"updatedAt":240},1778694990914,{"basePath":242,"githubOwner":212,"githubRepo":243,"locale":18,"slug":13,"type":244},"skills/netlify-identity","context-and-tools","skill",{"_creationTime":246,"_id":247,"community":248,"display":249,"identity":254,"parentExtension":258,"providers":289,"relations":299,"tags":300,"workflow":301},1778694599571.3743,"k1714spp30a0rvg5y3yjga772n86nmps",{"reviewCount":8},{"description":250,"installMethods":251,"name":253,"sourceUrl":14},"Netlify platform skills for Claude Code",{"claudeCode":252},"netlify-skills","Netlify Context and Tools",{"basePath":255,"githubOwner":212,"githubRepo":243,"locale":256,"slug":243,"type":257},"","en","plugin",{"_creationTime":259,"_id":260,"community":261,"display":262,"identity":265,"providers":267,"relations":283,"tags":285,"workflow":286},1778694599571.374,"k1763zftf9a5tzz7km05x63e2s86n85v",{"reviewCount":8},{"description":255,"installMethods":263,"name":264,"sourceUrl":14},{"claudeCode":12},"netlify-context-and-tools",{"basePath":255,"githubOwner":212,"githubRepo":243,"locale":256,"slug":243,"type":266},"marketplace",{"evaluate":268,"extract":278},{"promptVersionExtension":269,"promptVersionScoring":205,"score":270,"tags":271,"targetMarket":276,"tier":277},"3.1.0",97,[212,272,273,274,275],"developer-tools","sdk","documentation","ai-agent","global","community",{"commitSha":279,"marketplace":280,"plugin":281},"HEAD",{"name":264,"pluginCount":232},{"mcpCount":8,"provider":282,"skillCount":8},"classify",{"repoId":284},"kd7b1ncy2zzzfws29grdt8heb986ntzq",[275,272,274,212,273],{"evaluatedAt":287,"extractAt":288,"updatedAt":287},1778694611877,1778694599571,{"evaluate":290,"extract":296},{"promptVersionExtension":204,"promptVersionScoring":205,"score":291,"tags":292,"targetMarket":276,"tier":277},98,[212,293,294,295,272],"cli","deployment","serverless",{"commitSha":279,"license":236,"plugin":297},{"mcpCount":8,"provider":282,"skillCount":298},13,{"parentExtensionId":260,"repoId":284},[293,294,272,212,295],{"evaluatedAt":302,"extractAt":288,"updatedAt":303},1778694629384,1778694991614,{"evaluate":305,"extract":307},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":306,"targetMarket":276,"tier":217},[211,212,213,214,215,216],{"commitSha":279},{"parentExtensionId":247,"repoId":284,"translatedFrom":309},"k17f1596a2t00btq1hfksssg0s86n6ej",{"_creationTime":311,"_id":284,"identity":312,"providers":313,"workflow":533},1778694595297.2703,{"githubOwner":212,"githubRepo":243,"sourceUrl":14},{"classify":314,"discover":528,"github":531},{"commitSha":279,"extensions":315},[316,329,366,400,408,416,424,432,440,456,470,478,486,502,510,518],{"basePath":255,"displayName":264,"installMethods":317,"rationale":318,"selectedPaths":319,"source":328,"sourceLanguage":256,"type":266},{"claudeCode":12},"marketplace.json at .claude-plugin/marketplace.json",[320,323,325],{"path":321,"priority":322},".claude-plugin/marketplace.json","mandatory",{"path":324,"priority":322},"README.md",{"path":326,"priority":327},"LICENSE","high","rule",{"basePath":255,"description":250,"displayName":252,"installMethods":330,"rationale":331,"selectedPaths":332,"source":328,"sourceLanguage":256,"type":257},{"claudeCode":252},"plugin manifest at .claude-plugin/plugin.json",[333,335,336,337,340,342,344,346,348,350,352,354,356,358,360,362,364],{"path":334,"priority":322},".claude-plugin/plugin.json",{"path":324,"priority":322},{"path":326,"priority":327},{"path":338,"priority":339},"skills/netlify-ai-gateway/SKILL.md","medium",{"path":341,"priority":339},"skills/netlify-blobs/SKILL.md",{"path":343,"priority":339},"skills/netlify-caching/SKILL.md",{"path":345,"priority":339},"skills/netlify-cli-and-deploy/SKILL.md",{"path":347,"priority":339},"skills/netlify-config/SKILL.md",{"path":349,"priority":339},"skills/netlify-database/SKILL.md",{"path":351,"priority":339},"skills/netlify-deploy/SKILL.md",{"path":353,"priority":339},"skills/netlify-edge-functions/SKILL.md",{"path":355,"priority":339},"skills/netlify-forms/SKILL.md",{"path":357,"priority":339},"skills/netlify-frameworks/SKILL.md",{"path":359,"priority":339},"skills/netlify-functions/SKILL.md",{"path":361,"priority":339},"skills/netlify-identity/SKILL.md",{"path":363,"priority":339},"skills/netlify-image-cdn/SKILL.md",{"path":365,"priority":327},".cursor-plugin/plugin.json",{"basePath":367,"description":368,"displayName":369,"installMethods":370,"rationale":371,"selectedPaths":372,"source":328,"sourceLanguage":256,"type":244},".claude/skills/skill-creator","Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.","skill-creator",{"claudeCode":12},"SKILL.md frontmatter at .claude/skills/skill-creator/SKILL.md",[373,375,377,380,382,384,386,388,390,392,394,396,398],{"path":374,"priority":322},"SKILL.md",{"path":376,"priority":327},"LICENSE.txt",{"path":378,"priority":379},"assets/eval_review.html","low",{"path":381,"priority":339},"references/schemas.md",{"path":383,"priority":379},"scripts/__init__.py",{"path":385,"priority":379},"scripts/aggregate_benchmark.py",{"path":387,"priority":379},"scripts/generate_report.py",{"path":389,"priority":379},"scripts/improve_description.py",{"path":391,"priority":379},"scripts/package_skill.py",{"path":393,"priority":379},"scripts/quick_validate.py",{"path":395,"priority":379},"scripts/run_eval.py",{"path":397,"priority":379},"scripts/run_loop.py",{"path":399,"priority":379},"scripts/utils.py",{"basePath":401,"description":402,"displayName":403,"installMethods":404,"rationale":405,"selectedPaths":406,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-ai-gateway","Reference for Netlify AI Gateway — the managed proxy that routes calls to OpenAI, Anthropic, and Google Gemini SDKs without provider API keys. Use this skill any time the user wants to add AI on a Netlify site (chat, completion, reasoning, image generation, image-to-image edit/stylize), choose or change a model, wire up the OpenAI / Anthropic / @google/genai SDK, decide which provider to use for an image-gen feature (it's Gemini-only on the gateway), or debug \"model not found\" / \"API key missing\" against the gateway. Required reading before pinning a model — the gateway exposes a curated subset, not every provider model.","netlify-ai-gateway",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-ai-gateway/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-ai-gateway)",[407],{"path":374,"priority":322},{"basePath":409,"description":410,"displayName":411,"installMethods":412,"rationale":413,"selectedPaths":414,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-blobs","Guide for using Netlify Blobs for file and asset storage — images, documents, uploads, exports, cached binary artifacts. Covers getStore(), CRUD operations, metadata, listing, deploy-scoped vs site-scoped stores, and local development. Do NOT use Blobs as a dynamic data store — use Netlify Database for that.","netlify-blobs",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-blobs/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-blobs)",[415],{"path":374,"priority":322},{"basePath":417,"description":418,"displayName":419,"installMethods":420,"rationale":421,"selectedPaths":422,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-caching","Guide for controlling caching on Netlify's CDN. Use when configuring cache headers, setting up stale-while-revalidate, implementing on-demand cache purge, or understanding Netlify's CDN caching behavior. Covers Cache-Control, Netlify-CDN-Cache-Control, cache tags, durable cache, and framework-specific caching patterns.","netlify-caching",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-caching/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-caching)",[423],{"path":374,"priority":322},{"basePath":425,"description":426,"displayName":427,"installMethods":428,"rationale":429,"selectedPaths":430,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-cli-and-deploy","Guide for using the Netlify CLI and deploying sites. Use when installing the CLI, linking sites, deploying (Git-based or manual), managing environment variables, or running local development. Covers netlify dev, netlify deploy, Git vs non-Git workflows, and environment variable management.","netlify-cli-and-deploy",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-cli-and-deploy/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-cli-and-deploy)",[431],{"path":374,"priority":322},{"basePath":433,"description":434,"displayName":435,"installMethods":436,"rationale":437,"selectedPaths":438,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-config","Reference for netlify.toml configuration. Use when configuring build settings, redirects, rewrites, headers, deploy contexts, environment variables, or any site-level configuration. Covers the complete netlify.toml syntax including redirects with splats/conditions, headers, deploy contexts, functions config, and edge functions config.","netlify-config",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-config/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-config)",[439],{"path":374,"priority":322},{"basePath":441,"description":442,"displayName":443,"installMethods":444,"rationale":445,"selectedPaths":446,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-database","Guide for using Netlify Database — the GA managed Postgres product built into Netlify. Use when a project needs any kind of dynamic, structured, or relational data. Covers provisioning via @netlify/database, Drizzle ORM (@beta) setup, migrations, preview branching, and safe production data handling. Blobs is only for file/asset storage — any dynamic data belongs in the database.","netlify-database",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-database/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-database)",[447,448,450,452,454],{"path":374,"priority":322},{"path":449,"priority":339},"references/legacy-extension.md",{"path":451,"priority":339},"references/local-dev.md",{"path":453,"priority":339},"references/migration-from-extension.md",{"path":455,"priority":339},"references/migrations.md",{"basePath":457,"description":458,"displayName":459,"installMethods":460,"rationale":461,"selectedPaths":462,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-deploy","Deploy web projects to Netlify using the Netlify CLI (`npx netlify`). Use when the user asks to deploy, host, publish, or link a site/repo on Netlify, including preview and production deploys.","netlify-deploy",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-deploy/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-deploy)",[463,464,466,468],{"path":374,"priority":322},{"path":465,"priority":339},"references/cli-commands.md",{"path":467,"priority":339},"references/deployment-patterns.md",{"path":469,"priority":339},"references/netlify-toml.md",{"basePath":471,"description":472,"displayName":473,"installMethods":474,"rationale":475,"selectedPaths":476,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-edge-functions","Guide for writing Netlify Edge Functions. Use when building middleware, geolocation-based logic, request/response manipulation, authentication checks, A/B testing, or any low-latency edge compute. Covers Deno runtime, context.next() middleware pattern, geolocation, and when to choose edge vs serverless.","netlify-edge-functions",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-edge-functions/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-edge-functions)",[477],{"path":374,"priority":322},{"basePath":479,"description":480,"displayName":481,"installMethods":482,"rationale":483,"selectedPaths":484,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-forms","Guide for using Netlify Forms for HTML form handling. Use when adding contact forms, feedback forms, file upload forms, or any form that should be collected by Netlify. Covers the data-netlify attribute, spam filtering, AJAX submissions, file uploads, notifications, and the submissions API.","netlify-forms",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-forms/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-forms)",[485],{"path":374,"priority":322},{"basePath":487,"description":488,"displayName":489,"installMethods":490,"rationale":491,"selectedPaths":492,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-frameworks","Guide for deploying web frameworks on Netlify. Use when setting up a framework project (Vite/React, Astro, TanStack Start, Next.js, Nuxt, SvelteKit, Remix) for Netlify deployment, configuring adapters or plugins, or troubleshooting framework-specific Netlify integration. Covers what Netlify needs from each framework and how adapters handle server-side rendering.","netlify-frameworks",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-frameworks/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-frameworks)",[493,494,496,498,500],{"path":374,"priority":322},{"path":495,"priority":339},"references/astro.md",{"path":497,"priority":339},"references/nextjs.md",{"path":499,"priority":339},"references/tanstack.md",{"path":501,"priority":339},"references/vite.md",{"basePath":503,"description":504,"displayName":505,"installMethods":506,"rationale":507,"selectedPaths":508,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-functions","Guide for writing Netlify serverless functions. Use when creating API endpoints, background processing, scheduled tasks, or any server-side logic using Netlify Functions. Covers modern syntax (default export + Config), TypeScript, path routing, background functions, scheduled functions, streaming, and method routing.","netlify-functions",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-functions/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-functions)",[509],{"path":374,"priority":322},{"basePath":242,"description":511,"displayName":13,"installMethods":512,"rationale":513,"selectedPaths":514,"source":328,"sourceLanguage":256,"type":244},"Use when the task involves authentication, user signups, logins, password recovery, OAuth providers, role-based access control, or protecting routes and functions. Always use `@netlify/identity`. Never use `netlify-identity-widget` or `gotrue-js` — they are deprecated.",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-identity/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-identity)",[515,516],{"path":374,"priority":322},{"path":517,"priority":339},"references/advanced-patterns.md",{"basePath":519,"description":520,"displayName":521,"installMethods":522,"rationale":523,"selectedPaths":524,"source":328,"sourceLanguage":256,"type":244},"skills/netlify-image-cdn","Guide for using Netlify Image CDN for image optimization and transformation. Use when serving optimized images, creating responsive image markup, setting up user-uploaded image pipelines, or configuring image transformations. Covers the /.netlify/images endpoint, query parameters, remote image allowlisting, clean URL rewrites, and composing uploads with Functions + Blobs.","netlify-image-cdn",{"claudeCode":12},"SKILL.md frontmatter at skills/netlify-image-cdn/SKILL.md (coalesced with duplicate skill at codex/skills/netlify-image-cdn)",[525,526],{"path":374,"priority":322},{"path":527,"priority":339},"references/user-uploads.md",{"sources":529},[530],"manual",{"closedIssues90d":231,"description":255,"forks":231,"license":236,"openIssues90d":232,"pushedAt":233,"readmeSize":229,"stars":234,"topics":532},[],{"classifiedAt":534,"discoverAt":535,"extractAt":536,"githubAt":536,"updatedAt":534},1778694599156,1778694595297,1778694597271,[216,211,213,214,212,215],{"evaluatedAt":539,"extractAt":288,"updatedAt":240},1778694839805,[],[542,572,599,629,657,688],{"_creationTime":543,"_id":544,"community":545,"display":546,"identity":552,"providers":557,"relations":565,"tags":568,"workflow":569},1778682677410.036,"k175ceb6bs7yjnm2q2x7m611n986nmja",{"reviewCount":8},{"description":547,"installMethods":548,"name":550,"sourceUrl":551},"Use when adding authentication to Vanilla JS, Svelte, or any framework-agnostic single-page applications - integrates @auth0/auth0-spa-js SDK for SPAs without framework-specific wrappers",{"claudeCode":549},"auth0/agent-skills","Auth0 SPA JS Integration","https://github.com/auth0/agent-skills",{"basePath":553,"githubOwner":554,"githubRepo":555,"locale":256,"slug":556,"type":244},"plugins/auth0/skills/auth0-spa-js","auth0","agent-skills","auth0-spa-js",{"evaluate":558,"extract":563},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":559,"targetMarket":276,"tier":217},[211,554,560,214,561,562],"spa","svelte","configuration",{"commitSha":279,"license":564},"Apache-2.0",{"parentExtensionId":566,"repoId":567},"k17b52m0t4j5ryyvea95kdqqr186nk9e","kd7d2wx4927yddhxgfpzw6t10x86m349",[554,211,562,214,560,561],{"evaluatedAt":570,"extractAt":571,"updatedAt":570},1778683297591,1778682677410,{"_creationTime":573,"_id":574,"community":575,"display":576,"identity":582,"providers":586,"relations":592,"tags":595,"workflow":596},1778699234184.6133,"k170q6m14w6ah5ygc0jr5sa54986mpx7",{"reviewCount":8},{"description":577,"installMethods":578,"name":580,"sourceUrl":581},"Deep codebase initialization with hierarchical AGENTS.md documentation",{"claudeCode":579},"Yeachan-Heo/oh-my-claudecode","deepinit","https://github.com/Yeachan-Heo/oh-my-claudecode",{"basePath":583,"githubOwner":584,"githubRepo":585,"locale":256,"slug":580,"type":244},"skills/deepinit","Yeachan-Heo","oh-my-claudecode",{"evaluate":587,"extract":591},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":588,"targetMarket":276,"tier":217},[274,589,590,215,214],"codebase","agent",{"commitSha":279},{"parentExtensionId":593,"repoId":594},"k17brg5egdw1jbncj1j4wfv3fh86n639","kd74zv63fryf9prygtq7gf4es986n22y",[590,589,274,214,215],{"evaluatedAt":597,"extractAt":598,"updatedAt":597},1778699437749,1778699234184,{"_creationTime":600,"_id":601,"community":602,"display":603,"identity":609,"providers":613,"relations":623,"tags":625,"workflow":626},1778696052276.0203,"k17bgxxgryq8edg32egypsvqtn86m1h7",{"reviewCount":8},{"description":604,"installMethods":605,"name":607,"sourceUrl":608},"Detect and untangle circular dependencies. Runs madge/skott (TS), pycycle (Py), or compiler-only checks (Go/Rust). Auto-fixes leaf-extractable cycles; reports core cycles for human review. Use when the user asks to find circular imports, fix dependency cycles, or untangle module graph. Example queries — \"find circular imports\", \"fix dependency cycles\", \"untangle our module graph\", \"why is madge complaining\".",{"claudeCode":606},"raintree-technology/claude-starter","cleanup-cycles","https://github.com/raintree-technology/claude-starter",{"basePath":610,"githubOwner":611,"githubRepo":612,"locale":256,"slug":607,"type":244},"templates/.claude/skills/cleanup-cycles","raintree-technology","claude-starter",{"evaluate":614,"extract":622},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":615,"targetMarket":276,"tier":217},[616,617,214,618,215,619,620,621],"code-quality","dependencies","python","go","rust","refactoring",{"commitSha":279},{"repoId":624},"kd78ywakatnz4sjfx781sy14vh86mtty",[616,617,619,214,618,621,620,215],{"evaluatedAt":627,"extractAt":628,"updatedAt":627},1778696977114,1778696052276,{"_creationTime":630,"_id":631,"community":632,"display":633,"identity":639,"providers":643,"relations":650,"tags":653,"workflow":654},1778690831986.3765,"k179x509d3fng6rhce5txz8grx86m5mw",{"reviewCount":8},{"description":634,"installMethods":635,"name":637,"sourceUrl":638},"Vue Router 4 patterns, navigation guards, route params, and route-component lifecycle interactions.",{"claudeCode":636},"hyf0/vue-skills","vue-router-best-practices","https://github.com/hyf0/vue-skills",{"basePath":640,"githubOwner":641,"githubRepo":642,"locale":256,"slug":637,"type":244},"skills/vue-router-best-practices","hyf0","vue-skills",{"evaluate":644,"extract":649},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":645,"targetMarket":276,"tier":217},[646,647,214,215,648],"vue","vue-router","web-development",{"commitSha":279},{"parentExtensionId":651,"repoId":652},"k17fvvpt61wrah7aepwqhgjp4d86n8jx","kd7a1a0bdc2ez150x3razht61n86m6a8",[214,215,646,647,648],{"evaluatedAt":655,"extractAt":656,"updatedAt":655},1778691174475,1778690831986,{"_creationTime":658,"_id":659,"community":660,"display":661,"identity":667,"providers":671,"relations":681,"tags":684,"workflow":685},1778687299685.3901,"k1766avpz66czpkss71dc79vq586nf9j",{"reviewCount":8},{"description":662,"installMethods":663,"name":665,"sourceUrl":666},"Full Sentry SDK setup for React Router Framework mode. Use when asked to \"add Sentry to React Router Framework\", \"install @sentry/react-router\", or configure error monitoring, tracing, profiling, session replay, logs, or user feedback for a React Router v7 framework app.",{"claudeCode":664},"getsentry/sentry-for-ai","sentry-react-router-framework-sdk","https://github.com/getsentry/sentry-for-ai",{"basePath":668,"githubOwner":669,"githubRepo":670,"locale":256,"slug":665,"type":244},"skills/sentry-react-router-framework-sdk","getsentry","sentry-for-ai",{"evaluate":672,"extract":680},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":673,"targetMarket":276,"tier":217},[674,675,676,677,678,679,215,214],"react","sentry","sdk-setup","error-monitoring","tracing","profiling",{"commitSha":279},{"parentExtensionId":682,"repoId":683},"k179krjesmjphb7bqfh43701sn86n8mn","kd72wxwjk5zaddkehkc2ftrzfh86nk3n",[677,214,679,674,676,675,678,215],{"evaluatedAt":686,"extractAt":687,"updatedAt":686},1778687838591,1778687299685,{"_creationTime":689,"_id":690,"community":691,"display":692,"identity":698,"providers":701,"relations":708,"tags":711,"workflow":712},1778693180473.115,"k17eh377dgcr1q3p40y84yr5r986mwmn",{"reviewCount":8},{"description":693,"installMethods":694,"name":696,"sourceUrl":697},"Azure Identity SDK for Python authentication with Microsoft Entra ID. Use for DefaultAzureCredential, managed identity, service principals, and token caching.\nTriggers: \"azure-identity\", \"DefaultAzureCredential\", \"authentication\", \"managed identity\", \"service principal\", \"credential\".\n",{"claudeCode":695},"microsoft/agent-skills","azure-identity-py","https://github.com/microsoft/agent-skills",{"basePath":699,"githubOwner":700,"githubRepo":555,"locale":256,"slug":696,"type":244},".github/plugins/azure-sdk-python/skills/azure-identity-py","microsoft",{"evaluate":702,"extract":707},{"promptVersionExtension":204,"promptVersionScoring":205,"score":703,"tags":704,"targetMarket":276,"tier":217},99,[705,618,211,213,706],"azure","entra-id",{"commitSha":279},{"parentExtensionId":709,"repoId":710},"k171mfx6atvhq1bkhpky84v4b186n9qd","kd77czgnv00rfjm815pcc5xx5986n5t8",[211,705,706,213,618],{"evaluatedAt":713,"extractAt":714,"updatedAt":713},1778694941021,1778693180473]