[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71K8ASW61CJ7YR0PMEBV60T":3,"skill-same:01M71K8ASW61CJ7YR0PMEBV60T":72},{"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":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":52,"repositoryHtmlUrl":53,"repositoryHomepageUrl":54,"ownerHtmlUrl":55,"ownerBlogUrl":56,"ownerDescription":6,"updatedAt":57,"install":58,"resources":71},"01M71K8ASW61CJ7YR0PMEBV60T","plan-refactor",null,"Create a detailed refactor plan with tiny commits via user interview, then save it as specs\u002FREFACTOR_LATEST.md. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps.","danielvm-git\u002Fbigpowers","danielvm-git","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1020864?v=4","01M71H1N1CTQ529S0KN7KETVG6","Daniel V M","01M71H1N218Y3S8WHCJ58NPRSW",290,"MIT","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fplan-refactor\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"plan refactor","refactor","plan","to plan","with","standard","use","commits","as","interview","save","sonnet","steps","refactor plan","safe","break","refactoring","create","user interview","when","2026-11-10 10:12:30",false,"---\nname: plan-refactor\nmodel: sonnet\neffort: standard\ndescription: Create a detailed refactor plan with tiny commits via user interview, then save it as specs\u002FREFACTOR_LATEST.md. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps.\n---\n\n# Plan Refactor\n> **HARD GATE** — **HARD GATE** — Before refactoring, document the current behavior and why it is wrong. Extract one invariant that must be preserved. If you skip this, you will break things you don't expect.\n\n\nCreate a detailed refactor plan through a user interview. Save output to `specs\u002FREFACTOR_LATEST.md`.\n\n## Steps\n\n1. Ask the user for a long, detailed description of the problem they want to solve and any potential ideas for solutions.\n\n2. Explore the repo to verify their assertions and understand the current state of the codebase.\n\n3. Ask whether they have considered other options, and present other options to them.\n\n4. Interview the user about the implementation. Be extremely detailed and thorough.\n\n5. Hammer out the exact scope of the implementation. Work out what you plan to change and what you plan not to change.\n\n6. Look in the codebase to check for test coverage of this area. If there is insufficient test coverage, ask the user what their plans for testing are.\n\n7. Break the implementation into a plan of tiny commits. Remember Martin Fowler's advice: \"make each refactoring step as small as possible, so that you can always see the program working.\"\n\n8. Save the refactor plan to `specs\u002FREFACTOR_LATEST.md`. Create the `specs\u002F` directory if it doesn't exist.\n\n\u003Crefactor-plan-template>\n\n## Problem Statement\n\nThe problem that the developer is facing, from the developer's perspective.\n\n## Solution\n\nThe solution to the problem, from the developer's perspective.\n\n## Commits\n\nA LONG, detailed implementation plan. Write the plan in plain English, breaking down the implementation into the tiniest commits possible. Each commit should leave the codebase in a working state.\n\nEach commit entry follows this format:\n```\nN. \u003Ccommit description> → verify: \u003Crunnable command>\n```\n\n## Decision Document\n\nA list of implementation decisions that were made:\n\n- The modules that will be built\u002Fmodified\n- The interfaces of those modules that will be modified\n- Technical clarifications from the developer\n- Architectural decisions\n- Schema changes, API contracts, specific interactions\n\nDo NOT include specific file paths or code snippets. They may end up being outdated very quickly.\n\n## Testing Decisions\n\n- A description of what makes a good test (only test external behavior, not implementation details)\n- Which modules will be tested\n- Prior art for the tests (i.e. similar types of tests in the codebase)\n\n## Out of Scope\n\nA description of the things that are out of scope for this refactor.\n\n## Further Notes (optional)\n\nAny further notes about the refactor.\n\n\u003C\u002Frefactor-plan-template>\n\nAfter writing `specs\u002FREFACTOR_LATEST.md`, suggest running `kickoff-branch` next to create a refactor branch.\n\n## References\n\n\u003C!-- story: e35s10 -->\n\n- [Fowler's Refactoring Catalog](..\u002F..\u002Fdocs\u002Freferences\u002Ffowler.md) — canonical refactoring vocabulary and code-smell taxonomy\n- [Beck's Tidy First?](..\u002F..\u002Fdocs\u002Freferences\u002Fkent-beck.md) — structural change before behavioral change\n\n## Verify\n\n","# Plan Refactor\n> **HARD GATE** — **HARD GATE** — Before refactoring, document the current behavior and why it is wrong. Extract one invariant that must be preserved. If you skip this, you will break things you don't expect.\n\n\nCreate a detailed refactor plan through a user interview. Save output to `specs\u002FREFACTOR_LATEST.md`.\n\n## Steps\n\n1. Ask the user for a long, detailed description of the problem they want to solve and any potential ideas for solutions.\n\n2. Explore the repo to verify their assertions and understand the current state of the codebase.\n\n3. Ask whether they have considered other options, and present other options to them.\n\n4. Interview the user about the implementation. Be extremely detailed and thorough.\n\n5. Hammer out the exact scope of the implementation. Work out what you plan to change and what you plan not to change.\n\n6. Look in the codebase to check for test coverage of this area. If there is insufficient test coverage, ask the user what their plans for testing are.\n\n7. Break the implementation into a plan of tiny commits. Remember Martin Fowler's advice: \"make each refactoring step as small as possible, so that you can always see the program working.\"\n\n8. Save the refactor plan to `specs\u002FREFACTOR_LATEST.md`. Create the `specs\u002F` directory if it doesn't exist.\n\n\u003Crefactor-plan-template>\n\n## Problem Statement\n\nThe problem that the developer is facing, from the developer's perspective.\n\n## Solution\n\nThe solution to the problem, from the developer's perspective.\n\n## Commits\n\nA LONG, detailed implementation plan. Write the plan in plain English, breaking down the implementation into the tiniest commits possible. Each commit should leave the codebase in a working state.\n\nEach commit entry follows this format:\n```\nN. \u003Ccommit description> → verify: \u003Crunnable command>\n```\n\n## Decision Document\n\nA list of implementation decisions that were made:\n\n- The modules that will be built\u002Fmodified\n- The interfaces of those modules that will be modified\n- Technical clarifications from the developer\n- Architectural decisions\n- Schema changes, API contracts, specific interactions\n\nDo NOT include specific file paths or code snippets. They may end up being outdated very quickly.\n\n## Testing Decisions\n\n- A description of what makes a good test (only test external behavior, not implementation details)\n- Which modules will be tested\n- Prior art for the tests (i.e. similar types of tests in the codebase)\n\n## Out of Scope\n\nA description of the things that are out of scope for this refactor.\n\n## Further Notes (optional)\n\nAny further notes about the refactor.\n\n\u003C\u002Frefactor-plan-template>\n\nAfter writing `specs\u002FREFACTOR_LATEST.md`, suggest running `kickoff-branch` next to create a refactor branch.\n\n## References\n\n\u003C!-- story: e35s10 -->\n\n- [Fowler's Refactoring Catalog](..\u002F..\u002Fdocs\u002Freferences\u002Ffowler.md) — canonical refactoring vocabulary and code-smell taxonomy\n- [Beck's Tidy First?](..\u002F..\u002Fdocs\u002Freferences\u002Fkent-beck.md) — structural change before behavioral change\n\n## Verify\n\n",{"name":5,"model":35,"effort":29,"description":7},"main","72f5e4c8b43f60cf86b37078ad8cd7e22daf67aa","skills\u002Fplan-refactor",24,"https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers","https:\u002F\u002Fdanielvm-git.github.io\u002Fbigpowers\u002F","https:\u002F\u002Fgithub.com\u002Fdanielvm-git","danielvm.net","2026-11-10 01:18:54",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add danielvm-git\u002Fbigpowers --skill plan-refactor",{"tool":64,"command":65},"bunx","bunx skills add danielvm-git\u002Fbigpowers --skill plan-refactor",{"tool":67,"command":68},"pnpm","pnpm dlx skills add danielvm-git\u002Fbigpowers --skill plan-refactor","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fplan-refactor\u002FSKILL.md",true,[],[73,92,99,125,147,167],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":77,"categories":78,"keywords":82,"publishedAt":44},"01M71KBG9F8X644MJB16H4V8M7","skill-verify-fail-open-fixture","Negative-path fixture for run-skill-verify.sh — must never PASS.","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fspecs\u002Fverifications\u002Ffixtures\u002Fskill-verify-fail-open\u002FSKILL.md",[79],{"categoryNo":80,"categoryName":81,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[83,84,85,86,87,88,89,90,91],"fixture","open","verify","skill verify fail open fixture","skill verify","path","run","for","never",{"skillNo":93,"name":94,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":44},"01M71KBE3BKEMKNE0C5DGVDWZH","negative-path","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fspecs\u002Fverifications\u002Ffixtures\u002Fnegative-path\u002FSKILL.md",[],[98,88],"negative path",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":108,"publishedAt":44},"01M71KBBGF7Y4EB4AMHBZ8CJFC","write-document","Write, organize, and sync high-integrity technical documents using the BMAD methodology. Ensures every document is Bold, Minimal, Actionable, and Durable. Use when creating architectural docs, technical guides, or organizing the specs\u002F directory.","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fwrite-document\u002FSKILL.md",[105],{"categoryNo":106,"categoryName":107,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",[109,110,111,112,113,114,115,116,117,29,30,43,118,119,35,120,121,122,123,124],"write","write document","document","documents","actionable","technical","methodology","high","bmad","minimal","bold","integrity","organize","sync","directory","guides",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":131,"publishedAt":44},"01M71KB8TM089JJD5AY5KAFSDM","wire-observability","Add structured JSON logging, observability commands, and idempotent setup scripts to a project. Use when a project needs production-readiness instrumentation, when user wants structured logging, or as a production-readiness gate at any phase of development.","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fwire-observability\u002FSKILL.md",[],[132,133,134,29,135,30,136,32,137,138,35,139,140,141,142,143,144,43,145,146],"observability","wire observability","readiness","commands","development","logging","add","instrumentation","at","structured logging","production-readiness","idempotent","phase","project","scripts",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":153,"publishedAt":44},"01M71KB6CNRANP449DQA3NJZ96","wire-ci","CI pipeline setup with bundled, forge-neutral templates and local validation. Detects the forge from the git remote, generates workflows for supported forges, and skips honestly for the rest. The CI equivalent of wire-observability.","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fwire-ci\u002FSKILL.md",[],[154,155,156,157,158,159,160,161,162,163,28,29,164,90,132,35,165,166],"wire ci","ci","remote","local","pipeline","forge","validation","setup","templates","REST","ci pipeline setup","git","workflows",{"skillNo":168,"name":169,"nameZh":6,"description":170,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":171,"categories":172,"keywords":184,"publishedAt":44},"01M71KB2ZV98P03X88QR8MT9F1","visual-dashboard","Start a browser-based dashboard that visualizes architecture, implementation plans, and project status. Persists artifacts in .bigpowers\u002Fdashboard\u002F. Reads specs\u002Fstate.yaml, release-plan.yaml, epics, and planning-status via HTTP API or opencode panel.","https:\u002F\u002Fgithub.com\u002Fdanielvm-git\u002Fbigpowers\u002Fblob\u002Fmain\u002Fskills\u002Fvisual-dashboard\u002FSKILL.md",[173,176,181],{"categoryNo":174,"categoryName":175,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000013","分析与可视化",{"categoryNo":177,"categoryName":178,"taxonomyType":179,"taxonomyTypeDesc":180},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":182,"categoryName":183,"taxonomyType":179,"taxonomyTypeDesc":180},"01JBSEEDCAT000000000000033","数据分析师",[185,186,187,188,189,190,191,192,193,35,194,195,196,26,197,198,199,145,200,201],"dashboard","visual","visual dashboard","status","artifacts","http","plans","planning","panel","start","release","opencode","browser","api","architecture","project status","http api"]