[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M72BC6QHRQGSEEZP7DMV9HCM":3,"skill-same:01M72BC6QHRQGSEEZP7DMV9HCM":52},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":21,"frontMatter":22,"refName":26,"commitSha":27,"skillDirectory":28,"forksCount":13,"repositoryHtmlUrl":29,"repositoryHomepageUrl":6,"ownerHtmlUrl":30,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":31,"install":32,"resources":45},"01M72BC6QHRQGSEEZP7DMV9HCM","dependabot-review",null,"Review and manage Dependabot PRs. Categorizes by risk, checks CI status, auto-merges safe updates, and reports issues. Use when the user says \"review dependabot\", \"merge dependabot\", \"dependabot PRs\", or \"update dependencies\".","Sansar35\u002Fclaude-agent","Sansar35","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F145020281?v=4","01M724CQ2SCC86MGNSD87D0D4K","01M724CQ3965G9WJ3QXE3AJ5YY",1,"MIT","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fdependabot-review\u002FSKILL.md",[],[],"2026-11-10 18:39:20",false,"---\nname: dependabot-review\ndescription: Review and manage Dependabot PRs. Categorizes by risk, checks CI status, auto-merges safe updates, and reports issues. Use when the user says \"review dependabot\", \"merge dependabot\", \"dependabot PRs\", or \"update dependencies\".\nlicense: MIT\nmetadata:\n  author: claude-code-templates\n  version: \"1.0.0\"\n---\n\n# Dependabot PR Review\n\nYou are a dependency management specialist. Your job is to review all open Dependabot PRs, assess risk, and take action.\n\n## Workflow\n\n### Step 1: Discovery\n\nList all open Dependabot PRs:\n\n```bash\ngh pr list --author \"dependabot[bot]\" --state open --json number,title,labels,createdAt,headRefName --limit 50\n```\n\nIf no PRs are found, inform the user and stop.\n\n### Step 2: Classification\n\nFor each PR, classify it into a risk tier based on the branch name and title:\n\n| Tier | Criteria | Action |\n|------|----------|--------|\n| **Safe** | GitHub Actions updates (`dependabot\u002Fgithub_actions\u002F`), patch bumps (`1.2.3` -> `1.2.4`) | Auto-merge |\n| **Low Risk** | Minor bumps (`1.2.0` -> `1.3.0`) for well-known libraries | Auto-merge after CI check |\n| **Review Required** | Major bumps (`1.x` -> `2.x`), unknown libraries, security-tagged PRs | Report to user |\n\nTo determine bump type, parse the PR title. Dependabot titles follow patterns like:\n- `Bump X from 1.2.3 to 1.2.4` (patch)\n- `Bump X from 1.2.0 to 1.3.0` (minor)\n- `Bump X from 1.0.0 to 2.0.0` (major)\n\n### Step 3: CI Check\n\nFor each PR you plan to merge, check CI status:\n\n```bash\ngh pr checks \u003Cnumber> --json name,state,bucket\n```\n\n- If all checks **pass**: proceed with merge\n- If checks are **pending**: wait up to 2 minutes (poll every 30s). If still pending, skip and report as \"CI pending\"\n- If any check **fails**: skip and report to user\n\n### Step 4: Merge Safe PRs\n\nFor PRs classified as Safe or Low Risk with passing CI:\n\n```bash\ngh pr merge \u003Cnumber> --merge --delete-branch\n```\n\n**Important rules:**\n- Never force-merge\n- Never merge PRs with failing CI\n- Never merge major version bumps without user confirmation\n- Merge one at a time to avoid conflicts\n\n### Step 5: Report\n\nAfter processing, present a summary table to the user:\n\n```\n## Dependabot Review Summary\n\n### Merged (X PRs)\n| PR | Update | Type |\n|----|--------|------|\n| #123 | actions\u002Fcheckout v4 -> v6 | GitHub Actions |\n\n### Needs Review (X PRs)\n| PR | Update | Risk | Reason |\n|----|--------|------|--------|\n| #456 | jest 29 -> 30 | Major | Breaking changes possible |\n\n### Skipped (X PRs)\n| PR | Update | Reason |\n|----|--------|--------|\n| #789 | chalk 5.5 -> 5.6 | CI failing |\n```\n\n## Guardrails\n\n- **Always check CI before merging** — never merge red PRs\n- **Major bumps need user approval** — present the changelog and ask\n- **Rate limit merges** — if there are more than 10 PRs, process in batches of 5 and ask the user before continuing\n- **Conflict handling** — if a merge fails due to conflicts, skip it and report. Do not attempt to resolve conflicts\n- **Security PRs** — if a PR has a `security` label or mentions a CVE, always flag it to the user even if it's a patch, so they are aware\n- **Rebase cascades** — after merging several PRs, remaining ones may need rebase. Run `gh pr list --author \"dependabot[bot]\"` again after each batch to see updated status\n\n## Common Patterns\n\n**Quick safe merge (GitHub Actions only):**\nThe user says \"merge the actions PRs\" — filter to `dependabot\u002Fgithub_actions\u002F` branches only.\n\n**Full review:**\nThe user says \"review dependabot\" — run the complete workflow above.\n\n**Dry run:**\nThe user says \"check dependabot\" or \"show dependabot PRs\" — run Steps 1-2 only, report classification without merging.\n","# Dependabot PR Review\n\nYou are a dependency management specialist. Your job is to review all open Dependabot PRs, assess risk, and take action.\n\n## Workflow\n\n### Step 1: Discovery\n\nList all open Dependabot PRs:\n\n```bash\ngh pr list --author \"dependabot[bot]\" --state open --json number,title,labels,createdAt,headRefName --limit 50\n```\n\nIf no PRs are found, inform the user and stop.\n\n### Step 2: Classification\n\nFor each PR, classify it into a risk tier based on the branch name and title:\n\n| Tier | Criteria | Action |\n|------|----------|--------|\n| **Safe** | GitHub Actions updates (`dependabot\u002Fgithub_actions\u002F`), patch bumps (`1.2.3` -> `1.2.4`) | Auto-merge |\n| **Low Risk** | Minor bumps (`1.2.0` -> `1.3.0`) for well-known libraries | Auto-merge after CI check |\n| **Review Required** | Major bumps (`1.x` -> `2.x`), unknown libraries, security-tagged PRs | Report to user |\n\nTo determine bump type, parse the PR title. Dependabot titles follow patterns like:\n- `Bump X from 1.2.3 to 1.2.4` (patch)\n- `Bump X from 1.2.0 to 1.3.0` (minor)\n- `Bump X from 1.0.0 to 2.0.0` (major)\n\n### Step 3: CI Check\n\nFor each PR you plan to merge, check CI status:\n\n```bash\ngh pr checks \u003Cnumber> --json name,state,bucket\n```\n\n- If all checks **pass**: proceed with merge\n- If checks are **pending**: wait up to 2 minutes (poll every 30s). If still pending, skip and report as \"CI pending\"\n- If any check **fails**: skip and report to user\n\n### Step 4: Merge Safe PRs\n\nFor PRs classified as Safe or Low Risk with passing CI:\n\n```bash\ngh pr merge \u003Cnumber> --merge --delete-branch\n```\n\n**Important rules:**\n- Never force-merge\n- Never merge PRs with failing CI\n- Never merge major version bumps without user confirmation\n- Merge one at a time to avoid conflicts\n\n### Step 5: Report\n\nAfter processing, present a summary table to the user:\n\n```\n## Dependabot Review Summary\n\n### Merged (X PRs)\n| PR | Update | Type |\n|----|--------|------|\n| #123 | actions\u002Fcheckout v4 -> v6 | GitHub Actions |\n\n### Needs Review (X PRs)\n| PR | Update | Risk | Reason |\n|----|--------|------|--------|\n| #456 | jest 29 -> 30 | Major | Breaking changes possible |\n\n### Skipped (X PRs)\n| PR | Update | Reason |\n|----|--------|--------|\n| #789 | chalk 5.5 -> 5.6 | CI failing |\n```\n\n## Guardrails\n\n- **Always check CI before merging** — never merge red PRs\n- **Major bumps need user approval** — present the changelog and ask\n- **Rate limit merges** — if there are more than 10 PRs, process in batches of 5 and ask the user before continuing\n- **Conflict handling** — if a merge fails due to conflicts, skip it and report. Do not attempt to resolve conflicts\n- **Security PRs** — if a PR has a `security` label or mentions a CVE, always flag it to the user even if it's a patch, so they are aware\n- **Rebase cascades** — after merging several PRs, remaining ones may need rebase. Run `gh pr list --author \"dependabot[bot]\"` again after each batch to see updated status\n\n## Common Patterns\n\n**Quick safe merge (GitHub Actions only):**\nThe user says \"merge the actions PRs\" — filter to `dependabot\u002Fgithub_actions\u002F` branches only.\n\n**Full review:**\nThe user says \"review dependabot\" — run the complete workflow above.\n\n**Dry run:**\nThe user says \"check dependabot\" or \"show dependabot PRs\" — run Steps 1-2 only, report classification without merging.\n",{"name":5,"license":14,"metadata":23,"description":7},{"author":24,"version":25},"claude-code-templates","1.0.0","main","d046d088ce5a79a083f0abc0fe1b7ded73bc5b1f","claude-config\u002Fskills\u002Fdependabot-review","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent","https:\u002F\u002Fgithub.com\u002FSansar35","2026-05-10 16:04:53",{"source":8,"skillName":5,"commands":33,"prompt":43,"zipAvailable":44},[34,37,40],{"tool":35,"command":36},"npx","npx skills add Sansar35\u002Fclaude-agent --skill dependabot-review",{"tool":38,"command":39},"bunx","bunx skills add Sansar35\u002Fclaude-agent --skill dependabot-review",{"tool":41,"command":42},"pnpm","pnpm dlx skills add Sansar35\u002Fclaude-agent --skill dependabot-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fdependabot-review\u002FSKILL.md",true,[46],{"path":47,"resourceType":48,"resourceTypeDesc":49,"sizeBytes":50,"sourceHtmlUrl":51},".skill-source.json","REFERENCE","参考文档",469,"https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fdependabot-review\u002F.skill-source.json",[53,60,67,74,81,89],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":18},"01M72DVAN1JYEA302MT0C5MGD6","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[],[],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":18},"01M72DV8J5NBRRM4RPDFRV95N7","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzod-validation-expert\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":18},"01M72DV5EMHW0BHP9BZ167MDCB","zinc-database","Access ZINC (230M+ purchasable compounds). Search by ZINC ID\u002FSMILES, similarity searches, 3D-ready structures for docking, analog discovery, for virtual screening and drug discovery.","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzinc-database\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":18},"01M72DV216QY0E693ZPEVQ0DBS","zarr-python","Chunked N-D arrays for cloud storage. Compressed arrays, parallel I\u002FO, S3\u002FGCS integration, NumPy\u002FDask\u002FXarray compatible, for large-scale scientific computing pipelines.","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzarr-python\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":85,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":18},"01M72DTXQREMCRKA8NHCVKHN4W","zapier-workflows","Manage and trigger pre-built Zapier workflows and MCP tool orchestration. Use when user mentions workflows, Zaps, automations, daily digest, research, search, lead tracking, expenses, or asks to \"run\" any process. Also handles Perplexity-based research and Google Sheets data tracking.","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzapier-workflows\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzapier-workflows\u002FSKILL.md",[],[],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":18},"01M72DTT17TBSJ0Y8J2XZ4C9TZ","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points.  This skill covers when to use which platform, how to build reliable automations, and when to graduate to code-based solutions. Key insight: Zapier optimizes for simplicity and integrations (7000+ apps), Make optimizes for power","https:\u002F\u002Fgithub.com\u002FSansar35\u002Fclaude-agent\u002Fblob\u002Fmain\u002Fclaude-config\u002Fskills\u002Fzapier-make-patterns\u002FSKILL.md",[],[]]