[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71SVBPD7QAT834YES3S7S51":3,"skill-same:01M71SVBPD7QAT834YES3S7S51":85},{"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":6,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":6,"updatedAt":56,"install":57,"resources":70},"01M71SVBPD7QAT834YES3S7S51","change-hygiene",null,"Helps describe changes clearly, follow conventional commit style, keep jj revisions focused, and apply agent\u002Fskill creation best practices. Use whenever the user asks how to name a change, write a commit or revision description, decide whether to reuse the current jj revision, create or modify an agent or skill, or wants cleaner change hygiene before editing files.","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\u002Fchange-hygiene\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"change","hygiene","change hygiene","changes","create","commit","apply","best practices","keep","skill creation","use","files","how to","reuse","decide","editing","creation","modify","describe changes","jj","2026-11-10 13:02:02",false,"---\nname: change-hygiene\ndescription: Helps describe changes clearly, follow conventional commit style, keep jj revisions focused, and apply agent\u002Fskill creation best practices. Use whenever the user asks how to name a change, write a commit or revision description, decide whether to reuse the current jj revision, create or modify an agent or skill, or wants cleaner change hygiene before editing files.\n---\n\n# Change Hygiene\n\nUse this skill whenever the work involves:\n- naming a change\n- writing or refining a revision description\n- deciding whether the current task belongs in the current jj revision\n- creating or updating an agent\n- creating or updating a skill\n- cleaning up change scope before editing files\n\nThis skill is about **scope discipline**, **clear change descriptions**, and **safe agent\u002Fskill evolution**.\n\n## Before Changing Anything\n\nFollow this order unless the user explicitly asks for theory-only advice:\n\n1. Read the current revision description.\n2. Read the last **2-3 recent commits\u002Frevisions** for context.\n3. Compare the requested task to the current revision's semantic scope.\n4. If the task is outside the current scope, create a new revision before editing files.\n5. If the task is within scope, continue in the current revision.\n\n### Required jj workflow\n\nCheck the current revision first:\n\n```bash\njj log --no-graph -r @ --template 'change_id.short() ++ \" | \" ++ if(description, description, \"(empty)\")'\n```\n\nThen inspect recent history for context. Read **2-3 recent revisions** before creating or substantially modifying an agent\u002Fskill or other structured workflow artifact:\n\n```bash\njj log -r '::@' --limit 3\n```\n\nIf you need patch-level context, prefer a more detailed history view:\n\n```bash\njj log -p -r '::@' --limit 3\n```\n\n## Scope Decision Rule\n\n### Same semantic scope\nStay in the current revision when the new task is part of the same logical change.\nExamples:\n- polishing the prompt of the agent you are already adding\n- fixing a typo in docs for the same feature\n- updating a team entry that is required for the same new skill\u002Fagent\n\n### Different semantic scope\nCreate a new revision before touching files when the task is a different feature, unrelated cleanup, or a separate refactor.\n\nUse:\n\n```bash\njj new -m \"\u003Cdescription>\"\n```\n\nIf you are unsure whether the scope matches, prefer creating a new revision.\n\n## Revision Description Rules\n\nA good jj revision description should be:\n- short\n- specific\n- imperative\n- focused on one logical change\n- understandable without reading the diff first\n\nGood descriptions:\n- `feat(agents): add coordinator orchestration policy`\n- `docs(skills): add change hygiene skill`\n- `fix(pi): correct agent team loading notes`\n- `refactor(agents): simplify coordinator team layout`\n\nBad descriptions:\n- `stuff`\n- `updates`\n- `misc fixes`\n- `agent changes and docs and cleanup`\n\nRead `references\u002Fconventional-commits.md` for the recommended message format.\n\n## Agent and Skill Creation Hygiene\n\nBefore creating or changing an agent\u002Fskill:\n\n1. Read neighboring files in the same area.\n2. Read the last **2-3 relevant commits\u002Frevisions**.\n3. Check whether an existing agent\u002Fskill already covers the use case.\n4. Keep one role = one concern.\n5. Give the smallest toolset that matches the role.\n6. Do not promise runtime capabilities that do not exist.\n7. Update teams, chains, or docs only when the change actually requires it.\n8. Do not mix unrelated cleanup into the same revision.\n\nRead:\n- `references\u002Fagent-creation-checklist.md`\n- `references\u002Fexamples.md`\n\n## Truthfulness Rules\n\n- Do not claim direct codebase inspection if the role is dispatcher-only.\n- Do not claim generic parallel dispatch if the runtime only supports sequential delegation.\n- Do not pretend recent history was reviewed if it was unavailable; say so explicitly.\n- Do not invent a new agent when refining an existing one would solve the problem more simply.\n\n## Conventional Commit Guidance\n\nUse conventional commit style as the default recommendation for revision descriptions unless the repository has a stronger local convention.\n\nPreferred types:\n- `feat`\n- `fix`\n- `docs`\n- `refactor`\n- `chore`\n- `test`\n- `build`\n- `ci`\n- `perf`\n\nScopes are optional but helpful when they clarify the affected area.\n\nSee `references\u002Fconventional-commits.md`.\n\n## What to Report Back\n\nWhen helping a user with change hygiene, report:\n- current revision description\n- the 2-3 recent revisions you reviewed\n- whether the task matches the current scope\n- whether `jj new` is needed\n- a suggested revision description\n- any agent\u002Fskill hygiene cautions\n\n## Output Template\n\nUse this compact structure when relevant:\n\n```markdown\n## Change Hygiene Check\n- Current revision: ...\n- Recent revisions reviewed: ...\n- Scope decision: reuse current revision \u002F create new revision\n- Suggested jj command: `jj new -m \"...\"` (if needed)\n- Suggested revision description: ...\n- Agent\u002Fskill cautions: ...\n```\n\n## Reference Files\n\n- `references\u002Fconventional-commits.md` — recommended conventional commit types, scope guidance, and examples\n- `references\u002Fagent-creation-checklist.md` — checklist for safe agent\u002Fskill changes\n- `references\u002Fexamples.md` — same-scope vs new-scope examples and sample revision descriptions\n","# Change Hygiene\n\nUse this skill whenever the work involves:\n- naming a change\n- writing or refining a revision description\n- deciding whether the current task belongs in the current jj revision\n- creating or updating an agent\n- creating or updating a skill\n- cleaning up change scope before editing files\n\nThis skill is about **scope discipline**, **clear change descriptions**, and **safe agent\u002Fskill evolution**.\n\n## Before Changing Anything\n\nFollow this order unless the user explicitly asks for theory-only advice:\n\n1. Read the current revision description.\n2. Read the last **2-3 recent commits\u002Frevisions** for context.\n3. Compare the requested task to the current revision's semantic scope.\n4. If the task is outside the current scope, create a new revision before editing files.\n5. If the task is within scope, continue in the current revision.\n\n### Required jj workflow\n\nCheck the current revision first:\n\n```bash\njj log --no-graph -r @ --template 'change_id.short() ++ \" | \" ++ if(description, description, \"(empty)\")'\n```\n\nThen inspect recent history for context. Read **2-3 recent revisions** before creating or substantially modifying an agent\u002Fskill or other structured workflow artifact:\n\n```bash\njj log -r '::@' --limit 3\n```\n\nIf you need patch-level context, prefer a more detailed history view:\n\n```bash\njj log -p -r '::@' --limit 3\n```\n\n## Scope Decision Rule\n\n### Same semantic scope\nStay in the current revision when the new task is part of the same logical change.\nExamples:\n- polishing the prompt of the agent you are already adding\n- fixing a typo in docs for the same feature\n- updating a team entry that is required for the same new skill\u002Fagent\n\n### Different semantic scope\nCreate a new revision before touching files when the task is a different feature, unrelated cleanup, or a separate refactor.\n\nUse:\n\n```bash\njj new -m \"\u003Cdescription>\"\n```\n\nIf you are unsure whether the scope matches, prefer creating a new revision.\n\n## Revision Description Rules\n\nA good jj revision description should be:\n- short\n- specific\n- imperative\n- focused on one logical change\n- understandable without reading the diff first\n\nGood descriptions:\n- `feat(agents): add coordinator orchestration policy`\n- `docs(skills): add change hygiene skill`\n- `fix(pi): correct agent team loading notes`\n- `refactor(agents): simplify coordinator team layout`\n\nBad descriptions:\n- `stuff`\n- `updates`\n- `misc fixes`\n- `agent changes and docs and cleanup`\n\nRead `references\u002Fconventional-commits.md` for the recommended message format.\n\n## Agent and Skill Creation Hygiene\n\nBefore creating or changing an agent\u002Fskill:\n\n1. Read neighboring files in the same area.\n2. Read the last **2-3 relevant commits\u002Frevisions**.\n3. Check whether an existing agent\u002Fskill already covers the use case.\n4. Keep one role = one concern.\n5. Give the smallest toolset that matches the role.\n6. Do not promise runtime capabilities that do not exist.\n7. Update teams, chains, or docs only when the change actually requires it.\n8. Do not mix unrelated cleanup into the same revision.\n\nRead:\n- `references\u002Fagent-creation-checklist.md`\n- `references\u002Fexamples.md`\n\n## Truthfulness Rules\n\n- Do not claim direct codebase inspection if the role is dispatcher-only.\n- Do not claim generic parallel dispatch if the runtime only supports sequential delegation.\n- Do not pretend recent history was reviewed if it was unavailable; say so explicitly.\n- Do not invent a new agent when refining an existing one would solve the problem more simply.\n\n## Conventional Commit Guidance\n\nUse conventional commit style as the default recommendation for revision descriptions unless the repository has a stronger local convention.\n\nPreferred types:\n- `feat`\n- `fix`\n- `docs`\n- `refactor`\n- `chore`\n- `test`\n- `build`\n- `ci`\n- `perf`\n\nScopes are optional but helpful when they clarify the affected area.\n\nSee `references\u002Fconventional-commits.md`.\n\n## What to Report Back\n\nWhen helping a user with change hygiene, report:\n- current revision description\n- the 2-3 recent revisions you reviewed\n- whether the task matches the current scope\n- whether `jj new` is needed\n- a suggested revision description\n- any agent\u002Fskill hygiene cautions\n\n## Output Template\n\nUse this compact structure when relevant:\n\n```markdown\n## Change Hygiene Check\n- Current revision: ...\n- Recent revisions reviewed: ...\n- Scope decision: reuse current revision \u002F create new revision\n- Suggested jj command: `jj new -m \"...\"` (if needed)\n- Suggested revision description: ...\n- Agent\u002Fskill cautions: ...\n```\n\n## Reference Files\n\n- `references\u002Fconventional-commits.md` — recommended conventional commit types, scope guidance, and examples\n- `references\u002Fagent-creation-checklist.md` — checklist for safe agent\u002Fskill changes\n- `references\u002Fexamples.md` — same-scope vs new-scope examples and sample revision descriptions\n",{"name":5,"description":7},"master","cbded6c96796a063405af105d5b3209ab6219407","dotfiles\u002Fdot_agents\u002Fskills\u002Fchange-hygiene",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":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add Artawower\u002Fkaizen --skill change-hygiene",{"tool":63,"command":64},"bunx","bunx skills add Artawower\u002Fkaizen --skill change-hygiene",{"tool":66,"command":67},"pnpm","pnpm dlx skills add Artawower\u002Fkaizen --skill change-hygiene","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fchange-hygiene\u002FSKILL.md",true,[71,77,81],{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},"references\u002Fagent-creation-checklist.md","REFERENCE","参考文档",2365,"https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fchange-hygiene\u002Freferences\u002Fagent-creation-checklist.md",{"path":78,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":79,"sourceHtmlUrl":80},"references\u002Fconventional-commits.md",3381,"https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fchange-hygiene\u002Freferences\u002Fconventional-commits.md",{"path":82,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":83,"sourceHtmlUrl":84},"references\u002Fexamples.md",2548,"https:\u002F\u002Fgithub.com\u002FArtawower\u002Fkaizen\u002Fblob\u002Fmaster\u002Fdotfiles\u002Fdot_agents\u002Fskills\u002Fchange-hygiene\u002Freferences\u002Fexamples.md",[86,114,133,157,176,201],{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":93,"publishedAt":44},"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",[92],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113],"analyze","yt analyze","yt","fetch","implementation plan","MCP","plan task","plan","request","break","issue","youtrack","down","trigger","produce","break down","comments","requirements","implement","task",{"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":44},"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",[],[121,105,113,122,123,124,125,126,127,104,128,34,129,110,130,131,132],"youtrack task","id","reviews","attachments","decomposition","actionable","up","follow-up","when","tasks","Synthesis","user",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":44},"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",[],[140,141,105,142,143,144,145,146,34,129,147,148,149,150,151,152,153,154,155,156],"search","youtrack search","natural language","relevant","translate","issues","plain-language","query","with","work","concise","native","find","report","syntax","triage","plain",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":171,"publishedAt":44},"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",[163,166],{"categoryNo":164,"categoryName":165,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":167,"categoryName":168,"taxonomyType":169,"taxonomyTypeDesc":170},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[172,173,174,39,34,175,129],"writing for agents","for","writing","documents",{"skillNo":177,"name":178,"nameZh":6,"description":179,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":180,"categories":181,"keywords":185,"publishedAt":44},"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",[182],{"categoryNo":183,"categoryName":184,"taxonomyType":169,"taxonomyTypeDesc":170},"01JBSEEDCAT000000000000031","产品经理",[186,187,188,189,190,191,192,193,194,195,196,34,197,129,198,199,111,28,200,101],"write","write a prd","prd","interview","as","exploration","feature","submit","design","module","new","document","user interview","codebase exploration","new feature",{"skillNo":202,"name":203,"nameZh":6,"description":204,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":205,"categories":206,"keywords":207,"publishedAt":44},"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",[],[203,208,209,210,173,211,196,34,212,213,129,214,215,216,101,24,217,186,218,219],"coverage","test plan","diff","tests","Existing","adding tests","code","test","structure","flat","blocks","git"]