[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71STS6QSN2EC6D7G7CY6R5E":3,"skill-same:01M71STS6QSN2EC6D7G7CY6R5E":81},{"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":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":50,"repositoryHtmlUrl":51,"repositoryHomepageUrl":52,"ownerHtmlUrl":53,"ownerBlogUrl":54,"ownerDescription":55,"updatedAt":56,"install":57,"resources":70},"01M71STS6QSN2EC6D7G7CY6R5E","to-issues",null,"Break a plan, spec, or PRD into independently-grabbable tracker issues using tracer-bullet vertical slices","HigorAlves\u002Forc","HigorAlves","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F11262976?v=4","01M71S79EZEMHZ8PQSV0XQJHYY","Higor Alves","01M71S79FKKTCHCN1EDR8DSTWQ",7,"MIT","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fto-issues\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"to issues","issues","prd","implementation","spec","https","tickets","github","pin","use","techniques","upstream","break","tracker","audit","plan","when","matt pocock","re","2026-11-10 13:02:02",false,"---\nname: to-issues\ndescription: Break a plan, spec, or PRD into independently-grabbable tracker issues using tracer-bullet vertical slices\nwhen_to_use: Use when converting a plan into issues or implementation tickets.\nlicense: MIT\nmetadata:\n  author: Matt Pocock\n  source: Derived from https:\u002F\u002Fgithub.com\u002Fmattpocock\u002Fskills (audit pin 5beb35b; techniques re-merged from upstream @ 5beb35b)\n---\n\n# To Issues\n\nBreak a plan, spec, or conversation into a set of independently-grabbable **issues** — tracer-bullet vertical slices, each declaring the issues that **block** it.\n\nThe issue tracker and triage label vocabulary come from the tracker layer — if absent, run `\u002Forc:setup`.\n\n## Process\n\n### 1. Gather context\n\nWork from whatever is already in the conversation context. If the user passes a reference (a spec path, an issue number or URL) as an argument, fetch it and read its full body and comments.\n\n### 2. Explore the codebase (optional)\n\nIf you have not already explored the codebase, do so to understand the current state of the code. Issue titles and descriptions use the project's domain glossary vocabulary, and respect ADRs in the area you're touching.\n\nLook for opportunities to prefactor the code to make the implementation easier. \"Make the change easy, then make the easy change.\"\n\n### 3. Draft vertical slices\n\nBreak the work into **tracer bullet** issues.\n\n\u003Cvertical-slice-rules>\n\n- Each slice cuts a narrow but COMPLETE path through every layer (schema, API, UI, tests) — vertical, NOT a horizontal slice of one layer\n- A completed slice is demoable or verifiable on its own\n- Each slice is sized to fit in a single fresh context window\n- Any prefactoring comes first\n\n\u003C\u002Fvertical-slice-rules>\n\nSlices may be **HITL** or **AFK**. HITL slices require human interaction, such as an architectural decision or a design review. AFK slices can be implemented and merged without human interaction. Prefer AFK over HITL where possible.\n\nGive each issue its **blocking edges** — the other issues that must complete before it can start. An issue with no blockers can start immediately.\n\n**Wide refactors are the exception to vertical slicing.** A **wide refactor** is one mechanical change — rename a column, retype a shared symbol — whose **blast radius** fans across the whole codebase, so no vertical slice can land green. Sequence it as **expand–contract** per [WIDE-REFACTORS.md](references\u002FWIDE-REFACTORS.md).\n\n### 4. Quiz the user\n\nPresent the proposed breakdown as a numbered list. For each issue, show:\n\n- **Title**: short descriptive name\n- **Type**: HITL \u002F AFK\n- **Blocked by**: which other issues (if any) must complete first\n- **What it delivers**: the end-to-end behaviour this issue makes work\n- **User stories covered**: which user stories this addresses (if the source material has them)\n\nAsk the user:\n\n- Does the granularity feel right? (too coarse \u002F too fine)\n- Are the blocking edges correct — does each issue only depend on issues that genuinely gate it?\n- Do any issues need merging or splitting further?\n- Are the correct slices marked as HITL and AFK?\n\nIterate until the user approves the breakdown.\n\n### 5. Publish the issues to the configured tracker\n\nPublish the approved issues. **How** depends on the tracker `\u002Forc:setup` configured — the issues are the same either way, only the shape of the blocking edges changes:\n\n- **Local files** → write one file per issue under `.orc\u002F\u003Cfeature-slug>\u002Fissues\u002F\u003CNN>-\u003Cslug>.md`, numbered from `01` in dependency order (blockers first). Each file's \"Blocked by\" lists the numbers\u002Ftitles it depends on. Use the per-issue file template in [TEMPLATES.md](references\u002FTEMPLATES.md) — one issue per file, never a single combined file.\n- **A real issue tracker (GitHub, Jira, Linear, …)** → publish one issue per slice in dependency order (blockers first) so each issue's blocking edges can reference real identifiers. Use the platform's native blocking relationship where it has one; otherwise set each issue's \"Blocked by\" to the blocking issues. If the source was an existing issue, make each slice its sub-issue (the tracker doc's operation). Apply the `needs-triage` triage label so each issue enters the normal triage flow.\n\nWork the **frontier**: any issue whose blockers are all done. For a purely linear chain that means top to bottom.\n\nDo NOT close or modify any parent issue.\n\nBoth templates — the per-issue local file and the tracker issue body — are in [TEMPLATES.md](references\u002FTEMPLATES.md); read it before publishing.\n\nIn either form, avoid specific file paths or code snippets — they go stale fast. Exception: if a prototype produced a snippet that encodes a decision more precisely than prose can (state machine, reducer, schema, type shape), inline it and note briefly that it came from a prototype. Trim to the decision-rich parts — not a working demo, just the important bits.\n\n## Jira hierarchy variant\n\nWhen the tracker is Jira and the output is the structured Epic→Story→Task hierarchy (micro-PRD epic, templated children, concurrency-sliced tasks) rather than flat issues, hand off to `\u002Forc:jira-breakdown` — it enforces the `orc:jira-hierarchy` contract end-to-end.\n","# To Issues\n\nBreak a plan, spec, or conversation into a set of independently-grabbable **issues** — tracer-bullet vertical slices, each declaring the issues that **block** it.\n\nThe issue tracker and triage label vocabulary come from the tracker layer — if absent, run `\u002Forc:setup`.\n\n## Process\n\n### 1. Gather context\n\nWork from whatever is already in the conversation context. If the user passes a reference (a spec path, an issue number or URL) as an argument, fetch it and read its full body and comments.\n\n### 2. Explore the codebase (optional)\n\nIf you have not already explored the codebase, do so to understand the current state of the code. Issue titles and descriptions use the project's domain glossary vocabulary, and respect ADRs in the area you're touching.\n\nLook for opportunities to prefactor the code to make the implementation easier. \"Make the change easy, then make the easy change.\"\n\n### 3. Draft vertical slices\n\nBreak the work into **tracer bullet** issues.\n\n\u003Cvertical-slice-rules>\n\n- Each slice cuts a narrow but COMPLETE path through every layer (schema, API, UI, tests) — vertical, NOT a horizontal slice of one layer\n- A completed slice is demoable or verifiable on its own\n- Each slice is sized to fit in a single fresh context window\n- Any prefactoring comes first\n\n\u003C\u002Fvertical-slice-rules>\n\nSlices may be **HITL** or **AFK**. HITL slices require human interaction, such as an architectural decision or a design review. AFK slices can be implemented and merged without human interaction. Prefer AFK over HITL where possible.\n\nGive each issue its **blocking edges** — the other issues that must complete before it can start. An issue with no blockers can start immediately.\n\n**Wide refactors are the exception to vertical slicing.** A **wide refactor** is one mechanical change — rename a column, retype a shared symbol — whose **blast radius** fans across the whole codebase, so no vertical slice can land green. Sequence it as **expand–contract** per [WIDE-REFACTORS.md](references\u002FWIDE-REFACTORS.md).\n\n### 4. Quiz the user\n\nPresent the proposed breakdown as a numbered list. For each issue, show:\n\n- **Title**: short descriptive name\n- **Type**: HITL \u002F AFK\n- **Blocked by**: which other issues (if any) must complete first\n- **What it delivers**: the end-to-end behaviour this issue makes work\n- **User stories covered**: which user stories this addresses (if the source material has them)\n\nAsk the user:\n\n- Does the granularity feel right? (too coarse \u002F too fine)\n- Are the blocking edges correct — does each issue only depend on issues that genuinely gate it?\n- Do any issues need merging or splitting further?\n- Are the correct slices marked as HITL and AFK?\n\nIterate until the user approves the breakdown.\n\n### 5. Publish the issues to the configured tracker\n\nPublish the approved issues. **How** depends on the tracker `\u002Forc:setup` configured — the issues are the same either way, only the shape of the blocking edges changes:\n\n- **Local files** → write one file per issue under `.orc\u002F\u003Cfeature-slug>\u002Fissues\u002F\u003CNN>-\u003Cslug>.md`, numbered from `01` in dependency order (blockers first). Each file's \"Blocked by\" lists the numbers\u002Ftitles it depends on. Use the per-issue file template in [TEMPLATES.md](references\u002FTEMPLATES.md) — one issue per file, never a single combined file.\n- **A real issue tracker (GitHub, Jira, Linear, …)** → publish one issue per slice in dependency order (blockers first) so each issue's blocking edges can reference real identifiers. Use the platform's native blocking relationship where it has one; otherwise set each issue's \"Blocked by\" to the blocking issues. If the source was an existing issue, make each slice its sub-issue (the tracker doc's operation). Apply the `needs-triage` triage label so each issue enters the normal triage flow.\n\nWork the **frontier**: any issue whose blockers are all done. For a purely linear chain that means top to bottom.\n\nDo NOT close or modify any parent issue.\n\nBoth templates — the per-issue local file and the tracker issue body — are in [TEMPLATES.md](references\u002FTEMPLATES.md); read it before publishing.\n\nIn either form, avoid specific file paths or code snippets — they go stale fast. Exception: if a prototype produced a snippet that encodes a decision more precisely than prose can (state machine, reducer, schema, type shape), inline it and note briefly that it came from a prototype. Trim to the decision-rich parts — not a working demo, just the important bits.\n\n## Jira hierarchy variant\n\nWhen the tracker is Jira and the output is the structured Epic→Story→Task hierarchy (micro-PRD epic, templated children, concurrency-sliced tasks) rather than flat issues, hand off to `\u002Forc:jira-breakdown` — it enforces the `orc:jira-hierarchy` contract end-to-end.\n",{"name":5,"license":15,"metadata":43,"description":7,"when_to_use":46},{"author":44,"source":45},"Matt Pocock","Derived from https:\u002F\u002Fgithub.com\u002Fmattpocock\u002Fskills (audit pin 5beb35b; techniques re-merged from upstream @ 5beb35b)","Use when converting a plan into issues or implementation tickets.","main","7522fd7266944e30052204c2f6df287d8b5516be","orc\u002Fskills\u002Fto-issues",0,"https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc","https:\u002F\u002Forc.novacstack.com\u002F","https:\u002F\u002Fgithub.com\u002FHigorAlves","higoralves.dev","Software Engineering","2026-11-07 07:26:38",{"source":8,"skillName":5,"commands":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add HigorAlves\u002Forc --skill to-issues",{"tool":63,"command":64},"bunx","bunx skills add HigorAlves\u002Forc --skill to-issues",{"tool":66,"command":67},"pnpm","pnpm dlx skills add HigorAlves\u002Forc --skill to-issues","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fto-issues\u002FSKILL.md",true,[71,77],{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},"references\u002FTEMPLATES.md","REFERENCE","参考文档",1146,"https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fto-issues\u002Freferences\u002FTEMPLATES.md",{"path":78,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":79,"sourceHtmlUrl":80},"references\u002FWIDE-REFACTORS.md",1125,"https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fto-issues\u002Freferences\u002FWIDE-REFACTORS.md",[82,119,142,163,185,204],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":101,"publishedAt":38},"01M71SW40F9TAAEDKBYYBCM814","writing-plans","Write a comprehensive implementation plan of bite-sized TDD tasks that an engineer with zero codebase context could execute — exact files, code, tests, and verification steps","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fwriting-plans\u002FSKILL.md",[88,93,98],{"categoryNo":89,"categoryName":90,"taxonomyType":91,"taxonomyTypeDesc":92},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":99,"categoryName":100,"taxonomyType":96,"taxonomyTypeDesc":97},"01JBSEEDCAT000000000000036","内容创作者",[102,103,104,105,106,107,108,35,109,110,111,112,34,113,114,115,116,117,118,28],"writing","writing plans","plans","engineer","superpowers","implementation plan","files","you","code","tasks","verification","write","steps","context","ZeRO","for","tests",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":130,"publishedAt":38},"01M71SW15KHE4MHJW9NEXV65X2","writing-for-agents","orc's doctrine layer for writing any document an agent consumes — skills, AGENTS.md\u002FCLAUDE.md, reference docs","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fwriting-for-agents\u002FSKILL.md",[125,126,129],{"categoryNo":89,"categoryName":90,"taxonomyType":91,"taxonomyTypeDesc":92},{"categoryNo":127,"categoryName":128,"taxonomyType":91,"taxonomyTypeDesc":92},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":99,"categoryName":100,"taxonomyType":96,"taxonomyTypeDesc":97},[131,102,117,36,35,132,133,134,135,136,137,138,28,139,26,24,140,141],"writing for agents","inline","tuning","a skill","layer","doctrine","push","editing","document","reference","docs",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":149,"publishedAt":38},"01M71SVYQKXT743HHHWGHT3G13","workspace-mode","Use when cwd is a parent dir holding multiple sibling git repos — defines repo auto-detection, --repos\u002F--repo\u002F--all-repos\u002F--this-repo precedence, per-repo dispatch, and linked-PR mechanics.","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fworkspace-mode\u002FSKILL.md",[148],{"categoryNo":127,"categoryName":128,"taxonomyType":91,"taxonomyTypeDesc":92},[150,151,152,153,154,35,155,156,157,158,28,159,160,161,162],"workspace mode","mode","workspace","mechanics","auto","repos","git","pr","repo","dispatch","auto-detection","detection","parent",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":170,"publishedAt":38},"01M71SVVP3BXS06G9395P2K0RH","wizard","Generate an interactive bash wizard walking a human through work only they can perform — credentials, secrets, one-off migrations","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fwizard\u002FSKILL.md",[169],{"categoryNo":127,"categoryName":128,"taxonomyType":91,"taxonomyTypeDesc":92},[165,171,172,173,174,36,35,175,176,177,178,179,180,114,181,182,117,28,183,184],"condition","never","provisioning infrastructure","only","Bash","work","credentials","generate","human","secrets","infrastructure","do","one","interactive",{"skillNo":186,"name":187,"nameZh":6,"description":188,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":189,"categories":190,"keywords":191,"publishedAt":38},"01M71SVT4AR6NKAM5B077E7QSJ","wait-what","Stop and re-pitch — the last message did not land; say it again simply, in the project's own vocabulary.","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fwait-what\u002FSKILL.md",[],[192,193,194,37,195,36,196,197,198,199,26,24,200,201,202,203],"wait what","wait","project","true","pitch","last","say","message","land","it","stop","vocabulary",{"skillNo":205,"name":206,"nameZh":6,"description":207,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":208,"categories":209,"keywords":214,"publishedAt":38},"01M71SVQVYRA9QBQ6G8MWR8G6F","vitest","Vitest fast unit testing framework powered by Vite with Jest-compatible API","https:\u002F\u002Fgithub.com\u002FHigorAlves\u002Forc\u002Fblob\u002Fmain\u002Forc\u002Fskills\u002Fvitest\u002FSKILL.md",[210,213],{"categoryNo":211,"categoryName":212,"taxonomyType":91,"taxonomyTypeDesc":92},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":94,"categoryName":95,"taxonomyType":96,"taxonomyTypeDesc":97},[206,215,216,217,218,219,102,35,220,221,222,223,224,225,226,227,228,229,118,230],"coverage","unit","testing","testing framework","generated","api","jest","2026","at","scripts","unit testing","antfu","framework","vite","mocking","dev"]