@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,122 @@
1
+ # Phase 4 Code Review Sub-Agent Prompt Template
2
+
3
+ > For full phase context, read `phases/phase4-code-quality.md`
4
+
5
+ ---
6
+
7
+ ## Prompt Template
8
+
9
+ ```
10
+ ## 任务
11
+ 对模块「{module_name}」执行代码质量审查,生成审查报告。
12
+
13
+ ## 输出语言
14
+ 所有文档**必须中文**。
15
+ 例外(保持英文):代码块、文件路径、技术标识符。
16
+
17
+ ## 输入数据
18
+ ### Inventory(来自 Phase 1)
19
+ {inventory_json}
20
+
21
+ ### 知识图谱上下文(来自 Phase 3)
22
+ {relevant_graph_subtree}
23
+
24
+ ### v5.0 多维分析上下文(如果存在)
25
+ {multi_dimensional_context}
26
+
27
+ ### Pre-Scan 基线指标(来自 Phase 0.5)
28
+ {pre_computed_metrics}
29
+
30
+ > 包含:长函数列表(>50行)、未使用 import 候选、嵌套深度估算、API 端点安全检查清单
31
+ > 这些指标由 grep/awk 自动提取,可作为审查基线——直接使用,无需重新提取。
32
+
33
+ ### 源文件
34
+ 仅读取 pre-scan 标记为 confidence: "low" 的文件 + 审查基线中发现问题的文件:
35
+ {file_list}
36
+
37
+ > 对于 confidence: "high" 且基线指标正常的文件,信任 pre-scan 数据,无需全文读取。
38
+
39
+ ## 审查维度(8 个)
40
+
41
+ ### 维度 1: 代码质量 (权重 0.15)
42
+ - 圈复杂度(阈值:函数 >10 为 warning,>20 为 critical)
43
+ - 函数长度(阈值:>50 行 warning,>100 行 critical)— 参考 pre-scan 基线
44
+ - 嵌套深度(阈值:>3 层 warning,>5 层 critical)— 参考 pre-scan 基线
45
+ - 注释率(阈值:<10% warning)
46
+ - 参数数量(阈值:>4 个 warning)
47
+
48
+ ### 维度 2: 死代码 (权重 0.10)
49
+ - 未使用函数/import — 参考 pre-scan 未使用 import 候选列表
50
+ - 不可达代码
51
+ - 无引用的变量/常量
52
+
53
+ ### 维度 3: 重复代码 (权重 0.10)
54
+ - 相似代码块(>6 行,>80% 相似)
55
+ - 函数体重复
56
+ - 抽象不足导致的模式重复
57
+
58
+ ### 维度 4: 错误/安全 (权重 0.20)
59
+ - 空 catch 块
60
+ - SQL 注入风险
61
+ - 硬编码凭证
62
+ - 未验证的用户输入
63
+ - 敏感数据暴露
64
+ - API 端点安全检查 — 参考 pre-scan API 端点清单
65
+
66
+ ### 维度 5: 架构合规 (权重 0.15)
67
+ - 分层违反(UI 直接调用 DAO)
68
+ - 依赖方向(外层不应依赖内层)
69
+ - DDD 合规
70
+ - 包结构合理性
71
+ {multi_dimensional_architecture_hints}
72
+
73
+ ### 维度 6: 可维护性 (权重 0.10)
74
+ - SQALE 修复工作量估算
75
+ - MI 指数
76
+ - 代码异味检测
77
+ {multi_dimensional_maintainability_hints}
78
+
79
+ ### 维度 7: 耦合内聚 (权重 0.10)
80
+ - Ca/Ce/Instability 指标
81
+ - 循环依赖检测
82
+ - CK Metrics(WMC/DIT/NOC/CBO/RFC/LCOM)
83
+ - DSM 分析
84
+
85
+ ### 维度 8: 技术债务 (权重 0.10)
86
+ - 已废弃 API 使用
87
+ - TODO 老化(>30 天未解决)
88
+ - 过时模式/框架版本
89
+ - 缺失的测试覆盖
90
+
91
+ ## 评分计算
92
+ file_score = Σ(dimension_score × dimension_weight)
93
+ project_score = weighted_avg(file_scores, weight=file_lines)
94
+ 健康等级: 0-20 健康 | 20-40 一般 | 40-60 需关注 | 60-80 较差 | 80-100 严重
95
+
96
+ ## 输出(JSON)
97
+ {
98
+ "module": "{module-slug}",
99
+ "score": 35,
100
+ "health_level": "需关注",
101
+ "dimensions": {
102
+ "quality": { "score": 30, "issues": [...] },
103
+ "dead-code": { "score": 15, "issues": [...] },
104
+ "duplication": { "score": 25, "issues": [...] },
105
+ "error-security": { "score": 40, "issues": [...] },
106
+ "architecture": { "score": 35, "issues": [...] },
107
+ "maintainability": { "score": 30, "issues": [...] },
108
+ "coupling-cohesion": { "score": 20, "issues": [...] },
109
+ "deprecation-debt": { "score": 25, "issues": [...] }
110
+ },
111
+ "top_issues": [],
112
+ "refactoring_suggestions": [
113
+ { "name": "...", "current": "...", "target": "...", "effort": "2h" }
114
+ ]
115
+ }
116
+
117
+ ## 禁止行为
118
+ - 禁止使用通用建议替代实际代码分析
119
+ - 禁止将环境变量标记为硬编码凭证(除非明显是密码/密钥)
120
+ - 禁止遗漏任何维度(即使评分为 0 也必须输出)
121
+ - 禁止对 confidence: "high" 且基线正常的文件做重复结构分析
122
+ ```
@@ -0,0 +1,107 @@
1
+ # Phase 2 Deep Analysis Sub-Agent Prompt Template
2
+
3
+ > For full phase context, read `phases/phase2-deep-analysis.md`
4
+
5
+ ---
6
+
7
+ ## Prompt Template
8
+
9
+ ```
10
+ ## 任务
11
+ 深度分析模块「{module_name}」,生成 MODULE-DOC.md + analysis.json。
12
+
13
+ ## 已有数据(来自 Phase 1 inventory + Phase 0.5 pre-scan)
14
+
15
+ ### Pre-Scan 结构摘要(紧凑表格)
16
+ {prescan_summary_content}
17
+
18
+ > 已提取信息:imports, exports, classes, functions, decorators, api_endpoints, data_models
19
+ > 无需重复读取以下结构信息,直接使用。
20
+
21
+ ### Inventory 语义注释
22
+ {inventory_semantic_content}
23
+
24
+ ### 源文件读取策略
25
+ - 小文件(<100 行):{small_files_list} — 已嵌入 pre-scan 数据,可直接使用
26
+ - 中文件(100-500 行):{medium_files_list} — 读取全文进行深度分析
27
+ - 大文件(>500 行):{large_files_list} — 仅读取 pre-scan 标记的关键区域(函数体、类定义)
28
+ - confidence: "low" 文件:{low_confidence_files} — 必须全文读取验证
29
+
30
+ ## 技术栈规则
31
+ {rules_content}
32
+
33
+ ## Zero-KT 原则
34
+ 所有文档满足「Zero-KT」标准:**新人仅凭文档即可独立完成以下任务,无需向任何人提问**:
35
+
36
+ 1. **理解项目**:为什么架构是这样设计的,每个模块为什么存在
37
+ 2. **添加功能**:知道在哪个文件、哪个层、按照什么模式添加
38
+ 3. **修复缺陷**:知道错误可能在哪个模块、如何调试、如何验证
39
+ 4. **理解业务**:知道核心业务术语、业务规则、数据含义
40
+
41
+ **深度判断**:读者读完仍需问「为什么这样做」→ 不够深;仍需问「怎么做」→ 不够具体;仍需问「这是什么意思」→ 缺术语解释。
42
+
43
+ **三人测试**:文档必须通过——(1) 新入职开发者能理解 (2) 不看源码能操作 (3) 遇到问题有排查指引。
44
+
45
+ ## 输出语言
46
+ 所有文档**必须中文**(README.md、COMPONENT.md、UI_STYLE.md、CODE_REVIEW.md、docs/、MODULE-DOC.md、ASCII 图标注)。
47
+ 例外(保持英文):代码块、文件路径、技术标识符(变量/函数/类名)、API 路径、包名、Git 分支名。
48
+
49
+ ## 项目上下文
50
+ - 技术栈: {stack}
51
+ - 项目名: {project_name}
52
+ - 已识别模块: {module_list}
53
+
54
+ ## 必须注入的项目真实数据
55
+ - 实际包路径/导入路径(从 pre-scan 提取,禁止使用 com/example/ 等默认值)
56
+ - 实际版本号(从配置文件提取,禁止编造)
57
+ - 实际依赖列表(从 pre-scan 提取)
58
+
59
+ ## 输出要求
60
+
61
+ ### 文件 1: MODULE-DOC.md(写入 .atool-docs/modules/{module-slug}/MODULE-DOC.md)
62
+
63
+ 必须包含 11 项:
64
+ 1. 模块业务职责(具体描述,禁止套话)
65
+ 2. 核心类/组件清单(名称+路径+一句话描述)
66
+ 3. 公开 API 完整签名表
67
+ 4. 依赖关系(上游+下游)
68
+ 5. 数据流 ASCII 图
69
+ 6. 业务术语表(术语/英文标识/含义/使用场景/源码位置)
70
+ 7. 设计决策记录(ADR格式:决策/选择/替代方案/理由/权衡)
71
+ 8. 常见开发场景(3-5个,含 step-by-step + 完整代码示例)
72
+ 9. 故障排查指南(按症状组织:症状/可能原因/排查步骤/解决方案)
73
+ 10. 关联模块交互(关联模块/交互方式/交互场景/文档链接)
74
+ 11. 错误处理策略(错误类型/处理方式/用户提示/日志记录)
75
+
76
+ ### 文件 2: analysis.json(写入 .atool-docs/modules/{module-slug}/analysis.json)
77
+
78
+ {
79
+ "module": "{module-slug}",
80
+ "business_domain": "用户管理",
81
+ "responsibility": "管理用户的增删改查、角色分配、状态管理",
82
+ "design_intent": "作为系统核心业务模块,封装用户生命周期管理",
83
+ "key_entities": ["User", "UserRole", "Role"],
84
+ "public_api": [
85
+ { "name": "fetchUsers", "signature": "(params: UserQuery): Promise<Page<User>>", "callers": ["UserList.vue"] }
86
+ ],
87
+ "data_flows": [
88
+ { "trigger": "用户点击搜索", "path": "UserList → useUserStore.search() → api/user.ts → GET /api/users", "output": "用户列表数据" }
89
+ ],
90
+ "business_terms": [
91
+ { "term": "审批流", "identifier": "approval_flow", "meaning": "多级审批的流程定义", "source": "workflow.ts" }
92
+ ]
93
+ }
94
+
95
+ ## 禁止行为
96
+ - 禁止使用未替换的模板占位符(com/example/、{{PROJECT_NAME}}、xxx、TODO、...)
97
+ - 禁止使用通用建议替代实际分析结果
98
+ - 禁止输出纯文件列表或无信息条目
99
+ - 禁止重新提取 pre-scan 已包含的结构信息(直接引用即可)
100
+
101
+ ## 深度级别追加指令
102
+ {depth_specific_instructions}
103
+ ```
104
+
105
+ ### Depth-Specific Instructions
106
+
107
+ For depth level specific instructions to append, see `phases/phase2-deep-analysis.md` section 2.2b (L1/L2/L3/L4/L5 追加指令).
@@ -0,0 +1,67 @@
1
+ # Phase 1 Inventory Sub-Agent Prompt Template
2
+
3
+ > For full phase context, read `phases/phase1-inventory.md`
4
+
5
+ ---
6
+
7
+ ## Prompt Template
8
+
9
+ ```
10
+ ## 任务
11
+ 对模块「{module_name}」执行语义标注,基于 Phase 0.5 pre-scan 数据进行验证和语义增强。
12
+
13
+ ## 输出语言
14
+ 所有文档**必须中文**(标题、描述、注释)。
15
+ 例外(保持英文):代码块、文件路径、技术标识符(变量/函数/类名)、API 路径、包名。
16
+
17
+ ## 已有数据(来自 Phase 0.5 Pre-Scan)
18
+ {prescan_json_content}
19
+
20
+ > pre-scan 已提取:imports, exports, classes, functions, decorators, api_endpoints, data_models
21
+ > 以下文件标记为 confidence: "low"(需重点验证):{low_confidence_files}
22
+
23
+ ## 你的任务(3 项)
24
+
25
+ ### 1. 验证 pre-scan 准确性
26
+ 仅读取 confidence: "low" 的文件,检查提取结果是否正确。对 confidence: "high" 的文件,信任 pre-scan 结果,不做重复读取。
27
+
28
+ ### 2. 添加语义注释
29
+ 为每个文件添加 pre-scan 无法提取的语义信息:
30
+ - `module_business_domain`: 文件所属业务域(如"用户管理"、"订单处理")
31
+ - `semantic_purpose`: 文件的语义用途(一句话描述)
32
+ - `component_type`: 页面/服务/工具/模型/配置 等
33
+ - `ui_components`: 使用的 UI 框架组件(仅 UI 文件)
34
+
35
+ ### 3. 标记动态模式
36
+ 检测并标记 pre-scan 可能遗漏的:
37
+ - 动态 import(`import()` 表达式)
38
+ - 元编程(装饰器工厂、反射)
39
+ - 运行时注册(plugin register、event listener)
40
+ - 框架自动注入(Spring @Autowired, FastAPI Depends)
41
+
42
+ ## 输出格式(与现有 inventory JSON 完全一致,向后兼容)
43
+ {
44
+ "module": "{module-slug}",
45
+ "files": [
46
+ {
47
+ "path": "src/views/user/UserList.vue",
48
+ "imports": ["vue", "pinia", "@/api/user"],
49
+ "exports": ["default"],
50
+ "functions": ["fetchUsers(params): Promise<PageResult>", "handleEdit(row): void"],
51
+ "classes": [],
52
+ "components_used": ["ElTable", "ElPagination", "UserFormDialog"],
53
+ "file_level_comment": "用户列表页面,含搜索/分页/CRUD弹窗",
54
+ "semantic_purpose": "用户管理列表页面,提供搜索、分页、增删改查功能",
55
+ "module_business_domain": "用户管理",
56
+ "component_type": "page",
57
+ "extraction_confidence": "high"
58
+ }
59
+ ]
60
+ }
61
+
62
+ ## 禁止行为
63
+ - 禁止读取 confidence: "high" 的文件(浪费 token,结果已在 pre-scan 中)
64
+ - 禁止使用未替换的模板占位符
65
+ - 禁止输出纯文件列表或无信息条目
66
+ - 禁止遗漏任何 pre-scan 已识别的文件
67
+ ```
@@ -0,0 +1,98 @@
1
+ # Phase 2a L4 Analysis Sub-Agent Prompt Template
2
+
3
+ > For full phase context, read `phases/phase2a-l4-analysis.md`
4
+
5
+ ---
6
+
7
+ ## Prompt Template
8
+
9
+ ```
10
+ ## 任务
11
+ 对模块「{module_name}」的每个函数进行 L4 级别分析,生成 l4-analysis.json。
12
+
13
+ ## 输出语言
14
+ 所有文档**必须中文**。
15
+ 例外(保持英文):代码块、文件路径、技术标识符。
16
+
17
+ ## Zero-KT 原则
18
+ 所有文档满足「Zero-KT」标准:**新人仅凭文档即可独立完成任务,无需向任何人提问**。
19
+
20
+ ## 已有数据
21
+
22
+ ### Phase 2 analysis.json
23
+ {analysis_json_content}
24
+
25
+ ### Phase 0.5 Pre-Scan 函数表(已提取的调用关系和行范围)
26
+ {prescan_function_table}
27
+
28
+ > pre-scan 已提取:函数名、参数、行范围、caller/callee 关系、装饰器
29
+ > 利用这些数据定向读取函数体,无需全文扫描。
30
+
31
+ ### Phase 1 inventory
32
+ {inventory_json_content}
33
+
34
+ ### 源文件读取策略
35
+ 使用 pre-scan 提供的行范围,仅读取目标函数体(而非整个文件):
36
+ {file_line_ranges}
37
+
38
+ 格式:path:start-end — 仅读取指定行范围进行深度分析。
39
+
40
+ ## L4 分析要求
41
+
42
+ 对每个函数(不仅公开函数)执行以下分析:
43
+
44
+ 1. **调用链追踪**:验证 pre-scan 提取的 caller → current → callee 链(跨文件追踪,最多 3 层)
45
+ - 确认 pre-scan 的调用关系是否正确
46
+ - 补充 pre-scan 无法检测的动态调用(反射、回调、事件驱动)
47
+ 2. **性能热点识别**:
48
+ - 循环内的 I/O 操作(网络请求、文件读取、数据库查询)
49
+ - O(n²) 及以上复杂度算法
50
+ - 重复计算 / 缓存机会
51
+ - 大对象创建/复制
52
+ 3. **安全审计点**:
53
+ - 用户输入处理路径(从入口到存储/输出)
54
+ - SQL/命令拼接点
55
+ - 认证/授权检查缺失
56
+ - 敏感数据暴露(日志、错误消息、响应体)
57
+ 4. **数据流路径**:
58
+ - 每个函数的输入数据来源(参数、全局状态、外部调用)
59
+ - 数据变换步骤(mutation/transformation)
60
+ - 输出数据去向(返回值、副作用、状态变更)
61
+
62
+ ## 输出(JSON)
63
+
64
+ 写入 `.atool-docs/modules/{module-slug}/l4-analysis.json`:
65
+
66
+ {
67
+ "module": "{module-slug}",
68
+ "functions": [
69
+ {
70
+ "name": "processOrder",
71
+ "file": "src/services/order.ts",
72
+ "line_range": [45, 112],
73
+ "callers": ["OrderController.create", "BatchProcessor.run"],
74
+ "callees": ["validateOrder", "calculateTotal", "saveOrder", "notifyUser"],
75
+ "complexity": 8,
76
+ "hotspots": [
77
+ { "type": "N+1_query", "line": 78, "severity": "warning", "description": "循环内调用 getUserById" }
78
+ ],
79
+ "security_points": [
80
+ { "type": "input_validation", "line": 49, "status": "present", "description": "订单数据校验" }
81
+ ],
82
+ "data_flow": {
83
+ "inputs": ["params: CreateOrderDTO", "ctx.user (implicit)"],
84
+ "transforms": ["validate → enrich → calculate → persist"],
85
+ "outputs": ["return Order entity", "side-effect: notifyUser()"]
86
+ }
87
+ }
88
+ ],
89
+ "hotspot_summary": { "total": 5, "critical": 1, "warning": 4 },
90
+ "security_summary": { "total": 8, "issues": 2, "mitigated": 6 }
91
+ }
92
+
93
+ ## 禁止行为
94
+ - 禁止编造不存在的函数或调用关系
95
+ - 禁止使用通用性能建议替代实际分析结果
96
+ - 禁止遗漏任何可见函数(包括 private/internal)
97
+ - 禁止重新提取 pre-scan 已包含的结构信息(直接引用验证即可)
98
+ ```
@@ -0,0 +1,282 @@
1
+ # Android / Kotlin 项目分析规则
2
+
3
+ ## 分析粒度
4
+
5
+ 按 Feature Module 和 MVVM+ 分层架构进行分析。
6
+
7
+ ```
8
+ Application (Application 类)
9
+
10
+ DI Module(依赖注入:Hilt / Koin)
11
+
12
+ Navigation(导航:Jetpack Navigation / Compose Navigation)
13
+
14
+ Activity / Fragment / Composable Screen
15
+
16
+ ViewModel
17
+
18
+ Repository
19
+
20
+ Data Source(Remote: Retrofit + Local: Room / DataStore)
21
+
22
+ Model / Entity(数据模型)
23
+ ```
24
+
25
+ ## 目录扫描策略
26
+
27
+ ### 1. 识别项目类型
28
+
29
+ **信号文件检测:**
30
+ - 单模块: `app/` 下直接包含源码
31
+ - 多模块: `settings.gradle` 中 `include` 列表
32
+ - Compose 项目: `build.gradle` 中 `compose = true`
33
+ - KMP 项目: `shared/` 模块 + `build.gradle.kts`
34
+
35
+ ### 2. 识别架构模式
36
+
37
+ - **MVVM + Repository**: ViewModel + Repository + Room
38
+ - **MVI**: Intent → Reducer → State → View
39
+ - **Clean Architecture**: Domain / Data / Presentation 三层
40
+
41
+ ### 3. 依赖提取
42
+
43
+ 从 `build.gradle` / `build.gradle.kts` 提取:
44
+
45
+ | 类别 | 常见依赖 |
46
+ |------|----------|
47
+ | Compose | compose-bom, compose-ui, compose-material3 |
48
+ | Navigation | navigation-compose, navigation-fragment |
49
+ | DI | hilt-android, koin-android |
50
+ | 网络 | retrofit, okhttp, ktor |
51
+ | 图片 | coil-compose, glide |
52
+ | 数据库 | room-runtime, datastore-preferences |
53
+ | 异步 | kotlinx-coroutines, rxjava |
54
+ | 序列化 | kotlin-serialization, moshi, gson |
55
+ | DI | hilt-android-compiler, koin |
56
+ | 测试 | junit, mockk, turbine |
57
+
58
+ ### 4. 按层扫描路径
59
+
60
+ - **UI 层**: `*/ui/`, `*/screens/`, `*/compose/`
61
+ - **Activity/Fragment**: `*/activities/`, `*/fragments/`
62
+ - **ViewModel**: `*/viewmodel/`, `*/viewmodels/`
63
+ - **Repository**: `*/repository/`, `*/repositories/`
64
+ - **数据源**: `*/data/remote/`, `*/data/local/`, `*/datasource/`
65
+ - **Model**: `*/model/`, `*/models/`, `*/entity/`
66
+ - **DI**: `*/di/`, `*/hilt/`
67
+
68
+ ## 各层提取规则
69
+
70
+ ### 层 1: UI 层
71
+
72
+ #### Jetpack Compose
73
+
74
+ **扫描文件**: `*Screen.kt`, `*Page.kt`, 含 `@Composable` 的文件
75
+
76
+ **提取内容**:
77
+ - `@Composable` 函数签名 + 参数
78
+ - `Modifier` 链
79
+ - 状态管理(`remember`, `mutableStateOf`, `collectAsState`)
80
+ - 子 Composable 结构(1-2 层)
81
+ - `@Preview` 注解
82
+
83
+ **输出示例**:
84
+ ```
85
+ ### UserListScreen
86
+ - **路径**: `ui/screens/user/UserListScreen.kt`
87
+ - **签名**:
88
+ ```kotlin
89
+ @Composable
90
+ fun UserListScreen(
91
+ navController: NavController,
92
+ viewModel: UserListViewModel = hiltViewModel()
93
+ )
94
+ ```
95
+ - **状态收集**:
96
+ | State | 来源 | 用途 |
97
+ |-------|------|------|
98
+ | users | viewModel.users.collectAsState() | 用户列表 |
99
+ | isLoading | viewModel.isLoading.collectAsState() | 加载状态 |
100
+ | searchQuery | viewModel.searchQuery.collectAsState() | 搜索关键词 |
101
+ - **UI 结构**:
102
+ Scaffold(topBar = UserListTopBar(), floatingActionButton = AddUserFAB())
103
+ → LazyColumn(items = users)
104
+ → UserListItem(user, onClick = { nav to detail })
105
+ - **Modifier 链**: Modifier.fillMaxSize().padding(16.dp)
106
+ ```
107
+
108
+ #### XML Layout
109
+
110
+ **扫描文件**: `res/layout/*.xml`
111
+
112
+ **提取内容**:
113
+ - Layout 层级结构
114
+ - include / merge 标签
115
+ - 自定义 View
116
+
117
+ ### 层 2: ViewModel 层
118
+
119
+ **扫描文件**: `*ViewModel.kt`
120
+
121
+ **提取内容**:
122
+ - ViewModel 类名 + 构造参数(`@AssistedInject`)
123
+ - UI State 数据类(字段 + 类型)
124
+ - Action / Intent(用户操作)
125
+ - Effect / Event(一次性事件)
126
+ - 依赖的 Repository
127
+
128
+ **输出示例**:
129
+ ```
130
+ ### UserListViewModel
131
+ - **路径**: `ui/screens/user/UserListViewModel.kt`
132
+ - **注入**: @HiltViewModel
133
+ - **UI State**:
134
+ ```kotlin
135
+ data class UserListState(
136
+ val users: List<UserVO> = emptyList(),
137
+ val isLoading: Boolean = false,
138
+ val searchQuery: String = "",
139
+ val error: String? = null
140
+ )
141
+ ```
142
+ - **Actions**:
143
+ | Action | 参数 | 说明 |
144
+ |--------|------|------|
145
+ | loadUsers | - | 初始加载 |
146
+ | searchUsers | query: String | 搜索过滤 |
147
+ | deleteUser | userId: Long | 删除用户 |
148
+ | refresh | - | 下拉刷新 |
149
+ - **Effects**:
150
+ | Effect | 载荷 | 说明 |
151
+ |--------|------|------|
152
+ | NavigateToDetail | userId: Long | 导航到详情 |
153
+ | ShowToast | message: String | 显示提示 |
154
+ - **依赖**: UserRepository
155
+ ```
156
+
157
+ ### 层 3: Repository 层
158
+
159
+ **扫描文件**: `*Repository.kt`
160
+
161
+ **输出示例**:
162
+ ```
163
+ ### UserRepository
164
+ - **路径**: `data/repository/UserRepositoryImpl.kt`
165
+ - **接口**: `domain/repository/UserRepository.kt`
166
+ - **数据源**: UserRemoteDataSource, UserLocalDataSource (Room)
167
+ - **方法**:
168
+ | 方法 | 签名 | 说明 |
169
+ |------|------|------|
170
+ | getUsers | suspend () → List<User> | 先本地后远程 |
171
+ | getUserById | suspend (Long) → User | 查询详情 |
172
+ | saveUsers | suspend (List<User>) → Unit | 缓存到本地 |
173
+ ```
174
+
175
+ ### 层 4: Room 数据库分析
176
+
177
+ **扫描文件**: `*Entity.kt`, `*Dao.kt`, `*Database.kt`
178
+
179
+ **输出示例**:
180
+ ```
181
+ ### AppDatabase
182
+ - **文件**: `data/local/AppDatabase.kt`
183
+ - **版本**: 3
184
+ - **Entities**: UserEntity, SettingsEntity
185
+ - **Dao**:
186
+ | Dao | 方法 | 返回类型 |
187
+ |-----|------|----------|
188
+ | UserDao | getAllUsers() | Flow<List<UserEntity>> |
189
+ | UserDao | getUserById(id) | Flow<UserEntity?> |
190
+ | UserDao | insertUsers(users) | List<Long> |
191
+ | UserDao | deleteUser(id) | Int |
192
+ - **Migration**: 2→3 (添加 avatar 字段)
193
+ ```
194
+
195
+ ### 层 5: DI 分析
196
+
197
+ **扫描文件**: `*Module.kt` (Hilt), `*Module.kt` (Koin)
198
+
199
+ **输出示例**:
200
+ ```
201
+ ### Hilt Modules
202
+ | Module | Provides | Scope |
203
+ |--------|----------|-------|
204
+ | NetworkModule | OkHttpClient, Retrofit, ApiServices | Singleton |
205
+ | DatabaseModule | AppDatabase, UserDAO | Singleton |
206
+ | RepositoryModule | UserRepository | Singleton |
207
+ ```
208
+
209
+ ### 层 6: Navigation 分析
210
+
211
+ **扫描文件**: `NavGraph.kt`, 含 `NavHost` 的文件
212
+
213
+ **输出示例**:
214
+ ```
215
+ ### 导航图
216
+ | 路由 | 目标 | 参数 | 动画 |
217
+ |------|------|------|------|
218
+ | user_list | UserListScreen | - | - |
219
+ | user_detail | UserDetailScreen | userId: Long | slideInRight |
220
+ | user_edit | UserEditScreen | userId: Long? | slideInRight |
221
+ ```
222
+
223
+ ## 输出模板
224
+
225
+ ### README.md 章节结构
226
+
227
+ ```markdown
228
+ # {App 名称}
229
+
230
+ ## 项目概述
231
+ App 功能描述
232
+
233
+ ## 技术栈
234
+ | 技术 | 版本 | 用途 |
235
+ |------|------|------|
236
+
237
+ ## 架构设计
238
+ ### 架构图(ASCII)
239
+ ### 数据流图
240
+
241
+ ## 模块结构
242
+ Gradle 模块依赖关系
243
+
244
+ ## 导航结构
245
+ 路由表 + 参数
246
+
247
+ ## 数据模型
248
+ Entity + DTO + UI State
249
+
250
+ ## DI 配置
251
+ Hilt / Koin 模块
252
+
253
+ ## 构建 & 部署
254
+ Gradle 命令 + 变体
255
+ ```
256
+
257
+ ## 模块边界识别
258
+
259
+ 以下目录模式下的每个子目录视为独立模块(L2+ 分析时生成 MODULE-DOC.md):
260
+
261
+ | 层 | 扫描路径 | 模块判定规则 | MODULE-DOC slug 来源 |
262
+ |----|----------|-------------|---------------------|
263
+ | UI 层 | `app/src/main/java/**/ui/`, `app/src/main/java/**/screens/` | 每个子目录 | 目录名 kebab-case |
264
+ | Repository 层 | `app/src/main/java/**/repository/` | 每个子目录 | 目录名 kebab-case |
265
+ | ViewModel 层 | `app/src/main/java/**/viewmodel/` | 每个子目录 | 目录名 kebab-case |
266
+ | 组件层 | `app/src/main/java/**/components/` | 3+ 文件的子目录 | 目录名 kebab-case |
267
+ | 数据模型层 | `app/src/main/java/**/model/` | 每个文件 | 文件名去后缀 kebab-case |
268
+
269
+ **不视为独立模块的情况**:
270
+ - 单文件入口(如 `MainActivity.kt`, `Application.kt`)
271
+ - 纯导出桶文件(仅有 re-export)
272
+ - 工具函数目录(`util/`, `helper/`, `extension/`)— 合并为一个模块
273
+ - 生成文件(`*.generated.kt`, `BuildConfig`)跳过
274
+
275
+ ## Token 管理
276
+
277
+ - 大模块(>20 文件)拆分为子任务
278
+ - 每个子任务分析 ≤10 文件
279
+ - `build.gradle` 依赖分析单独一个子任务
280
+ - layout XML / Compose 文件单独分组分析
281
+ - 生成文件(`*.generated.kt`, `BuildConfig`)跳过
282
+ - 测试文件(`androidTest/`, `test/`)单独分析