[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6QPYQKVMCC3QDJ4PAR31KG9":3,"skill-same:01M6QPYQKVMCC3QDJ4PAR31KG9":60},{"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":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":39,"commitSha":40,"skillDirectory":41,"forksCount":14,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":6,"ownerDescription":44,"updatedAt":45,"install":46,"resources":59},"01M6QPYQKVMCC3QDJ4PAR31KG9","gitnexus-impact-analysis",null,"Use when the user wants to know what will break if they change something, or needs safety analysis before editing code. Examples: \"Is it safe to change X?\", \"What depends on this?\", \"What will break?\"","lfr-ai\u002Fcopier-fullstack-template","lfr-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F233346551?v=4","01M6QPWTJWTSJV1TQTTY8ZPBYJ","Laurits Fromberg","01M6QPWTQ47BZGA4TH17H14N80",0,"MIT","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fgitnexus\u002Fgitnexus-impact-analysis\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"analysis","impact analysis","gitnexus impact analysis","impact","gitnexus","safe","change","code","examples","Safety","editing","user","use","it","break","2026-11-10 10:12:30",false,"---\nname: gitnexus-impact-analysis\ndescription: \"Use when the user wants to know what will break if they change something, or needs safety analysis before editing code. Examples: \\\"Is it safe to change X?\\\", \\\"What depends on this?\\\", \\\"What will break?\\\"\"\n---\n\n# Impact Analysis with GitNexus\n\n## When to Use\n\n- \"Is it safe to change this function?\"\n- \"What will break if I modify X?\"\n- \"Show me the blast radius\"\n- \"Who uses this code?\"\n- Before making non-trivial code changes\n- Before committing — to understand what your changes affect\n\n## Workflow\n\n```\n1. gitnexus_impact({target: \"X\", direction: \"upstream\"})  → What depends on this\n2. READ gitnexus:\u002F\u002Frepo\u002F{name}\u002Fprocesses                   → Check affected execution flows\n3. gitnexus_detect_changes()                               → Map current git changes to affected flows\n4. Assess risk and report to user\n```\n\n> If \"Index is stale\" → run `npx gitnexus analyze` in terminal.\n\n## Checklist\n\n```\n- [ ] gitnexus_impact({target, direction: \"upstream\"}) to find dependents\n- [ ] Review d=1 items first (these WILL BREAK)\n- [ ] Check high-confidence (>0.8) dependencies\n- [ ] READ processes to check affected execution flows\n- [ ] gitnexus_detect_changes() for pre-commit check\n- [ ] Assess risk level and report to user\n```\n\n## Understanding Output\n\n| Depth | Risk Level       | Meaning                  |\n| ----- | ---------------- | ------------------------ |\n| d=1   | **WILL BREAK**   | Direct callers\u002Fimporters |\n| d=2   | LIKELY AFFECTED  | Indirect dependencies    |\n| d=3   | MAY NEED TESTING | Transitive effects       |\n\n## Risk Assessment\n\n| Affected                       | Risk     |\n| ------------------------------ | -------- |\n| \u003C5 symbols, few processes      | LOW      |\n| 5-15 symbols, 2-5 processes    | MEDIUM   |\n| >15 symbols or many processes  | HIGH     |\n| Critical path (auth, payments) | CRITICAL |\n\n## Tools\n\n**gitnexus_impact** — the primary tool for symbol blast radius:\n\n```\ngitnexus_impact({\n  target: \"validateUser\",\n  direction: \"upstream\",\n  minConfidence: 0.8,\n  maxDepth: 3\n})\n\n→ d=1 (WILL BREAK):\n  - loginHandler (src\u002Fauth\u002Flogin.ts:42) [CALLS, 100%]\n  - apiMiddleware (src\u002Fapi\u002Fmiddleware.ts:15) [CALLS, 100%]\n\n→ d=2 (LIKELY AFFECTED):\n  - authRouter (src\u002Froutes\u002Fauth.ts:22) [CALLS, 95%]\n```\n\n**gitnexus_detect_changes** — git-diff based impact analysis:\n\n```\ngitnexus_detect_changes({scope: \"staged\"})\n\n→ Changed: 5 symbols in 3 files\n→ Affected: LoginFlow, TokenRefresh, APIMiddlewarePipeline\n→ Risk: MEDIUM\n```\n\n## Example: \"What breaks if I change validateUser?\"\n\n```\n1. gitnexus_impact({target: \"validateUser\", direction: \"upstream\"})\n   → d=1: loginHandler, apiMiddleware (WILL BREAK)\n   → d=2: authRouter, sessionManager (LIKELY AFFECTED)\n\n2. READ gitnexus:\u002F\u002Frepo\u002Fmy-app\u002Fprocesses\n   → LoginFlow and TokenRefresh touch validateUser\n\n3. Risk: 2 direct callers, 2 processes = MEDIUM\n```\n\n## OpenSpec Integration\n\nWhen impact analysis reveals a significant blast radius, use OpenSpec to\nformalize the change:\n\n1. **Assess impact** → `gitnexus_impact({target, direction: \"upstream\"})`\n2. **Check affected specs** → `openspec list --specs` and review relevant domain\n3. **Propose change** → `\u002Fopsx:propose \u003Cchange-name>` with impact context\n4. **Design includes blast radius** → Reference GitNexus output in design.md\n5. **Verify after implementation** → `\u002Fopsx:verify` + `gitnexus_detect_changes()`\n","# Impact Analysis with GitNexus\n\n## When to Use\n\n- \"Is it safe to change this function?\"\n- \"What will break if I modify X?\"\n- \"Show me the blast radius\"\n- \"Who uses this code?\"\n- Before making non-trivial code changes\n- Before committing — to understand what your changes affect\n\n## Workflow\n\n```\n1. gitnexus_impact({target: \"X\", direction: \"upstream\"})  → What depends on this\n2. READ gitnexus:\u002F\u002Frepo\u002F{name}\u002Fprocesses                   → Check affected execution flows\n3. gitnexus_detect_changes()                               → Map current git changes to affected flows\n4. Assess risk and report to user\n```\n\n> If \"Index is stale\" → run `npx gitnexus analyze` in terminal.\n\n## Checklist\n\n```\n- [ ] gitnexus_impact({target, direction: \"upstream\"}) to find dependents\n- [ ] Review d=1 items first (these WILL BREAK)\n- [ ] Check high-confidence (>0.8) dependencies\n- [ ] READ processes to check affected execution flows\n- [ ] gitnexus_detect_changes() for pre-commit check\n- [ ] Assess risk level and report to user\n```\n\n## Understanding Output\n\n| Depth | Risk Level       | Meaning                  |\n| ----- | ---------------- | ------------------------ |\n| d=1   | **WILL BREAK**   | Direct callers\u002Fimporters |\n| d=2   | LIKELY AFFECTED  | Indirect dependencies    |\n| d=3   | MAY NEED TESTING | Transitive effects       |\n\n## Risk Assessment\n\n| Affected                       | Risk     |\n| ------------------------------ | -------- |\n| \u003C5 symbols, few processes      | LOW      |\n| 5-15 symbols, 2-5 processes    | MEDIUM   |\n| >15 symbols or many processes  | HIGH     |\n| Critical path (auth, payments) | CRITICAL |\n\n## Tools\n\n**gitnexus_impact** — the primary tool for symbol blast radius:\n\n```\ngitnexus_impact({\n  target: \"validateUser\",\n  direction: \"upstream\",\n  minConfidence: 0.8,\n  maxDepth: 3\n})\n\n→ d=1 (WILL BREAK):\n  - loginHandler (src\u002Fauth\u002Flogin.ts:42) [CALLS, 100%]\n  - apiMiddleware (src\u002Fapi\u002Fmiddleware.ts:15) [CALLS, 100%]\n\n→ d=2 (LIKELY AFFECTED):\n  - authRouter (src\u002Froutes\u002Fauth.ts:22) [CALLS, 95%]\n```\n\n**gitnexus_detect_changes** — git-diff based impact analysis:\n\n```\ngitnexus_detect_changes({scope: \"staged\"})\n\n→ Changed: 5 symbols in 3 files\n→ Affected: LoginFlow, TokenRefresh, APIMiddlewarePipeline\n→ Risk: MEDIUM\n```\n\n## Example: \"What breaks if I change validateUser?\"\n\n```\n1. gitnexus_impact({target: \"validateUser\", direction: \"upstream\"})\n   → d=1: loginHandler, apiMiddleware (WILL BREAK)\n   → d=2: authRouter, sessionManager (LIKELY AFFECTED)\n\n2. READ gitnexus:\u002F\u002Frepo\u002Fmy-app\u002Fprocesses\n   → LoginFlow and TokenRefresh touch validateUser\n\n3. Risk: 2 direct callers, 2 processes = MEDIUM\n```\n\n## OpenSpec Integration\n\nWhen impact analysis reveals a significant blast radius, use OpenSpec to\nformalize the change:\n\n1. **Assess impact** → `gitnexus_impact({target, direction: \"upstream\"})`\n2. **Check affected specs** → `openspec list --specs` and review relevant domain\n3. **Propose change** → `\u002Fopsx:propose \u003Cchange-name>` with impact context\n4. **Design includes blast radius** → Reference GitNexus output in design.md\n5. **Verify after implementation** → `\u002Fopsx:verify` + `gitnexus_detect_changes()`\n",{"name":5,"description":7},"main","f726ce2f2bb4e3bcc2f56c066598f4acd910c5ee",".claude\u002Fskills\u002Fgitnexus\u002Fgitnexus-impact-analysis","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template","https:\u002F\u002Fgithub.com\u002Flfr-ai","Optimizing for elegance","2026-07-20 12:19:48",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add lfr-ai\u002Fcopier-fullstack-template --skill gitnexus-impact-analysis",{"tool":52,"command":53},"bunx","bunx skills add lfr-ai\u002Fcopier-fullstack-template --skill gitnexus-impact-analysis",{"tool":55,"command":56},"pnpm","pnpm dlx skills add lfr-ai\u002Fcopier-fullstack-template --skill gitnexus-impact-analysis","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fgitnexus\u002Fgitnexus-impact-analysis\u002FSKILL.md",true,[],[61,94,106,112,129,135],{"skillNo":62,"name":63,"nameZh":6,"description":64,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":65,"categories":66,"keywords":77,"publishedAt":34},"01M6QQGVYW8BZ3W165A5YMJ1PF","ui-ux-frontend","Frontend UX, accessibility, responsive layout, and Storybook interaction quality standards.","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fui-ux-frontend\u002FSKILL.md",[67,72],{"categoryNo":68,"categoryName":69,"taxonomyType":70,"taxonomyTypeDesc":71},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",{"categoryNo":73,"categoryName":74,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93],"ui ux","ui ux frontend","ui","ux","frontend","storybook","frontend ux","interaction","layout","responsive","mdx","tsx","standards","quality","accessibility","css",{"skillNo":95,"name":96,"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":97,"categories":98,"keywords":102,"publishedAt":34},"01M6QQGS7N3ENQZR2Y5JBRYDHD","testing-conventions","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Ftesting-conventions\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":70,"taxonomyTypeDesc":71},"01JBSEEDCAT000000000000008","测试与质量",[103,104,105],"conventions","testing conventions","testing",{"skillNo":107,"name":108,"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":109,"categories":110,"keywords":111,"publishedAt":34},"01M6QQGQKA9Q6A147WXMS7QPGX","tdd","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Ftdd\u002FSKILL.md",[],[108],{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":119,"publishedAt":34},"01M6QQG5AZPRWSR6SSCCDDPAM3","shadcn-ui","shadcn\u002Fui component conventions and composition patterns","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fshadcn-ui\u002FSKILL.md",[118],{"categoryNo":73,"categoryName":74,"taxonomyType":75,"taxonomyTypeDesc":76},[120,80,121,122,89,123,124,125,126,103,127,128],"shadcn ui","shadcn","component","Composition","src","composition patterns","presentation","patterns","ui component",{"skillNo":130,"name":131,"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":132,"categories":133,"keywords":134,"publishedAt":34},"01M6QQG3WMMB8X8C4T8PR7WBV4","sdd","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fsdd\u002FSKILL.md",[],[131],{"skillNo":136,"name":137,"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":138,"categories":139,"keywords":140,"publishedAt":34},"01M6QQG241NAC5PQFXFD01NR16","quality-gate","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fquality-gate\u002FSKILL.md",[],[141,91,142],"quality gate","gate"]