@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,392 @@
1
+ ---
2
+ name: doc-coauthoring
3
+ description: Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
4
+ version: 1.0.0
5
+ ---
6
+
7
+ # Doc Co-Authoring Workflow
8
+
9
+ This skill provides a structured workflow for guiding users through collaborative document creation. Act as an active guide, walking users through three stages: Context Gathering, Refinement & Structure, and Reader Testing.
10
+
11
+ ## When to Offer This Workflow
12
+
13
+ **Trigger conditions:**
14
+ - User mentions writing documentation: "write a doc", "draft a proposal", "create a spec", "write up"
15
+ - User mentions specific doc types: "PRD", "design doc", "decision doc", "RFC"
16
+ - User seems to be starting a substantial writing task
17
+
18
+ **Initial offer:**
19
+ Offer the user a structured workflow for co-authoring the document. Explain the three stages:
20
+
21
+ 1. **Context Gathering**: User provides all relevant context while Claude asks clarifying questions
22
+ 2. **Refinement & Structure**: Iteratively build each section through brainstorming and editing
23
+ 3. **Reader Testing**: Test the doc with a fresh Claude (no context) to catch blind spots before others read it
24
+
25
+ Explain that this approach helps ensure the doc works well when others read it (including when they paste it into Claude). Ask if they want to try this workflow or prefer to work freeform.
26
+
27
+ If user declines, work freeform. If user accepts, proceed to Stage 1.
28
+
29
+ ## Stage 1: Context Gathering
30
+
31
+ **Goal:** Close the gap between what the user knows and what Claude knows, enabling smart guidance later.
32
+
33
+ ### Initial Questions
34
+
35
+ Start by asking the user for meta-context about the document:
36
+
37
+ 1. What type of document is this? (e.g., technical spec, decision doc, proposal)
38
+ 2. Who's the primary audience?
39
+ 3. What's the desired impact when someone reads this?
40
+ 4. Is there a template or specific format to follow?
41
+ 5. Any other constraints or context to know?
42
+
43
+ Inform them they can answer in shorthand or dump information however works best for them.
44
+
45
+ **If user provides a template or mentions a doc type:**
46
+ - Ask if they have a template document to share
47
+ - If they provide a link to a shared document, use the appropriate integration to fetch it
48
+ - If they provide a file, read it
49
+
50
+ **If user mentions editing an existing shared document:**
51
+ - Use the appropriate integration to read the current state
52
+ - Check for images without alt-text
53
+ - If images exist without alt-text, explain that when others use Claude to understand the doc, Claude won't be able to see them. Ask if they want alt-text generated. If so, request they paste each image into chat for descriptive alt-text generation.
54
+
55
+ ### Info Dumping
56
+
57
+ Once initial questions are answered, encourage the user to dump all the context they have. Request information such as:
58
+ - Background on the project/problem
59
+ - Related team discussions or shared documents
60
+ - Why alternative solutions aren't being used
61
+ - Organizational context (team dynamics, past incidents, politics)
62
+ - Timeline pressures or constraints
63
+ - Technical architecture or dependencies
64
+ - Stakeholder concerns
65
+
66
+ ### Tech-Stack Detection
67
+
68
+ If the document involves technical content (API definitions, architecture descriptions, data models, code examples):
69
+
70
+ 1. **Detect project tech stack** — check for `CLAUDE.md`, `package.json`, `pom.xml`, `Cargo.toml`, `go.mod`, etc. to determine the stack
71
+ 2. **Load conventions skill** — identify the corresponding `{stack}-conventions` skill (e.g., `java-conventions`, `web-conventions`, `python-conventions`) for terminology and pattern reference
72
+ 3. **Load architecture skill if needed** — for architecture/design documents, reference `software-architecture` skill for pattern validation
73
+ 4. **Apply to content** — when drafting technical sections, ensure naming conventions, layering patterns, and code examples align with the conventions skill's rules
74
+
75
+ This ensures technical documentation uses correct terminology, follows established patterns, and is consistent with the project's actual conventions.
76
+
77
+ Advise them not to worry about organizing it - just get it all out. Offer multiple ways to provide context:
78
+ - Info dump stream-of-consciousness
79
+ - Point to team channels or threads to read
80
+ - Link to shared documents
81
+
82
+ **If integrations are available** (e.g., Slack, Teams, Google Drive, SharePoint, or other MCP servers), mention that these can be used to pull in context directly.
83
+
84
+ **If no integrations are detected and in Claude.ai or Claude app:** Suggest they can enable connectors in their Claude settings to allow pulling context from messaging apps and document storage directly.
85
+
86
+ Inform them clarifying questions will be asked once they've done their initial dump.
87
+
88
+ **During context gathering:**
89
+
90
+ - If user mentions team channels or shared documents:
91
+ - If integrations available: Inform them the content will be read now, then use the appropriate integration
92
+ - If integrations not available: Explain lack of access. Suggest they enable connectors in Claude settings, or paste the relevant content directly.
93
+
94
+ - If user mentions entities/projects that are unknown:
95
+ - Ask if connected tools should be searched to learn more
96
+ - Wait for user confirmation before searching
97
+
98
+ - As user provides context, track what's being learned and what's still unclear
99
+
100
+ **Asking clarifying questions:**
101
+
102
+ When user signals they've done their initial dump (or after substantial context provided), ask clarifying questions to ensure understanding:
103
+
104
+ Generate 5-10 numbered questions based on gaps in the context.
105
+
106
+ Inform them they can use shorthand to answer (e.g., "1: yes, 2: see #channel, 3: no because backwards compat"), link to more docs, point to channels to read, or just keep info-dumping. Whatever's most efficient for them.
107
+
108
+ **Exit condition:**
109
+ Sufficient context has been gathered when questions show understanding - when edge cases and trade-offs can be asked about without needing basics explained.
110
+
111
+ **Transition:**
112
+ Ask if there's any more context they want to provide at this stage, or if it's time to move on to drafting the document.
113
+
114
+ If user wants to add more, let them. When ready, proceed to Stage 2.
115
+
116
+ ## Stage 2: Refinement & Structure
117
+
118
+ **Goal:** Build the document section by section through brainstorming, curation, and iterative refinement.
119
+
120
+ **Instructions to user:**
121
+ Explain that the document will be built section by section. For each section:
122
+ 1. Clarifying questions will be asked about what to include
123
+ 2. 5-20 options will be brainstormed
124
+ 3. User will indicate what to keep/remove/combine
125
+ 4. The section will be drafted
126
+ 5. It will be refined through surgical edits
127
+
128
+ Start with whichever section has the most unknowns (usually the core decision/proposal), then work through the rest.
129
+
130
+ **Section ordering:**
131
+
132
+ If the document structure is clear:
133
+ Ask which section they'd like to start with.
134
+
135
+ Suggest starting with whichever section has the most unknowns. For decision docs, that's usually the core proposal. For specs, it's typically the technical approach. Summary sections are best left for last.
136
+
137
+ If user doesn't know what sections they need:
138
+ Based on the type of document and template, suggest 3-5 sections appropriate for the doc type.
139
+
140
+ Ask if this structure works, or if they want to adjust it.
141
+
142
+ **Once structure is agreed:**
143
+
144
+ Create the initial document structure with placeholder text for all sections.
145
+
146
+ **If access to artifacts is available:**
147
+ Use `create_file` to create an artifact. This gives both Claude and the user a scaffold to work from.
148
+
149
+ Inform them that the initial structure with placeholders for all sections will be created.
150
+
151
+ Create artifact with all section headers and brief placeholder text like "[To be written]" or "[Content here]".
152
+
153
+ Provide the scaffold link and indicate it's time to fill in each section.
154
+
155
+ **If no access to artifacts:**
156
+ Create a markdown file in the working directory. Name it appropriately (e.g., `decision-doc.md`, `technical-spec.md`).
157
+
158
+ Inform them that the initial structure with placeholders for all sections will be created.
159
+
160
+ Create file with all section headers and placeholder text.
161
+
162
+ Confirm the filename has been created and indicate it's time to fill in each section.
163
+
164
+ **For each section:**
165
+
166
+ ### Step 1: Clarifying Questions
167
+
168
+ Announce work will begin on the [SECTION NAME] section. Ask 5-10 clarifying questions about what should be included:
169
+
170
+ Generate 5-10 specific questions based on context and section purpose.
171
+
172
+ Inform them they can answer in shorthand or just indicate what's important to cover.
173
+
174
+ ### Step 2: Brainstorming
175
+
176
+ For the [SECTION NAME] section, brainstorm [5-20] things that might be included, depending on the section's complexity. Look for:
177
+ - Context shared that might have been forgotten
178
+ - Angles or considerations not yet mentioned
179
+
180
+ Generate 5-20 numbered options based on section complexity. At the end, offer to brainstorm more if they want additional options.
181
+
182
+ ### Step 3: Curation
183
+
184
+ Ask which points should be kept, removed, or combined. Request brief justifications to help learn priorities for the next sections.
185
+
186
+ Provide examples:
187
+ - "Keep 1,4,7,9"
188
+ - "Remove 3 (duplicates 1)"
189
+ - "Remove 6 (audience already knows this)"
190
+ - "Combine 11 and 12"
191
+
192
+ **If user gives freeform feedback** (e.g., "looks good" or "I like most of it but...") instead of numbered selections, extract their preferences and proceed. Parse what they want kept/removed/changed and apply it.
193
+
194
+ ### Step 4: Gap Check
195
+
196
+ Based on what they've selected, ask if there's anything important missing for the [SECTION NAME] section.
197
+
198
+ ### Step 5: Drafting
199
+
200
+ Use `str_replace` to replace the placeholder text for this section with the actual drafted content.
201
+
202
+ **Technical Content Validation:** When drafting sections containing technical content (API definitions, architecture diagrams, data models, code examples):
203
+ - Cross-reference against the project's `{stack}-conventions` skill for naming conventions and patterns
204
+ - Verify architectural claims against `software-architecture` skill's principles when relevant
205
+ - Ensure code examples follow the conventions skill's formatting and style rules
206
+
207
+ Announce the [SECTION NAME] section will be drafted now based on what they've selected.
208
+
209
+ **If using artifacts:**
210
+ After drafting, provide a link to the artifact.
211
+
212
+ Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
213
+
214
+ **If using a file (no artifacts):**
215
+ After drafting, confirm completion.
216
+
217
+ Inform them the [SECTION NAME] section has been drafted in [filename]. Ask them to read through it and indicate what to change. Note that being specific helps learning for the next sections.
218
+
219
+ **Key instruction for user (include when drafting the first section):**
220
+ Provide a note: Instead of editing the doc directly, ask them to indicate what to change. This helps learning of their style for future sections. For example: "Remove the X bullet - already covered by Y" or "Make the third paragraph more concise".
221
+
222
+ ### Step 6: Iterative Refinement
223
+
224
+ As user provides feedback:
225
+ - Use `str_replace` to make edits (never reprint the whole doc)
226
+ - **If using artifacts:** Provide link to artifact after each edit
227
+ - **If using files:** Just confirm edits are complete
228
+ - If user edits doc directly and asks to read it: mentally note the changes they made and keep them in mind for future sections (this shows their preferences)
229
+
230
+ **Continue iterating** until user is satisfied with the section.
231
+
232
+ ### Quality Checking
233
+
234
+ After 3 consecutive iterations with no substantial changes, ask if anything can be removed without losing important information.
235
+
236
+ When section is done, confirm [SECTION NAME] is complete. Ask if ready to move to the next section.
237
+
238
+ **Repeat for all sections.**
239
+
240
+ ### Near Completion
241
+
242
+ As approaching completion (80%+ of sections done), announce intention to re-read the entire document and check for:
243
+ - Flow and consistency across sections
244
+ - Redundancy or contradictions
245
+ - Anything that feels like "slop" or generic filler
246
+ - Whether every sentence carries weight
247
+
248
+ Read entire document and provide feedback.
249
+
250
+ **When all sections are drafted and refined:**
251
+ Announce all sections are drafted. Indicate intention to review the complete document one more time.
252
+
253
+ Review for overall coherence, flow, completeness.
254
+
255
+ Provide any final suggestions.
256
+
257
+ Ask if ready to move to Reader Testing, or if they want to refine anything else.
258
+
259
+ ## Stage 3: Reader Testing
260
+
261
+ **Goal:** Test the document with a fresh Claude (no context bleed) to verify it works for readers.
262
+
263
+ **Instructions to user:**
264
+ Explain that testing will now occur to see if the document actually works for readers. This catches blind spots - things that make sense to the authors but might confuse others.
265
+
266
+ ### Testing Approach
267
+
268
+ **If access to sub-agents is available (e.g., in Claude Code):**
269
+
270
+ Perform the testing directly without user involvement.
271
+
272
+ ### Step 1: Predict Reader Questions
273
+
274
+ Announce intention to predict what questions readers might ask when trying to discover this document.
275
+
276
+ Generate 5-10 questions that readers would realistically ask.
277
+
278
+ ### Step 2: Test with Sub-Agent
279
+
280
+ Announce that these questions will be tested with a fresh Claude instance (no context from this conversation).
281
+
282
+ For each question, invoke a sub-agent with just the document content and the question.
283
+
284
+ Summarize what Reader Claude got right/wrong for each question.
285
+
286
+ ### Step 3: Run Additional Checks
287
+
288
+ Announce additional checks will be performed.
289
+
290
+ Invoke sub-agent to check for ambiguity, false assumptions, contradictions.
291
+
292
+ Summarize any issues found.
293
+
294
+ ### Step 4: Report and Fix
295
+
296
+ If issues found:
297
+ Report that Reader Claude struggled with specific issues.
298
+
299
+ List the specific issues.
300
+
301
+ Indicate intention to fix these gaps.
302
+
303
+ Loop back to refinement for problematic sections.
304
+
305
+ ---
306
+
307
+ **If no access to sub-agents (e.g., claude.ai web interface):**
308
+
309
+ The user will need to do the testing manually.
310
+
311
+ ### Step 1: Predict Reader Questions
312
+
313
+ Ask what questions people might ask when trying to discover this document. What would they type into Claude.ai?
314
+
315
+ Generate 5-10 questions that readers would realistically ask.
316
+
317
+ ### Step 2: Setup Testing
318
+
319
+ Provide testing instructions:
320
+ 1. Open a fresh Claude conversation: https://claude.ai
321
+ 2. Paste or share the document content (if using a shared doc platform with connectors enabled, provide the link)
322
+ 3. Ask Reader Claude the generated questions
323
+
324
+ For each question, instruct Reader Claude to provide:
325
+ - The answer
326
+ - Whether anything was ambiguous or unclear
327
+ - What knowledge/context the doc assumes is already known
328
+
329
+ Check if Reader Claude gives correct answers or misinterprets anything.
330
+
331
+ ### Step 3: Additional Checks
332
+
333
+ Also ask Reader Claude:
334
+ - "What in this doc might be ambiguous or unclear to readers?"
335
+ - "What knowledge or context does this doc assume readers already have?"
336
+ - "Are there any internal contradictions or inconsistencies?"
337
+
338
+ ### Step 4: Iterate Based on Results
339
+
340
+ Ask what Reader Claude got wrong or struggled with. Indicate intention to fix those gaps.
341
+
342
+ Loop back to refinement for any problematic sections.
343
+
344
+ ---
345
+
346
+ ### Exit Condition (Both Approaches)
347
+
348
+ When Reader Claude consistently answers questions correctly and doesn't surface new gaps or ambiguities, the doc is ready.
349
+
350
+ ## Final Review
351
+
352
+ When Reader Testing passes:
353
+ Announce the doc has passed Reader Claude testing. Before completion:
354
+
355
+ 1. Recommend they do a final read-through themselves - they own this document and are responsible for its quality
356
+ 2. Suggest double-checking any facts, links, or technical details
357
+ 3. Ask them to verify it achieves the impact they wanted
358
+
359
+ Ask if they want one more review, or if the work is done.
360
+
361
+ **If user wants final review, provide it. Otherwise:**
362
+ Announce document completion. Provide a few final tips:
363
+ - Consider linking this conversation in an appendix so readers can see how the doc was developed
364
+ - Use appendices to provide depth without bloating the main doc
365
+ - Update the doc as feedback is received from real readers
366
+
367
+ ## Tips for Effective Guidance
368
+
369
+ **Tone:**
370
+ - Be direct and procedural
371
+ - Explain rationale briefly when it affects user behavior
372
+ - Don't try to "sell" the approach - just execute it
373
+
374
+ **Handling Deviations:**
375
+ - If user wants to skip a stage: Ask if they want to skip this and write freeform
376
+ - If user seems frustrated: Acknowledge this is taking longer than expected. Suggest ways to move faster
377
+ - Always give user agency to adjust the process
378
+
379
+ **Context Management:**
380
+ - Throughout, if context is missing on something mentioned, proactively ask
381
+ - Don't let gaps accumulate - address them as they come up
382
+
383
+ **Artifact Management:**
384
+ - Use `create_file` for drafting full sections
385
+ - Use `str_replace` for all edits
386
+ - Provide artifact link after every change
387
+ - Never use artifacts for brainstorming lists - that's just conversation
388
+
389
+ **Quality over Speed:**
390
+ - Don't rush through stages
391
+ - Each iteration should make meaningful improvements
392
+ - The goal is a document that actually works for readers
@@ -0,0 +1,290 @@
1
+ ---
2
+ name: doc-standards-enforcer
3
+ description: Enforce documentation standards for document writing. Automatically validate when creating, modifying, or reviewing documentation files (.md). Use explicitly when context indicates documentation work, or via direct reference. Validates: file naming (<3-digit-id>-<slug>.md), hundreds-based directory structure, mandatory frontmatter (doc_id, title, status, owner, last_updated, related_docs), valid status values (draft|review|approved|deprecated), required sections (Purpose/Scope, Content, Version History), cross-document references, and version history tables.
4
+ version: 1.0.0
5
+ allowed-tools: Read, Write, Edit, Bash
6
+ ---
7
+
8
+ # Documentation Standards Enforcer
9
+
10
+ Enforce compliance with the project's documentation standards defined in `100-standards/101-documentation-standards.md`.
11
+
12
+ > **aTool Compatibility Note:** This skill governs documentation within the `docs/` directory and
13
+ > follows a numbered naming convention (`<id>-<slug>.md`). It does **not** apply to aTool-managed
14
+ > files such as `CLAUDE.md`, `README.md`, `COMPONENT.md`, or `UI_STYLE.md` at the project root.
15
+ > These root-level files follow aTool's own template conventions.
16
+
17
+ ## Purpose
18
+
19
+ Ensure all documentation in this repository follows consistent standards for:
20
+ - File naming and directory structure
21
+ - Frontmatter completeness
22
+ - Document structure and required sections
23
+ - Cross-document references
24
+ - Version history tracking
25
+
26
+ ## When This Skill Activates
27
+
28
+ This skill activates automatically when:
29
+ - Creating new `.md` files in the repository
30
+ - Modifying existing documentation
31
+ - Context indicates documentation work (PRD, design docs, requirements, etc.)
32
+ - Explicitly invoked via "validate documentation standards" or similar phrases
33
+
34
+ ## Validation Checklist
35
+
36
+ When creating or modifying documentation, verify:
37
+
38
+ ### 1. File Naming
39
+ - [ ] Pattern: `<3-digit-id>-<slug>.md` (e.g., `201-project-brief.md`)
40
+ - [ ] Lowercase with kebab-case (no spaces, no Chinese characters)
41
+ - [ ] Three-digit ID matches directory structure (e.g., files in `200-product/` start with `2`)
42
+
43
+ ### 2. Directory Structure
44
+ - [ ] Located in appropriate hundreds-based directory
45
+ - [ ] Directories follow pattern: `<hundreds>-<slug>/`
46
+
47
+ ### 3. Frontmatter (Required)
48
+ ```yaml
49
+ ---
50
+ doc_id: <DOC_ID>
51
+ title: <Title>
52
+ status: draft|review|approved|deprecated
53
+ owner: <Role/Person>
54
+ last_updated: YYYY-MM-DD
55
+ related_docs:
56
+ - <path or doc_id>
57
+ ---
58
+ ```
59
+
60
+ ### 4. Status Values
61
+ - `draft`: Initial draft version
62
+ - `review`: Under review
63
+ - `approved`: Approved, can serve as delivery basis
64
+ - `deprecated`: Deprecated (must reference replacement)
65
+
66
+ ### 5. Required Sections
67
+ - [ ] Purpose/Scope (目的/范围)
68
+ - [ ] Main Content (主体内容)
69
+ - [ ] Version History (版本历史)
70
+
71
+ ### 6. Version History Table
72
+ ```markdown
73
+ | Version | Date | Owner | Change |
74
+ |---|---|---|---|
75
+ | v0.1 | YYYY-MM-DD | Name | Initial version |
76
+ ```
77
+
78
+ ### 7. Cross-Document References
79
+ - [ ] Use relative paths from repository root
80
+ - [ ] Include context explaining "why reference"
81
+ - [ ] Example: `See docs/500-data/502-data-dictionary.md (field definitions)`
82
+
83
+ ## How to Use
84
+
85
+ ### Automatic Mode
86
+ When creating documentation, this skill automatically activates to guide you through compliance.
87
+
88
+ ### Explicit Invocation
89
+ Reference this skill by:
90
+ - Mentioning "follow documentation standards"
91
+ - Saying "validate against doc standards"
92
+ - Running validation scripts directly
93
+
94
+ ### Validation Scripts
95
+
96
+ Run validation scripts from repository root:
97
+
98
+ ```bash
99
+ # Main validation
100
+ python skills/doc-standards-enforcer/scripts/validate_doc_standards.py <file.md>
101
+
102
+ # Check references
103
+ python skills/doc-standards-enforcer/scripts/check_references.py <file.md>
104
+
105
+ # Fix common issues (interactive)
106
+ python skills/doc-standards-enforcer/scripts/fix_common_issues.py <file.md> --interactive
107
+ ```
108
+
109
+ ## Document Templates
110
+
111
+ ### Standard Document Template
112
+
113
+ ```markdown
114
+ ---
115
+ doc_id: XXX-XXX-0100
116
+ title: Document Title
117
+ status: draft
118
+ owner: Your Name
119
+ last_updated: YYYY-MM-DD
120
+ related_docs:
121
+ - docs/100-standards/101-documentation-standards.md
122
+ ---
123
+
124
+ ## Purpose
125
+
126
+ Describe the purpose and scope of this document.
127
+
128
+ ## Main Content
129
+
130
+ Your document content here.
131
+
132
+ ## Version History
133
+
134
+ | Version | Date | Owner | Change |
135
+ |---|---|---|---|
136
+ | v0.1 | YYYY-MM-DD | Name | Initial version |
137
+ ```
138
+
139
+ ### User Story Template
140
+
141
+ ```markdown
142
+ ---
143
+ doc_id: US-XXX-3301
144
+ title: User Story Title
145
+ status: draft
146
+ owner: PM
147
+ last_updated: YYYY-MM-DD
148
+ related_docs:
149
+ - docs/300-requirements/300-index.md
150
+ us_id: US-IA-0001
151
+ module: IA
152
+ priority: P1
153
+ ---
154
+
155
+ ## User Story
156
+
157
+ As a [role], I want [feature], so that [benefit].
158
+
159
+ ## Acceptance Criteria
160
+
161
+ - [ ] Criterion 1
162
+ - [ ] Criterion 2
163
+
164
+ ## Version History
165
+
166
+ | Version | Date | Owner | Change |
167
+ |---|---|---|---|
168
+ | v0.1 | YYYY-MM-DD | PM | Initial version |
169
+ ```
170
+
171
+ ## Integration for Other Skills
172
+
173
+ Other skills can depend on this documentation standards skill:
174
+
175
+ ### Automatic Triggering
176
+ When your skill creates documentation, this skill automatically activates to ensure compliance.
177
+
178
+ ### Explicit Reference
179
+ Mention "follow documentation standards" or "validate against 101-standards" in your skill.
180
+
181
+ ### Workflow Integration
182
+ If your skill creates documentation:
183
+ 1. Let doc-standards-enforcer activate automatically
184
+ 2. Follow the provided templates
185
+ 3. Run validation scripts before completing
186
+ 4. Fix any reported issues
187
+ 5. Update `log.md` and create commit (per 109-agent-llm-guidelines.md)
188
+
189
+ ### Example Pattern
190
+
191
+ ```markdown
192
+ When creating documentation for your feature:
193
+
194
+ 1. Invoke doc-standards-enforcer skill
195
+ 2. Use the provided frontmatter template
196
+ 3. Run: `python skills/doc-standards-enforcer/scripts/validate_doc_standards.py <file>`
197
+ 4. Fix validation errors
198
+ 5. Update log.md
199
+ 6. Commit changes
200
+ ```
201
+
202
+ ## Common Mistakes to Avoid
203
+
204
+ 1. **Invalid filenames**: Using `test.md` instead of `201-project-brief.md`
205
+ 2. **Missing frontmatter**: Documents without YAML frontmatter block
206
+ 3. **Invalid status**: Using `in-progress` instead of `draft|review|approved|deprecated`
207
+ 4. **No version history**: Forgetting the version history table
208
+ 5. **Broken references**: Links to non-existent documents
209
+ 6. **Chinese in filenames**: Using Chinese characters in `.md` file names
210
+ 7. **Mixed concerns**: Combining business requirements with technical implementation
211
+
212
+ ## Content Accuracy Check (Optional)
213
+
214
+ Beyond format validation, technical documents should have accurate content. This is a **recommended but optional** step:
215
+
216
+ ### Tech-Stack Terminology Validation
217
+
218
+ When the document contains technical content (API definitions, code examples, architecture descriptions):
219
+
220
+ 1. **Detect the project tech stack** — check for `CLAUDE.md`, `package.json`, `pom.xml`, `Cargo.toml`, etc.
221
+ 2. **Reference the conventions skill** — identify `{stack}-conventions` skill for naming conventions and patterns
222
+ 3. **Verify technical claims** — ensure code examples compile/run, API paths match routes, class names follow naming conventions
223
+
224
+ ### Architecture Document Validation
225
+
226
+ For architecture documents (system design, ADRs, deployment guides):
227
+
228
+ 1. **Reference `software-architecture` skill** — validate that architectural decisions follow its principles
229
+ 2. **Check consistency** — ensure diagrams match described architecture, component names are consistent
230
+ 3. **Verify feasibility** — NFR claims should be realistic for the described architecture style
231
+
232
+ ### Integration Pattern
233
+
234
+ ```markdown
235
+ After structural validation passes, for technical documents:
236
+ 1. Check tech-stack conventions alignment
237
+ 2. Verify code examples against conventions skill rules
238
+ 3. For architecture docs, cross-reference software-architecture principles
239
+ ```
240
+
241
+ ## Related Standards
242
+
243
+ - **Full standards**: `100-standards/101-documentation-standards.md`
244
+ - **Agent workflow**: `100-standards/109-agent-llm-guidelines.md`
245
+ - **Repository guide**: `CLAUDE.md`
246
+
247
+ ## Quick Reference
248
+
249
+ ### Valid Status Values
250
+ - `draft` - Draft version
251
+ - `review` - Under review
252
+ - `approved` - Approved
253
+ - `deprecated` - Deprecated
254
+
255
+ ### Directory Structure
256
+ - `100-standards/` - Project standards
257
+ - `200-product/` - Product documentation
258
+ - `300-requirements/` - Requirements
259
+ - `400-design/` - Design documents
260
+ - `500-data/` - Data documentation
261
+ - `600-architecture/` - Architecture
262
+ - `700-engineering/` - Engineering standards
263
+ - `800-operations/` - Operations
264
+ - `900-project-mgmt/` - Project management
265
+ - `990-archive/` - Historical archives
266
+
267
+ ### Required Frontmatter Fields
268
+ - `doc_id` - Document identifier
269
+ - `title` - Document title
270
+ - `status` - Status (draft|review|approved|deprecated)
271
+ - `owner` - Responsible role/person
272
+ - `last_updated` - Date (YYYY-MM-DD)
273
+ - `related_docs` - List of related documents
274
+
275
+ ## Error Handling
276
+
277
+ Validation scripts provide clear error messages:
278
+
279
+ ```
280
+ [ERROR] FILE_NAMING: File 'test.md' doesn't match pattern <3-digit-id>-<slug>.md
281
+ [ERROR] FRONTMATTER: Missing required field: doc_id
282
+ [ERROR] STATUS: Invalid status 'in-progress'. Use: draft|review|approved|deprecated
283
+ [ERROR] VERSION_HISTORY: Version history table not found
284
+ ```
285
+
286
+ ## Version History
287
+
288
+ | Version | Date | Owner | Change |
289
+ |---|---|---|---|
290
+ | v1.0.0 | 2026-01-09 | Claude Code | Initial skill implementation |