@dtt_siye/atool 1.1.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 (463) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +235 -0
  3. package/VERSION +1 -0
  4. package/agents/code-reviewer.md +29 -0
  5. package/bin/atool.js +235 -0
  6. package/bin/postinstall.js +23 -0
  7. package/hooks/doc-sync-reminder +155 -0
  8. package/hooks/hooks-cursor.json +37 -0
  9. package/hooks/hooks.json +37 -0
  10. package/hooks/prompt-guard +135 -0
  11. package/hooks/session-start +286 -0
  12. package/install.sh +603 -0
  13. package/lib/analyze-source.sh +1265 -0
  14. package/lib/common.sh +1041 -0
  15. package/lib/compute-importance.sh +598 -0
  16. package/lib/detect-stack.sh +354 -0
  17. package/lib/generate-visualization.sh +266 -0
  18. package/lib/install-claude.sh +43 -0
  19. package/lib/install-cursor.sh +281 -0
  20. package/lib/install-hooks.sh +285 -0
  21. package/lib/install-kiro.sh +543 -0
  22. package/lib/install-mcp.sh +99 -0
  23. package/lib/install-skills.sh +129 -0
  24. package/lib/knowledge-graph.sh +1014 -0
  25. package/lib/multi-dimensional-analysis.sh +413 -0
  26. package/lib/pre-scan.sh +1045 -0
  27. package/lib/project-init.sh +552 -0
  28. package/lib/visualization-template.html +545 -0
  29. package/mcp/recommended.json +24 -0
  30. package/package.json +39 -0
  31. package/skills/_superpowers/.claude-plugin/marketplace.json +20 -0
  32. package/skills/_superpowers/.claude-plugin/plugin.json +20 -0
  33. package/skills/_superpowers/.codex/INSTALL.md +67 -0
  34. package/skills/_superpowers/.cursor-plugin/plugin.json +25 -0
  35. package/skills/_superpowers/.gitattributes +18 -0
  36. package/skills/_superpowers/.github/FUNDING.yml +3 -0
  37. package/skills/_superpowers/.github/ISSUE_TEMPLATE/bug_report.md +52 -0
  38. package/skills/_superpowers/.github/ISSUE_TEMPLATE/config.yml +5 -0
  39. package/skills/_superpowers/.github/ISSUE_TEMPLATE/feature_request.md +34 -0
  40. package/skills/_superpowers/.github/ISSUE_TEMPLATE/platform_support.md +23 -0
  41. package/skills/_superpowers/.github/PULL_REQUEST_TEMPLATE.md +87 -0
  42. package/skills/_superpowers/.opencode/INSTALL.md +83 -0
  43. package/skills/_superpowers/.opencode/plugins/superpowers.js +107 -0
  44. package/skills/_superpowers/CHANGELOG.md +13 -0
  45. package/skills/_superpowers/CODE_OF_CONDUCT.md +128 -0
  46. package/skills/_superpowers/GEMINI.md +2 -0
  47. package/skills/_superpowers/LICENSE +21 -0
  48. package/skills/_superpowers/README.md +187 -0
  49. package/skills/_superpowers/RELEASE-NOTES.md +1083 -0
  50. package/skills/_superpowers/agents/code-reviewer.md +48 -0
  51. package/skills/_superpowers/commands/brainstorm.md +5 -0
  52. package/skills/_superpowers/commands/execute-plan.md +5 -0
  53. package/skills/_superpowers/commands/write-plan.md +5 -0
  54. package/skills/_superpowers/docs/README.codex.md +126 -0
  55. package/skills/_superpowers/docs/README.opencode.md +130 -0
  56. package/skills/_superpowers/docs/plans/2025-11-22-opencode-support-design.md +294 -0
  57. package/skills/_superpowers/docs/plans/2025-11-22-opencode-support-implementation.md +1095 -0
  58. package/skills/_superpowers/docs/plans/2025-11-28-skills-improvements-from-user-feedback.md +711 -0
  59. package/skills/_superpowers/docs/plans/2026-01-17-visual-brainstorming.md +571 -0
  60. package/skills/_superpowers/docs/superpowers/plans/2026-01-22-document-review-system.md +301 -0
  61. package/skills/_superpowers/docs/superpowers/plans/2026-02-19-visual-brainstorming-refactor.md +523 -0
  62. package/skills/_superpowers/docs/superpowers/plans/2026-03-11-zero-dep-brainstorm-server.md +479 -0
  63. package/skills/_superpowers/docs/superpowers/plans/2026-03-23-codex-app-compatibility.md +564 -0
  64. package/skills/_superpowers/docs/superpowers/specs/2026-01-22-document-review-system-design.md +136 -0
  65. package/skills/_superpowers/docs/superpowers/specs/2026-02-19-visual-brainstorming-refactor-design.md +162 -0
  66. package/skills/_superpowers/docs/superpowers/specs/2026-03-11-zero-dep-brainstorm-server-design.md +118 -0
  67. package/skills/_superpowers/docs/superpowers/specs/2026-03-23-codex-app-compatibility-design.md +244 -0
  68. package/skills/_superpowers/docs/testing.md +303 -0
  69. package/skills/_superpowers/docs/windows/polyglot-hooks.md +212 -0
  70. package/skills/_superpowers/gemini-extension.json +6 -0
  71. package/skills/_superpowers/hooks/hooks-cursor.json +10 -0
  72. package/skills/_superpowers/hooks/hooks.json +16 -0
  73. package/skills/_superpowers/hooks/run-hook.cmd +46 -0
  74. package/skills/_superpowers/hooks/session-start +57 -0
  75. package/skills/_superpowers/package.json +6 -0
  76. package/skills/_superpowers/skills/brainstorming/SKILL.md +164 -0
  77. package/skills/_superpowers/skills/brainstorming/scripts/frame-template.html +214 -0
  78. package/skills/_superpowers/skills/brainstorming/scripts/helper.js +88 -0
  79. package/skills/_superpowers/skills/brainstorming/scripts/server.cjs +354 -0
  80. package/skills/_superpowers/skills/brainstorming/scripts/start-server.sh +148 -0
  81. package/skills/_superpowers/skills/brainstorming/scripts/stop-server.sh +56 -0
  82. package/skills/_superpowers/skills/brainstorming/spec-document-reviewer-prompt.md +49 -0
  83. package/skills/_superpowers/skills/brainstorming/visual-companion.md +287 -0
  84. package/skills/_superpowers/skills/dispatching-parallel-agents/SKILL.md +182 -0
  85. package/skills/_superpowers/skills/executing-plans/SKILL.md +70 -0
  86. package/skills/_superpowers/skills/finishing-a-development-branch/SKILL.md +200 -0
  87. package/skills/_superpowers/skills/receiving-code-review/SKILL.md +213 -0
  88. package/skills/_superpowers/skills/requesting-code-review/SKILL.md +105 -0
  89. package/skills/_superpowers/skills/requesting-code-review/code-reviewer.md +146 -0
  90. package/skills/_superpowers/skills/subagent-driven-development/SKILL.md +277 -0
  91. package/skills/_superpowers/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
  92. package/skills/_superpowers/skills/subagent-driven-development/implementer-prompt.md +113 -0
  93. package/skills/_superpowers/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  94. package/skills/_superpowers/skills/systematic-debugging/CREATION-LOG.md +119 -0
  95. package/skills/_superpowers/skills/systematic-debugging/SKILL.md +296 -0
  96. package/skills/_superpowers/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  97. package/skills/_superpowers/skills/systematic-debugging/condition-based-waiting.md +115 -0
  98. package/skills/_superpowers/skills/systematic-debugging/defense-in-depth.md +122 -0
  99. package/skills/_superpowers/skills/systematic-debugging/find-polluter.sh +63 -0
  100. package/skills/_superpowers/skills/systematic-debugging/root-cause-tracing.md +169 -0
  101. package/skills/_superpowers/skills/systematic-debugging/test-academic.md +14 -0
  102. package/skills/_superpowers/skills/systematic-debugging/test-pressure-1.md +58 -0
  103. package/skills/_superpowers/skills/systematic-debugging/test-pressure-2.md +68 -0
  104. package/skills/_superpowers/skills/systematic-debugging/test-pressure-3.md +69 -0
  105. package/skills/_superpowers/skills/test-driven-development/SKILL.md +371 -0
  106. package/skills/_superpowers/skills/test-driven-development/testing-anti-patterns.md +299 -0
  107. package/skills/_superpowers/skills/using-git-worktrees/SKILL.md +218 -0
  108. package/skills/_superpowers/skills/using-superpowers/SKILL.md +115 -0
  109. package/skills/_superpowers/skills/using-superpowers/references/codex-tools.md +100 -0
  110. package/skills/_superpowers/skills/using-superpowers/references/gemini-tools.md +33 -0
  111. package/skills/_superpowers/skills/verification-before-completion/SKILL.md +139 -0
  112. package/skills/_superpowers/skills/writing-plans/SKILL.md +152 -0
  113. package/skills/_superpowers/skills/writing-plans/plan-document-reviewer-prompt.md +49 -0
  114. package/skills/_superpowers/skills/writing-skills/SKILL.md +655 -0
  115. package/skills/_superpowers/skills/writing-skills/anthropic-best-practices.md +1150 -0
  116. package/skills/_superpowers/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
  117. package/skills/_superpowers/skills/writing-skills/graphviz-conventions.dot +172 -0
  118. package/skills/_superpowers/skills/writing-skills/persuasion-principles.md +187 -0
  119. package/skills/_superpowers/skills/writing-skills/render-graphs.js +168 -0
  120. package/skills/_superpowers/skills/writing-skills/testing-skills-with-subagents.md +384 -0
  121. package/skills/_superpowers/tests/brainstorm-server/package-lock.json +36 -0
  122. package/skills/_superpowers/tests/brainstorm-server/package.json +10 -0
  123. package/skills/_superpowers/tests/brainstorm-server/server.test.js +427 -0
  124. package/skills/_superpowers/tests/brainstorm-server/windows-lifecycle.test.sh +351 -0
  125. package/skills/_superpowers/tests/brainstorm-server/ws-protocol.test.js +392 -0
  126. package/skills/_superpowers/tests/claude-code/README.md +158 -0
  127. package/skills/_superpowers/tests/claude-code/analyze-token-usage.py +168 -0
  128. package/skills/_superpowers/tests/claude-code/run-skill-tests.sh +187 -0
  129. package/skills/_superpowers/tests/claude-code/test-document-review-system.sh +177 -0
  130. package/skills/_superpowers/tests/claude-code/test-helpers.sh +202 -0
  131. package/skills/_superpowers/tests/claude-code/test-subagent-driven-development-integration.sh +314 -0
  132. package/skills/_superpowers/tests/claude-code/test-subagent-driven-development.sh +165 -0
  133. package/skills/_superpowers/tests/explicit-skill-requests/prompts/action-oriented.txt +3 -0
  134. package/skills/_superpowers/tests/explicit-skill-requests/prompts/after-planning-flow.txt +17 -0
  135. package/skills/_superpowers/tests/explicit-skill-requests/prompts/claude-suggested-it.txt +11 -0
  136. package/skills/_superpowers/tests/explicit-skill-requests/prompts/i-know-what-sdd-means.txt +8 -0
  137. package/skills/_superpowers/tests/explicit-skill-requests/prompts/mid-conversation-execute-plan.txt +3 -0
  138. package/skills/_superpowers/tests/explicit-skill-requests/prompts/please-use-brainstorming.txt +1 -0
  139. package/skills/_superpowers/tests/explicit-skill-requests/prompts/skip-formalities.txt +3 -0
  140. package/skills/_superpowers/tests/explicit-skill-requests/prompts/subagent-driven-development-please.txt +1 -0
  141. package/skills/_superpowers/tests/explicit-skill-requests/prompts/use-systematic-debugging.txt +1 -0
  142. package/skills/_superpowers/tests/explicit-skill-requests/run-all.sh +70 -0
  143. package/skills/_superpowers/tests/explicit-skill-requests/run-claude-describes-sdd.sh +100 -0
  144. package/skills/_superpowers/tests/explicit-skill-requests/run-extended-multiturn-test.sh +113 -0
  145. package/skills/_superpowers/tests/explicit-skill-requests/run-haiku-test.sh +144 -0
  146. package/skills/_superpowers/tests/explicit-skill-requests/run-multiturn-test.sh +143 -0
  147. package/skills/_superpowers/tests/explicit-skill-requests/run-test.sh +136 -0
  148. package/skills/_superpowers/tests/opencode/run-tests.sh +163 -0
  149. package/skills/_superpowers/tests/opencode/setup.sh +73 -0
  150. package/skills/_superpowers/tests/opencode/test-plugin-loading.sh +72 -0
  151. package/skills/_superpowers/tests/opencode/test-priority.sh +198 -0
  152. package/skills/_superpowers/tests/opencode/test-tools.sh +104 -0
  153. package/skills/_superpowers/tests/skill-triggering/prompts/dispatching-parallel-agents.txt +8 -0
  154. package/skills/_superpowers/tests/skill-triggering/prompts/executing-plans.txt +1 -0
  155. package/skills/_superpowers/tests/skill-triggering/prompts/requesting-code-review.txt +3 -0
  156. package/skills/_superpowers/tests/skill-triggering/prompts/systematic-debugging.txt +11 -0
  157. package/skills/_superpowers/tests/skill-triggering/prompts/test-driven-development.txt +7 -0
  158. package/skills/_superpowers/tests/skill-triggering/prompts/writing-plans.txt +10 -0
  159. package/skills/_superpowers/tests/skill-triggering/run-all.sh +60 -0
  160. package/skills/_superpowers/tests/skill-triggering/run-test.sh +88 -0
  161. package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/design.md +81 -0
  162. package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/plan.md +172 -0
  163. package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/scaffold.sh +45 -0
  164. package/skills/_superpowers/tests/subagent-driven-dev/run-test.sh +106 -0
  165. package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/design.md +70 -0
  166. package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/plan.md +222 -0
  167. package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/scaffold.sh +46 -0
  168. package/skills/ai-project-architecture/SKILL.md +632 -0
  169. package/skills/ai-project-architecture/reference/structure-rules.md +406 -0
  170. package/skills/ai-project-architecture/templates/compliance-report.md +300 -0
  171. package/skills/ai-project-architecture/templates/migration-plan.md +433 -0
  172. package/skills/ai-project-architecture/templates/verification-checklist.md +408 -0
  173. package/skills/android-conventions/SKILL.md +125 -0
  174. package/skills/atool-init/SKILL.md +141 -0
  175. package/skills/clarify-before-build/SKILL.md +107 -0
  176. package/skills/code-review/SKILL.md +406 -0
  177. package/skills/code-review/rules/architecture.md +285 -0
  178. package/skills/code-review/rules/coupling-cohesion.md +309 -0
  179. package/skills/code-review/rules/dead-code.md +115 -0
  180. package/skills/code-review/rules/deprecation-debt.md +279 -0
  181. package/skills/code-review/rules/duplication.md +104 -0
  182. package/skills/code-review/rules/error-security.md +143 -0
  183. package/skills/code-review/rules/maintainability.md +203 -0
  184. package/skills/code-review/rules/quality.md +158 -0
  185. package/skills/devops-conventions/SKILL.md +205 -0
  186. package/skills/doc-coauthoring/SKILL.md +392 -0
  187. package/skills/doc-standards-enforcer/SKILL.md +290 -0
  188. package/skills/doc-standards-enforcer/examples/valid-document-example.md +67 -0
  189. package/skills/doc-standards-enforcer/references/101-standards-summary.md +318 -0
  190. package/skills/doc-standards-enforcer/scripts/check_references.py +175 -0
  191. package/skills/doc-standards-enforcer/scripts/fix_common_issues.py +303 -0
  192. package/skills/doc-standards-enforcer/scripts/validate_doc_standards.py +332 -0
  193. package/skills/docx/LICENSE.txt +30 -0
  194. package/skills/docx/SKILL.md +200 -0
  195. package/skills/docx/docx-js.md +350 -0
  196. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  197. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  198. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  199. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  200. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  201. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  202. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  203. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  204. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  205. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  206. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  207. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  208. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  209. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  210. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  211. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  212. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  213. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  214. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  215. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  216. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  217. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  218. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  219. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  220. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  221. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  222. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  223. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  224. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  225. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  226. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  227. package/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  228. package/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  229. package/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  230. package/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  231. package/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  232. package/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  233. package/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  234. package/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  235. package/skills/docx/ooxml/scripts/pack.py +159 -0
  236. package/skills/docx/ooxml/scripts/unpack.py +29 -0
  237. package/skills/docx/ooxml/scripts/validate.py +69 -0
  238. package/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  239. package/skills/docx/ooxml/scripts/validation/base.py +951 -0
  240. package/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  241. package/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  242. package/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  243. package/skills/docx/ooxml.md +610 -0
  244. package/skills/docx/scripts/__init__.py +1 -0
  245. package/skills/docx/scripts/document.py +1276 -0
  246. package/skills/docx/scripts/templates/comments.xml +3 -0
  247. package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  248. package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  249. package/skills/docx/scripts/templates/commentsIds.xml +3 -0
  250. package/skills/docx/scripts/templates/people.xml +3 -0
  251. package/skills/docx/scripts/utilities.py +374 -0
  252. package/skills/flutter-conventions/SKILL.md +70 -0
  253. package/skills/go-conventions/SKILL.md +230 -0
  254. package/skills/harmony-conventions/SKILL.md +156 -0
  255. package/skills/java-conventions/SKILL.md +277 -0
  256. package/skills/pdf/LICENSE.txt +30 -0
  257. package/skills/pdf/SKILL.md +297 -0
  258. package/skills/pdf/forms.md +205 -0
  259. package/skills/pdf/reference.md +612 -0
  260. package/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  261. package/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  262. package/skills/pdf/scripts/check_fillable_fields.py +12 -0
  263. package/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  264. package/skills/pdf/scripts/create_validation_image.py +41 -0
  265. package/skills/pdf/scripts/extract_form_field_info.py +152 -0
  266. package/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  267. package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  268. package/skills/pptx/LICENSE.txt +30 -0
  269. package/skills/pptx/SKILL.md +487 -0
  270. package/skills/pptx/html2pptx.md +625 -0
  271. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  272. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  273. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  274. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  275. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  276. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  277. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  278. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  279. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  280. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  281. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  282. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  283. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  284. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  285. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  286. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  287. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  288. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  289. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  290. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  291. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  292. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  293. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  294. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  295. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  296. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  297. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  298. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  299. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  300. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  301. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  302. package/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  303. package/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  304. package/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  305. package/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  306. package/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  307. package/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  308. package/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  309. package/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  310. package/skills/pptx/ooxml/scripts/pack.py +159 -0
  311. package/skills/pptx/ooxml/scripts/unpack.py +29 -0
  312. package/skills/pptx/ooxml/scripts/validate.py +69 -0
  313. package/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  314. package/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  315. package/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  316. package/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  317. package/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  318. package/skills/pptx/ooxml.md +427 -0
  319. package/skills/pptx/scripts/html2pptx.js +979 -0
  320. package/skills/pptx/scripts/inventory.py +1020 -0
  321. package/skills/pptx/scripts/rearrange.py +231 -0
  322. package/skills/pptx/scripts/replace.py +385 -0
  323. package/skills/pptx/scripts/thumbnail.py +450 -0
  324. package/skills/project-analyze/SKILL.md +270 -0
  325. package/skills/project-analyze/phases/phase0-discovery.md +278 -0
  326. package/skills/project-analyze/phases/phase0.5-prescan.md +139 -0
  327. package/skills/project-analyze/phases/phase1-inventory.md +94 -0
  328. package/skills/project-analyze/phases/phase2-deep-analysis.md +249 -0
  329. package/skills/project-analyze/phases/phase2a-l4-analysis.md +94 -0
  330. package/skills/project-analyze/phases/phase2b-l5-analysis.md +97 -0
  331. package/skills/project-analyze/phases/phase3-knowledge-graph.md +120 -0
  332. package/skills/project-analyze/phases/phase3a-multi-dimensional.md +61 -0
  333. package/skills/project-analyze/phases/phase4-code-quality.md +81 -0
  334. package/skills/project-analyze/phases/phase5-synthesis.md +284 -0
  335. package/skills/project-analyze/phases/phase6-validation.md +179 -0
  336. package/skills/project-analyze/prompts/code-review-agent.md +122 -0
  337. package/skills/project-analyze/prompts/deep-analysis-agent.md +107 -0
  338. package/skills/project-analyze/prompts/inventory-agent.md +67 -0
  339. package/skills/project-analyze/prompts/l4-analysis-agent.md +98 -0
  340. package/skills/project-analyze/rules/android.md +282 -0
  341. package/skills/project-analyze/rules/devops.md +443 -0
  342. package/skills/project-analyze/rules/generic.md +243 -0
  343. package/skills/project-analyze/rules/go.md +289 -0
  344. package/skills/project-analyze/rules/harmony.md +257 -0
  345. package/skills/project-analyze/rules/java.md +507 -0
  346. package/skills/project-analyze/rules/mobile-flutter.md +315 -0
  347. package/skills/project-analyze/rules/mobile-react-native.md +283 -0
  348. package/skills/project-analyze/rules/mobile-swift.md +323 -0
  349. package/skills/project-analyze/rules/python.md +317 -0
  350. package/skills/project-analyze/rules/rust-tauri.md +243 -0
  351. package/skills/project-analyze/rules/rust.md +296 -0
  352. package/skills/project-analyze/rules/web-nextjs.md +364 -0
  353. package/skills/project-analyze/rules/web-react.md +298 -0
  354. package/skills/project-analyze/rules/web-vue.md +378 -0
  355. package/skills/project-analyze/rules/web.md +390 -0
  356. package/skills/project-query/SKILL.md +224 -0
  357. package/skills/project-query/rules/query-templates.md +212 -0
  358. package/skills/python-conventions/SKILL.md +169 -0
  359. package/skills/react-native-conventions/SKILL.md +73 -0
  360. package/skills/requirements-writer/README.md +153 -0
  361. package/skills/requirements-writer/SKILL.md +341 -0
  362. package/skills/requirements-writer/examples/prd-outline-example.md +217 -0
  363. package/skills/requirements-writer/templates/module-prd-template.md +362 -0
  364. package/skills/requirements-writer/templates/prd-outline-template.md +185 -0
  365. package/skills/requirements-writer/templates/user-story-template.md +1125 -0
  366. package/skills/rust-conventions/SKILL.md +361 -0
  367. package/skills/smart-dispatch/SKILL.md +296 -0
  368. package/skills/smart-dispatch/implementer-prompt.md +146 -0
  369. package/skills/smart-dispatch/reviewer-prompt.md +199 -0
  370. package/skills/software-architecture/SKILL.md +278 -0
  371. package/skills/swift-conventions/SKILL.md +72 -0
  372. package/skills/ui-ux-pro/SKILL.md +140 -0
  373. package/skills/verification-before-completion/SKILL.md +119 -0
  374. package/skills/web-conventions/SKILL.md +259 -0
  375. package/skills/webapp-testing/LICENSE.txt +202 -0
  376. package/skills/webapp-testing/SKILL.md +97 -0
  377. package/skills/webapp-testing/examples/console_logging.py +35 -0
  378. package/skills/webapp-testing/examples/element_discovery.py +40 -0
  379. package/skills/webapp-testing/examples/static_html_automation.py +33 -0
  380. package/skills/webapp-testing/scripts/with_server.py +106 -0
  381. package/skills/writing-plans/SKILL.md +144 -0
  382. package/skills/xlsx/LICENSE.txt +30 -0
  383. package/skills/xlsx/SKILL.md +292 -0
  384. package/skills/xlsx/recalc.py +178 -0
  385. package/templates/CLAUDE.md.android +57 -0
  386. package/templates/CLAUDE.md.devops +50 -0
  387. package/templates/CLAUDE.md.generic +34 -0
  388. package/templates/CLAUDE.md.go +67 -0
  389. package/templates/CLAUDE.md.harmony +54 -0
  390. package/templates/CLAUDE.md.java +56 -0
  391. package/templates/CLAUDE.md.mobile-flutter +38 -0
  392. package/templates/CLAUDE.md.mobile-react-native +37 -0
  393. package/templates/CLAUDE.md.mobile-swift +40 -0
  394. package/templates/CLAUDE.md.python +65 -0
  395. package/templates/CLAUDE.md.rust +68 -0
  396. package/templates/CLAUDE.md.rust-tauri +120 -0
  397. package/templates/CLAUDE.md.web +63 -0
  398. package/templates/COMPONENT.md.android +58 -0
  399. package/templates/COMPONENT.md.devops +54 -0
  400. package/templates/COMPONENT.md.generic +35 -0
  401. package/templates/COMPONENT.md.go +59 -0
  402. package/templates/COMPONENT.md.harmony +63 -0
  403. package/templates/COMPONENT.md.java +69 -0
  404. package/templates/COMPONENT.md.mobile-flutter +56 -0
  405. package/templates/COMPONENT.md.mobile-react-native +55 -0
  406. package/templates/COMPONENT.md.mobile-swift +56 -0
  407. package/templates/COMPONENT.md.python +67 -0
  408. package/templates/COMPONENT.md.rust +57 -0
  409. package/templates/COMPONENT.md.rust-tauri +66 -0
  410. package/templates/COMPONENT.md.web +39 -0
  411. package/templates/README.md.android +71 -0
  412. package/templates/README.md.devops +68 -0
  413. package/templates/README.md.generic +39 -0
  414. package/templates/README.md.go +70 -0
  415. package/templates/README.md.harmony +72 -0
  416. package/templates/README.md.java +73 -0
  417. package/templates/README.md.mobile-flutter +69 -0
  418. package/templates/README.md.mobile-react-native +65 -0
  419. package/templates/README.md.mobile-swift +69 -0
  420. package/templates/README.md.monorepo +59 -0
  421. package/templates/README.md.python +66 -0
  422. package/templates/README.md.rust +69 -0
  423. package/templates/README.md.rust-tauri +149 -0
  424. package/templates/README.md.web +94 -0
  425. package/templates/UI_STYLE.md.android +74 -0
  426. package/templates/UI_STYLE.md.devops +50 -0
  427. package/templates/UI_STYLE.md.generic +31 -0
  428. package/templates/UI_STYLE.md.go +49 -0
  429. package/templates/UI_STYLE.md.harmony +71 -0
  430. package/templates/UI_STYLE.md.java +61 -0
  431. package/templates/UI_STYLE.md.mobile-flutter +70 -0
  432. package/templates/UI_STYLE.md.mobile-react-native +71 -0
  433. package/templates/UI_STYLE.md.mobile-swift +71 -0
  434. package/templates/UI_STYLE.md.python +58 -0
  435. package/templates/UI_STYLE.md.rust +52 -0
  436. package/templates/UI_STYLE.md.rust-tauri +102 -0
  437. package/templates/UI_STYLE.md.web +92 -0
  438. package/templates/cursor-rules.android.mdc +33 -0
  439. package/templates/cursor-rules.devops.mdc +32 -0
  440. package/templates/cursor-rules.generic.mdc +25 -0
  441. package/templates/cursor-rules.go.mdc +34 -0
  442. package/templates/cursor-rules.harmony.mdc +30 -0
  443. package/templates/cursor-rules.java.mdc +30 -0
  444. package/templates/cursor-rules.mobile-flutter.mdc +42 -0
  445. package/templates/cursor-rules.mobile-react-native.mdc +43 -0
  446. package/templates/cursor-rules.mobile-swift.mdc +42 -0
  447. package/templates/cursor-rules.python.mdc +33 -0
  448. package/templates/cursor-rules.rust-tauri.mdc +67 -0
  449. package/templates/cursor-rules.rust.mdc +30 -0
  450. package/templates/cursor-rules.web.mdc +30 -0
  451. package/templates/kiro-steering.android.md +39 -0
  452. package/templates/kiro-steering.devops.md +32 -0
  453. package/templates/kiro-steering.generic.md +28 -0
  454. package/templates/kiro-steering.go.md +41 -0
  455. package/templates/kiro-steering.harmony.md +36 -0
  456. package/templates/kiro-steering.java.md +37 -0
  457. package/templates/kiro-steering.mobile-flutter.md +73 -0
  458. package/templates/kiro-steering.mobile-react-native.md +71 -0
  459. package/templates/kiro-steering.mobile-swift.md +62 -0
  460. package/templates/kiro-steering.python.md +34 -0
  461. package/templates/kiro-steering.rust-tauri.md +50 -0
  462. package/templates/kiro-steering.rust.md +36 -0
  463. package/templates/kiro-steering.web.md +41 -0
@@ -0,0 +1,140 @@
1
+ ---
2
+ name: ui-ux-pro
3
+ description: Expert UI/UX design skill for creating beautiful, user-friendly interfaces. Provides guidance on design principles, accessibility, component selection, color theory, typography, and responsive design best practices.
4
+ version: 1.0.0
5
+ ---
6
+
7
+ # UI/UX Pro
8
+
9
+ This skill provides expert UI/UX design guidance for creating professional, user-friendly interfaces.
10
+
11
+ ## When to Use
12
+
13
+ Use this skill when:
14
+ - Designing or reviewing user interfaces
15
+ - Making design system decisions
16
+ - Choosing colors, typography, or layouts
17
+ - Ensuring accessibility compliance
18
+ - Creating responsive designs
19
+ - Building component libraries
20
+
21
+ ## Core Principles
22
+
23
+ ### 1. User-First Design
24
+ - Understand user needs before designing
25
+ - Create clear user flows
26
+ - Prioritize content hierarchy
27
+ - Design for the target audience
28
+
29
+ ### 2. Visual Hierarchy
30
+ - Use size, color, and spacing to guide attention
31
+ - Establish clear focal points
32
+ - Group related elements
33
+ - Create breathing room with whitespace
34
+
35
+ ### 3. Consistency
36
+ - Maintain design system coherence
37
+ - Use consistent spacing scales
38
+ - Keep typography predictable
39
+ - Reuse component patterns
40
+
41
+ ### 4. Accessibility (A11y)
42
+ - Ensure WCAG 2.1 AA compliance minimum
43
+ - Color contrast ratio: 4.5:1 for text, 3:1 for UI components
44
+ - Support keyboard navigation
45
+ - Provide meaningful alt text
46
+ - Test with screen readers
47
+
48
+ ## Design Guidelines
49
+
50
+ ### Color
51
+ - **Primary**: Use for main actions and branding
52
+ - **Secondary**: Use for supporting actions
53
+ - **Neutral**: Use for text, backgrounds, borders
54
+ - **Semantic**: Use for states (success, error, warning, info)
55
+ - **Dark mode**: Always provide dark mode support
56
+
57
+ ### Typography
58
+ - **Font size**: Minimum 16px for body text
59
+ - **Line height**: 1.5 for body, 1.2 for headings
60
+ - **Font weights**: Use 400-600 for most text
61
+ - **Max width**: 60-75 characters per line for readability
62
+
63
+ ### Spacing
64
+ - Use 8px base grid (8, 16, 24, 32, 48, 64)
65
+ - Maintain consistent vertical rhythm
66
+ - Provide adequate touch targets (44x44px minimum)
67
+ - Group related elements with proximity
68
+
69
+ ### Layout
70
+ - **Mobile-first**: Design for smallest screens first
71
+ - **Breakpoints**: 640px, 768px, 1024px, 1280px, 1536px
72
+ - **Containers**: Max-width 1280px-1536px for content
73
+ - **Grid**: Use 12-column grid for complex layouts
74
+
75
+ ## Component Best Practices
76
+
77
+ ### Buttons
78
+ - Clear, action-oriented labels
79
+ - Primary/Secondary/Ghost variants
80
+ - Loading and disabled states
81
+ - Consistent sizing (sm, md, lg)
82
+
83
+ ### Forms
84
+ - Label every input clearly
85
+ - Show validation inline
86
+ - Group related fields
87
+ - Use appropriate input types
88
+
89
+ ### Navigation
90
+ - Keep it simple and scannable
91
+ - Highlight current location
92
+ - Mobile: hamburger or bottom nav
93
+ - Desktop: horizontal or sidebar
94
+
95
+ ### Cards
96
+ - Clear content hierarchy
97
+ - Consistent padding
98
+ - Subtle shadows or borders
99
+ - Hover/focus states
100
+
101
+ ## Responsive Design Checklist
102
+
103
+ - [ ] Works on 320px width (small phones)
104
+ - [ ] Touch targets are 44x44px minimum
105
+ - [ ] Font sizes scale appropriately
106
+ - [ ] Images are responsive
107
+ - [ ] Navigation adapts to screen size
108
+ - [ ] No horizontal scrolling
109
+ - [ ] Content is readable without zoom
110
+
111
+ ## Tools & Resources
112
+
113
+ - **Colors**: Adobe Color, Coolors, ColorHunt
114
+ - **Typography**: Google Fonts, Font Pair
115
+ - **Icons**: Lucide, Heroicons, Phosphor
116
+ - **Inspiration**: Dribbble, Behance, Mobbin
117
+ - **Testing**: Lighthouse, WAVE, axe DevTools
118
+
119
+ ## Design Review Questions
120
+
121
+ 1. Is the purpose of this screen immediately clear?
122
+ 2. Can users complete their primary task in 3 clicks or less?
123
+ 3. Is the visual hierarchy obvious?
124
+ 4. Would this work for users with color blindness?
125
+ 5. Does it work on a 320px wide screen?
126
+ 6. Are error messages helpful and actionable?
127
+ 7. Is the loading experience graceful?
128
+
129
+ ## Common Mistakes to Avoid
130
+
131
+ - Using placeholder text (Lorem ipsum) in final designs
132
+ - Inconsistent spacing
133
+ - Poor color contrast
134
+ - Too many font families
135
+ - Ignoring empty states
136
+ - Missing error handling UI
137
+ - No loading states
138
+ - Overusing animations
139
+ - Cluttered interfaces
140
+ - Hidden important actions
@@ -0,0 +1,119 @@
1
+ ---
2
+ name: verification-before-completion
3
+ description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs. Extends superpowers:verification-before-completion with documentation freshness verification.
4
+ version: 0.1.0
5
+ ---
6
+
7
+ # Verification Before Completion (aTool Enhanced)
8
+
9
+ This skill extends `superpowers:verification-before-completion` with **documentation freshness checks**.
10
+
11
+ **Use the superpowers:verification-before-completion skill as the base**, then apply these additions:
12
+
13
+ ## Enhancement: Documentation Freshness Gate
14
+
15
+ **BEFORE claiming any task or feature is complete**, verify documentation is in sync with code changes.
16
+
17
+ ### The Documentation Gate Function
18
+
19
+ ```
20
+ BEFORE claiming completion:
21
+
22
+ 1. LIST: What source files did you create or modify?
23
+ 2. CHECK: Which documentation files reference those source files?
24
+ - README.md (architecture, structure, tech stack)
25
+ - COMPONENT.md (component API, usage examples)
26
+ - UI_STYLE.md (UI patterns, design tokens)
27
+ - docs/ (module knowledge base)
28
+ 3. COMPARE: Is each doc file at least as recent as the source files it describes?
29
+ - If source file mtime > doc file mtime → documentation is STALE
30
+ 4. VERIFY: Have all stale docs been updated to reflect changes?
31
+ - If NO → Update docs first, THEN claim completion
32
+ - If YES → Claim completion WITH evidence
33
+ ```
34
+
35
+ ### Common Failures (Documentation)
36
+
37
+ | Claim | Requires | Not Sufficient |
38
+ |-------|----------|----------------|
39
+ | "Docs updated" | Actually edited the doc files | "No doc changes needed" without checking |
40
+ | "No doc impact" | Verified each doc file is unaffected | Assumed no impact without checking |
41
+ | "README reflects changes" | README mtime >= source mtime | "README was already correct" |
42
+ | "Feature complete" | Code + tests + docs all pass | Code + tests only |
43
+
44
+ ### Red Flags - STOP
45
+
46
+ - Claiming "no documentation update needed" without listing affected docs
47
+ - Skipping doc check because "changes are minor"
48
+ - Moving to next task without verifying docs are fresh
49
+ - Committing code without committing corresponding doc updates
50
+
51
+ ### How To Check Documentation Freshness
52
+
53
+ **Method 1: Use the doc-sync-reminder hook**
54
+ If the ATOOL-DOC-SYNC-REMINDER appears, documentation is stale. Update it before claiming completion.
55
+
56
+ **Method 2: Manual check**
57
+ ```bash
58
+ # Check if any source files are newer than README.md
59
+ find src/ -newer README.md -type f | head -5
60
+
61
+ # Check if any source files are newer than COMPONENT.md
62
+ find src/ -newer COMPONENT.md -type f | head -5
63
+ ```
64
+
65
+ **Method 3: For projects with aTool analysis**
66
+ Check the ATOOL-PROJECT-CONTEXT in the session for "X source files modified after README.md" warnings.
67
+
68
+ ### Completion Claim Template
69
+
70
+ When claiming completion, include documentation evidence:
71
+
72
+ ```
73
+ ✅ Tests: [command] → [output showing pass]
74
+ ✅ Build: [command] → [exit 0]
75
+ ✅ Docs: README.md §Architecture updated, COMPONENT.md §API updated, docs/ unchanged (verified)
76
+ ```
77
+
78
+ Or if docs genuinely don't need updates:
79
+
80
+ ```
81
+ ✅ Tests: [command] → [output showing pass]
82
+ ✅ Build: [command] → [exit 0]
83
+ ✅ Docs: Checked README.md, COMPONENT.md, UI_STYLE.md — no sections reference changed files (verified)
84
+ ```
85
+
86
+ ## Enhancement: Code Quality Gate
87
+
88
+ **BEFORE claiming completion, for files modified in this task:**
89
+
90
+ ### The Code Quality Gate Function
91
+
92
+ ```
93
+ BEFORE claiming completion (after documentation check):
94
+
95
+ 1. CHECK: Run code-review lightweight analysis on changed files
96
+ 2. IDENTIFY: Any Critical-severity issues?
97
+ - Hardcoded secrets, SQL injection, empty catch blocks, unreachable code
98
+ 3. RESOLVE:
99
+ - Critical issues found → MUST fix before claiming completion
100
+ - Warning issues found → LIST in completion report, recommend fixing
101
+ - Info issues → Note for future improvement
102
+ ```
103
+
104
+ ### Code Quality Red Flags - STOP
105
+
106
+ - Claiming "code looks fine" without checking against review rules
107
+ - Ignoring hardcoded secrets or SQL injection patterns
108
+ - Skipping quality check because "changes are minor"
109
+ - Moving to next task with known Critical issues
110
+
111
+ ### Completion Claim Template (Updated)
112
+
113
+ ```
114
+ ✅ Tests: [command] → [output showing pass]
115
+ ✅ Build: [command] → [exit 0]
116
+ ✅ Docs: [documentation evidence]
117
+ ✅ Code Quality: No Critical issues in changed files (verified)
118
+ Warnings: [count] ([list briefly, or "none"])
119
+ ```
@@ -0,0 +1,259 @@
1
+ ---
2
+ name: web-conventions
3
+ description: Use when writing, reviewing, or refactoring frontend code — applies project structure, JavaScript style, JSDoc, React, Vue, Svelte, HTML, CSS/Less, and TypeScript conventions.
4
+ version: 1.0.0
5
+ category: conventions
6
+ ---
7
+
8
+ # Web Development Conventions
9
+
10
+ Use this skill when working on web applications (React, Next.js, Vue, Svelte) or plain JavaScript/HTML/CSS projects.
11
+
12
+ ## When to Use
13
+ - Detected web project (package.json with react/next/vue/svelte)
14
+ - Writing, reviewing, or refactoring frontend code
15
+ - Asking about web framework best practices
16
+
17
+ If the repository already has stricter local lint rules, follow the stricter rule.
18
+
19
+ ---
20
+
21
+ ## Core Behavior
22
+
23
+ Before writing code:
24
+ 1. Infer whether the task is for a business project, shared package, React module, Vue page, or plain JS/HTML/CSS.
25
+ 2. Keep directory structure **business-oriented**, not resource-type-oriented.
26
+ 3. Match the existing framework and module style already used in the codebase.
27
+ 4. Prefer readable, maintainable code over framework tricks.
28
+
29
+ After writing code, run a mental lint pass against the self-check checklist at the end of this skill.
30
+
31
+ ---
32
+
33
+ ## Project and Directory Structure
34
+
35
+ - Directories must be organized by **function / business domain**, not by resource type at root.
36
+ - Common root directories: `src`, `test`, `doc`, `dep`; optionally `tool`, `entry`.
37
+ - **Do not** place resource-type directories (`js`, `css`, `img`) directly under project root.
38
+ - In business projects, `src` contains business directories and `common` only.
39
+ - `common` is reserved for shared business resources.
40
+ - JS source files in `src` must be organized by business logic — not placed under a `src/js/` subdirectory.
41
+ - Directory names: concise and singular (`src` not `source`, `img` not `images`, `css` not `styles`).
42
+ - Shared images across pages: `src/common/img/`; page-specific or CSS-referenced images: local `./img/`.
43
+
44
+ ---
45
+
46
+ ## TypeScript
47
+
48
+ - Use TypeScript for all new files.
49
+ - Define interfaces/types for props, state, and API responses.
50
+ - Avoid `any` — use `unknown` and type narrowing.
51
+ - Prefer `interface` for object shapes, `type` for unions.
52
+
53
+ ---
54
+
55
+ ## JavaScript Formatting
56
+
57
+ - Encoding: UTF-8 without BOM; trailing newline at end of file.
58
+ - Indentation: **4 spaces** — never 2 spaces, never tabs.
59
+ - `case` / `default` in `switch`: indented one level inside `switch`.
60
+ - Binary operators: spaces on both sides.
61
+ - Unary operators: no space between operator and operand.
62
+ - Space required before `{` that starts a block.
63
+ - Keywords (`if`, `else`, `for`, `while`, `function`, `switch`, `do`, `try`, `catch`, `finally`) followed by a space.
64
+ - No space between function name and `(` in declaration, expression, or call.
65
+ - Object literal `:` — no space before, one space after.
66
+ - No spaces before `,` or `;`; one space after (when not at end of line).
67
+ - No spaces just inside `()` or `[]`.
68
+ - No trailing whitespace.
69
+ - End every statement with `;`.
70
+ - Keep line length within 120 characters; when breaking, put operator at the start of the new line.
71
+ - Separate different logical blocks with blank lines.
72
+
73
+ ---
74
+
75
+ ## JavaScript Naming
76
+
77
+ | Entity | Convention | Example |
78
+ |--------|-----------|---------|
79
+ | Variables | `camelCase` | `userData` |
80
+ | Functions | `camelCase` (verb-object) | `fetchUserList` |
81
+ | Classes | `PascalCase` | `UserService` |
82
+ | Constants | `UPPER_SNAKE_CASE` | `MAX_RETRY_COUNT` |
83
+ | Enums (object) | `PascalCase` | `UserStatus` |
84
+ | Enum members | `UPPER_SNAKE_CASE` | `UserStatus.ACTIVE` |
85
+ | Namespaces | `camelCase` | `userModule` |
86
+ | Boolean vars | prefix `is` / `has` | `isLoading`, `hasError` |
87
+ | Promise vars | progressive verb-object | `loadingData` |
88
+
89
+ Acronyms respect surrounding style: `XMLParser`, `insertHTML`, `HTTPRequest`.
90
+
91
+ ---
92
+
93
+ ## JSDoc and Comments
94
+
95
+ The following **must** use `/** ... */` doc comments:
96
+ - File, namespace, class, function/method, class property, event, global variable, constant, AMD module.
97
+
98
+ Rules:
99
+ - Single-line comments on their own line, using `// `.
100
+ - Avoid `/* ... */` block comments; prefer multiple `// ` lines.
101
+ - Leave one blank line before a doc comment.
102
+ - Document intent and guarantees, not implementation trivia.
103
+ - `@param` and `@return` require type and description.
104
+ - Use lowercase primitive type names: `{string}`, `{number}`, `{boolean}`.
105
+ - For object parameters, document each field with a separate `@param`.
106
+
107
+ ---
108
+
109
+ ## Module and Loader Rules
110
+
111
+ - AMD-style modules: `define(factory)` — do not specify explicit `moduleId` and `dependencies` unless the project already requires it.
112
+ - Prefer returning the module object from `factory`.
113
+ - In global runtime: async `require([...], callback)`.
114
+ - Inside module definitions: use local `require`, not global `require`.
115
+ - Reusable package internals must use relative module ids.
116
+ - Static dependency plugins (css/tpl/js) should be required at the start of the factory.
117
+
118
+ ---
119
+
120
+ ## Components
121
+
122
+ - Functional components only (no class components for new code).
123
+ - Single responsibility — one component, one purpose.
124
+ - Co-locate related files (component, styles, tests, types).
125
+ - Use barrel exports (`index.ts`) for module public API.
126
+ - Default export the main component; named exports for utilities.
127
+
128
+ ---
129
+
130
+ ## React / Next.js
131
+
132
+ ### Hooks
133
+ - Custom hooks for reusable logic (`useAuth`, `useDebounce`).
134
+ - `useCallback` for event handlers passed as props.
135
+ - `useMemo` for expensive computations.
136
+ - `useRef` for mutable values that don't trigger re-renders.
137
+
138
+ ### State Management
139
+ - Local state first (`useState`, `useReducer`).
140
+ - Lift state to the lowest common ancestor.
141
+ - Context for widely shared state.
142
+ - External libraries (Zustand, Redux Toolkit) for complex state.
143
+
144
+ ### Component Rules (React)
145
+ - Component names: `PascalCase`; must match file name.
146
+ - Higher-order components: `camelCase`, preferably `withXxx` or `xxxable` style.
147
+ - Callback props: `onXxx` naming.
148
+ - Event handler methods inside components: use business-meaningful names, not `onXxx`.
149
+
150
+ ### Next.js Specific
151
+ - App Router (not Pages Router) for new projects.
152
+ - Server Components by default; Client Components when needed.
153
+ - Use `loading.tsx` for Suspense boundaries.
154
+ - Route handlers (`route.ts`) for API endpoints.
155
+ - Metadata API for SEO.
156
+
157
+ ---
158
+
159
+ ## Vue / Nuxt
160
+
161
+ ### Composition API
162
+ - Use `<script setup>` syntax.
163
+ - Composables (`use*` functions) for reusable logic.
164
+ - `ref` and `reactive` for reactive state; `computed` for derived state.
165
+ - `watch` / `watchEffect` for side effects.
166
+ - Vue component naming, props, methods, and views must be consistent and semantic.
167
+ - Keep Vue files organized: template, script, style in the project's preferred order.
168
+
169
+ ### Nuxt Specific
170
+ - Use auto-imports (no need to import composables).
171
+ - Server routes in `server/api/`.
172
+ - Use `useFetch` and `useAsyncData` for data fetching.
173
+ - Middleware in `middleware/`.
174
+
175
+ ---
176
+
177
+ ## Svelte / SvelteKit
178
+
179
+ - Use `$:` reactive declarations.
180
+ - Stores for shared state; actions for form handling.
181
+ - SvelteKit: file-based routing in `src/routes/`; load functions for data fetching; form actions for POST/PUT/DELETE; layouts in `+layout.svelte`.
182
+
183
+ ---
184
+
185
+ ## HTML Rules
186
+
187
+ - Valid DOCTYPE and UTF-8 encoding.
188
+ - Consistent indentation and wrapping.
189
+ - Semantic, readable tag and attribute naming.
190
+ - Include standard metadata: title, favicon, viewport where relevant.
191
+ - Form controls must have clear labels; buttons use appropriate element types.
192
+ - Consider accessibility for forms and interactive content.
193
+
194
+ ---
195
+
196
+ ## CSS / Less Rules
197
+
198
+ - 4-space indentation for standalone style files.
199
+ - No unnecessary spaces or excessively long lines.
200
+ - Keep selector and property ordering stable.
201
+ - Prefer concise properties and reasonable shorthand.
202
+ - **Avoid `!important`** unless there is clear justification.
203
+ - Use controlled `z-index` values — no arbitrary stacking escalation.
204
+ - Keep responsive and compatibility code explicit and minimal.
205
+ - In Less: keep imports, variables, nesting, mixins, and namespaces tidy and readable.
206
+
207
+ ---
208
+
209
+ ## Styling
210
+ - Use the project's established styling solution (Tailwind, CSS Modules, styled-components, etc.).
211
+ - Don't mix styling approaches within a project.
212
+ - Responsive design by default; follow a consistent spacing scale.
213
+
214
+ ---
215
+
216
+ ## Testing
217
+ - Component tests: Testing Library (`@testing-library/react`, `@testing-library/vue`, etc.).
218
+ - Unit tests: Vitest or Jest.
219
+ - E2E tests: Playwright or Cypress.
220
+ - Mock API calls in component tests; test user behavior, not implementation details.
221
+
222
+ ---
223
+
224
+ ## Performance
225
+ - Code splitting and lazy loading.
226
+ - Optimize images (next/image, vite-plugin-imagemin).
227
+ - Virtualize long lists.
228
+ - Debounce expensive operations.
229
+ - Use Web Workers for heavy computation.
230
+
231
+ ---
232
+
233
+ ## Self-Check Before Finalizing
234
+
235
+ 1. Is the directory placement business-oriented and consistent?
236
+ 2. Did I avoid putting business JS under `src/js/`?
237
+ 3. Are naming styles correct for variables, classes, constants, components, and props?
238
+ 4. Is indentation 4 spaces with no tabs?
239
+ 5. Are semicolons present?
240
+ 6. Are spaces around operators and after keywords correct?
241
+ 7. Are any lines needlessly over 120 characters?
242
+ 8. Are doc comments (`/** */`) present where required?
243
+ 9. If using AMD, did I use `define(factory)` and local `require`?
244
+ 10. For React, do component names match file names and export style?
245
+ 11. For Vue, are props/methods/views named clearly and consistently?
246
+ 12. Did I avoid unnecessary `!important`, random `z-index`, or messy nesting?
247
+ 13. Are shared and page-local images placed in the right directories?
248
+
249
+ ---
250
+
251
+ ## Review Output Format
252
+
253
+ When reviewing frontend code, group findings as:
254
+
255
+ - **Blocking violations** — structure and naming issues that must be fixed
256
+ - **Recommended improvements** — best practices not yet followed
257
+ - **Optional cleanups** — style or readability improvements
258
+
259
+ Always call out structure and naming issues before style nits.