[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71SXN3FMP1VNFC3CBVEHAR6":3,"skill-same:01M71SXN3FMP1VNFC3CBVEHAR6":76},{"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":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":6,"ownerHtmlUrl":53,"ownerBlogUrl":54,"ownerDescription":6,"updatedAt":55,"install":56,"resources":69},"01M71SXN3FMP1VNFC3CBVEHAR6","refactor",null,"Refactor existing code to improve quality, readability, architecture, consistency, simplicity, and idiomatic style — without changing observable behavior. Use this skill whenever the user says \"refactor\", \"clean up this code\", \"this is messy\", \"too complex\", \"hard to read\", \"too much duplication\", \"improve code quality\", or shares code with obvious structural problems. Also trigger proactively when you notice significant code smells while working on another task. Default mode is execution (make the changes); switch to plan-only if the user explicitly asks for a refactoring plan without executing changes.","Artawower\u002Fkaizen","Artawower","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F16963833?v=4","01M71SV5H0DRR8KXVGD4R51Z99","Art","01M71SV5J1B97T7349GGXQCYXT",2,"GPL-3.0","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Frefactor\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",[5,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"structural","you","when","Existing","use","only","execution","improve","clean","up","default","mode","trigger","for","switch","consistency","code quality","idiomatic","notice","2026-11-10 13:02:02",false,"---\nname: refactor\ndescription: Refactor existing code to improve quality, readability, architecture, consistency, simplicity, and idiomatic style — without changing observable behavior. Use this skill whenever the user says \"refactor\", \"clean up this code\", \"this is messy\", \"too complex\", \"hard to read\", \"too much duplication\", \"improve code quality\", or shares code with obvious structural problems. Also trigger proactively when you notice significant code smells while working on another task. Default mode is execution (make the changes); switch to plan-only if the user explicitly asks for a refactoring plan without executing changes.\n---\n\n# Refactor\n\nImprove existing code without changing its observable behavior.\n\nBefore starting, load the canonical policy:\n\n- `references\u002Frefactor-policy.md`\n\nIt contains the quality priorities, code smells catalog, techniques table, and hard rules. Treat it as the source of truth.\n\n## Scope\n\nUnless the user specifies otherwise:\n- Work on the file or code the user explicitly points to.\n- If a symbol (function, class, module) is named — scope to that symbol and its direct dependencies.\n- Do not expand scope to the whole codebase without explicit instruction.\n\n## Pre-condition: tests\n\nRefactoring without tests is dangerous. Before touching any code:\n\n1. Check if tests exist for the code to be refactored.\n2. **If tests exist** — run them.\n   - Green → this is your baseline, proceed.\n   - Red → **stop**. Tell the user: tests are already failing before any changes. Ask whether to fix them first or proceed knowing the baseline is broken.\n3. **If no tests exist** — ask the user:\n   > \"There are no tests covering this code. Should I write characterization tests first (recommended), or proceed without them?\"\n   - If characterization tests: write them, confirm green, then proceed.\n   - If user declines: proceed but note the risk explicitly.\n\n## Workflow\n\n### Default: execute\n\n1. Read the code — understand what it does before changing anything.\n2. Satisfy the pre-condition above.\n3. Identify smells using the catalog in `references\u002Frefactor-policy.md` — list what is wrong and why, ordered by impact.\n4. Plan the sequence — order changes so each step is safe and independently verifiable. Low-risk techniques first.\n5. Execute one change at a time:\n   - Apply one named technique from the policy.\n   - Run tests. Green → continue. Red → revert, find a smaller step.\n   - Check diagnostics after each change.\n6. Verify — run the full test suite. Confirm behavior is unchanged.\n7. Report each change in this format:\n   `[Technique] file:symbol — reason`\n\n### Plan-only mode\n\nUse only when the user explicitly asks for a refactoring plan without making changes (e.g. \"show me what to refactor\", \"give me a plan\").\n\nDo not use this mode for code review — that is a separate skill.\n\nOutput:\n- Smells found, with file and rough location\n- Why each is a problem\n- Technique to apply (from policy)\n- Suggested order, low-risk first\n\n## Constraints\n\n- Do not implement fixes for bugs found during refactoring — note them, fix separately.\n- Do not review code quality in isolation — use the `code-review` skill for that.\n- Respond in the user's language.\n","# Refactor\n\nImprove existing code without changing its observable behavior.\n\nBefore starting, load the canonical policy:\n\n- `references\u002Frefactor-policy.md`\n\nIt contains the quality priorities, code smells catalog, techniques table, and hard rules. Treat it as the source of truth.\n\n## Scope\n\nUnless the user specifies otherwise:\n- Work on the file or code the user explicitly points to.\n- If a symbol (function, class, module) is named — scope to that symbol and its direct dependencies.\n- Do not expand scope to the whole codebase without explicit instruction.\n\n## Pre-condition: tests\n\nRefactoring without tests is dangerous. Before touching any code:\n\n1. Check if tests exist for the code to be refactored.\n2. **If tests exist** — run them.\n   - Green → this is your baseline, proceed.\n   - Red → **stop**. Tell the user: tests are already failing before any changes. Ask whether to fix them first or proceed knowing the baseline is broken.\n3. **If no tests exist** — ask the user:\n   > \"There are no tests covering this code. Should I write characterization tests first (recommended), or proceed without them?\"\n   - If characterization tests: write them, confirm green, then proceed.\n   - If user declines: proceed but note the risk explicitly.\n\n## Workflow\n\n### Default: execute\n\n1. Read the code — understand what it does before changing anything.\n2. Satisfy the pre-condition above.\n3. Identify smells using the catalog in `references\u002Frefactor-policy.md` — list what is wrong and why, ordered by impact.\n4. Plan the sequence — order changes so each step is safe and independently verifiable. Low-risk techniques first.\n5. Execute one change at a time:\n   - Apply one named technique from the policy.\n   - Run tests. Green → continue. Red → revert, find a smaller step.\n   - Check diagnostics after each change.\n6. Verify — run the full test suite. Confirm behavior is unchanged.\n7. Report each change in this format:\n   `[Technique] file:symbol — reason`\n\n### Plan-only mode\n\nUse only when the user explicitly asks for a refactoring plan without making changes (e.g. \"show me what to refactor\", \"give me a plan\").\n\nDo not use this mode for code review — that is a separate skill.\n\nOutput:\n- Smells found, with file and rough location\n- Why each is a problem\n- Technique to apply (from policy)\n- Suggested order, low-risk first\n\n## Constraints\n\n- Do not implement fixes for bugs found during refactoring — note them, fix separately.\n- Do not review code quality in isolation — use the `code-review` skill for that.\n- Respond in the user's language.\n",{"name":5,"description":7},"master","cbded6c96796a063405af105d5b3209ab6219407","dotfiles\u002Fdot_agents\u002Fskills\u002Frefactor",0,"https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen","https:\u002F\u002Fgithub.com\u002FArtawower","workationmode.com","2026-11-10 19:23:03",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add Artawower\u002Fkaizen --skill refactor",{"tool":62,"command":63},"bunx","bunx skills add Artawower\u002Fkaizen --skill refactor",{"tool":65,"command":66},"pnpm","pnpm dlx skills add Artawower\u002Fkaizen --skill refactor","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Frefactor\u002FSKILL.md",true,[70],{"path":71,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"references\u002Frefactor-policy.md","REFERENCE","参考文档",3800,"https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Frefactor\u002Freferences\u002Frefactor-policy.md",[77,106,123,147,166,192],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":86,"publishedAt":43},"01M71SYJ1B45ZKM8J96AZ3TS0H","yt-analyze","Fetch YouTrack task + comments via MCP, critically analyze relevance and requirements, produce concise summary of what to implement, and build an implementation plan mapped to codebase. Trigger - YouTrack issue ID or request to \"analyze task\", \"plan task\", \"break down YT issue\".","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fyt-analyze\u002FSKILL.md",[83],{"categoryNo":84,"categoryName":85,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[87,88,89,90,91,92,93,94,95,96,97,98,99,36,100,101,102,103,104,105],"analyze","yt analyze","yt","fetch","implementation plan","MCP","plan task","plan","request","break","issue","youtrack","down","produce","break down","comments","requirements","implement","task",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":43},"01M71SYF7RSTEXKDWPXJ08EVQG","youtrack-task","Analyzes a YouTrack issue, reviews comments and attachments, and proposes or creates actionable subtasks. Use when the user gives a YouTrack issue ID and wants synthesis, decomposition, or follow-up tasks.","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fyoutrack-task\u002FSKILL.md",[],[113,98,105,114,115,116,117,118,33,97,119,28,26,102,120,121,122],"youtrack task","id","reviews","attachments","decomposition","actionable","follow-up","tasks","Synthesis","user",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":129,"publishedAt":43},"01M71SYCE94601T6DA5G2GDKYA","youtrack-search","Searches YouTrack from natural language or native query syntax and returns a concise report with the most relevant issues. Use when the user wants to find issues, triage work, or translate a plain-language query into YouTrack search.","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fyoutrack-search\u002FSKILL.md",[],[130,131,98,132,133,134,135,136,28,26,137,138,139,140,141,142,143,144,145,146],"search","youtrack search","natural language","relevant","translate","issues","plain-language","query","with","work","concise","native","find","report","syntax","triage","plain",{"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":161,"publishedAt":43},"01M71SYAXN8EA6DDXEZWVY872S","writing-for-agents","Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fwriting-for-agents\u002FSKILL.md",[153,156],{"categoryNo":154,"categoryName":155,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":157,"categoryName":158,"taxonomyType":159,"taxonomyTypeDesc":160},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[162,37,163,164,28,165,26],"writing for agents","writing","editing","documents",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":175,"publishedAt":43},"01M71SY8ZKMWPF8ZAENT7MQE28","write-a-prd","Create a PRD through user interview, codebase exploration, and module design, then submit as a GitHub issue. Use when user wants to write a PRD, create a product requirements document, or plan a new feature.","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fwrite-a-prd\u002FSKILL.md",[172],{"categoryNo":173,"categoryName":174,"taxonomyType":159,"taxonomyTypeDesc":160},"01JBSEEDCAT000000000000031","产品经理",[176,177,178,179,180,181,182,183,184,185,186,28,187,26,188,189,103,190,191,94],"write","write a prd","prd","interview","as","exploration","feature","submit","design","module","new","document","user interview","codebase exploration","create","new feature",{"skillNo":193,"name":194,"nameZh":6,"description":195,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":196,"categories":197,"keywords":198,"publishedAt":43},"01M71SY6J9F119TJSMA2YBEP5P","vitest","Plan and write Vitest tests for changed code. Analyses git diff, checks existing tests, produces a concrete test plan using flat test structure (no describe\u002Fit blocks). Use when adding tests for new\u002Fchanged code, improving Vitest coverage, or asking what to test after a change.","https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fvitest\u002FSKILL.md",[],[194,199,200,201,37,202,186,28,27,203,26,204,205,206,94,207,208,176,209,210],"coverage","test plan","diff","tests","adding tests","code","test","structure","change","flat","blocks","git"]