create-yss-spec 1.1.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/README.md +20 -2
  2. package/package.json +13 -2
  3. package/src/cli.js +367 -51
  4. package/template/.agents/skills/ask-matt/SKILL.md +8 -4
  5. package/template/.agents/skills/ask-matt/agents/openai.yaml +5 -0
  6. package/template/.agents/skills/code-review/SKILL.md +4 -4
  7. package/template/.agents/skills/code-review/agents/openai.yaml +3 -0
  8. package/template/.agents/skills/codebase-design/agents/openai.yaml +3 -0
  9. package/template/.agents/skills/competitive-intelligence/SKILL.md +5 -5
  10. package/template/.agents/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  11. package/template/.agents/skills/domain-modeling/agents/openai.yaml +3 -0
  12. package/template/.agents/skills/excalidraw-diagram-generator/SKILL.md +3 -3
  13. package/template/.agents/skills/grill-me/agents/openai.yaml +5 -0
  14. package/template/.agents/skills/grill-with-docs/agents/openai.yaml +5 -0
  15. package/template/.agents/skills/grilling/SKILL.md +4 -4
  16. package/template/.agents/skills/grilling/agents/openai.yaml +3 -0
  17. package/template/.agents/skills/handoff/SKILL.md +1 -1
  18. package/template/.agents/skills/handoff/agents/openai.yaml +5 -0
  19. package/template/.agents/skills/high-fidelity-html-prototype/SKILL.md +6 -6
  20. package/template/.agents/skills/high-fidelity-html-prototype/agents/openai.yaml +5 -0
  21. package/template/.agents/skills/implement/SKILL.md +2 -2
  22. package/template/.agents/skills/implement/agents/openai.yaml +5 -0
  23. package/template/.agents/skills/improve-codebase-architecture/SKILL.md +6 -1
  24. package/template/.agents/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  25. package/template/.agents/skills/lombok/SKILL.md +345 -0
  26. package/template/.agents/skills/mapstruct/SKILL.md +328 -0
  27. package/template/.agents/skills/prototype/LOGIC.md +3 -3
  28. package/template/.agents/skills/prototype/SKILL.md +2 -6
  29. package/template/.agents/skills/prototype/UI.md +4 -4
  30. package/template/.agents/skills/prototype/agents/openai.yaml +3 -0
  31. package/template/.agents/skills/research/agents/openai.yaml +3 -0
  32. package/template/.agents/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  33. package/template/.agents/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  34. package/template/.agents/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  35. package/template/.agents/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  36. package/template/.agents/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  37. package/template/.agents/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  38. package/template/.agents/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  39. package/template/.agents/skills/tdd/agents/openai.yaml +3 -0
  40. package/template/.agents/skills/teach/GLOSSARY-FORMAT.md +35 -0
  41. package/template/.agents/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  42. package/template/.agents/skills/teach/MISSION-FORMAT.md +31 -0
  43. package/template/.agents/skills/teach/RESOURCES-FORMAT.md +32 -0
  44. package/template/.agents/skills/teach/SKILL.md +140 -0
  45. package/template/.agents/skills/teach/agents/openai.yaml +5 -0
  46. package/template/.agents/skills/to-spec/SKILL.md +58 -0
  47. package/template/.agents/skills/to-spec/agents/openai.yaml +5 -0
  48. package/template/.agents/skills/to-tickets/SKILL.md +62 -0
  49. package/template/.agents/skills/to-tickets/agents/openai.yaml +5 -0
  50. package/template/.agents/skills/triage/SKILL.md +4 -4
  51. package/template/.agents/skills/triage/agents/openai.yaml +5 -0
  52. package/template/.agents/skills/wayfinder/SKILL.md +128 -0
  53. package/template/.agents/skills/wayfinder/agents/openai.yaml +5 -0
  54. package/template/.agents/skills/web-design-engineer/SKILL.md +2 -2
  55. package/template/.agents/skills/writing-great-skills/GLOSSARY.md +201 -0
  56. package/template/.agents/skills/writing-great-skills/SKILL.md +83 -0
  57. package/template/.agents/skills/writing-great-skills/agents/openai.yaml +5 -0
  58. package/template/.agents/skills/yss-cache/SKILL.md +44 -0
  59. package/template/.agents/skills/yss-cache/agents/openai.yaml +5 -0
  60. package/template/.agents/skills/yss-cache/references/annotations.md +39 -0
  61. package/template/.agents/skills/yss-cache/references/architecture.md +25 -0
  62. package/template/.agents/skills/yss-cache/references/configuration.md +34 -0
  63. package/template/.agents/skills/yss-cache/references/redis-fallback.md +23 -0
  64. package/template/.agents/skills/yss-cache/references/redis-topology.md +62 -0
  65. package/template/.agents/skills/yss-cache/references/serialization.md +17 -0
  66. package/template/.agents/skills/yss-cache/references/source-index.md +64 -0
  67. package/template/.agents/skills/yss-cache/references/troubleshooting.md +33 -0
  68. package/template/.agents/skills/yss-cache/references/verification.md +34 -0
  69. package/template/.agents/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  70. package/template/.agents/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  71. package/template/.agents/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  72. package/template/.claude/skills/ask-matt/SKILL.md +8 -4
  73. package/template/.claude/skills/ask-matt/agents/openai.yaml +5 -0
  74. package/template/.claude/skills/code-review/SKILL.md +4 -4
  75. package/template/.claude/skills/code-review/agents/openai.yaml +3 -0
  76. package/template/.claude/skills/codebase-design/agents/openai.yaml +3 -0
  77. package/template/.claude/skills/competitive-intelligence/SKILL.md +5 -5
  78. package/template/.claude/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  79. package/template/.claude/skills/domain-modeling/agents/openai.yaml +3 -0
  80. package/template/.claude/skills/excalidraw-diagram-generator/SKILL.md +37 -16
  81. package/template/.claude/skills/excalidraw-diagram-generator/scripts/add-arrow.py +18 -18
  82. package/template/.claude/skills/excalidraw-diagram-generator/scripts/add-icon-to-diagram.py +46 -47
  83. package/template/.claude/skills/grill-me/agents/openai.yaml +5 -0
  84. package/template/.claude/skills/grill-with-docs/agents/openai.yaml +5 -0
  85. package/template/.claude/skills/grilling/SKILL.md +4 -4
  86. package/template/.claude/skills/grilling/agents/openai.yaml +3 -0
  87. package/template/.claude/skills/handoff/SKILL.md +1 -1
  88. package/template/.claude/skills/handoff/agents/openai.yaml +5 -0
  89. package/template/.claude/skills/implement/SKILL.md +2 -2
  90. package/template/.claude/skills/implement/agents/openai.yaml +5 -0
  91. package/template/.claude/skills/improve-codebase-architecture/SKILL.md +6 -1
  92. package/template/.claude/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  93. package/template/.claude/skills/prototype/LOGIC.md +3 -3
  94. package/template/.claude/skills/prototype/SKILL.md +2 -6
  95. package/template/.claude/skills/prototype/UI.md +4 -4
  96. package/template/.claude/skills/prototype/agents/openai.yaml +3 -0
  97. package/template/.claude/skills/research/agents/openai.yaml +3 -0
  98. package/template/.claude/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  99. package/template/.claude/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  100. package/template/.claude/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  101. package/template/.claude/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  102. package/template/.claude/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  103. package/template/.claude/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  104. package/template/.claude/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  105. package/template/.claude/skills/tdd/agents/openai.yaml +3 -0
  106. package/template/.claude/skills/teach/GLOSSARY-FORMAT.md +35 -0
  107. package/template/.claude/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  108. package/template/.claude/skills/teach/MISSION-FORMAT.md +31 -0
  109. package/template/.claude/skills/teach/RESOURCES-FORMAT.md +32 -0
  110. package/template/.claude/skills/teach/SKILL.md +140 -0
  111. package/template/.claude/skills/teach/agents/openai.yaml +5 -0
  112. package/template/.claude/skills/to-spec/SKILL.md +58 -0
  113. package/template/.claude/skills/to-spec/agents/openai.yaml +5 -0
  114. package/template/.claude/skills/to-tickets/SKILL.md +62 -0
  115. package/template/.claude/skills/to-tickets/agents/openai.yaml +5 -0
  116. package/template/.claude/skills/triage/SKILL.md +4 -4
  117. package/template/.claude/skills/triage/agents/openai.yaml +5 -0
  118. package/template/.claude/skills/wayfinder/SKILL.md +128 -0
  119. package/template/.claude/skills/wayfinder/agents/openai.yaml +5 -0
  120. package/template/.claude/skills/web-design-engineer/SKILL.md +2 -2
  121. package/template/.claude/skills/writing-great-skills/GLOSSARY.md +201 -0
  122. package/template/.claude/skills/writing-great-skills/SKILL.md +83 -0
  123. package/template/.claude/skills/writing-great-skills/agents/openai.yaml +5 -0
  124. package/template/.claude/skills/yss-cache/SKILL.md +44 -0
  125. package/template/.claude/skills/yss-cache/agents/openai.yaml +5 -0
  126. package/template/.claude/skills/yss-cache/references/annotations.md +39 -0
  127. package/template/.claude/skills/yss-cache/references/architecture.md +25 -0
  128. package/template/.claude/skills/yss-cache/references/configuration.md +34 -0
  129. package/template/.claude/skills/yss-cache/references/redis-fallback.md +23 -0
  130. package/template/.claude/skills/yss-cache/references/redis-topology.md +62 -0
  131. package/template/.claude/skills/yss-cache/references/serialization.md +17 -0
  132. package/template/.claude/skills/yss-cache/references/source-index.md +64 -0
  133. package/template/.claude/skills/yss-cache/references/troubleshooting.md +33 -0
  134. package/template/.claude/skills/yss-cache/references/verification.md +34 -0
  135. package/template/.claude/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  136. package/template/.claude/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  137. package/template/.claude/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  138. package/template/.codex/config.toml +3 -0
  139. package/template/.codex/skills/ask-matt/SKILL.md +8 -4
  140. package/template/.codex/skills/ask-matt/agents/openai.yaml +5 -0
  141. package/template/.codex/skills/code-review/SKILL.md +4 -4
  142. package/template/.codex/skills/code-review/agents/openai.yaml +3 -0
  143. package/template/.codex/skills/code-review-process/references/automation-and-standards.md +1 -1
  144. package/template/.codex/skills/codebase-design/agents/openai.yaml +3 -0
  145. package/template/.codex/skills/competitive-intelligence/SKILL.md +5 -5
  146. package/template/.codex/skills/cross-repo-implementation-routing/SKILL.md +1 -1
  147. package/template/.codex/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  148. package/template/.codex/skills/domain-modeling/agents/openai.yaml +3 -0
  149. package/template/.codex/skills/grill-with-docs/agents/openai.yaml +5 -0
  150. package/template/.codex/skills/handoff/SKILL.md +16 -0
  151. package/template/.codex/skills/handoff/agents/openai.yaml +5 -0
  152. package/template/.codex/skills/high-fidelity-html-prototype/SKILL.md +6 -6
  153. package/template/.codex/skills/implement/SKILL.md +2 -2
  154. package/template/.codex/skills/implement/agents/openai.yaml +5 -0
  155. package/template/.codex/skills/improve-codebase-architecture/SKILL.md +6 -1
  156. package/template/.codex/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  157. package/template/.codex/skills/product-design-prototype/SKILL.md +14 -10
  158. package/template/.codex/skills/product-design-prototype/agents/openai.yaml +1 -1
  159. package/template/.codex/skills/prototype/LOGIC.md +3 -3
  160. package/template/.codex/skills/prototype/SKILL.md +2 -6
  161. package/template/.codex/skills/prototype/UI.md +4 -4
  162. package/template/.codex/skills/prototype/agents/openai.yaml +3 -0
  163. package/template/.codex/skills/prototype-review/SKILL.md +6 -6
  164. package/template/.codex/skills/prototype-review/agents/openai.yaml +2 -2
  165. package/template/.codex/skills/research/agents/openai.yaml +3 -0
  166. package/template/.codex/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  167. package/template/.codex/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  168. package/template/.codex/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  169. package/template/.codex/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  170. package/template/.codex/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  171. package/template/.codex/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  172. package/template/.codex/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  173. package/template/.codex/skills/tdd/agents/openai.yaml +3 -0
  174. package/template/.codex/skills/to-spec/SKILL.md +58 -0
  175. package/template/.codex/skills/to-spec/agents/openai.yaml +5 -0
  176. package/template/.codex/skills/to-tickets/SKILL.md +62 -0
  177. package/template/.codex/skills/to-tickets/agents/openai.yaml +5 -0
  178. package/template/.codex/skills/triage/SKILL.md +4 -4
  179. package/template/.codex/skills/triage/agents/openai.yaml +5 -0
  180. package/template/.codex/skills/wayfinder/SKILL.md +128 -0
  181. package/template/.codex/skills/wayfinder/agents/openai.yaml +5 -0
  182. package/template/.codex/skills/writing-great-skills/GLOSSARY.md +201 -0
  183. package/template/.codex/skills/writing-great-skills/SKILL.md +83 -0
  184. package/template/.codex/skills/writing-great-skills/agents/openai.yaml +5 -0
  185. package/template/.codex/skills/yss-cache/SKILL.md +29 -58
  186. package/template/.codex/skills/yss-cache/agents/openai.yaml +2 -2
  187. package/template/.codex/skills/yss-cache/references/annotations.md +39 -0
  188. package/template/.codex/skills/yss-cache/references/architecture.md +25 -0
  189. package/template/.codex/skills/yss-cache/references/configuration.md +34 -0
  190. package/template/.codex/skills/yss-cache/references/redis-fallback.md +23 -0
  191. package/template/.codex/skills/yss-cache/references/redis-topology.md +62 -0
  192. package/template/.codex/skills/yss-cache/references/serialization.md +17 -0
  193. package/template/.codex/skills/yss-cache/references/source-index.md +1 -1
  194. package/template/.codex/skills/yss-cache/references/troubleshooting.md +33 -0
  195. package/template/.codex/skills/yss-cache/references/verification.md +34 -0
  196. package/template/.codex/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  197. package/template/.codex/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  198. package/template/.codex/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  199. package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +1 -0
  200. package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
  201. package/template/.codex/skills/yss-design-system/SKILL.md +9 -2
  202. package/template/.codex/skills/yss-design-system/references/design-system.md +12 -0
  203. package/template/.codex/skills/yss-domain-modeling/SKILL.md +3 -3
  204. package/template/.codex/skills/yss-domain-modeling/agents/openai.yaml +1 -1
  205. package/template/.codex/skills/yss-domain-modeling/references/modeling-workflow.md +2 -2
  206. package/template/.codex/skills/yss-openapi/SKILL.md +35 -47
  207. package/template/.codex/skills/yss-openapi/img.png +0 -0
  208. package/template/.codex/skills/yss-openapi/img_1.png +0 -0
  209. package/template/.codex/skills/yss-openapi-draft-review/SKILL.md +2 -2
  210. package/template/.codex/skills/yss-openapi-governance/SKILL.md +2 -2
  211. package/template/.codex/skills/yss-product-lifecycle/SKILL.md +46 -39
  212. package/template/.codex/skills/yss-product-lifecycle/references/artifact-checklist.md +23 -21
  213. package/template/.codex/skills/yss-product-lifecycle/references/stage-routing.md +15 -15
  214. package/template/.codex/skills/yss-product-lifecycle/references/yss-skill-routing.md +13 -8
  215. package/template/.codex/skills/yss-repository/SKILL.md +11 -3
  216. package/template/.codex/skills/yss-router/SKILL.md +1 -1
  217. package/template/.codex/skills/yss-web-controller/SKILL.md +9 -3
  218. package/template/.hermes/skills/ask-matt/SKILL.md +8 -4
  219. package/template/.hermes/skills/ask-matt/agents/openai.yaml +5 -0
  220. package/template/.hermes/skills/code-review/SKILL.md +4 -4
  221. package/template/.hermes/skills/code-review/agents/openai.yaml +3 -0
  222. package/template/.hermes/skills/codebase-design/agents/openai.yaml +3 -0
  223. package/template/.hermes/skills/competitive-intelligence/SKILL.md +5 -5
  224. package/template/.hermes/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  225. package/template/.hermes/skills/domain-modeling/agents/openai.yaml +3 -0
  226. package/template/.hermes/skills/excalidraw-diagram-generator/SKILL.md +37 -16
  227. package/template/.hermes/skills/excalidraw-diagram-generator/scripts/add-arrow.py +18 -18
  228. package/template/.hermes/skills/excalidraw-diagram-generator/scripts/add-icon-to-diagram.py +46 -47
  229. package/template/.hermes/skills/grill-me/agents/openai.yaml +5 -0
  230. package/template/.hermes/skills/grill-with-docs/agents/openai.yaml +5 -0
  231. package/template/.hermes/skills/grilling/SKILL.md +4 -4
  232. package/template/.hermes/skills/grilling/agents/openai.yaml +3 -0
  233. package/template/.hermes/skills/handoff/SKILL.md +1 -1
  234. package/template/.hermes/skills/handoff/agents/openai.yaml +5 -0
  235. package/template/.hermes/skills/implement/SKILL.md +2 -2
  236. package/template/.hermes/skills/implement/agents/openai.yaml +5 -0
  237. package/template/.hermes/skills/improve-codebase-architecture/SKILL.md +6 -1
  238. package/template/.hermes/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  239. package/template/.hermes/skills/prototype/LOGIC.md +3 -3
  240. package/template/.hermes/skills/prototype/SKILL.md +2 -6
  241. package/template/.hermes/skills/prototype/UI.md +4 -4
  242. package/template/.hermes/skills/prototype/agents/openai.yaml +3 -0
  243. package/template/.hermes/skills/research/agents/openai.yaml +3 -0
  244. package/template/.hermes/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  245. package/template/.hermes/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  246. package/template/.hermes/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  247. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  248. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  249. package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  250. package/template/.hermes/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  251. package/template/.hermes/skills/tdd/agents/openai.yaml +3 -0
  252. package/template/.hermes/skills/teach/GLOSSARY-FORMAT.md +35 -0
  253. package/template/.hermes/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  254. package/template/.hermes/skills/teach/MISSION-FORMAT.md +31 -0
  255. package/template/.hermes/skills/teach/RESOURCES-FORMAT.md +32 -0
  256. package/template/.hermes/skills/teach/SKILL.md +140 -0
  257. package/template/.hermes/skills/teach/agents/openai.yaml +5 -0
  258. package/template/.hermes/skills/to-spec/SKILL.md +58 -0
  259. package/template/.hermes/skills/to-spec/agents/openai.yaml +5 -0
  260. package/template/.hermes/skills/to-tickets/SKILL.md +62 -0
  261. package/template/.hermes/skills/to-tickets/agents/openai.yaml +5 -0
  262. package/template/.hermes/skills/triage/SKILL.md +4 -4
  263. package/template/.hermes/skills/triage/agents/openai.yaml +5 -0
  264. package/template/.hermes/skills/wayfinder/SKILL.md +128 -0
  265. package/template/.hermes/skills/wayfinder/agents/openai.yaml +5 -0
  266. package/template/.hermes/skills/web-design-engineer/SKILL.md +2 -2
  267. package/template/.hermes/skills/writing-great-skills/GLOSSARY.md +201 -0
  268. package/template/.hermes/skills/writing-great-skills/SKILL.md +83 -0
  269. package/template/.hermes/skills/writing-great-skills/agents/openai.yaml +5 -0
  270. package/template/.hermes/skills/yss-cache/SKILL.md +44 -0
  271. package/template/.hermes/skills/yss-cache/agents/openai.yaml +5 -0
  272. package/template/.hermes/skills/yss-cache/references/annotations.md +39 -0
  273. package/template/.hermes/skills/yss-cache/references/architecture.md +25 -0
  274. package/template/.hermes/skills/yss-cache/references/configuration.md +34 -0
  275. package/template/.hermes/skills/yss-cache/references/redis-fallback.md +23 -0
  276. package/template/.hermes/skills/yss-cache/references/redis-topology.md +62 -0
  277. package/template/.hermes/skills/yss-cache/references/serialization.md +17 -0
  278. package/template/.hermes/skills/yss-cache/references/source-index.md +64 -0
  279. package/template/.hermes/skills/yss-cache/references/troubleshooting.md +33 -0
  280. package/template/.hermes/skills/yss-cache/references/verification.md +34 -0
  281. package/template/.hermes/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  282. package/template/.hermes/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  283. package/template/.hermes/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  284. package/template/.obsidian/app.json +3 -0
  285. package/template/.obsidian/appearance.json +5 -0
  286. package/template/.obsidian/community-plugins.json +4 -0
  287. package/template/.obsidian/core-plugins.json +33 -0
  288. package/template/.obsidian/graph.json +22 -0
  289. package/template/.obsidian/plugins/obsidian-excalidraw-plugin/data.json +1085 -0
  290. package/template/.obsidian/plugins/obsidian-excalidraw-plugin/main.js +30 -0
  291. package/template/.obsidian/plugins/obsidian-excalidraw-plugin/manifest.json +12 -0
  292. package/template/.obsidian/plugins/obsidian-excalidraw-plugin/styles.css +1 -0
  293. package/template/.obsidian/plugins/obsidian-git/main.js +415 -0
  294. package/template/.obsidian/plugins/obsidian-git/manifest.json +10 -0
  295. package/template/.obsidian/plugins/obsidian-git/styles.css +705 -0
  296. package/template/.obsidian/workspace.json +222 -0
  297. package/template/.pi/skills/ask-matt/SKILL.md +8 -4
  298. package/template/.pi/skills/ask-matt/agents/openai.yaml +5 -0
  299. package/template/.pi/skills/code-review/SKILL.md +4 -4
  300. package/template/.pi/skills/code-review/agents/openai.yaml +3 -0
  301. package/template/.pi/skills/codebase-design/agents/openai.yaml +3 -0
  302. package/template/.pi/skills/competitive-intelligence/SKILL.md +5 -5
  303. package/template/.pi/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  304. package/template/.pi/skills/domain-modeling/agents/openai.yaml +3 -0
  305. package/template/.pi/skills/excalidraw-diagram-generator/SKILL.md +37 -16
  306. package/template/.pi/skills/excalidraw-diagram-generator/scripts/add-arrow.py +18 -18
  307. package/template/.pi/skills/excalidraw-diagram-generator/scripts/add-icon-to-diagram.py +46 -47
  308. package/template/.pi/skills/grill-me/agents/openai.yaml +5 -0
  309. package/template/.pi/skills/grill-with-docs/agents/openai.yaml +5 -0
  310. package/template/.pi/skills/grilling/SKILL.md +4 -4
  311. package/template/.pi/skills/grilling/agents/openai.yaml +3 -0
  312. package/template/.pi/skills/handoff/SKILL.md +1 -1
  313. package/template/.pi/skills/handoff/agents/openai.yaml +5 -0
  314. package/template/.pi/skills/implement/SKILL.md +2 -2
  315. package/template/.pi/skills/implement/agents/openai.yaml +5 -0
  316. package/template/.pi/skills/improve-codebase-architecture/SKILL.md +6 -1
  317. package/template/.pi/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  318. package/template/.pi/skills/prototype/LOGIC.md +3 -3
  319. package/template/.pi/skills/prototype/SKILL.md +2 -6
  320. package/template/.pi/skills/prototype/UI.md +4 -4
  321. package/template/.pi/skills/prototype/agents/openai.yaml +3 -0
  322. package/template/.pi/skills/research/agents/openai.yaml +3 -0
  323. package/template/.pi/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  324. package/template/.pi/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  325. package/template/.pi/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  326. package/template/.pi/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  327. package/template/.pi/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  328. package/template/.pi/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  329. package/template/.pi/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  330. package/template/.pi/skills/tdd/agents/openai.yaml +3 -0
  331. package/template/.pi/skills/teach/GLOSSARY-FORMAT.md +35 -0
  332. package/template/.pi/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  333. package/template/.pi/skills/teach/MISSION-FORMAT.md +31 -0
  334. package/template/.pi/skills/teach/RESOURCES-FORMAT.md +32 -0
  335. package/template/.pi/skills/teach/SKILL.md +140 -0
  336. package/template/.pi/skills/teach/agents/openai.yaml +5 -0
  337. package/template/.pi/skills/to-spec/SKILL.md +58 -0
  338. package/template/.pi/skills/to-spec/agents/openai.yaml +5 -0
  339. package/template/.pi/skills/to-tickets/SKILL.md +62 -0
  340. package/template/.pi/skills/to-tickets/agents/openai.yaml +5 -0
  341. package/template/.pi/skills/triage/SKILL.md +4 -4
  342. package/template/.pi/skills/triage/agents/openai.yaml +5 -0
  343. package/template/.pi/skills/wayfinder/SKILL.md +128 -0
  344. package/template/.pi/skills/wayfinder/agents/openai.yaml +5 -0
  345. package/template/.pi/skills/web-design-engineer/SKILL.md +2 -2
  346. package/template/.pi/skills/writing-great-skills/GLOSSARY.md +201 -0
  347. package/template/.pi/skills/writing-great-skills/SKILL.md +83 -0
  348. package/template/.pi/skills/writing-great-skills/agents/openai.yaml +5 -0
  349. package/template/.pi/skills/yss-cache/SKILL.md +44 -0
  350. package/template/.pi/skills/yss-cache/agents/openai.yaml +5 -0
  351. package/template/.pi/skills/yss-cache/references/annotations.md +39 -0
  352. package/template/.pi/skills/yss-cache/references/architecture.md +25 -0
  353. package/template/.pi/skills/yss-cache/references/configuration.md +34 -0
  354. package/template/.pi/skills/yss-cache/references/redis-fallback.md +23 -0
  355. package/template/.pi/skills/yss-cache/references/redis-topology.md +62 -0
  356. package/template/.pi/skills/yss-cache/references/serialization.md +17 -0
  357. package/template/.pi/skills/yss-cache/references/source-index.md +64 -0
  358. package/template/.pi/skills/yss-cache/references/troubleshooting.md +33 -0
  359. package/template/.pi/skills/yss-cache/references/verification.md +34 -0
  360. package/template/.pi/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  361. package/template/.pi/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  362. package/template/.pi/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  363. package/template/.trae/skills/ask-matt/SKILL.md +8 -4
  364. package/template/.trae/skills/ask-matt/agents/openai.yaml +5 -0
  365. package/template/.trae/skills/code-review/SKILL.md +4 -4
  366. package/template/.trae/skills/code-review/agents/openai.yaml +3 -0
  367. package/template/.trae/skills/codebase-design/agents/openai.yaml +3 -0
  368. package/template/.trae/skills/competitive-intelligence/SKILL.md +5 -5
  369. package/template/.trae/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  370. package/template/.trae/skills/domain-modeling/agents/openai.yaml +3 -0
  371. package/template/.trae/skills/excalidraw-diagram-generator/SKILL.md +37 -16
  372. package/template/.trae/skills/excalidraw-diagram-generator/scripts/add-arrow.py +18 -18
  373. package/template/.trae/skills/excalidraw-diagram-generator/scripts/add-icon-to-diagram.py +46 -47
  374. package/template/.trae/skills/grill-me/agents/openai.yaml +5 -0
  375. package/template/.trae/skills/grill-with-docs/agents/openai.yaml +5 -0
  376. package/template/.trae/skills/grilling/SKILL.md +4 -4
  377. package/template/.trae/skills/grilling/agents/openai.yaml +3 -0
  378. package/template/.trae/skills/handoff/SKILL.md +1 -1
  379. package/template/.trae/skills/handoff/agents/openai.yaml +5 -0
  380. package/template/.trae/skills/implement/SKILL.md +2 -2
  381. package/template/.trae/skills/implement/agents/openai.yaml +5 -0
  382. package/template/.trae/skills/improve-codebase-architecture/SKILL.md +6 -1
  383. package/template/.trae/skills/improve-codebase-architecture/agents/openai.yaml +5 -0
  384. package/template/.trae/skills/prototype/LOGIC.md +3 -3
  385. package/template/.trae/skills/prototype/SKILL.md +2 -6
  386. package/template/.trae/skills/prototype/UI.md +4 -4
  387. package/template/.trae/skills/prototype/agents/openai.yaml +3 -0
  388. package/template/.trae/skills/research/agents/openai.yaml +3 -0
  389. package/template/.trae/skills/resolving-merge-conflicts/agents/openai.yaml +3 -0
  390. package/template/.trae/skills/setup-matt-pocock-skills/SKILL.md +21 -32
  391. package/template/.trae/skills/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  392. package/template/.trae/skills/setup-matt-pocock-skills/issue-tracker-github.md +2 -2
  393. package/template/.trae/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +2 -2
  394. package/template/.trae/skills/setup-matt-pocock-skills/issue-tracker-local.md +6 -6
  395. package/template/.trae/skills/setup-matt-pocock-skills/triage-labels.md +2 -2
  396. package/template/.trae/skills/tdd/agents/openai.yaml +3 -0
  397. package/template/.trae/skills/teach/GLOSSARY-FORMAT.md +35 -0
  398. package/template/.trae/skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  399. package/template/.trae/skills/teach/MISSION-FORMAT.md +31 -0
  400. package/template/.trae/skills/teach/RESOURCES-FORMAT.md +32 -0
  401. package/template/.trae/skills/teach/SKILL.md +140 -0
  402. package/template/.trae/skills/teach/agents/openai.yaml +5 -0
  403. package/template/.trae/skills/to-spec/SKILL.md +58 -0
  404. package/template/.trae/skills/to-spec/agents/openai.yaml +5 -0
  405. package/template/.trae/skills/to-tickets/SKILL.md +62 -0
  406. package/template/.trae/skills/to-tickets/agents/openai.yaml +5 -0
  407. package/template/.trae/skills/triage/SKILL.md +4 -4
  408. package/template/.trae/skills/triage/agents/openai.yaml +5 -0
  409. package/template/.trae/skills/wayfinder/SKILL.md +128 -0
  410. package/template/.trae/skills/wayfinder/agents/openai.yaml +5 -0
  411. package/template/.trae/skills/web-design-engineer/SKILL.md +2 -2
  412. package/template/.trae/skills/writing-great-skills/GLOSSARY.md +201 -0
  413. package/template/.trae/skills/writing-great-skills/SKILL.md +83 -0
  414. package/template/.trae/skills/writing-great-skills/agents/openai.yaml +5 -0
  415. package/template/.trae/skills/yss-cache/SKILL.md +44 -0
  416. package/template/.trae/skills/yss-cache/agents/openai.yaml +5 -0
  417. package/template/.trae/skills/yss-cache/references/annotations.md +39 -0
  418. package/template/.trae/skills/yss-cache/references/architecture.md +25 -0
  419. package/template/.trae/skills/yss-cache/references/configuration.md +34 -0
  420. package/template/.trae/skills/yss-cache/references/redis-fallback.md +23 -0
  421. package/template/.trae/skills/yss-cache/references/redis-topology.md +62 -0
  422. package/template/.trae/skills/yss-cache/references/serialization.md +17 -0
  423. package/template/.trae/skills/yss-cache/references/source-index.md +64 -0
  424. package/template/.trae/skills/yss-cache/references/troubleshooting.md +33 -0
  425. package/template/.trae/skills/yss-cache/references/verification.md +34 -0
  426. package/template/.trae/skills/yss-cache/scripts/check-skill-freshness.sh +84 -0
  427. package/template/.trae/skills/yss-cache/scripts/inspect-cache-usage.sh +96 -0
  428. package/template/.trae/skills/yss-cache/scripts/verify-cache-component.sh +101 -0
  429. package/template/AGENTS.md +89 -258
  430. package/template/CONTEXT.md +24 -11
  431. package/template/README.md +31 -45
  432. package/template/docs/adr/{adr-product-design-prototype-entrypoint.md → 0001-product-design-prototype-entrypoint.md} +3 -3
  433. package/template/docs/adr/0002-yss-project-repository-mode.md +3 -0
  434. package/template/docs/agents/README.md +4 -5
  435. package/template/docs/agents/domain.md +13 -15
  436. package/template/docs/agents/gitlab-workflow-skills.md +5 -5
  437. package/template/docs/agents/issue-tracker.md +15 -14
  438. package/template/docs/agents/skills-maintenance.md +44 -109
  439. package/template/docs/agents/triage-labels.md +10 -12
  440. package/template/docs/api/templates/openapi-draft-review-checklist.md +4 -4
  441. package/template/docs/api/templates/openapi-freeze-record-template.md +5 -5
  442. package/template/docs/architecture/README.md +4 -4
  443. package/template/docs/architecture/templates/architecture-review-checklist.md +4 -4
  444. package/template/docs/architecture/templates/business-architecture-template.md +7 -7
  445. package/template/docs/architecture/templates/data-architecture-template.md +4 -4
  446. package/template/docs/architecture/templates/engineering-baseline-review-template.md +4 -3
  447. package/template/docs/architecture/templates/functional-architecture-template.md +7 -7
  448. package/template/docs/architecture/templates/system-overview-design-template.md +5 -6
  449. package/template/docs/architecture/templates/tech-design-template.md +2 -2
  450. package/template/docs/design/README.md +8 -8
  451. package/template/docs/design/design.md +10 -1
  452. package/template/docs/design/diagrams/README.md +1 -1
  453. package/template/docs/design/templates/interaction-spec-template.md +6 -6
  454. package/template/docs/design/templates/product-overview-design-template.md +8 -8
  455. package/template/docs/design/templates/prototype-confirmation-template.md +4 -4
  456. package/template/docs/design/templates/prototype-review-checklist.md +5 -5
  457. package/template/docs/design/templates/state-matrix-template.md +1 -1
  458. package/template/docs/discovery/IDEATION.md +2 -2
  459. package/template/docs/discovery/README.md +4 -4
  460. package/template/docs/discovery/templates/competitive-analysis-template.md +4 -4
  461. package/template/docs/discovery/templates/discovery-template.md +8 -8
  462. package/template/docs/implementation/create-yss-spec-repository-mode-contract.md +59 -0
  463. package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +35 -35
  464. package/template/docs/process/harness-automation-candidates.md +10 -13
  465. package/template/docs/process/harness-executive-blueprint.md +11 -11
  466. package/template/docs/process/harness-optimization-backlog.md +6 -6
  467. package/template/docs/process/harness-pilot-retro-metrics.md +8 -8
  468. package/template/docs/process/harness-pilot-selection.md +8 -8
  469. package/template/docs/process/harness-process-tailoring.md +31 -19
  470. package/template/docs/process/harness-work-unit-map.md +9 -9
  471. package/template/docs/process/implementation-repo-integration.md +25 -11
  472. package/template/docs/process/lifecycle-artifact-map.md +60 -42
  473. package/template/docs/process/product-prototype-workflow.md +10 -10
  474. package/template/docs/process/skill-governance.md +12 -4
  475. package/template/docs/process/subagent-collaboration-validation.md +53 -0
  476. package/template/docs/process/subagent-collaboration.md +111 -0
  477. package/template/docs/process/template-governance-grilling-record.md +38 -0
  478. package/template/docs/process/template-governance-skill-validation.md +44 -0
  479. package/template/docs/process/templates/stage-checkpoint-template.md +42 -7
  480. package/template/docs/releases/next-major-template-governance.md +32 -0
  481. package/template/docs/requirements/README.md +11 -11
  482. package/template/docs/{adr/template.md → templates/adr-template.md} +2 -2
  483. package/template/docs/templates/agent-brief-template.md +5 -5
  484. package/template/docs/templates/build-architecture-checklist-template.md +41 -11
  485. package/template/docs/templates/implementation-repo-registry-template.md +8 -3
  486. package/template/docs/templates/implementation-routing-template.md +85 -19
  487. package/template/docs/templates/requirement-freeze-template.md +8 -8
  488. package/template/docs/templates/review-report-template.md +50 -0
  489. package/template/docs/templates/spec-delta-template.md +5 -5
  490. package/template/docs/templates/{prd-template.md → spec-template.md} +19 -9
  491. package/template/docs/templates/subagent-task-package-template.md +93 -0
  492. package/template/docs/templates/verification-record-template.md +2 -2
  493. package/template/docs/templates/vertical-slice-ticket-template.md +88 -0
  494. package/template/docs/user-guide/README.md +2 -2
  495. package/template/docs/user-guide/create-yss-spec-cli-guide.md +27 -209
  496. package/template/docs/user-guide/excalidraw-diagram-generator-guide.md +8 -8
  497. package/template/docs/user-guide/grill-with-docs-best-practices.md +16 -16
  498. package/template/docs/user-guide/grill-with-docs-guide.md +19 -19
  499. package/template/docs/user-guide/lifecycle-best-practices.md +40 -40
  500. package/template/docs/user-guide/product-lifecycle-workflow.md +31 -31
  501. package/template/docs/user-guide/product-rd-lifecycle-best-practices.md +121 -121
  502. package/template/docs/user-guide/spec-ticket-migration-guide.md +35 -0
  503. package/template/scripts/sync-skills +126 -0
  504. package/template/scripts/update-skill-lock +202 -0
  505. package/template/scripts/verify-lifecycle-scenarios +136 -0
  506. package/template/scripts/verify-template +148 -141
  507. package/template/skills-lock.json +1068 -108
  508. package/template/yss-project.yaml +2 -0
  509. package/template.manifest.json +3 -16
  510. package/template/.agent/skills/ask-matt/SKILL.md +0 -74
  511. package/template/.agent/skills/code-review/SKILL.md +0 -89
  512. package/template/.agent/skills/codebase-design/DEEPENING.md +0 -37
  513. package/template/.agent/skills/codebase-design/DESIGN-IT-TWICE.md +0 -44
  514. package/template/.agent/skills/codebase-design/SKILL.md +0 -114
  515. package/template/.agent/skills/competitive-intelligence/SKILL.md +0 -94
  516. package/template/.agent/skills/diagnosing-bugs/SKILL.md +0 -134
  517. package/template/.agent/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +0 -41
  518. package/template/.agent/skills/domain-modeling/ADR-FORMAT.md +0 -47
  519. package/template/.agent/skills/domain-modeling/CONTEXT-FORMAT.md +0 -60
  520. package/template/.agent/skills/domain-modeling/SKILL.md +0 -74
  521. package/template/.agent/skills/grill-with-docs/SKILL.md +0 -7
  522. package/template/.agent/skills/implement/SKILL.md +0 -15
  523. package/template/.agent/skills/improve-codebase-architecture/HTML-REPORT.md +0 -123
  524. package/template/.agent/skills/improve-codebase-architecture/SKILL.md +0 -66
  525. package/template/.agent/skills/prototype/LOGIC.md +0 -79
  526. package/template/.agent/skills/prototype/SKILL.md +0 -30
  527. package/template/.agent/skills/prototype/UI.md +0 -112
  528. package/template/.agent/skills/research/SKILL.md +0 -12
  529. package/template/.agent/skills/resolving-merge-conflicts/SKILL.md +0 -14
  530. package/template/.agent/skills/setup-matt-pocock-skills/SKILL.md +0 -127
  531. package/template/.agent/skills/setup-matt-pocock-skills/domain.md +0 -51
  532. package/template/.agent/skills/setup-matt-pocock-skills/issue-tracker-github.md +0 -45
  533. package/template/.agent/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +0 -46
  534. package/template/.agent/skills/setup-matt-pocock-skills/issue-tracker-local.md +0 -30
  535. package/template/.agent/skills/setup-matt-pocock-skills/triage-labels.md +0 -15
  536. package/template/.agent/skills/tdd/SKILL.md +0 -36
  537. package/template/.agent/skills/tdd/mocking.md +0 -59
  538. package/template/.agent/skills/tdd/tests.md +0 -77
  539. package/template/.agent/skills/to-issues/SKILL.md +0 -84
  540. package/template/.agent/skills/to-prd/SKILL.md +0 -75
  541. package/template/.agent/skills/triage/AGENT-BRIEF.md +0 -207
  542. package/template/.agent/skills/triage/OUT-OF-SCOPE.md +0 -105
  543. package/template/.agent/skills/triage/SKILL.md +0 -112
  544. package/template/.agents/skills/to-issues/SKILL.md +0 -84
  545. package/template/.agents/skills/to-prd/SKILL.md +0 -75
  546. package/template/.claude/skills/to-issues/SKILL.md +0 -84
  547. package/template/.claude/skills/to-prd/SKILL.md +0 -75
  548. package/template/.codex/skills/to-issues/SKILL.md +0 -84
  549. package/template/.codex/skills/to-prd/SKILL.md +0 -75
  550. package/template/.codex/skills/yss-cache/assets/ClearCache.java +0 -34
  551. package/template/.codex/skills/yss-cache/assets/QueryCache.java +0 -36
  552. package/template/.codex/skills/yss-cache/assets/UpdateCache.java +0 -34
  553. package/template/.codex/skills/yss-cache/references/README.md +0 -5
  554. package/template/.hermes/skills/to-issues/SKILL.md +0 -84
  555. package/template/.hermes/skills/to-prd/SKILL.md +0 -75
  556. package/template/.pi/skills/to-issues/SKILL.md +0 -84
  557. package/template/.pi/skills/to-prd/SKILL.md +0 -75
  558. package/template/.trae/skills/to-issues/SKILL.md +0 -84
  559. package/template/.trae/skills/to-prd/SKILL.md +0 -75
  560. package/template/docs/templates/vertical-slice-issue-template.md +0 -61
  561. /package/template/docs/requirements/{issues → tickets}/.gitkeep +0 -0
@@ -0,0 +1,33 @@
1
+ # 证据化排障
2
+
3
+ ## 缓存未命中
4
+
5
+ 1. 检查 starter/后端依赖和 `@EnableYssCloudCache`。
6
+ 2. 检查 `active-type` 与实际 Provider/CacheManager Bean。
7
+ 3. 确认调用经过 Spring 代理,不是同类自调用。
8
+ 4. 检查 SpEL 参数名、null、集合顺序和租户维度。
9
+ 5. 比较两次调用生成的 cache name/key,并检查 Redis 实际 key。
10
+ 6. 检查 `condition`、`unless`、TTL 和序列化异常。
11
+
12
+ ## 更新后仍读旧值
13
+
14
+ 1. 列出所有写、删、状态变更入口,确认每条路径都更新或清理相同 cache/key。
15
+ 2. 检查事务是否尚未提交;YSS 写/删/清理可能在 `afterCommit` 执行。
16
+ 3. 检查是否误用了 Caffeine、fallback 或 JetCache local cache。
17
+ 4. 检查 `allEntries`、`beforeInvocation` 和空 key 产生的 `SimpleKey.EMPTY`。
18
+
19
+ ## Redis 启动或连接失败
20
+
21
+ 1. 判定 Standalone/Sentinel/Cluster,检查拓扑互斥和 Cluster DB 0。
22
+ 2. 分别核对 Redis 数据节点与 Sentinel 认证。
23
+ 3. 检查 SSL、DNS、端口、connect/read timeout 和 Jedis pool。
24
+ 4. 检查用户自定义连接工厂是否使默认配置回退。
25
+
26
+ ## Redis 故障后行为异常
27
+
28
+ 1. 检查 fallback 是否明确开启、目标 Provider 是否存在且 available。
29
+ 2. 区分只读回退与脏写回退。
30
+ 3. 查看恢复时 Redis 清理失败日志;失败时框架应保持降级并重试。
31
+ 4. 多节点差异优先按 fallback 一致性窗口分析,不要误判为 Redis 广播失效。
32
+
33
+ 可先运行 `scripts/inspect-cache-usage.sh <project-root>` 取得静态证据,再进入源码路径。
@@ -0,0 +1,34 @@
1
+ # 验证与完成标准
2
+
3
+ ## 组件
4
+
5
+ ```bash
6
+ ./mvnw -f yss-microservice-components/yss-component-cache-parent/pom.xml verify
7
+ ```
8
+
9
+ 跨模块测试使用父 reactor 的 `-pl <module> -am`,避免解析本地旧 SNAPSHOT。也可运行:
10
+
11
+ ```bash
12
+ scripts/verify-cache-component.sh --source-root /path/to/yss-cloud-microservice
13
+ ```
14
+
15
+ ## 消费项目
16
+
17
+ ```bash
18
+ ./mvnw -pl <starter-module> -am -DskipTests package
19
+ ```
20
+
21
+ 完整启动依赖数据库、注册中心等外部服务时,构建验证与启动验证分开报告。
22
+
23
+ ## 验收矩阵
24
+
25
+ - 首次调用执行业务,第二次相同 key 命中缓存。
26
+ - 不同租户/业务 key 不串值。
27
+ - 更新、删除、状态变更后旧值失效。
28
+ - `condition`、`unless` 和异常返回行为符合预期。
29
+ - 默认 TTL 和枚举覆盖 TTL 在后端物理存在。
30
+ - Redis 停止后行为符合 fallback 配置;恢复后旧 Redis 值不会重新出现。
31
+ - Sentinel/Cluster 创建正确连接工厂,Cluster 使用 DB 0。
32
+ - Docker 可用时真实 Redis 认证、JSON template、JDK cache serialization 和 TTL 测试实际执行。
33
+ - Java 8 组件 class major version 为 52。
34
+ - `git diff --check` 通过,消费 starter 构建通过。
@@ -0,0 +1,84 @@
1
+ #!/usr/bin/env bash
2
+ set -u
3
+
4
+ skill_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
5
+
6
+ locate_source() {
7
+ if [ "$#" -gt 0 ] && [ -n "$1" ]; then
8
+ if [ -d "$1/yss-microservice-components/yss-component-cache-parent" ]; then
9
+ echo "$1"
10
+ return 0
11
+ fi
12
+ return 1
13
+ fi
14
+ if [ -n "${YSS_SOURCE_ROOT:-}" ] && [ -d "$YSS_SOURCE_ROOT/yss-microservice-components/yss-component-cache-parent" ]; then
15
+ echo "$YSS_SOURCE_ROOT"
16
+ return 0
17
+ fi
18
+ for candidate in "$PWD" "$PWD/.." "$HOME/Projects/yss-cloud-microservice" "$HOME/Documents/yss-project/yss-cloud-microservice"; do
19
+ if [ -d "$candidate/yss-microservice-components/yss-component-cache-parent" ]; then
20
+ (CDPATH= cd -- "$candidate" && pwd)
21
+ return 0
22
+ fi
23
+ done
24
+ return 1
25
+ }
26
+
27
+ source_root=$(locate_source "${1:-}") || {
28
+ echo "ERROR: cannot locate yss-component-cache-parent; pass source root or set YSS_SOURCE_ROOT" >&2
29
+ exit 2
30
+ }
31
+
32
+ parent="$source_root/yss-microservice-components/yss-component-cache-parent"
33
+ annotation="$parent/yss-component-spring-cache/src/main/java/com/yss/cloud/cache/annotation/ClearCache.java"
34
+ properties="$parent/yss-component-spring-cache/src/main/java/com/yss/cloud/cache/YssCacheProperties.java"
35
+ connection="$parent/yss-component-redis-cache/src/main/java/com/yss/cloud/cache/redis/config/RedisConnFactoryConfig.java"
36
+ index="$skill_dir/references/source-index.md"
37
+ fail=0
38
+
39
+ require_text() {
40
+ file=$1
41
+ pattern=$2
42
+ label=$3
43
+ if ! grep -Eq "$pattern" "$file"; then
44
+ echo "STALE: $label not found in $file"
45
+ fail=1
46
+ fi
47
+ }
48
+
49
+ require_text "$annotation" 'boolean allEntries\(\)' 'ClearCache.allEntries'
50
+ require_text "$annotation" 'boolean beforeInvocation\(\)' 'ClearCache.beforeInvocation'
51
+ require_text "$properties" 'private Duration defaultTtl' 'yss.cache.default-ttl'
52
+ require_text "$properties" 'private boolean fallbackEnabled' 'Redis fallback-enabled'
53
+ require_text "$properties" 'private String fallbackType' 'Redis fallback-type'
54
+ require_text "$properties" 'private boolean clearFallbackOnRecovery' 'Redis clear-fallback-on-recovery'
55
+ require_text "$connection" 'cannot be configured together' 'Sentinel/Cluster mutual exclusion'
56
+ require_text "$connection" 'database must be 0' 'Cluster database 0 guard'
57
+
58
+ for module in yss-component-spring-cache yss-component-redis-cache yss-component-caffeine-cache yss-component-cache-starter yss-component-jetcache; do
59
+ if ! grep -q "$module" "$index"; then
60
+ echo "STALE: source-index is missing module $module"
61
+ fail=1
62
+ fi
63
+ done
64
+
65
+ generated=$(sed -n 's/^Generated: //p' "$index" | head -1)
66
+ if [ -z "$generated" ]; then
67
+ echo "STALE: source-index has no Generated timestamp"
68
+ fail=1
69
+ else
70
+ echo "INFO: source-index generated at $generated"
71
+ fi
72
+
73
+ if [ "$annotation" -nt "$index" ] || [ "$properties" -nt "$index" ] || [ "$connection" -nt "$index" ]; then
74
+ echo "STALE: critical cache source is newer than source-index"
75
+ fail=1
76
+ fi
77
+
78
+ if [ "$fail" -ne 0 ]; then
79
+ echo "RESULT: skill/source contract drift detected; refresh with yss-source-index and review semantic references"
80
+ exit 1
81
+ fi
82
+
83
+ echo "RESULT: yss-cache critical contracts match source at $source_root"
84
+ exit 0
@@ -0,0 +1,96 @@
1
+ #!/usr/bin/env bash
2
+ set -u
3
+
4
+ usage() {
5
+ echo "Usage: $0 <project-root>" >&2
6
+ }
7
+
8
+ if [ "$#" -ne 1 ]; then
9
+ usage
10
+ exit 2
11
+ fi
12
+
13
+ root=$1
14
+ if [ ! -d "$root" ]; then
15
+ echo "ERROR: project root does not exist: $root" >&2
16
+ exit 2
17
+ fi
18
+
19
+ if command -v rg >/dev/null 2>&1; then
20
+ search() { rg -n --hidden --glob '!target/**' --glob '!.git/**' --glob '*.java' --glob '*.yml' --glob '*.yaml' --glob '*.properties' --glob 'pom.xml' "$1" "$root" 2>/dev/null || true; }
21
+ files() { rg --files "$root" -g '*.yml' -g '*.yaml' -g '*.properties' -g '*.java' -g 'pom.xml'; }
22
+ else
23
+ search() { grep -REn "$1" "$root" --include='*.java' --include='*.yml' --include='*.yaml' --include='*.properties' --include='pom.xml' 2>/dev/null || true; }
24
+ files() { find "$root" -type f \( -name '*.java' -o -name '*.yml' -o -name '*.yaml' -o -name '*.properties' -o -name 'pom.xml' \); }
25
+ fi
26
+
27
+ tmp=${TMPDIR:-/tmp}/yss-cache-inspect.$$
28
+ trap 'rm -f "$tmp"' EXIT HUP INT TERM
29
+ files >"$tmp"
30
+ if [ ! -s "$tmp" ]; then
31
+ echo "ERROR: no Java, Maven, or configuration files found under $root" >&2
32
+ exit 2
33
+ fi
34
+
35
+ fail=0
36
+ echo "YSS cache usage inspection: $root"
37
+
38
+ report() {
39
+ level=$1
40
+ title=$2
41
+ pattern=$3
42
+ result=$(search "$pattern")
43
+ if [ -n "$result" ]; then
44
+ echo
45
+ echo "[$level] $title"
46
+ echo "$result" | sed -n '1,20p'
47
+ fi
48
+ }
49
+
50
+ report INFO "Cache component dependencies" 'yss-component-(cache-starter|spring-cache|redis-cache|caffeine-cache|hazelcast-cache|jetcache)'
51
+ report INFO "Cache enable annotations" '@EnableYssCloud(Cache|RedisCache)'
52
+ report INFO "YSS cache annotations" '@(QueryCache|UpdateCache|ClearCache)'
53
+ report INFO "Configured backend and TTL" 'yss\.cache\.(active-type|default-ttl)|active-type:|default-ttl:'
54
+ report INFO "Redis fallback configuration" 'fallback-(enabled|type)|clear-fallback-on-recovery'
55
+ report INFO "RedisTemplate injection contracts" 'RedisTemplate[[:space:]]*<'
56
+
57
+ sentinel=$(search 'spring\.redis\.sentinel|sentinel:')
58
+ cluster=$(search 'spring\.redis\.cluster|cluster:')
59
+ if [ -n "$sentinel" ] && [ -n "$cluster" ]; then
60
+ echo
61
+ echo "[ERROR] Both Redis Sentinel and Cluster configuration markers were found. Confirm they are not active in the same profile."
62
+ fail=1
63
+ fi
64
+
65
+ if [ -n "$cluster" ]; then
66
+ nonzero=$(search 'spring\.redis\.database[[:space:]]*=[[:space:]]*[1-9][0-9]*|database:[[:space:]]*[1-9][0-9]*')
67
+ if [ -n "$nonzero" ]; then
68
+ echo
69
+ echo "[ERROR] Redis Cluster requires database 0."
70
+ echo "$nonzero" | sed -n '1,20p'
71
+ fail=1
72
+ fi
73
+ fi
74
+
75
+ clear_without_key=$(search '@ClearCache[[:space:]]*(\([^)]*\))?')
76
+ if [ -n "$clear_without_key" ]; then
77
+ echo
78
+ echo "[REVIEW] ClearCache usages found. Verify each use has a stable key or explicit allEntries=true; no-arg methods produce SimpleKey.EMPTY."
79
+ fi
80
+
81
+ query=$(search '@QueryCache')
82
+ update=$(search '@(UpdateCache|ClearCache)')
83
+ if [ -n "$query" ] && [ -z "$update" ]; then
84
+ echo
85
+ echo "[REVIEW] QueryCache is used but no UpdateCache/ClearCache annotation was found. Inspect explicit invalidation paths."
86
+ fi
87
+
88
+ if [ "$fail" -ne 0 ]; then
89
+ echo
90
+ echo "RESULT: blocking cache configuration defects found"
91
+ exit 1
92
+ fi
93
+
94
+ echo
95
+ echo "RESULT: no statically provable blocking cache defect found; REVIEW items still require code inspection"
96
+ exit 0
@@ -0,0 +1,101 @@
1
+ #!/usr/bin/env bash
2
+ set -u
3
+
4
+ source_root=""
5
+ consumer_root=""
6
+ consumer_module=""
7
+
8
+ usage() {
9
+ echo "Usage: $0 [--source-root PATH] [--consumer-root PATH --consumer-module MODULE]" >&2
10
+ }
11
+
12
+ while [ "$#" -gt 0 ]; do
13
+ case "$1" in
14
+ --source-root) [ "$#" -ge 2 ] || { usage; exit 2; }; source_root=$2; shift 2 ;;
15
+ --consumer-root) [ "$#" -ge 2 ] || { usage; exit 2; }; consumer_root=$2; shift 2 ;;
16
+ --consumer-module) [ "$#" -ge 2 ] || { usage; exit 2; }; consumer_module=$2; shift 2 ;;
17
+ -h|--help) usage; exit 0 ;;
18
+ *) usage; exit 2 ;;
19
+ esac
20
+ done
21
+
22
+ if [ -z "$source_root" ]; then
23
+ source_root=${YSS_SOURCE_ROOT:-}
24
+ fi
25
+ if [ -z "$source_root" ]; then
26
+ for candidate in "$PWD" "$PWD/.." "$HOME/Projects/yss-cloud-microservice" "$HOME/Documents/yss-project/yss-cloud-microservice"; do
27
+ if [ -d "$candidate/yss-microservice-components/yss-component-cache-parent" ]; then
28
+ source_root=$candidate
29
+ break
30
+ fi
31
+ done
32
+ fi
33
+
34
+ parent="${source_root%/}/yss-microservice-components/yss-component-cache-parent"
35
+ if [ -z "$source_root" ] || [ ! -f "$parent/pom.xml" ]; then
36
+ echo "ERROR: cannot locate cache parent; use --source-root or YSS_SOURCE_ROOT" >&2
37
+ exit 2
38
+ fi
39
+ if [ ! -x "$source_root/mvnw" ]; then
40
+ echo "ERROR: Maven wrapper is missing or not executable: $source_root/mvnw" >&2
41
+ exit 2
42
+ fi
43
+ if { [ -n "$consumer_root" ] && [ -z "$consumer_module" ]; } || { [ -z "$consumer_root" ] && [ -n "$consumer_module" ]; }; then
44
+ echo "ERROR: --consumer-root and --consumer-module must be provided together" >&2
45
+ exit 2
46
+ fi
47
+
48
+ echo "== Cache reactor verify =="
49
+ (cd "$source_root" && ./mvnw -f "$parent/pom.xml" verify) || exit 1
50
+
51
+ echo "== Docker integration status =="
52
+ report="$parent/yss-component-redis-cache/target/surefire-reports/TEST-com.yss.cloud.cache.redis.config.RedisStandaloneIntegrationTest.xml"
53
+ if command -v docker >/dev/null 2>&1 && docker info >/dev/null 2>&1; then
54
+ if [ ! -f "$report" ]; then
55
+ echo "ERROR: Docker is available but Redis integration report is missing" >&2
56
+ exit 1
57
+ fi
58
+ if grep -Eq 'skipped="[1-9]' "$report"; then
59
+ echo "ERROR: Docker is available but Redis integration test was skipped" >&2
60
+ exit 1
61
+ fi
62
+ echo "PASS: real Redis integration test executed"
63
+ else
64
+ echo "SKIP: Docker is unavailable; Redis integration test may be skipped by assumption"
65
+ fi
66
+
67
+ echo "== Diff whitespace =="
68
+ if command -v git >/dev/null 2>&1 && git -C "$source_root" rev-parse --is-inside-work-tree >/dev/null 2>&1; then
69
+ git -C "$source_root" diff --check || exit 1
70
+ else
71
+ echo "SKIP: source root is not a Git worktree"
72
+ fi
73
+
74
+ echo "== Java 8 bytecode =="
75
+ classes=$(find "$parent" -path '*/target/classes/*.class' -type f | head -1)
76
+ if [ -z "$classes" ]; then
77
+ echo "ERROR: no compiled cache class found" >&2
78
+ exit 1
79
+ fi
80
+ if ! command -v javap >/dev/null 2>&1; then
81
+ echo "ERROR: javap is required for bytecode verification" >&2
82
+ exit 2
83
+ fi
84
+ majors=$(find "$parent" -path '*/target/classes/*.class' -type f -exec javap -verbose {} \; 2>/dev/null | sed -n 's/.*major version: *//p' | sort -u)
85
+ if [ "$majors" != "52" ]; then
86
+ echo "ERROR: expected only Java 8 major version 52, found: $majors" >&2
87
+ exit 1
88
+ fi
89
+ echo "PASS: all cache classes use major version 52"
90
+
91
+ if [ -n "$consumer_root" ]; then
92
+ echo "== Consumer build =="
93
+ if [ ! -x "$consumer_root/mvnw" ] || [ ! -f "$consumer_root/pom.xml" ]; then
94
+ echo "ERROR: invalid consumer root: $consumer_root" >&2
95
+ exit 2
96
+ fi
97
+ (cd "$consumer_root" && ./mvnw -pl "$consumer_module" -am -DskipTests package) || exit 1
98
+ fi
99
+
100
+ echo "RESULT: cache verification passed"
101
+ exit 0
@@ -20,16 +20,16 @@ The route most work travels. You have an idea and want it built.
20
20
  - **`/prototype`** to answer the question with throwaway code,
21
21
  - **`/handoff`** back what you learned, and reference it from the original idea thread.
22
22
  3. **Branch — is this a multi-session build?**
23
- - **Yes** → **`/to-prd`** (turn the thread into a PRD) → **`/to-issues`** (split the PRD into independently-grabbable issues). Because the issues are independent, **clear context between each one**: start a fresh session per issue and kick off **`/implement`** by passing it the PRD and the single issue to work on.
23
+ - **Yes** → **`/to-spec`** (turn the thread into a spec), then **`/to-tickets`** to split it into tracer-bullet tickets, each declaring its **blocking edges**. On a local tracker that's one file per ticket under `.scratch/<feature>/tickets/`, worked blockers-first by hand; on a real tracker the edges become native blocking links, so any ticket whose blockers are done can be grabbed — kick off **`/implement`** per ticket, **clearing context between each one**.
24
24
  - **No** → **`/implement`** right here, in the same context window.
25
25
 
26
26
  Either way, **`/implement`** builds each issue by driving **`/tdd`** internally — one red-green slice at a time — then closes out by running **`/code-review`**, a two-axis review (Standards + Spec) of the diff, before committing. Reach for **`/tdd`** on its own when you just want to build a concrete behaviour test-first without a full spec, and **`/code-review`** on its own whenever you want to review a branch or PR against a fixed point.
27
27
 
28
28
  ### Context hygiene
29
29
 
30
- Keep steps 1–3 in **one unbroken context window** — don't compact or clear until after `/to-issues` — so the grilling, PRD, and issues all build on the same thinking. Each `/implement` then starts fresh, working from the issue.
30
+ Keep steps 1–3 in **one unbroken context window** — don't compact or clear until after `/to-tickets` — so the grilling, spec, and tickets all build on the same thinking. Each `/implement` then starts fresh, working from the ticket.
31
31
 
32
- The limit on this is the **[smart zone](https://www.aihero.dev/ai-coding-dictionary/smart-zone)**: the window (~120k tokens on state-of-the-art models) within which the model still reasons sharply. If a session approaches it before `/to-issues`, don't push on degraded — `/handoff` and continue in a fresh thread.
32
+ The limit on this is the **[smart zone](https://www.aihero.dev/ai-coding-dictionary/smart-zone)**: the window (~120k tokens on state-of-the-art models) within which the model still reasons sharply. If a session approaches it before `/to-tickets`, don't push on degraded — `/handoff` and continue in a fresh thread.
33
33
 
34
34
  ## On-ramps
35
35
 
@@ -37,10 +37,14 @@ A starting situation that generates work, then merges onto the main flow.
37
37
 
38
38
  - **Bugs and requests piling up** → **`/triage`**. It moves issues through triage roles and produces agent-ready issues, which **`/implement`** later picks up.
39
39
 
40
- Triage is only for issues **you didn't create** — bug reports, incoming feature requests, anything that arrives raw. Issues that `/to-issues` produced are already agent-ready, so **don't triage them**.
40
+ Triage is only for issues **you didn't create** — bug reports, incoming feature requests, anything that arrives raw. Tickets that `/to-tickets` produced are already agent-ready, so **don't triage them**.
41
41
 
42
42
  - **Something's broken** → **`/diagnosing-bugs`**. For the hard ones: the bug that resists a first glance, the intermittent flake, the regression that crept in between two known-good states. It refuses to theorise until it has a **tight feedback loop** — one command that already goes red on *this* bug — then fixes with a regression test. Its post-mortem hands off to **`/improve-codebase-architecture`** when the real finding is that there's no good seam to lock the bug down.
43
43
 
44
+ - **A huge, foggy effort — a greenfield project or a huge feature build, too big for one session** → **`/wayfinder`**, the most cognitively demanding flow here. When the way from here to the destination isn't visible yet, it charts a **shared map** of **decision tickets** on the issue tracker and resolves them one at a time — producing **decisions, not deliverables** — until the fog is pushed back and the way is clear. Where **`/grill-with-docs`** sharpens an idea you can hold in one session, wayfinder is for the idea you can't — and it's slower and denser, so save it for exactly that, never a well-scoped feature.
45
+
46
+ When the map clears, **it hands off, it doesn't build**: merge onto the main flow at **`/to-spec`**, which collapses the map's linked decisions into a buildable plan, then `/to-tickets` and `/implement` as usual. Looping the map straight into `/implement` skips that collapse and throws the linked detail away — go straight to `/implement` only when the effort turned out genuinely small.
47
+
44
48
  ## Codebase health
45
49
 
46
50
  Not feature work — upkeep.
@@ -0,0 +1,5 @@
1
+ interface:
2
+ display_name: "Ask Matt"
3
+ short_description: "Find the right skill or workflow"
4
+ policy:
5
+ allow_implicit_invocation: false
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: code-review
3
- description: Review the changes since a fixed point (commit, branch, tag, or merge-base) along two axes — Standards (does the code follow this repo's documented coding standards?) and Spec (does the code match what the originating issue/PRD asked for?). Runs both reviews in parallel sub-agents and reports them side by side. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to "review since X".
3
+ description: Review the changes since a fixed point (commit, branch, tag, or merge-base) along two axes — Standards (does the code follow this repo's documented coding standards?) and Spec (does the code match what the originating issue/Spec asked for?). Runs both reviews in parallel sub-agents and reports them side by side. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to "review since X".
4
4
  ---
5
5
 
6
6
  Two-axis review of the diff between `HEAD` and a fixed point the user supplies:
7
7
 
8
8
  - **Standards** — does the code conform to this repo's documented coding standards?
9
- - **Spec** — does the code faithfully implement the originating issue / PRD / spec?
9
+ - **Spec** — does the code faithfully implement the originating Ticket / Spec?
10
10
 
11
11
  Both axes run as **parallel sub-agents** so they don't pollute each other's context, then this skill aggregates their findings.
12
12
 
@@ -26,9 +26,9 @@ Before going further, confirm the fixed point resolves (`git rev-parse <fixed-po
26
26
 
27
27
  Look for the originating spec, in this order:
28
28
 
29
- 1. Issue references in the commit messages (`#123`, `Closes #45`, GitLab `!67`, etc.) — fetch via the workflow in `docs/agents/issue-tracker.md`.
29
+ 1. Ticket references in the commit messages (`#123`, `Closes #45`, GitLab `!67`, etc.) — fetch via the workflow in `docs/agents/issue-tracker.md`.
30
30
  2. A path the user passed as an argument.
31
- 3. A PRD/spec file under `docs/`, `specs/`, or `.scratch/` matching the branch name or feature.
31
+ 3. A Spec file under `docs/`, `specs/`, or `.scratch/` matching the branch name or feature.
32
32
  4. If nothing is found, ask the user where the spec is. If they say there isn't one, the **Spec** sub-agent will skip and report "no spec available".
33
33
 
34
34
  ### 3. Identify the standards sources
@@ -0,0 +1,3 @@
1
+ interface:
2
+ display_name: "Code Review"
3
+ short_description: "Review a diff on standards and spec"
@@ -0,0 +1,3 @@
1
+ interface:
2
+ display_name: "Codebase Design"
3
+ short_description: "Vocabulary for deep-module design"
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  name: competitive-intelligence
3
- description: Use when researching competitors, market positioning, pricing, feature gaps, customer sentiment, or category trends before Discovery, PRD, product strategy, or roadmap decisions.
3
+ description: Use when researching competitors, market positioning, pricing, feature gaps, customer sentiment, or category trends before Discovery, Spec, product strategy, or roadmap decisions.
4
4
  ---
5
5
 
6
6
  # Competitive Intelligence
7
7
 
8
8
  Source requested for this project: `anthropics/knowledge-work-plugins`, `sales/skills/competitive-intelligence`.
9
9
 
10
- Use this skill when competitive or market facts are needed to shape product Discovery, PRD scope, positioning, differentiation, pricing assumptions, or roadmap tradeoffs.
10
+ Use this skill when competitive or market facts are needed to shape product Discovery, Spec scope, positioning, differentiation, pricing assumptions, or roadmap tradeoffs.
11
11
 
12
12
  ## Core Rules
13
13
 
@@ -43,11 +43,11 @@ Use this skill when competitive or market facts are needed to shape product Disc
43
43
  - Differentiators and defensibility.
44
44
  - Gaps and underserved jobs-to-be-done.
45
45
  - Risks if we copy the competitor too closely.
46
- - Product opportunities for PRD or roadmap.
46
+ - Product opportunities for Spec or roadmap.
47
47
  5. Hand off to lifecycle assets:
48
48
  - Update Discovery findings in `docs/discovery/`.
49
49
  - Create or update a competitor matrix in `docs/discovery/reports/`.
50
- - Feed stable user, pain, MVP, non-goal, and success criteria into `grill-with-docs` and `to-prd`.
50
+ - Feed stable user, pain, MVP, non-goal, and success criteria into `grill-with-docs` and `to-spec`.
51
51
  - Record uncertain claims as assumptions, not requirements.
52
52
 
53
53
  ## Output Shape
@@ -76,7 +76,7 @@ For a quick brief:
76
76
  | 维度 | 竞品 A | 竞品 B | 我们的机会 |
77
77
  |---|---|---|---|
78
78
 
79
- ### PRD 输入
79
+ ### Spec 输入
80
80
  - 用户 / 痛点:
81
81
  - MVP 建议:
82
82
  - 非目标范围:
@@ -0,0 +1,3 @@
1
+ interface:
2
+ display_name: "Diagnosing Bugs"
3
+ short_description: "Diagnose hard bugs and regressions"
@@ -0,0 +1,3 @@
1
+ interface:
2
+ display_name: "Domain Modeling"
3
+ short_description: "Build and sharpen a domain model"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: excalidraw-diagram-generator
3
- description: 'Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.'
3
+ description: 'Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "draw business/functional/system/data architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, business flows, system architecture, ER, class, sequence, lineage, and data flow diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.'
4
4
  ---
5
5
 
6
6
  # Excalidraw Diagram Generator
@@ -31,6 +31,27 @@ Use this skill when users request:
31
31
  - 🔄 **Sequence Diagrams**: Object interactions over time, message flows
32
32
  - 🗃️ **ER Diagrams**: Database entity relationships, data models
33
33
 
34
+ ## YSS Lifecycle Integration
35
+
36
+ In YSS projects, this skill is a visualization and review aid. It can clarify lifecycle artifacts, but it must not replace Discovery, Spec, OpenAPI, ADR, Spec Delta design, or tests.
37
+
38
+ Use it after the relevant source artifact exists:
39
+
40
+ | Lifecycle artifact | Typical timing | Useful diagrams | Recommended output |
41
+ |--------------------|----------------|-----------------|--------------------|
42
+ | Business architecture | Opportunity exploration / Discovery | user journey, value stream, swimlane, capability map, ecosystem map | `docs/discovery/diagrams/` or `docs/architecture/diagrams/` |
43
+ | Functional architecture | Spec baseline / product design / Spec calibration | feature map, module map, dependency graph, page map | `docs/design/diagrams/` or `docs/architecture/diagrams/` |
44
+ | System architecture | Engineering baseline / Architecture / Spec Delta design | C4/container view, deployment, sequence, DDD boundary, DFD | `docs/architecture/diagrams/` |
45
+ | Data architecture | Detailed design before persistence / repository work | ER, class, meta-model, lineage graph, query/data-flow diagram | `docs/architecture/diagrams/` |
46
+
47
+ Guardrails:
48
+
49
+ - Do not invent product requirements or architecture decisions only from the diagram prompt.
50
+ - Reference the source artifact in the Markdown document that links the `.excalidraw` file.
51
+ - If a diagram exposes a missing field, unclear state, dependency, or boundary problem, write that finding back to the source Spec, OpenAPI Draft, architecture document, ADR, Spec Delta design, or issue.
52
+ - Do not require diagrams for small copy, style, configuration, or single-point bug fixes.
53
+ - For data modeling, metadata management, model versioning, or lineage-analysis products, prefer ER, class/meta-model, DFD, and lineage diagrams before persistence implementation.
54
+
34
55
  ## Prerequisites
35
56
 
36
57
  - Clear description of what should be visualized
@@ -178,7 +199,7 @@ Structure the complete Excalidraw file:
178
199
  ### Layout Tips
179
200
 
180
201
  1. **Start positions**: Center important elements, use consistent spacing
181
- 2. **Spacing**:
202
+ 2. **Spacing**:
182
203
  - Horizontal gap: 200-300px between elements
183
204
  - Vertical gap: 100-150px between rows
184
205
  3. **Colors**: Use consistent color scheme
@@ -315,18 +336,18 @@ For specialized diagrams (e.g., AWS/GCP/Azure architecture diagrams), you can us
315
336
 
316
337
  ```
317
338
  To use [AWS/GCP/Azure/etc.] architecture icons, please follow these steps:
318
-
339
+
319
340
  1. Visit https://libraries.excalidraw.com/
320
341
  2. Search for "[AWS Architecture Icons/etc.]" and download the .excalidrawlib file
321
342
  3. Create directory: skills/excalidraw-diagram-generator/libraries/[icon-set-name]/
322
343
  4. Place the downloaded file in that directory
323
344
  5. Run the splitter script:
324
345
  python skills/excalidraw-diagram-generator/scripts/split-excalidraw-library.py skills/excalidraw-diagram-generator/libraries/[icon-set-name]/
325
-
346
+
326
347
  This will split the library into individual icon files for efficient use.
327
348
  After setup is complete, I can create your diagram using the actual AWS/cloud icons.
328
-
329
- Alternatively, I can create the diagram now using simple shapes (rectangles, ellipses)
349
+
350
+ Alternatively, I can create the diagram now using simple shapes (rectangles, ellipses)
330
351
  which you can later replace with icons manually in Excalidraw.
331
352
  ```
332
353
 
@@ -389,15 +410,15 @@ The repository includes Python scripts that handle icon integration automaticall
389
410
  <diagram-path> <icon-name> <x> <y> [--label "Text"] [--library-path PATH]
390
411
  ```
391
412
  - Edit via `.excalidraw.edit` is enabled by default to avoid overwrite issues; pass `--no-use-edit-suffix` to disable.
392
-
413
+
393
414
  **Examples**:
394
415
  ```bash
395
416
  # Add EC2 icon at position (400, 300) with label
396
417
  python scripts/add-icon-to-diagram.py diagram.excalidraw EC2 400 300 --label "Web Server"
397
-
418
+
398
419
  # Add VPC icon at position (200, 150)
399
420
  python scripts/add-icon-to-diagram.py diagram.excalidraw VPC 200 150
400
-
421
+
401
422
  # Add icon from different library
402
423
  python scripts/add-icon-to-diagram.py diagram.excalidraw Compute-Engine 500 200 \
403
424
  --library-path libraries/gcp-icons --label "API Server"
@@ -409,15 +430,15 @@ The repository includes Python scripts that handle icon integration automaticall
409
430
  <diagram-path> <from-x> <from-y> <to-x> <to-y> [--label "Text"] [--style solid|dashed|dotted] [--color HEX]
410
431
  ```
411
432
  - Edit via `.excalidraw.edit` is enabled by default to avoid overwrite issues; pass `--no-use-edit-suffix` to disable.
412
-
433
+
413
434
  **Examples**:
414
435
  ```bash
415
436
  # Simple arrow from (300, 250) to (500, 300)
416
437
  python scripts/add-arrow.py diagram.excalidraw 300 250 500 300
417
-
438
+
418
439
  # Arrow with label
419
440
  python scripts/add-arrow.py diagram.excalidraw 300 250 500 300 --label "HTTPS"
420
-
441
+
421
442
  # Dashed arrow with custom color
422
443
  python scripts/add-arrow.py diagram.excalidraw 400 350 600 400 --style dashed --color "#7950f2"
423
444
  ```
@@ -426,14 +447,14 @@ The repository includes Python scripts that handle icon integration automaticall
426
447
  ```bash
427
448
  # Step 1: Create base diagram with title and structure
428
449
  # (Create .excalidraw file with initial elements)
429
-
450
+
430
451
  # Step 2: Add icons with labels
431
452
  python scripts/add-icon-to-diagram.py my-diagram.excalidraw "Internet-gateway" 200 150 --label "Internet Gateway"
432
453
  python scripts/add-icon-to-diagram.py my-diagram.excalidraw VPC 250 250
433
454
  python scripts/add-icon-to-diagram.py my-diagram.excalidraw ELB 350 300 --label "Load Balancer"
434
455
  python scripts/add-icon-to-diagram.py my-diagram.excalidraw EC2 450 350 --label "EC2 Instance"
435
456
  python scripts/add-icon-to-diagram.py my-diagram.excalidraw RDS 550 400 --label "Database"
436
-
457
+
437
458
  # Step 3: Add connecting arrows
438
459
  python scripts/add-arrow.py my-diagram.excalidraw 250 200 300 250 # Internet → VPC
439
460
  python scripts/add-arrow.py my-diagram.excalidraw 300 300 400 300 # VPC → ELB
@@ -453,7 +474,7 @@ The repository includes Python scripts that handle icon integration automaticall
453
474
 
454
475
  Only use this if Python scripts are unavailable:
455
476
 
456
- 1. **Check for libraries**:
477
+ 1. **Check for libraries**:
457
478
  ```
458
479
  List directory: skills/excalidraw-diagram-generator/libraries/
459
480
  Look for subdirectories containing reference.md files
@@ -549,7 +570,7 @@ python scripts/add-arrow.py my-aws-diagram.excalidraw 565 330 650 350 --label "S
549
570
  - `icons/Internet-gateway.json` (298 lines)
550
571
  - `icons/VPC.json` (550 lines)
551
572
  - `icons/ELB.json` (363 lines)
552
- - `icons/EC2.json` (231 lines)
573
+ - `icons/EC2.json` (231 lines)
553
574
  - `icons/RDS.json` (similar size)
554
575
  **Total: ~2000+ lines of JSON to process**
555
576
  4. Extract elements from each JSON