[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6XDNCTSHH4EZE4DW6XF4YAX":3,"skill-same:01M6XDNCTSHH4EZE4DW6XF4YAX":80},{"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":59,"commitSha":60,"skillDirectory":61,"forksCount":14,"repositoryHtmlUrl":62,"repositoryHomepageUrl":6,"ownerHtmlUrl":63,"ownerBlogUrl":6,"ownerDescription":64,"updatedAt":65,"install":66,"resources":79},"01M6XDNCTSHH4EZE4DW6XF4YAX","review-prs",null,"Batch-review multiple PRs in parallel: dispatch one sub-agent per PR in an isolated worktree, aggregate results into a summary table. Triggers on: \"review all PRs\", \"check my PRs\", \"PR status\".","kaiohenricunha\u002Fdotbabel","kaiohenricunha","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F69804490?v=4","01M6XCZD37W0KPCDGEA40Y610V","Kaio Cunha","01M6XCZD7SX714D114H3ZPNW09",0,"MIT","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Freview-prs\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"review prs","prs","review","read","sub-agent","n3","my","opus","devex","false","triggers","parallel","table","Bash","github-actions","actions","worktree","batch","pr","status","2026-11-10 10:12:30",false,"---\nid: review-prs\nname: review-prs\ntype: skill\nversion: 1.0.1\ndomain:\n  - devex\nplatform:\n  - github-actions\ntask:\n  - review\nmaturity: draft\nowner: \"@kaiohenricunha\"\ncreated: 2026-04-18T00:00:00.000Z\nupdated: 2026-04-18T00:00:00.000Z\ndescription: |\n  Batch-review multiple PRs in parallel: dispatch one sub-agent per PR in an isolated worktree, aggregate results into a summary table. Triggers on: \"review all PRs\", \"check my PRs\", \"PR status\".\nargument-hint: \u003CN1> [N2 N3 ...] — space-separated PR numbers\ntools: Bash, Read, Grep\nmodel: opus\nheadless_safe: false\ndotbabel:\n  compute:\n    mode: inherit\n    binding: consumer\n---\n\nBatch-review a list of PRs in parallel. Each PR gets its own sub-agent running the full `review-pr` workflow (fetch comments → validate → apply fixes → push → resolve threads → CI gate). Results are aggregated into a single summary table.\n\nTrigger: when the user provides a list of PR numbers to review simultaneously, asks to batch-review PRs, or says \"review all of these\".\n\nArguments: `$ARGUMENTS` — space-separated PR numbers (required). Example: `\u002Freview-prs 42 43 44`.\n\n## Steps\n\n### 1. Parse arguments\n\nBind `NUMBERS` from `$ARGUMENTS`. If empty, print usage and stop:\n\n```\nUsage: \u002Freview-prs \u003CN1> [N2 N3 ...]\n```\n\nEcho the target list before doing any network calls: \"Reviewing N PRs: #A #B #C\".\n\n### 2. Pre-flight checks\n\nRun all three checks **before creating any worktree**.\n\n**2a — PR existence and state.** For each PR number:\n\n```bash\ngh pr view \"$N\" --json number,title,headRefName,baseRefName,mergeable,mergeStateStatus,state\n```\n\n- Non-zero exit (PR not found, no access) → mark `preflight-failed: not-found`; add a synthetic result row for that PR and exclude it from worktree\u002Fsub-agent execution.\n- `state != \"OPEN\"` → mark `preflight-failed: not-open`; add a synthetic result row for that PR and exclude it from worktree\u002Fsub-agent execution.\n\nReport any exclusions. Never silently skip a PR: every requested PR must appear in the final aggregate table, including `preflight-failed` rows created here. If zero PRs survive for execution, stop after emitting the aggregate table.\n\n**2b — Merge state classification** (advisory; from the same JSON above):\n\n| `mergeable`   | `mergeStateStatus`    | Tag                             |\n| ------------- | --------------------- | ------------------------------- |\n| `CONFLICTING` | `DIRTY`               | `preflight-warn: conflicts`     |\n| `MERGEABLE`   | `BEHIND`              | `preflight-warn: behind`        |\n| `UNKNOWN`     | any                   | `preflight-warn: unknown-state` |\n| `MERGEABLE`   | `CLEAN` or `UNSTABLE` | (no tag — proceed normally)     |\n\nRecord the tag and pass `mergeStateStatus` into the sub-agent brief; the sub-agent handles rebase (step 9 of review-pr) and CI (step 10) autonomously.\n\n**2c — Worktree collision check.** Run once:\n\n```bash\ngit worktree list\n```\n\nFor each PR N, check if `.claude\u002Fworktrees\u002Fpr-N` appears. If yes: `preflight-warn: worktree-exists` and set `WORKTREE_EXISTS=true` for that PR. The sub-agent reuses the existing worktree safely (the `if [ ! -d ]` guard in review-pr step 5 handles this). If no: `WORKTREE_EXISTS=false`.\n\n**Print the pre-flight summary table before dispatch:**\n\n| PR  | Title | Merge State | Worktree | Pre-flight                       |\n| --- | ----- | ----------- | -------- | -------------------------------- |\n| #42 | ...   | CLEAN       | new      | ok                               |\n| #43 | ...   | DIRTY       | exists   | warn: conflicts, worktree-exists |\n\nOnly surviving (non-`preflight-failed`) PRs proceed.\n\n### 3. Batch into rounds of 6\n\nSplit surviving PRs into rounds of at most 6. Print the plan before dispatching:\n\n```\nRound 1: #42, #43, #44, #45, #46, #47\nRound 2: #48\n```\n\n### 4. Dispatch parallel sub-agents\n\nFor each round: emit a **single coordinator message with one `Agent` tool call per PR** — all calls in that round in one message. Use `subagent_type: \"general-purpose\"`. Wait for all agents in the round to complete before starting the next.\n\nConstruct the following brief for each PR, substituting real values for `N`, `TITLE`, `BASE_REF`, `MERGE_STATE_STATUS`, and `WORKTREE_EXISTS`:\n\n---\n\n```\nYou are reviewing PR #N (\"TITLE\") in repo $(gh repo view --json nameWithOwner -q .nameWithOwner).\n\nWorking directory: $(git rev-parse --show-toplevel)\nWorktree path: .claude\u002Fworktrees\u002Fpr-N\nWorktree already exists: WORKTREE_EXISTS\nBase ref: BASE_REF\nMerge state at dispatch: MERGE_STATE_STATUS\n\nFollow the review-pr command workflow exactly — all 15 steps — with these constraints:\n\nAUTONOMY\n- Do NOT merge. The user merges explicitly via `\u002Fmerge-pr N` after reviewing the aggregate table.\n- Do NOT prompt the user. Make autonomous decisions throughout.\n- If a decision requires user judgement (e.g. an ambiguous design change), note it in `blocker`\n  and continue with the rest of the review. Do not halt.\n\nWORKTREE\n- If WORKTREE_EXISTS is true, skip `git worktree add` and use the existing path as-is.\n- If MERGE_STATE_STATUS is BEHIND or DIRTY, rebase onto the base ref before collecting comments\n  (review-pr step 9 covers this — do it first, before step 2, when the branch is conflicting).\n\nOUTPUT\nAfter completing step 15, emit exactly ONE JSON object to stdout (no other text after it):\n\n{\n  \"pr\": N,\n  \"title\": \"TITLE\",\n  \"comments\": \u003Ctotal comments fetched>,\n  \"valid\": \u003Ccount valid issues>,\n  \"false_pos\": \u003Ccount false positives>,\n  \"fixed\": \u003Ccount fixes applied>,\n  \"security\": \"clean|findings\",\n  \"ci\": \"green|fixed|blocked|flaky|skipped\",\n  \"test_plan\": \"verified|missing|partial|skipped\",\n  \"conflicts\": \"none|resolved|unresolved\",\n  \"status\": \"reviewed|blocked|push-failed|test-plan-missing|conflicts-unresolved|sub-agent-failed|preflight-failed\",\n  \"evidence_url\": \"\u003CCI run URL or test output reference>\",\n  \"blocker\": null\n}\n\nFAILURE MODES\n- Push failure (step 7): set status \"push-failed\", stop — do not post replies or resolve threads.\n- Test plan missing: set status \"test-plan-missing\"; include evidence_url if available.\n- Merge conflicts left unresolved: set status \"conflicts-unresolved\"; set blocker to a one-line explanation.\n- Preflight\u002Fsetup failure before the review can run: set status \"preflight-failed\", set blocker to a\n  one-line explanation, still emit the JSON. Use zero counts for fields that were never collected.\n- Sub-agent execution failure after start but before a normal result is produced: set status\n  \"sub-agent-failed\", set blocker to a one-line explanation, still emit the JSON. Populate\n  completed counts best-effort from work finished before the failure.\n- Sandbox blocks file writes: emit JSON to stdout regardless.\n- Any other unrecoverable error: set status \"blocked\", set blocker to a one-line explanation,\n  still emit the JSON.\n```\n\n---\n\n### 5. Collect results and handle partial failures\n\nAfter each round, parse each sub-agent's stdout for the result JSON.\n\n| Outcome               | Action                                                                              |\n| --------------------- | ----------------------------------------------------------------------------------- |\n| Valid JSON            | Store for aggregate table                                                           |\n| No output \u002F crash     | `status: sub-agent-failed`, `blocker: \"no output from sub-agent\"`                   |\n| Malformed JSON        | `status: sub-agent-failed`, `blocker: \"parse error: \u003Cfirst 100 chars of output>\"`   |\n| `status: push-failed` | Record as-is; add note: \"commits staged locally — run `\u002Freview-pr N` to retry push\" |\n\nNever silently skip a PR. Every PR gets a row in the aggregate table.\n\n### 6. Aggregate summary table\n\nRender one row per PR using the collected JSON:\n\n| PR  | Title | Comments | Valid | False Pos | Fixed | Security | CI  | Test Plan | Conflicts | Status |\n| --- | ----- | -------- | ----- | --------- | ----- | -------- | --- | --------- | --------- | ------ |\n\nStatus values: `reviewed`, `blocked`, `push-failed`, `test-plan-missing`, `conflicts-unresolved`, `preflight-failed`, `sub-agent-failed`.\n\nA PR may only be marked `reviewed` if: push succeeded, test plan verified, every active criterion passed in review-pr step 14, no unresolved CI failures, branch not conflicting (same gate as review-pr step 15).\n\nIf any PRs have `sub-agent-failed`: end the table with — \"For failed PRs, run `\u002Freview-pr N` individually.\"\n\n### 7. Cleanup\n\nPrint (do not auto-run) the cleanup command for every worktree created during this run:\n\n```bash\ngit worktree remove .claude\u002Fworktrees\u002Fpr-N   # for each N\n```\n\n## Rules\n\n- **Never merge** from inside a sub-agent or from the coordinator. Use `\u002Fmerge-pr N` or `\u002Freview-pr N` explicitly for each PR after reviewing the table.\n- **Parallelism cap:** 6 concurrent sub-agents per round. Batch the rest into subsequent rounds.\n- **Never force-push** from sub-agents. If rebase produces a conflict the sub-agent cannot resolve, it marks `conflicts: unresolved` and stops.\n- **Worktree recreation:** if a worktree path disappears mid-run, the sub-agent's `if [ ! -d ]` guard recreates it.\n- **Sandbox write blocks:** sub-agents emit JSON to stdout; the coordinator captures from stdout, not from files.\n- **Every Status row** must cite the `evidence_url` from the sub-agent's JSON (CI run URL or test output).\n- **Pre-flight failures are non-fatal** to the batch — removed PRs are reported in the pre-flight table and excluded from dispatch. The remaining PRs proceed.\n\n## Compute scope\n\nThe coordinator's consumer requirement is inheritance. It sets no model or effort,\nand native skill frontmatter does not enforce compute. Keep the existing generic\nper-PR workers, their inheritance, rounds and review workflow. Record any observed\ncoordinator configuration separately from each worker's observation. Do not infer\na worker's configuration from the coordinator or from an inert skill selector;\nmissing observations remain unknown. Keep the existing worker result contract.\n","Batch-review a list of PRs in parallel. Each PR gets its own sub-agent running the full `review-pr` workflow (fetch comments → validate → apply fixes → push → resolve threads → CI gate). Results are aggregated into a single summary table.\n\nTrigger: when the user provides a list of PR numbers to review simultaneously, asks to batch-review PRs, or says \"review all of these\".\n\nArguments: `$ARGUMENTS` — space-separated PR numbers (required). Example: `\u002Freview-prs 42 43 44`.\n\n## Steps\n\n### 1. Parse arguments\n\nBind `NUMBERS` from `$ARGUMENTS`. If empty, print usage and stop:\n\n```\nUsage: \u002Freview-prs \u003CN1> [N2 N3 ...]\n```\n\nEcho the target list before doing any network calls: \"Reviewing N PRs: #A #B #C\".\n\n### 2. Pre-flight checks\n\nRun all three checks **before creating any worktree**.\n\n**2a — PR existence and state.** For each PR number:\n\n```bash\ngh pr view \"$N\" --json number,title,headRefName,baseRefName,mergeable,mergeStateStatus,state\n```\n\n- Non-zero exit (PR not found, no access) → mark `preflight-failed: not-found`; add a synthetic result row for that PR and exclude it from worktree\u002Fsub-agent execution.\n- `state != \"OPEN\"` → mark `preflight-failed: not-open`; add a synthetic result row for that PR and exclude it from worktree\u002Fsub-agent execution.\n\nReport any exclusions. Never silently skip a PR: every requested PR must appear in the final aggregate table, including `preflight-failed` rows created here. If zero PRs survive for execution, stop after emitting the aggregate table.\n\n**2b — Merge state classification** (advisory; from the same JSON above):\n\n| `mergeable`   | `mergeStateStatus`    | Tag                             |\n| ------------- | --------------------- | ------------------------------- |\n| `CONFLICTING` | `DIRTY`               | `preflight-warn: conflicts`     |\n| `MERGEABLE`   | `BEHIND`              | `preflight-warn: behind`        |\n| `UNKNOWN`     | any                   | `preflight-warn: unknown-state` |\n| `MERGEABLE`   | `CLEAN` or `UNSTABLE` | (no tag — proceed normally)     |\n\nRecord the tag and pass `mergeStateStatus` into the sub-agent brief; the sub-agent handles rebase (step 9 of review-pr) and CI (step 10) autonomously.\n\n**2c — Worktree collision check.** Run once:\n\n```bash\ngit worktree list\n```\n\nFor each PR N, check if `.claude\u002Fworktrees\u002Fpr-N` appears. If yes: `preflight-warn: worktree-exists` and set `WORKTREE_EXISTS=true` for that PR. The sub-agent reuses the existing worktree safely (the `if [ ! -d ]` guard in review-pr step 5 handles this). If no: `WORKTREE_EXISTS=false`.\n\n**Print the pre-flight summary table before dispatch:**\n\n| PR  | Title | Merge State | Worktree | Pre-flight                       |\n| --- | ----- | ----------- | -------- | -------------------------------- |\n| #42 | ...   | CLEAN       | new      | ok                               |\n| #43 | ...   | DIRTY       | exists   | warn: conflicts, worktree-exists |\n\nOnly surviving (non-`preflight-failed`) PRs proceed.\n\n### 3. Batch into rounds of 6\n\nSplit surviving PRs into rounds of at most 6. Print the plan before dispatching:\n\n```\nRound 1: #42, #43, #44, #45, #46, #47\nRound 2: #48\n```\n\n### 4. Dispatch parallel sub-agents\n\nFor each round: emit a **single coordinator message with one `Agent` tool call per PR** — all calls in that round in one message. Use `subagent_type: \"general-purpose\"`. Wait for all agents in the round to complete before starting the next.\n\nConstruct the following brief for each PR, substituting real values for `N`, `TITLE`, `BASE_REF`, `MERGE_STATE_STATUS`, and `WORKTREE_EXISTS`:\n\n---\n\n```\nYou are reviewing PR #N (\"TITLE\") in repo $(gh repo view --json nameWithOwner -q .nameWithOwner).\n\nWorking directory: $(git rev-parse --show-toplevel)\nWorktree path: .claude\u002Fworktrees\u002Fpr-N\nWorktree already exists: WORKTREE_EXISTS\nBase ref: BASE_REF\nMerge state at dispatch: MERGE_STATE_STATUS\n\nFollow the review-pr command workflow exactly — all 15 steps — with these constraints:\n\nAUTONOMY\n- Do NOT merge. The user merges explicitly via `\u002Fmerge-pr N` after reviewing the aggregate table.\n- Do NOT prompt the user. Make autonomous decisions throughout.\n- If a decision requires user judgement (e.g. an ambiguous design change), note it in `blocker`\n  and continue with the rest of the review. Do not halt.\n\nWORKTREE\n- If WORKTREE_EXISTS is true, skip `git worktree add` and use the existing path as-is.\n- If MERGE_STATE_STATUS is BEHIND or DIRTY, rebase onto the base ref before collecting comments\n  (review-pr step 9 covers this — do it first, before step 2, when the branch is conflicting).\n\nOUTPUT\nAfter completing step 15, emit exactly ONE JSON object to stdout (no other text after it):\n\n{\n  \"pr\": N,\n  \"title\": \"TITLE\",\n  \"comments\": \u003Ctotal comments fetched>,\n  \"valid\": \u003Ccount valid issues>,\n  \"false_pos\": \u003Ccount false positives>,\n  \"fixed\": \u003Ccount fixes applied>,\n  \"security\": \"clean|findings\",\n  \"ci\": \"green|fixed|blocked|flaky|skipped\",\n  \"test_plan\": \"verified|missing|partial|skipped\",\n  \"conflicts\": \"none|resolved|unresolved\",\n  \"status\": \"reviewed|blocked|push-failed|test-plan-missing|conflicts-unresolved|sub-agent-failed|preflight-failed\",\n  \"evidence_url\": \"\u003CCI run URL or test output reference>\",\n  \"blocker\": null\n}\n\nFAILURE MODES\n- Push failure (step 7): set status \"push-failed\", stop — do not post replies or resolve threads.\n- Test plan missing: set status \"test-plan-missing\"; include evidence_url if available.\n- Merge conflicts left unresolved: set status \"conflicts-unresolved\"; set blocker to a one-line explanation.\n- Preflight\u002Fsetup failure before the review can run: set status \"preflight-failed\", set blocker to a\n  one-line explanation, still emit the JSON. Use zero counts for fields that were never collected.\n- Sub-agent execution failure after start but before a normal result is produced: set status\n  \"sub-agent-failed\", set blocker to a one-line explanation, still emit the JSON. Populate\n  completed counts best-effort from work finished before the failure.\n- Sandbox blocks file writes: emit JSON to stdout regardless.\n- Any other unrecoverable error: set status \"blocked\", set blocker to a one-line explanation,\n  still emit the JSON.\n```\n\n---\n\n### 5. Collect results and handle partial failures\n\nAfter each round, parse each sub-agent's stdout for the result JSON.\n\n| Outcome               | Action                                                                              |\n| --------------------- | ----------------------------------------------------------------------------------- |\n| Valid JSON            | Store for aggregate table                                                           |\n| No output \u002F crash     | `status: sub-agent-failed`, `blocker: \"no output from sub-agent\"`                   |\n| Malformed JSON        | `status: sub-agent-failed`, `blocker: \"parse error: \u003Cfirst 100 chars of output>\"`   |\n| `status: push-failed` | Record as-is; add note: \"commits staged locally — run `\u002Freview-pr N` to retry push\" |\n\nNever silently skip a PR. Every PR gets a row in the aggregate table.\n\n### 6. Aggregate summary table\n\nRender one row per PR using the collected JSON:\n\n| PR  | Title | Comments | Valid | False Pos | Fixed | Security | CI  | Test Plan | Conflicts | Status |\n| --- | ----- | -------- | ----- | --------- | ----- | -------- | --- | --------- | --------- | ------ |\n\nStatus values: `reviewed`, `blocked`, `push-failed`, `test-plan-missing`, `conflicts-unresolved`, `preflight-failed`, `sub-agent-failed`.\n\nA PR may only be marked `reviewed` if: push succeeded, test plan verified, every active criterion passed in review-pr step 14, no unresolved CI failures, branch not conflicting (same gate as review-pr step 15).\n\nIf any PRs have `sub-agent-failed`: end the table with — \"For failed PRs, run `\u002Freview-pr N` individually.\"\n\n### 7. Cleanup\n\nPrint (do not auto-run) the cleanup command for every worktree created during this run:\n\n```bash\ngit worktree remove .claude\u002Fworktrees\u002Fpr-N   # for each N\n```\n\n## Rules\n\n- **Never merge** from inside a sub-agent or from the coordinator. Use `\u002Fmerge-pr N` or `\u002Freview-pr N` explicitly for each PR after reviewing the table.\n- **Parallelism cap:** 6 concurrent sub-agents per round. Batch the rest into subsequent rounds.\n- **Never force-push** from sub-agents. If rebase produces a conflict the sub-agent cannot resolve, it marks `conflicts: unresolved` and stops.\n- **Worktree recreation:** if a worktree path disappears mid-run, the sub-agent's `if [ ! -d ]` guard recreates it.\n- **Sandbox write blocks:** sub-agents emit JSON to stdout; the coordinator captures from stdout, not from files.\n- **Every Status row** must cite the `evidence_url` from the sub-agent's JSON (CI run URL or test output).\n- **Pre-flight failures are non-fatal** to the batch — removed PRs are reported in the pre-flight table and excluded from dispatch. The remaining PRs proceed.\n\n## Compute scope\n\nThe coordinator's consumer requirement is inheritance. It sets no model or effort,\nand native skill frontmatter does not enforce compute. Keep the existing generic\nper-PR workers, their inheritance, rounds and review workflow. Record any observed\ncoordinator configuration separately from each worker's observation. Do not infer\na worker's configuration from the coordinator or from an inert skill selector;\nmissing observations remain unknown. Keep the existing worker result contract.\n",{"id":5,"name":5,"task":44,"type":45,"model":26,"owner":46,"tools":47,"domain":48,"created":49,"updated":49,"version":50,"dotbabel":51,"maturity":55,"platform":56,"description":57,"argument-hint":58,"headless_safe":40},[21],"skill","@kaiohenricunha","Bash, Read, Grep",[27],1776470400000,"1.0.1",{"compute":52},{"mode":53,"binding":54},"inherit","consumer","draft",[33],"Batch-review multiple PRs in parallel: dispatch one sub-agent per PR in an isolated worktree, aggregate results into a summary table. Triggers on: \"review all PRs\", \"check my PRs\", \"PR status\".\n","\u003CN1> [N2 N3 ...] — space-separated PR numbers","main","91c337164997b99943fbcc64e8e362577b67bc81","skills\u002Freview-prs","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha","I'm a Platform\u002FInfra engineer who happens to work in cybersec and write Go code.","2026-10-26 14:12:51",{"source":8,"skillName":5,"commands":67,"prompt":77,"zipAvailable":78},[68,71,74],{"tool":69,"command":70},"npx","npx skills add kaiohenricunha\u002Fdotbabel --skill review-prs",{"tool":72,"command":73},"bunx","bunx skills add kaiohenricunha\u002Fdotbabel --skill review-prs",{"tool":75,"command":76},"pnpm","pnpm dlx skills add kaiohenricunha\u002Fdotbabel --skill review-prs","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Freview-prs\u002FSKILL.md",true,[],[81,111,143,164,186,209],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":92,"publishedAt":39},"01M6XDQ7QMASPFZ355MYKCD06T","yolo","Start temporary autonomy for the current task or an explicit scope with a required --for expiry. Codex permits scoped pushes, merges, deploys, and releases after strict testing and validation; Full access is a separate runtime setting. Claude Code uses a session permission hook with a protected-action denylist.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fyolo\u002FSKILL.md",[87],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[83,93,94,95,96,97,98,99,100,101,102,103,104,105,27,106,107,108,109,110],"testing","merge","code","start","access","session","ops","autonomy","releases","permission","full","runtime","scope","hook","true","action","for","scoped",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":125,"publishedAt":39},"01M6XDQ1N21VE4KH98JWGZ7GN9","veracity-audit","Audit a data pipeline for Veracity and Value. Dispatches data-scientist, compliance-auditor, and data-engineer agents with project context injected at dispatch time. All source paths are supplied via flags — no defaults, no project assumptions. Subcommands: audit (full pipeline walk), score-check (scoring math only), gate-check (gate coverage only), source-trace \u003Clabel> (single source end-to-end). Invoke when: \"audit pipeline\", \"veracity check\", \"scoring math correct?\", \"check gates\", \"trace source\", \"verify quality gates\", \"formula correct?\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fveracity-audit\u002FSKILL.md",[117,122],{"categoryNo":118,"categoryName":119,"taxonomyType":120,"taxonomyTypeDesc":121},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",{"categoryNo":123,"categoryName":124,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000037","律师与法务",[126,127,93,21,128,129,32,130,131,132,133,134,135,136,137,138,139,140,141,142],"audit","veracity audit","data pipeline","pipeline","math","coverage","only","engineer","formula","scoring","time","project","worker","end","at","invoke","when",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":39},"01M6XDPVDKBR376C06CEK9BC5S","validate-spec","Audit an already-implemented spec against the codebase. Walks each constraint (ARCH-N, PERF-N, KD-N, etc.) and acceptance criterion, grounds findings in file:line evidence, runs the spec.json acceptance_commands, and writes a single audit doc to docs\u002Faudits\u002F. Use whenever the user asks to \"validate a spec\", \"audit a spec\", \"check if spec is implemented\", \"verify the spec is done\", \"is this spec really done\", or otherwise wants closure on spec-driven work. Read-only against the spec — produces an audit, never modifies the spec itself.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fvalidate-spec\u002FSKILL.md",[],[150,151,152,93,21,153,154,126,32,155,22,156,132,157,158,159,160,161,162,163],"spec","validate","validate spec","run","acceptance","work","never","max","done","arch","line","2025","spec-driven","closure",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":173,"publishedAt":39},"01M6XDPMMECH82RAW553Y94HDS","terragrunt-specialist","Deep-dive Terragrunt hierarchy review, DRY pattern audits, and run-all orchestration analysis. Use for structured investigations of multi-environment Terragrunt layouts, dependency graphs, remote state config, and hook correctness. Triggers on: \"Terragrunt audit\", \"run-all review\", \"dependency block\", \"DRY pattern review\", \"env hierarchy audit\", \"mock_outputs\", \"terragrunt hooks\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fterragrunt-specialist\u002FSKILL.md",[170],{"categoryNo":171,"categoryName":172,"taxonomyType":120,"taxonomyTypeDesc":121},"01JBSEEDCAT000000000000011","运维与部署",[174,175,176,21,177,178,153,126,179,32,22,180,181,157,182,183,161,184,140,185],"terragrunt","specialist","terragrunt specialist","orchestration","debugging","analysis","dependency","hooks","deep","dry","remote","hierarchy",{"skillNo":187,"name":188,"nameZh":6,"description":189,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":190,"categories":191,"keywords":199,"publishedAt":39},"01M6XDPFJS2HGSE13RXF1HV8S7","terraform-specialist","Deep-dive Terraform architecture review, module design, state management, and migration. Use for structured investigations of Terraform workspaces, provider configuration, module coupling, import workflows, and test coverage. Triggers on: \"Terraform audit\", \"module review\", \"state management\", \"Terraform import\", \"workspace design\", \"provider config review\", \"Terraform testing\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fterraform-specialist\u002FSKILL.md",[192,195,196],{"categoryNo":193,"categoryName":194,"taxonomyType":120,"taxonomyTypeDesc":121},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":171,"categoryName":172,"taxonomyType":120,"taxonomyTypeDesc":121},{"categoryNo":197,"categoryName":198,"taxonomyType":120,"taxonomyTypeDesc":121},"01JBSEEDCAT000000000000015","视觉设计",[200,201,175,93,202,21,203,204,205,178,126,32,22,131,206,207,182,208,161,140],"terraform","terraform specialist","design","workflows","architecture","architecture review","test coverage","workspaces","problem",{"skillNo":210,"name":150,"nameZh":6,"description":211,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":212,"categories":213,"keywords":218,"publishedAt":39},"01M6XDP7V6H8WYPSXVEKYE6HJ6","Create structured engineering specs through interactive pairing. Use when the user wants to create a spec, design doc, technical specification, architecture document, RFC, or engineering plan. Triggers on \"let's spec this out\", \"create a spec\", \"design doc\", \"write a technical plan\", \"plan the architecture\". Works for greenfield and brownfield projects. Outputs to docs\u002Fspecs\u002F.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fspec\u002FSKILL.md",[214,215],{"categoryNo":197,"categoryName":198,"taxonomyType":120,"taxonomyTypeDesc":121},{"categoryNo":216,"categoryName":217,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000032","设计师",[150,202,219,204,220,221,222,223,224,225,226,227,29,26,228,109,229,230,231,232],"component","create","plan","projects","write","interactive","use","document","specification","technical specification","trade-offs","technical plan","outputs","frontier"]