[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6K2NREJC6E33YHKP75GGWJ5":3,"skill-same:01M6K2NREJC6E33YHKP75GGWJ5":58},{"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":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":6,"ownerHtmlUrl":42,"ownerBlogUrl":43,"ownerDescription":6,"updatedAt":44,"install":45,"resources":57},"01M6K2NREJC6E33YHKP75GGWJ5","implement-plan",null,"Execute a plan from _plans\u002F, implementing steps, checking off tasks, running tests, and documenting fixes","raffertyuy\u002Frepo-of-repos","raffertyuy","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1037626?v=4","01M6C1GYN0JM5VYG11TJKXT93V","Rafferty Uy","01M6K2N4HPNKC2PW34BM3BFDHK",17,"MIT","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplement-plan\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"implement","implement plan","plan","tasks","running tests","template","execute","tests","plans","true","implementing","fixes","2026-11-10 10:12:30",false,"---\nname: implement-plan\ndescription: Execute a plan from _plans\u002F, implementing steps, checking off tasks, running tests, and documenting fixes\nuser-invocable: true\norigin: template\n---\n\n# Implement Plan\n\nExecute an implementation plan from `_plans\u002F`, working through each step, updating the plan as you go, and running tests to verify.\n\nThis skill combines the \"implement\" and \"run\" phases into one — you build it, run it, test it, fix it, and the plan documents everything that happened.\n\n## Arguments\n\nThe user provides the plan file to implement. For example:\n- `\u002Fimplement-plan _plans\u002F20260409-auth-ui.plan.md`\n- `\u002Fimplement-plan auth-ui` (shorthand — resolve to the matching `.plan.md` file in `_plans\u002F`)\n- `\u002Fimplement-plan` (no argument — if only one plan has `status: draft` or `status: in-progress`, use that)\n\n## Steps\n\n### 1. Load the Plan\n\n1. Read the plan file from `_plans\u002F`\n2. If the user gave a shorthand (no path or partial name), find the matching `.plan.md` file\n3. If no argument and multiple draft\u002Fin-progress plans exist, ask the user which one\n4. Parse the frontmatter and step list\n5. Identify which steps are already checked (`- [x]`) and which are pending (`- [ ]`)\n\n### 2. Read Per-Repo Instructions\n\nFor each repo listed in the plan's `repos` frontmatter:\n\n1. Check if `repos\u002F\u003Cname>\u002FCLAUDE.md` exists — if so, read and follow it\n2. Check if `repos\u002F\u003Cname>\u002FAGENTS.md` exists — if so, read and follow it\n3. These instructions supplement the root CLAUDE.md and govern how code is written in that repo\n\n### 3. Set Status to In-Progress\n\nUpdate the plan file's frontmatter:\n```yaml\nstatus: in-progress\n```\n\n### 4. Implement Each Step\n\nFor each unchecked step (`- [ ]`), in order:\n\n1. **Read the step** — understand the task, files, and pseudocode\n2. **Implement it** — write the actual code\n   - Follow the plan as guidance, not strict requirements\n   - If the plan's approach won't work, adapt — but document why\n   - Follow the coding standards and per-repo instructions\n   - Respect read\u002Fwrite separation: only modify files in one repo at a time\n3. **Mark it done** — update the plan file: change `- [ ]` to `- [x]`\n4. **Add notes if needed** — if you discovered something unexpected, adapted the approach, or made a decision not in the original plan, add a `**Notes**` line under the step:\n   ```markdown\n   - [x] Step 3: Add OAuth endpoint\n     - **Task**: Create POST \u002Fapi\u002Fauth\u002Fgoogle\n     - **Files**: `repos\u002Fbackend-api\u002Fsrc\u002Froutes\u002Fauth.ts`\n     - **Pseudocode**: Validate token, create session\n     - **Notes**: Used existing session middleware instead of creating new one. Added rate limiting per security best practice.\n   ```\n\n**IMPORTANT**: Update the plan file after EACH step, not at the end. If the session is interrupted, the plan shows exactly where things stand.\n\n### 5. Run and Test\n\nAfter all implementation steps are complete:\n\n1. **Run the application** — start it up, verify it launches without errors\n2. **Run existing tests** — make sure nothing is broken\n3. **Run new tests** — if the plan included test steps, verify they pass\n4. **If using Playwright MCP** — for frontend work, use browser automation to verify UI changes\n\n### 6. Fix Issues\n\nIf tests fail or the app has issues:\n\n1. **Diagnose** — read errors, check logs, identify root cause\n2. **Fix** — make the necessary changes\n3. **Document in the plan** — add new checked steps at the end:\n   ```markdown\n   - [x] Fix: Corrected token validation logic\n     - **Notes**: The OAuth token response format changed in v2. Updated parser to handle both formats.\n   ```\n4. **Re-run tests** — verify the fix works\n5. Repeat until everything passes\n\n### 7. Complete the Plan\n\nWhen all steps pass and tests are green:\n\n1. Update the plan file's frontmatter:\n   ```yaml\n   status: completed\n   ```\n2. Report to the user:\n   - Summary of what was implemented\n   - Any deviations from the original plan (with reasons)\n   - Any fixes that were needed\n   - Test results\n   - Suggested next step (e.g., \"Ready for code review\" or \"Run `\u002Fcommit-all-repos` to commit\")\n\n## Error Handling\n\n- **Plan file not found**: List available plans in `_plans\u002F` and ask the user to pick one\n- **All steps already checked**: Tell the user the plan is already implemented. Ask if they want to re-run validation.\n- **Blocked on user decision**: If a step says user intervention is needed, stop and ask. Add the decision to the plan once resolved.\n- **Implementation diverges significantly from plan**: Pause and inform the user. Let them decide whether to continue or revise the plan first.\n\n## Notes\n\n- Treat the plan as guidance, not gospel — adapt when reality doesn't match the plan\n- The plan is a living document. Update it as you go, not after the fact.\n- Every decision, deviation, and fix should be documented in the plan\n- When complete, the plan serves as a record of what happened — useful for code reviews and future reference\n- If working across multiple repos, commit each repo separately following read\u002Fwrite separation\n","# Implement Plan\n\nExecute an implementation plan from `_plans\u002F`, working through each step, updating the plan as you go, and running tests to verify.\n\nThis skill combines the \"implement\" and \"run\" phases into one — you build it, run it, test it, fix it, and the plan documents everything that happened.\n\n## Arguments\n\nThe user provides the plan file to implement. For example:\n- `\u002Fimplement-plan _plans\u002F20260409-auth-ui.plan.md`\n- `\u002Fimplement-plan auth-ui` (shorthand — resolve to the matching `.plan.md` file in `_plans\u002F`)\n- `\u002Fimplement-plan` (no argument — if only one plan has `status: draft` or `status: in-progress`, use that)\n\n## Steps\n\n### 1. Load the Plan\n\n1. Read the plan file from `_plans\u002F`\n2. If the user gave a shorthand (no path or partial name), find the matching `.plan.md` file\n3. If no argument and multiple draft\u002Fin-progress plans exist, ask the user which one\n4. Parse the frontmatter and step list\n5. Identify which steps are already checked (`- [x]`) and which are pending (`- [ ]`)\n\n### 2. Read Per-Repo Instructions\n\nFor each repo listed in the plan's `repos` frontmatter:\n\n1. Check if `repos\u002F\u003Cname>\u002FCLAUDE.md` exists — if so, read and follow it\n2. Check if `repos\u002F\u003Cname>\u002FAGENTS.md` exists — if so, read and follow it\n3. These instructions supplement the root CLAUDE.md and govern how code is written in that repo\n\n### 3. Set Status to In-Progress\n\nUpdate the plan file's frontmatter:\n```yaml\nstatus: in-progress\n```\n\n### 4. Implement Each Step\n\nFor each unchecked step (`- [ ]`), in order:\n\n1. **Read the step** — understand the task, files, and pseudocode\n2. **Implement it** — write the actual code\n   - Follow the plan as guidance, not strict requirements\n   - If the plan's approach won't work, adapt — but document why\n   - Follow the coding standards and per-repo instructions\n   - Respect read\u002Fwrite separation: only modify files in one repo at a time\n3. **Mark it done** — update the plan file: change `- [ ]` to `- [x]`\n4. **Add notes if needed** — if you discovered something unexpected, adapted the approach, or made a decision not in the original plan, add a `**Notes**` line under the step:\n   ```markdown\n   - [x] Step 3: Add OAuth endpoint\n     - **Task**: Create POST \u002Fapi\u002Fauth\u002Fgoogle\n     - **Files**: `repos\u002Fbackend-api\u002Fsrc\u002Froutes\u002Fauth.ts`\n     - **Pseudocode**: Validate token, create session\n     - **Notes**: Used existing session middleware instead of creating new one. Added rate limiting per security best practice.\n   ```\n\n**IMPORTANT**: Update the plan file after EACH step, not at the end. If the session is interrupted, the plan shows exactly where things stand.\n\n### 5. Run and Test\n\nAfter all implementation steps are complete:\n\n1. **Run the application** — start it up, verify it launches without errors\n2. **Run existing tests** — make sure nothing is broken\n3. **Run new tests** — if the plan included test steps, verify they pass\n4. **If using Playwright MCP** — for frontend work, use browser automation to verify UI changes\n\n### 6. Fix Issues\n\nIf tests fail or the app has issues:\n\n1. **Diagnose** — read errors, check logs, identify root cause\n2. **Fix** — make the necessary changes\n3. **Document in the plan** — add new checked steps at the end:\n   ```markdown\n   - [x] Fix: Corrected token validation logic\n     - **Notes**: The OAuth token response format changed in v2. Updated parser to handle both formats.\n   ```\n4. **Re-run tests** — verify the fix works\n5. Repeat until everything passes\n\n### 7. Complete the Plan\n\nWhen all steps pass and tests are green:\n\n1. Update the plan file's frontmatter:\n   ```yaml\n   status: completed\n   ```\n2. Report to the user:\n   - Summary of what was implemented\n   - Any deviations from the original plan (with reasons)\n   - Any fixes that were needed\n   - Test results\n   - Suggested next step (e.g., \"Ready for code review\" or \"Run `\u002Fcommit-all-repos` to commit\")\n\n## Error Handling\n\n- **Plan file not found**: List available plans in `_plans\u002F` and ask the user to pick one\n- **All steps already checked**: Tell the user the plan is already implemented. Ask if they want to re-run validation.\n- **Blocked on user decision**: If a step says user intervention is needed, stop and ask. Add the decision to the plan once resolved.\n- **Implementation diverges significantly from plan**: Pause and inform the user. Let them decide whether to continue or revise the plan first.\n\n## Notes\n\n- Treat the plan as guidance, not gospel — adapt when reality doesn't match the plan\n- The plan is a living document. Update it as you go, not after the fact.\n- Every decision, deviation, and fix should be documented in the plan\n- When complete, the plan serves as a record of what happened — useful for code reviews and future reference\n- If working across multiple repos, commit each repo separately following read\u002Fwrite separation\n",{"name":5,"origin":24,"description":7,"user-invocable":36},true,"main","d61a9b45ec87d3012948c2fe0577a97a792c2e09",".agents\u002Fskills\u002Fimplement-plan",1,"https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos","https:\u002F\u002Fgithub.com\u002Fraffertyuy","https:\u002F\u002Fwww.raffertyuy.com","2026-09-25 11:16:16",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":36},[47,50,53],{"tool":48,"command":49},"npx","npx skills add raffertyuy\u002Frepo-of-repos --skill implement-plan",{"tool":51,"command":52},"bunx","bunx skills add raffertyuy\u002Frepo-of-repos --skill implement-plan",{"tool":54,"command":55},"pnpm","pnpm dlx skills add raffertyuy\u002Frepo-of-repos --skill implement-plan","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplement-plan\u002FSKILL.md",[],[59,74,87,101,114,128],{"skillNo":60,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":63,"categories":64,"keywords":65,"publishedAt":31},"01M6K2QCY5ZCT02PDH39458D0H","update-all-md-docs","Review and update all markdown docs in the repo-of-repos (excluding cloned repos)","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fupdate-all-md-docs\u002FSKILL.md",[],[66,67,68,69,70,71,72,24,73,28],"update all md docs","md docs","update","docs","review","repos","markdown","repo",{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":31},"01M6K2QB1HGT2Q0WHGWP4S0WZR","sync-template","Pull latest repo-of-repos template updates into this workspace","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fsync-template\u002FSKILL.md",[],[81,24,82,71,83,84,73,28,85,86],"sync template","sync","pull","workspace","latest","updates",{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":31},"01M6K2Q8Z3CK5X4AHX50V4NX6B","remove-repository","Remove a repo or local folder from repos\u002F, updating repos.yaml, repos.md, and .gitignore","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fremove-repository\u002FSKILL.md",[],[94,95,96,97,28,98,99,71,100,24,73],"remove repository","remove","repository","folder","gitignore","local","yaml",{"skillNo":102,"name":103,"nameZh":6,"description":104,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":105,"categories":106,"keywords":107,"publishedAt":31},"01M6K2Q5MMKJQP36K8J9XX4093","pull-all-repos","Clone\u002Fpull git repos, verify local folders, auto-register orphans, and regenerate repos.md","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fpull-all-repos\u002FSKILL.md",[],[108,83,71,109,110,111,24,112,99,28,113],"pull all repos","register","git","verify","auto","clone",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":120,"publishedAt":31},"01M6K2Q1XFJT1YC860YMNJV5D4","pr-all-repos","Create PRs in all sub-repos with uncommitted branches, then link them as siblings","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fpr-all-repos\u002FSKILL.md",[],[121,122,71,123,124,125,126,28,127,24],"pr all repos","pr","branches","as","link","with","create",{"skillNo":129,"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":130,"categories":131,"keywords":132,"publishedAt":31},"01M6K2PZR8RM2XRHCH3YJ07MVV","https:\u002F\u002Fgithub.com\u002Fraffertyuy\u002Frepo-of-repos\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplement-plan\u002FSKILL.md",[],[19,20,21,24,27,26,25,23,22,30,29,28]]