[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71K35RMJ4YP9TSTTV9B381A":3,"skill-same:01M71K35RMJ4YP9TSTTV9B381A":110},{"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":27,"publishedAt":48,"linkOnly":49,"markdownContent":50,"markdownBody":51,"frontMatter":52,"refName":53,"commitSha":54,"skillDirectory":55,"forksCount":56,"repositoryHtmlUrl":57,"repositoryHomepageUrl":6,"ownerHtmlUrl":58,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":59,"install":60,"resources":73},"01M71K35RMJ4YP9TSTTV9B381A","gds-code-review",null,"Review code changes adversarially using parallel review layers (Blind Hunter, Edge Case Hunter, Acceptance Auditor) with structured triage into actionable categories. Use when the user says \"run code review\" or \"review this code\"","developAgent\u002Fbmad-start","developAgent","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F264530239?v=4","01M71J8X6CY24V5ZZHFGETRMSW","01M71J8X739FS28DGQAAY7V4QR",1,"MIT","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":25,"taxonomyTypeDesc":26},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],"review","gds code review","code","code review","hunter","when","run code","changes","layers","categories","with","actionable","case","run","use","parallel","review code","edge","acceptance","triage","2026-11-10 10:12:30",false,"---\nname: gds-code-review\ndescription: 'Review code changes adversarially using parallel review layers (Blind Hunter, Edge Case Hunter, Acceptance Auditor) with structured triage into actionable categories. Use when the user says \"run code review\" or \"review this code\"'\n---\n\n# Code Review Workflow\n\n**Goal:** Review code changes adversarially using parallel review layers and structured triage.\n\n**Your Role:** You are an elite code reviewer. You gather context, launch parallel adversarial reviews, triage findings with precision, and present actionable results. No noise, no filler.\n\n## Conventions\n\n- Bare paths (e.g. `template.md`) resolve from the skill root.\n- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).\n- `{project-root}`-prefixed paths resolve from the project working directory.\n- `{skill-name}` resolves to the skill directory's basename.\n\n## On Activation\n\n### Step 1: Resolve the Workflow Block\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow`\n\n**If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:\n\n1. `{skill-root}\u002Fcustomize.toml` — defaults\n2. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.toml` — team overrides\n3. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.user.toml` — personal overrides\n\nAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.\n\n### Step 2: Execute Prepend Steps\n\nExecute each entry in `{workflow.activation_steps_prepend}` in order before proceeding.\n\n### Step 3: Load Persistent Facts\n\nTreat every entry in `{workflow.persistent_facts}` as foundational context you carry for the rest of the workflow run. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.\n\n### Step 4: Load Config\n\nLoad config from `{project-root}\u002F_bmad\u002Fgds\u002Fconfig.yaml` and resolve:\n\n- `user_name`\n- `communication_language`\n- `game_dev_experience`\n- `implementation_artifacts`\n\n### Step 5: Greet the User\n\nGreet `{user_name}`, speaking in `{communication_language}`.\n\n### Step 6: Execute Append Steps\n\nExecute each entry in `{workflow.activation_steps_append}` in order.\n\nActivation is complete. Begin the workflow below.\n\n## WORKFLOW ARCHITECTURE\n\nThis uses **step-file architecture** for disciplined execution:\n\n- **Micro-file Design**: Each step is self-contained and followed exactly\n- **Just-In-Time Loading**: Only load the current step file\n- **Sequential Enforcement**: Complete steps in order, no skipping\n- **State Tracking**: Persist progress via in-memory variables\n- **Append-Only Building**: Build artifacts incrementally\n\n### Step Processing Rules\n\n1. **READ COMPLETELY**: Read the entire step file before acting\n2. **FOLLOW SEQUENCE**: Execute sections in order\n3. **WAIT FOR INPUT**: Halt at checkpoints and wait for human\n4. **LOAD NEXT**: When directed, read fully and follow the next step file\n\n### Critical Rules (NO EXCEPTIONS)\n\n- **NEVER** load multiple step files simultaneously\n- **ALWAYS** read entire step file before execution\n- **NEVER** skip steps or optimize the sequence\n- **ALWAYS** follow the exact instructions in the step file\n- **ALWAYS** halt at checkpoints and wait for human input\n\n\n## INITIALIZATION SEQUENCE\n\n### 1. Configuration Loading\n\nLoad and read full config from `{main_config}` and resolve:\n\n- `project_name`, `planning_artifacts`, `implementation_artifacts`, `user_name`\n- `communication_language`, `document_output_language`, `game_dev_experience`\n- `date` as system-generated current datetime\n- `sprint_status` = `{implementation_artifacts}\u002Fsprint-status.yaml`\n- `project_context` = `**\u002Fproject-context.md` (load if exists)\n- CLAUDE.md \u002F memory files (load if exist)\n\nYOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`, tailored to `{game_dev_experience}`.\n\n### 2. First Step Execution\n\nRead fully and follow: `.\u002Fsteps\u002Fstep-01-gather-context.md` to begin the workflow.\n","# Code Review Workflow\n\n**Goal:** Review code changes adversarially using parallel review layers and structured triage.\n\n**Your Role:** You are an elite code reviewer. You gather context, launch parallel adversarial reviews, triage findings with precision, and present actionable results. No noise, no filler.\n\n## Conventions\n\n- Bare paths (e.g. `template.md`) resolve from the skill root.\n- `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).\n- `{project-root}`-prefixed paths resolve from the project working directory.\n- `{skill-name}` resolves to the skill directory's basename.\n\n## On Activation\n\n### Step 1: Resolve the Workflow Block\n\nRun: `python3 {project-root}\u002F_bmad\u002Fscripts\u002Fresolve_customization.py --skill {skill-root} --key workflow`\n\n**If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:\n\n1. `{skill-root}\u002Fcustomize.toml` — defaults\n2. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.toml` — team overrides\n3. `{project-root}\u002F_bmad\u002Fcustom\u002F{skill-name}.user.toml` — personal overrides\n\nAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.\n\n### Step 2: Execute Prepend Steps\n\nExecute each entry in `{workflow.activation_steps_prepend}` in order before proceeding.\n\n### Step 3: Load Persistent Facts\n\nTreat every entry in `{workflow.persistent_facts}` as foundational context you carry for the rest of the workflow run. Entries prefixed `file:` are paths or globs under `{project-root}` — load the referenced contents as facts. All other entries are facts verbatim.\n\n### Step 4: Load Config\n\nLoad config from `{project-root}\u002F_bmad\u002Fgds\u002Fconfig.yaml` and resolve:\n\n- `user_name`\n- `communication_language`\n- `game_dev_experience`\n- `implementation_artifacts`\n\n### Step 5: Greet the User\n\nGreet `{user_name}`, speaking in `{communication_language}`.\n\n### Step 6: Execute Append Steps\n\nExecute each entry in `{workflow.activation_steps_append}` in order.\n\nActivation is complete. Begin the workflow below.\n\n## WORKFLOW ARCHITECTURE\n\nThis uses **step-file architecture** for disciplined execution:\n\n- **Micro-file Design**: Each step is self-contained and followed exactly\n- **Just-In-Time Loading**: Only load the current step file\n- **Sequential Enforcement**: Complete steps in order, no skipping\n- **State Tracking**: Persist progress via in-memory variables\n- **Append-Only Building**: Build artifacts incrementally\n\n### Step Processing Rules\n\n1. **READ COMPLETELY**: Read the entire step file before acting\n2. **FOLLOW SEQUENCE**: Execute sections in order\n3. **WAIT FOR INPUT**: Halt at checkpoints and wait for human\n4. **LOAD NEXT**: When directed, read fully and follow the next step file\n\n### Critical Rules (NO EXCEPTIONS)\n\n- **NEVER** load multiple step files simultaneously\n- **ALWAYS** read entire step file before execution\n- **NEVER** skip steps or optimize the sequence\n- **ALWAYS** follow the exact instructions in the step file\n- **ALWAYS** halt at checkpoints and wait for human input\n\n\n## INITIALIZATION SEQUENCE\n\n### 1. Configuration Loading\n\nLoad and read full config from `{main_config}` and resolve:\n\n- `project_name`, `planning_artifacts`, `implementation_artifacts`, `user_name`\n- `communication_language`, `document_output_language`, `game_dev_experience`\n- `date` as system-generated current datetime\n- `sprint_status` = `{implementation_artifacts}\u002Fsprint-status.yaml`\n- `project_context` = `**\u002Fproject-context.md` (load if exists)\n- CLAUDE.md \u002F memory files (load if exist)\n\nYOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`, tailored to `{game_dev_experience}`.\n\n### 2. First Step Execution\n\nRead fully and follow: `.\u002Fsteps\u002Fstep-01-gather-context.md` to begin the workflow.\n",{"name":5,"description":7},"main","1907bbe850fb749efa8b499b8da7ebb78a663519",".augment\u002Fskills\u002Fgds-code-review",0,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start","https:\u002F\u002Fgithub.com\u002FdevelopAgent","2026-07-19 05:19:22",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add developAgent\u002Fbmad-start --skill gds-code-review",{"tool":66,"command":67},"bunx","bunx skills add developAgent\u002Fbmad-start --skill gds-code-review",{"tool":69,"command":70},"pnpm","pnpm dlx skills add developAgent\u002Fbmad-start --skill gds-code-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002FSKILL.md",true,[74,80,84,90,94,98,102,106],{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"backlog-template.md","REFERENCE","参考文档",564,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fbacklog-template.md",{"path":81,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":82,"sourceHtmlUrl":83},"checklist.md",1116,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fchecklist.md",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"customize.toml","OTHER","其他",1617,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fcustomize.toml",{"path":91,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":92,"sourceHtmlUrl":93},"discover-inputs.md",3911,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fdiscover-inputs.md",{"path":95,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":96,"sourceHtmlUrl":97},"steps\u002Fstep-01-gather-context.md",6518,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fsteps\u002Fstep-01-gather-context.md",{"path":99,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":100,"sourceHtmlUrl":101},"steps\u002Fstep-02-review.md",2264,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fsteps\u002Fstep-02-review.md",{"path":103,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":104,"sourceHtmlUrl":105},"steps\u002Fstep-03-triage.md",2729,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fsteps\u002Fstep-03-triage.md",{"path":107,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":108,"sourceHtmlUrl":109},"steps\u002Fstep-04-present.md",6359,"https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002F.augment\u002Fskills\u002Fgds-code-review\u002Fsteps\u002Fstep-04-present.md",[111,119,126,133,140,147],{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":118},"01M72ZN1RJ28HE3TG8CK5VMDZ0","writing-plans","Use when you have a spec or requirements for a multi-step task, before touching code","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fwriting-plans\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":118},"01M72ZMZG4KQAFDEHG6KABQW8R","to-prd","Turn the current conversation into a PRD and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fto-prd\u002FSKILL.md",[],[],{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":118},"01M72ZMWB9ZNA0Y5KGAHTW89E8","steve-jobs-perspective","史蒂夫·乔布斯(Steve Jobs)的思维框架与表达方式。基于Isaacson授权传记、Stanford演讲、\nLost Interview、D Conference系列、Make Something Wonderful、30+一手来源的深度调研，\n提炼6个核心心智模型、8条决策启发式和完整的表达DNA。\n用途：作为思维顾问，用乔布斯的视角分析产品、审视决策、提供反馈。\n当用户提到「用乔布斯的视角」「乔布斯会怎么看」「Jobs模式」「steve jobs perspective」时使用。\n即使用户只是说「帮我用乔布斯的角度想想」「如果乔布斯会怎么做」「切换到乔布斯」也应触发。","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fsteve-jobs-perspective\u002FSKILL.md",[],[],{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":118},"01M72ZMS3ZRQY9PCRPRVWY040M","pinme","Use this skill when the user mentions \"pinme\", or needs to upload files, store to IPFS, create\u002Fpublish\u002Fdeploy websites or full-stack services (including frontend pages, backend APIs, database storage, email sending, etc.), or any feature requiring backend database\u002Fserver support.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fpinme\u002FSKILL.md",[],[],{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":146,"publishedAt":118},"01M72ZMPJHQ8NHC9WSH41DKV1F","pinme-share","Use this skill when the user wants to share, publish, or upload a static result through PinMe, especially by generating a static HTML share page for a PinMe project link, deployed full-stack app, Codex conversation summary, report, file, demo, or any 分享\u002F发布\u002F上传分享页 request that should end with `pinme upload`.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fpinme-share\u002FSKILL.md",[],[],{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":153,"publishedAt":118},"01M72ZMM4QBVWMAW0YYM7H0Y6P","pinme-llm","Use this skill when a PinMe project (Worker TypeScript) needs to call OpenRouter-backed LLM APIs, including models, chat\u002Fcompletions, streaming, or OpenRouter web search. Guides AI to generate correct Worker TS code.","https:\u002F\u002Fgithub.com\u002FdevelopAgent\u002Fbmad-start\u002Fblob\u002Fmain\u002Fskills\u002Fpinme-llm\u002FSKILL.md",[],[]]