[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CNC7G97PCVRWHQ4H2DW2XQ":3,"skill-same:01M6CNC7G97PCVRWHQ4H2DW2XQ":67},{"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":25,"linkOnly":26,"markdownContent":27,"markdownBody":28,"frontMatter":29,"refName":32,"commitSha":33,"skillDirectory":34,"forksCount":35,"repositoryHtmlUrl":36,"repositoryHomepageUrl":6,"ownerHtmlUrl":37,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":38,"install":39,"resources":51},"01M6CNC7G97PCVRWHQ4H2DW2XQ","archrip-update",null,"Update or refine the architecture diagram","yida29\u002Farchrip","yida29","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F26829774?v=4","01M6CNBNXVC8D2SWGB774Y97ZE","yida","01M6CNBP1TGZ21SGQ3ZY626QHH",1,"MIT","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Farchrip-update\u002FSKILL.md",[],[19,20,21,22,23,24],"update","archrip update","architecture","diagram","architecture diagram","instructions","2026-11-10 10:12:30",false,"---\nname: archrip-update\ndescription: Update or refine the architecture diagram\nuser-invocable: true\nargument-hint: \"[changes or instructions]\"\n---\n\n# archrip update — Update architecture diagram\n\nRead `.archrip\u002Farchitecture.json` and update it.\n\n## Mode 1: Auto-detect from git diff (no arguments)\n\nIf `$ARGUMENTS` is empty:\n\n1. Run `git diff --name-only HEAD~10` to find changed files\n2. Read the current `.archrip\u002Farchitecture.json`\n3. For each changed file:\n   - New component? → Add node + edges\n   - Removed component? → Remove node + edges + use case references\n   - Changed dependencies? → Update edges\n4. Preserve existing node IDs for unchanged components\n5. Write updated `.archrip\u002Farchitecture.json`\n\n## Mode 2: Apply requested changes (with arguments)\n\nIf `$ARGUMENTS` is provided, apply the user's requested changes:\n- Add\u002Fremove\u002Fmodify nodes\n- Fix relationships\n- Add\u002Fmodify use cases\n- Adjust layer assignments\n- Add database schemas\n- Add\u002Fmodify metadata entries\n- Improve descriptions\n\nWrite the updated `.archrip\u002Farchitecture.json`.\n\n## Schema constraints (apply on every write)\n\nWhen adding or splitting nodes, follow the same rules as the scan skill:\n\n- **One node per real component.** Avoid umbrella nodes that bundle siblings — each Controller, UseCase, abstract Repository, Repository implementation, and Domain Entity is normally its own node. See [archrip-scan\u002Fschema-reference.md → Node Granularity](..\u002Farchrip-scan\u002Fschema-reference.md#node-granularity-avoid-over-collapsing).\n- **Repository → Port pattern (DDD\u002FHex).** Every abstract Repository becomes a `port` node in the application core; every implementation becomes an `adapter` node that `implements` the port. Use cases depend on the port, not the adapter. See [archrip-scan\u002Fschema-reference.md → Repository → Port pattern](..\u002Farchrip-scan\u002Fschema-reference.md#repository--port-pattern-ddd--hexagonal).\n- **`implements` edges flow `adapter → port`.** Never point them at entities, adapters, or databases — that signals a missing port abstraction. See [archrip-scan\u002Fschema-reference.md → Edge type semantics](..\u002Farchrip-scan\u002Fschema-reference.md#edge-type-semantics).\n\n## After Update\n\nAfter writing the file, run `npx archrip serve` in the terminal to rebuild and preview the updated diagram.\n\n$ARGUMENTS\n","# archrip update — Update architecture diagram\n\nRead `.archrip\u002Farchitecture.json` and update it.\n\n## Mode 1: Auto-detect from git diff (no arguments)\n\nIf `$ARGUMENTS` is empty:\n\n1. Run `git diff --name-only HEAD~10` to find changed files\n2. Read the current `.archrip\u002Farchitecture.json`\n3. For each changed file:\n   - New component? → Add node + edges\n   - Removed component? → Remove node + edges + use case references\n   - Changed dependencies? → Update edges\n4. Preserve existing node IDs for unchanged components\n5. Write updated `.archrip\u002Farchitecture.json`\n\n## Mode 2: Apply requested changes (with arguments)\n\nIf `$ARGUMENTS` is provided, apply the user's requested changes:\n- Add\u002Fremove\u002Fmodify nodes\n- Fix relationships\n- Add\u002Fmodify use cases\n- Adjust layer assignments\n- Add database schemas\n- Add\u002Fmodify metadata entries\n- Improve descriptions\n\nWrite the updated `.archrip\u002Farchitecture.json`.\n\n## Schema constraints (apply on every write)\n\nWhen adding or splitting nodes, follow the same rules as the scan skill:\n\n- **One node per real component.** Avoid umbrella nodes that bundle siblings — each Controller, UseCase, abstract Repository, Repository implementation, and Domain Entity is normally its own node. See [archrip-scan\u002Fschema-reference.md → Node Granularity](..\u002Farchrip-scan\u002Fschema-reference.md#node-granularity-avoid-over-collapsing).\n- **Repository → Port pattern (DDD\u002FHex).** Every abstract Repository becomes a `port` node in the application core; every implementation becomes an `adapter` node that `implements` the port. Use cases depend on the port, not the adapter. See [archrip-scan\u002Fschema-reference.md → Repository → Port pattern](..\u002Farchrip-scan\u002Fschema-reference.md#repository--port-pattern-ddd--hexagonal).\n- **`implements` edges flow `adapter → port`.** Never point them at entities, adapters, or databases — that signals a missing port abstraction. See [archrip-scan\u002Fschema-reference.md → Edge type semantics](..\u002Farchrip-scan\u002Fschema-reference.md#edge-type-semantics).\n\n## After Update\n\nAfter writing the file, run `npx archrip serve` in the terminal to rebuild and preview the updated diagram.\n\n$ARGUMENTS\n",{"name":5,"description":7,"argument-hint":30,"user-invocable":31},"[changes or instructions]",true,"main","5a62325f7d5f614ee9ffbb6d5ab7db8fecb465b0","skills\u002Farchrip-update",0,"https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip","https:\u002F\u002Fgithub.com\u002Fyida29","2026-11-11 17:14:15",{"source":8,"skillName":5,"commands":40,"prompt":50,"zipAvailable":31},[41,44,47],{"tool":42,"command":43},"npx","npx skills add yida29\u002Farchrip --skill archrip-update",{"tool":45,"command":46},"bunx","bunx skills add yida29\u002Farchrip --skill archrip-update",{"tool":48,"command":49},"pnpm","pnpm dlx skills add yida29\u002Farchrip --skill archrip-update","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Farchrip-update\u002FSKILL.md",[52,57,63],{"path":53,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":55,"sourceHtmlUrl":56},"LICENSE","许可证",1063,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-prevent-subagent-starvation\u002FLICENSE",{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},"SOURCE.md","REFERENCE","参考文档",353,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-prevent-subagent-starvation\u002FSOURCE.md",{"path":64,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":65,"sourceHtmlUrl":66},"TRUST.auto.yaml",2168,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-prevent-subagent-starvation\u002FTRUST.auto.yaml",[68,87,102,123,134,143],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":79,"publishedAt":25},"01M6CNCP1G0EWPEG4HMAQ9Z4AD","review-ux-diagnostics","Review UX and diagnostics (errors, hints, verbose mode)","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-ux-diagnostics\u002FSKILL.md",[74],{"categoryNo":75,"categoryName":76,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[80,81,82,83,84,85,86],"review","review ux diagnostics","ux","diagnostics","git","notes","diff",{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":25},"01M6CNCM7K3S2710FJP16G0SSE","review-typescript-strict","TypeScript Strict Modeガイドラインを適用してコードレビュー・修正を行う。","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-typescript-strict\u002FSKILL.md",[],[94,80,95,96,97,98,99,100,101],"typescript strict","typescript","review typescript strict","grep","check","file","read","edit",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":113,"publishedAt":25},"01M6CNCJAY371WT8PYMTQPJ4KW","review-test-strategy","Review test strategy and regression resistance","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-test-strategy\u002FSKILL.md",[108],{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[114,115,116,117,80,118,119,85,120,121,122],"strategy","test strategy","review test strategy","test","package","command","flow","regression","repo",{"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":25},"01M6CNCGCTBMAWM2NPF5KAVFVK","review-supply-chain","Review supply-chain and code-execution risks","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-supply-chain\u002FSKILL.md",[],[130,80,131,85,84,132,133,86],"review supply chain","code","supply-chain","execution",{"skillNo":135,"name":136,"nameZh":6,"description":137,"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":25},"01M6CNCE6C1XXP746XW9P7MV56","review-srp","Review codebase for SRP (Single Responsibility) and boundaries","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-srp\u002FSKILL.md",[],[80,141,85,142,84,86],"review srp","pr",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":25},"01M6CNCCGEFSJ6YCDQNTTZT81J","review-schema-first","Review schema as a single source of truth (Schema-first)","https:\u002F\u002Fgithub.com\u002Fyida29\u002Farchrip\u002Fblob\u002Fmain\u002Fskills\u002Freview-schema-first\u002FSKILL.md",[],[80,150,151,152,85,84,86],"first","schema","review schema first"]