@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.
- package/LICENSE +21 -0
- package/README.md +235 -0
- package/VERSION +1 -0
- package/agents/code-reviewer.md +29 -0
- package/bin/atool.js +235 -0
- package/bin/postinstall.js +23 -0
- package/hooks/doc-sync-reminder +155 -0
- package/hooks/hooks-cursor.json +37 -0
- package/hooks/hooks.json +37 -0
- package/hooks/prompt-guard +135 -0
- package/hooks/session-start +286 -0
- package/install.sh +603 -0
- package/lib/analyze-source.sh +1265 -0
- package/lib/common.sh +1041 -0
- package/lib/compute-importance.sh +598 -0
- package/lib/detect-stack.sh +354 -0
- package/lib/generate-visualization.sh +266 -0
- package/lib/install-claude.sh +43 -0
- package/lib/install-cursor.sh +281 -0
- package/lib/install-hooks.sh +285 -0
- package/lib/install-kiro.sh +543 -0
- package/lib/install-mcp.sh +99 -0
- package/lib/install-skills.sh +129 -0
- package/lib/knowledge-graph.sh +1014 -0
- package/lib/multi-dimensional-analysis.sh +413 -0
- package/lib/pre-scan.sh +1045 -0
- package/lib/project-init.sh +552 -0
- package/lib/visualization-template.html +545 -0
- package/mcp/recommended.json +24 -0
- package/package.json +39 -0
- package/skills/_superpowers/.claude-plugin/marketplace.json +20 -0
- package/skills/_superpowers/.claude-plugin/plugin.json +20 -0
- package/skills/_superpowers/.codex/INSTALL.md +67 -0
- package/skills/_superpowers/.cursor-plugin/plugin.json +25 -0
- package/skills/_superpowers/.gitattributes +18 -0
- package/skills/_superpowers/.github/FUNDING.yml +3 -0
- package/skills/_superpowers/.github/ISSUE_TEMPLATE/bug_report.md +52 -0
- package/skills/_superpowers/.github/ISSUE_TEMPLATE/config.yml +5 -0
- package/skills/_superpowers/.github/ISSUE_TEMPLATE/feature_request.md +34 -0
- package/skills/_superpowers/.github/ISSUE_TEMPLATE/platform_support.md +23 -0
- package/skills/_superpowers/.github/PULL_REQUEST_TEMPLATE.md +87 -0
- package/skills/_superpowers/.opencode/INSTALL.md +83 -0
- package/skills/_superpowers/.opencode/plugins/superpowers.js +107 -0
- package/skills/_superpowers/CHANGELOG.md +13 -0
- package/skills/_superpowers/CODE_OF_CONDUCT.md +128 -0
- package/skills/_superpowers/GEMINI.md +2 -0
- package/skills/_superpowers/LICENSE +21 -0
- package/skills/_superpowers/README.md +187 -0
- package/skills/_superpowers/RELEASE-NOTES.md +1083 -0
- package/skills/_superpowers/agents/code-reviewer.md +48 -0
- package/skills/_superpowers/commands/brainstorm.md +5 -0
- package/skills/_superpowers/commands/execute-plan.md +5 -0
- package/skills/_superpowers/commands/write-plan.md +5 -0
- package/skills/_superpowers/docs/README.codex.md +126 -0
- package/skills/_superpowers/docs/README.opencode.md +130 -0
- package/skills/_superpowers/docs/plans/2025-11-22-opencode-support-design.md +294 -0
- package/skills/_superpowers/docs/plans/2025-11-22-opencode-support-implementation.md +1095 -0
- package/skills/_superpowers/docs/plans/2025-11-28-skills-improvements-from-user-feedback.md +711 -0
- package/skills/_superpowers/docs/plans/2026-01-17-visual-brainstorming.md +571 -0
- package/skills/_superpowers/docs/superpowers/plans/2026-01-22-document-review-system.md +301 -0
- package/skills/_superpowers/docs/superpowers/plans/2026-02-19-visual-brainstorming-refactor.md +523 -0
- package/skills/_superpowers/docs/superpowers/plans/2026-03-11-zero-dep-brainstorm-server.md +479 -0
- package/skills/_superpowers/docs/superpowers/plans/2026-03-23-codex-app-compatibility.md +564 -0
- package/skills/_superpowers/docs/superpowers/specs/2026-01-22-document-review-system-design.md +136 -0
- package/skills/_superpowers/docs/superpowers/specs/2026-02-19-visual-brainstorming-refactor-design.md +162 -0
- package/skills/_superpowers/docs/superpowers/specs/2026-03-11-zero-dep-brainstorm-server-design.md +118 -0
- package/skills/_superpowers/docs/superpowers/specs/2026-03-23-codex-app-compatibility-design.md +244 -0
- package/skills/_superpowers/docs/testing.md +303 -0
- package/skills/_superpowers/docs/windows/polyglot-hooks.md +212 -0
- package/skills/_superpowers/gemini-extension.json +6 -0
- package/skills/_superpowers/hooks/hooks-cursor.json +10 -0
- package/skills/_superpowers/hooks/hooks.json +16 -0
- package/skills/_superpowers/hooks/run-hook.cmd +46 -0
- package/skills/_superpowers/hooks/session-start +57 -0
- package/skills/_superpowers/package.json +6 -0
- package/skills/_superpowers/skills/brainstorming/SKILL.md +164 -0
- package/skills/_superpowers/skills/brainstorming/scripts/frame-template.html +214 -0
- package/skills/_superpowers/skills/brainstorming/scripts/helper.js +88 -0
- package/skills/_superpowers/skills/brainstorming/scripts/server.cjs +354 -0
- package/skills/_superpowers/skills/brainstorming/scripts/start-server.sh +148 -0
- package/skills/_superpowers/skills/brainstorming/scripts/stop-server.sh +56 -0
- package/skills/_superpowers/skills/brainstorming/spec-document-reviewer-prompt.md +49 -0
- package/skills/_superpowers/skills/brainstorming/visual-companion.md +287 -0
- package/skills/_superpowers/skills/dispatching-parallel-agents/SKILL.md +182 -0
- package/skills/_superpowers/skills/executing-plans/SKILL.md +70 -0
- package/skills/_superpowers/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/_superpowers/skills/receiving-code-review/SKILL.md +213 -0
- package/skills/_superpowers/skills/requesting-code-review/SKILL.md +105 -0
- package/skills/_superpowers/skills/requesting-code-review/code-reviewer.md +146 -0
- package/skills/_superpowers/skills/subagent-driven-development/SKILL.md +277 -0
- package/skills/_superpowers/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
- package/skills/_superpowers/skills/subagent-driven-development/implementer-prompt.md +113 -0
- package/skills/_superpowers/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/_superpowers/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/skills/_superpowers/skills/systematic-debugging/SKILL.md +296 -0
- package/skills/_superpowers/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/skills/_superpowers/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/skills/_superpowers/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/skills/_superpowers/skills/systematic-debugging/find-polluter.sh +63 -0
- package/skills/_superpowers/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/skills/_superpowers/skills/systematic-debugging/test-academic.md +14 -0
- package/skills/_superpowers/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/skills/_superpowers/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/skills/_superpowers/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/skills/_superpowers/skills/test-driven-development/SKILL.md +371 -0
- package/skills/_superpowers/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/skills/_superpowers/skills/using-git-worktrees/SKILL.md +218 -0
- package/skills/_superpowers/skills/using-superpowers/SKILL.md +115 -0
- package/skills/_superpowers/skills/using-superpowers/references/codex-tools.md +100 -0
- package/skills/_superpowers/skills/using-superpowers/references/gemini-tools.md +33 -0
- package/skills/_superpowers/skills/verification-before-completion/SKILL.md +139 -0
- package/skills/_superpowers/skills/writing-plans/SKILL.md +152 -0
- package/skills/_superpowers/skills/writing-plans/plan-document-reviewer-prompt.md +49 -0
- package/skills/_superpowers/skills/writing-skills/SKILL.md +655 -0
- package/skills/_superpowers/skills/writing-skills/anthropic-best-practices.md +1150 -0
- package/skills/_superpowers/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/_superpowers/skills/writing-skills/graphviz-conventions.dot +172 -0
- package/skills/_superpowers/skills/writing-skills/persuasion-principles.md +187 -0
- package/skills/_superpowers/skills/writing-skills/render-graphs.js +168 -0
- package/skills/_superpowers/skills/writing-skills/testing-skills-with-subagents.md +384 -0
- package/skills/_superpowers/tests/brainstorm-server/package-lock.json +36 -0
- package/skills/_superpowers/tests/brainstorm-server/package.json +10 -0
- package/skills/_superpowers/tests/brainstorm-server/server.test.js +427 -0
- package/skills/_superpowers/tests/brainstorm-server/windows-lifecycle.test.sh +351 -0
- package/skills/_superpowers/tests/brainstorm-server/ws-protocol.test.js +392 -0
- package/skills/_superpowers/tests/claude-code/README.md +158 -0
- package/skills/_superpowers/tests/claude-code/analyze-token-usage.py +168 -0
- package/skills/_superpowers/tests/claude-code/run-skill-tests.sh +187 -0
- package/skills/_superpowers/tests/claude-code/test-document-review-system.sh +177 -0
- package/skills/_superpowers/tests/claude-code/test-helpers.sh +202 -0
- package/skills/_superpowers/tests/claude-code/test-subagent-driven-development-integration.sh +314 -0
- package/skills/_superpowers/tests/claude-code/test-subagent-driven-development.sh +165 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/action-oriented.txt +3 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/after-planning-flow.txt +17 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/claude-suggested-it.txt +11 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/i-know-what-sdd-means.txt +8 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/mid-conversation-execute-plan.txt +3 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/please-use-brainstorming.txt +1 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/skip-formalities.txt +3 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/subagent-driven-development-please.txt +1 -0
- package/skills/_superpowers/tests/explicit-skill-requests/prompts/use-systematic-debugging.txt +1 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-all.sh +70 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-claude-describes-sdd.sh +100 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-extended-multiturn-test.sh +113 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-haiku-test.sh +144 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-multiturn-test.sh +143 -0
- package/skills/_superpowers/tests/explicit-skill-requests/run-test.sh +136 -0
- package/skills/_superpowers/tests/opencode/run-tests.sh +163 -0
- package/skills/_superpowers/tests/opencode/setup.sh +73 -0
- package/skills/_superpowers/tests/opencode/test-plugin-loading.sh +72 -0
- package/skills/_superpowers/tests/opencode/test-priority.sh +198 -0
- package/skills/_superpowers/tests/opencode/test-tools.sh +104 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/dispatching-parallel-agents.txt +8 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/executing-plans.txt +1 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/requesting-code-review.txt +3 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/systematic-debugging.txt +11 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/test-driven-development.txt +7 -0
- package/skills/_superpowers/tests/skill-triggering/prompts/writing-plans.txt +10 -0
- package/skills/_superpowers/tests/skill-triggering/run-all.sh +60 -0
- package/skills/_superpowers/tests/skill-triggering/run-test.sh +88 -0
- package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/design.md +81 -0
- package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/plan.md +172 -0
- package/skills/_superpowers/tests/subagent-driven-dev/go-fractals/scaffold.sh +45 -0
- package/skills/_superpowers/tests/subagent-driven-dev/run-test.sh +106 -0
- package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/design.md +70 -0
- package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/plan.md +222 -0
- package/skills/_superpowers/tests/subagent-driven-dev/svelte-todo/scaffold.sh +46 -0
- package/skills/ai-project-architecture/SKILL.md +632 -0
- package/skills/ai-project-architecture/reference/structure-rules.md +406 -0
- package/skills/ai-project-architecture/templates/compliance-report.md +300 -0
- package/skills/ai-project-architecture/templates/migration-plan.md +433 -0
- package/skills/ai-project-architecture/templates/verification-checklist.md +408 -0
- package/skills/android-conventions/SKILL.md +125 -0
- package/skills/atool-init/SKILL.md +141 -0
- package/skills/clarify-before-build/SKILL.md +107 -0
- package/skills/code-review/SKILL.md +406 -0
- package/skills/code-review/rules/architecture.md +285 -0
- package/skills/code-review/rules/coupling-cohesion.md +309 -0
- package/skills/code-review/rules/dead-code.md +115 -0
- package/skills/code-review/rules/deprecation-debt.md +279 -0
- package/skills/code-review/rules/duplication.md +104 -0
- package/skills/code-review/rules/error-security.md +143 -0
- package/skills/code-review/rules/maintainability.md +203 -0
- package/skills/code-review/rules/quality.md +158 -0
- package/skills/devops-conventions/SKILL.md +205 -0
- package/skills/doc-coauthoring/SKILL.md +392 -0
- package/skills/doc-standards-enforcer/SKILL.md +290 -0
- package/skills/doc-standards-enforcer/examples/valid-document-example.md +67 -0
- package/skills/doc-standards-enforcer/references/101-standards-summary.md +318 -0
- package/skills/doc-standards-enforcer/scripts/check_references.py +175 -0
- package/skills/doc-standards-enforcer/scripts/fix_common_issues.py +303 -0
- package/skills/doc-standards-enforcer/scripts/validate_doc_standards.py +332 -0
- package/skills/docx/LICENSE.txt +30 -0
- package/skills/docx/SKILL.md +200 -0
- package/skills/docx/docx-js.md +350 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/docx/ooxml/scripts/pack.py +159 -0
- package/skills/docx/ooxml/scripts/unpack.py +29 -0
- package/skills/docx/ooxml/scripts/validate.py +69 -0
- package/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/skills/docx/ooxml/scripts/validation/base.py +951 -0
- package/skills/docx/ooxml/scripts/validation/docx.py +274 -0
- package/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/skills/docx/ooxml.md +610 -0
- package/skills/docx/scripts/__init__.py +1 -0
- package/skills/docx/scripts/document.py +1276 -0
- package/skills/docx/scripts/templates/comments.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/skills/docx/scripts/templates/people.xml +3 -0
- package/skills/docx/scripts/utilities.py +374 -0
- package/skills/flutter-conventions/SKILL.md +70 -0
- package/skills/go-conventions/SKILL.md +230 -0
- package/skills/harmony-conventions/SKILL.md +156 -0
- package/skills/java-conventions/SKILL.md +277 -0
- package/skills/pdf/LICENSE.txt +30 -0
- package/skills/pdf/SKILL.md +297 -0
- package/skills/pdf/forms.md +205 -0
- package/skills/pdf/reference.md +612 -0
- package/skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/skills/pdf/scripts/create_validation_image.py +41 -0
- package/skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/skills/pptx/LICENSE.txt +30 -0
- package/skills/pptx/SKILL.md +487 -0
- package/skills/pptx/html2pptx.md +625 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/pptx/ooxml/scripts/pack.py +159 -0
- package/skills/pptx/ooxml/scripts/unpack.py +29 -0
- package/skills/pptx/ooxml/scripts/validate.py +69 -0
- package/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/skills/pptx/ooxml/scripts/validation/base.py +951 -0
- package/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/skills/pptx/ooxml.md +427 -0
- package/skills/pptx/scripts/html2pptx.js +979 -0
- package/skills/pptx/scripts/inventory.py +1020 -0
- package/skills/pptx/scripts/rearrange.py +231 -0
- package/skills/pptx/scripts/replace.py +385 -0
- package/skills/pptx/scripts/thumbnail.py +450 -0
- package/skills/project-analyze/SKILL.md +270 -0
- package/skills/project-analyze/phases/phase0-discovery.md +278 -0
- package/skills/project-analyze/phases/phase0.5-prescan.md +139 -0
- package/skills/project-analyze/phases/phase1-inventory.md +94 -0
- package/skills/project-analyze/phases/phase2-deep-analysis.md +249 -0
- package/skills/project-analyze/phases/phase2a-l4-analysis.md +94 -0
- package/skills/project-analyze/phases/phase2b-l5-analysis.md +97 -0
- package/skills/project-analyze/phases/phase3-knowledge-graph.md +120 -0
- package/skills/project-analyze/phases/phase3a-multi-dimensional.md +61 -0
- package/skills/project-analyze/phases/phase4-code-quality.md +81 -0
- package/skills/project-analyze/phases/phase5-synthesis.md +284 -0
- package/skills/project-analyze/phases/phase6-validation.md +179 -0
- package/skills/project-analyze/prompts/code-review-agent.md +122 -0
- package/skills/project-analyze/prompts/deep-analysis-agent.md +107 -0
- package/skills/project-analyze/prompts/inventory-agent.md +67 -0
- package/skills/project-analyze/prompts/l4-analysis-agent.md +98 -0
- package/skills/project-analyze/rules/android.md +282 -0
- package/skills/project-analyze/rules/devops.md +443 -0
- package/skills/project-analyze/rules/generic.md +243 -0
- package/skills/project-analyze/rules/go.md +289 -0
- package/skills/project-analyze/rules/harmony.md +257 -0
- package/skills/project-analyze/rules/java.md +507 -0
- package/skills/project-analyze/rules/mobile-flutter.md +315 -0
- package/skills/project-analyze/rules/mobile-react-native.md +283 -0
- package/skills/project-analyze/rules/mobile-swift.md +323 -0
- package/skills/project-analyze/rules/python.md +317 -0
- package/skills/project-analyze/rules/rust-tauri.md +243 -0
- package/skills/project-analyze/rules/rust.md +296 -0
- package/skills/project-analyze/rules/web-nextjs.md +364 -0
- package/skills/project-analyze/rules/web-react.md +298 -0
- package/skills/project-analyze/rules/web-vue.md +378 -0
- package/skills/project-analyze/rules/web.md +390 -0
- package/skills/project-query/SKILL.md +224 -0
- package/skills/project-query/rules/query-templates.md +212 -0
- package/skills/python-conventions/SKILL.md +169 -0
- package/skills/react-native-conventions/SKILL.md +73 -0
- package/skills/requirements-writer/README.md +153 -0
- package/skills/requirements-writer/SKILL.md +341 -0
- package/skills/requirements-writer/examples/prd-outline-example.md +217 -0
- package/skills/requirements-writer/templates/module-prd-template.md +362 -0
- package/skills/requirements-writer/templates/prd-outline-template.md +185 -0
- package/skills/requirements-writer/templates/user-story-template.md +1125 -0
- package/skills/rust-conventions/SKILL.md +361 -0
- package/skills/smart-dispatch/SKILL.md +296 -0
- package/skills/smart-dispatch/implementer-prompt.md +146 -0
- package/skills/smart-dispatch/reviewer-prompt.md +199 -0
- package/skills/software-architecture/SKILL.md +278 -0
- package/skills/swift-conventions/SKILL.md +72 -0
- package/skills/ui-ux-pro/SKILL.md +140 -0
- package/skills/verification-before-completion/SKILL.md +119 -0
- package/skills/web-conventions/SKILL.md +259 -0
- package/skills/webapp-testing/LICENSE.txt +202 -0
- package/skills/webapp-testing/SKILL.md +97 -0
- package/skills/webapp-testing/examples/console_logging.py +35 -0
- package/skills/webapp-testing/examples/element_discovery.py +40 -0
- package/skills/webapp-testing/examples/static_html_automation.py +33 -0
- package/skills/webapp-testing/scripts/with_server.py +106 -0
- package/skills/writing-plans/SKILL.md +144 -0
- package/skills/xlsx/LICENSE.txt +30 -0
- package/skills/xlsx/SKILL.md +292 -0
- package/skills/xlsx/recalc.py +178 -0
- package/templates/CLAUDE.md.android +57 -0
- package/templates/CLAUDE.md.devops +50 -0
- package/templates/CLAUDE.md.generic +34 -0
- package/templates/CLAUDE.md.go +67 -0
- package/templates/CLAUDE.md.harmony +54 -0
- package/templates/CLAUDE.md.java +56 -0
- package/templates/CLAUDE.md.mobile-flutter +38 -0
- package/templates/CLAUDE.md.mobile-react-native +37 -0
- package/templates/CLAUDE.md.mobile-swift +40 -0
- package/templates/CLAUDE.md.python +65 -0
- package/templates/CLAUDE.md.rust +68 -0
- package/templates/CLAUDE.md.rust-tauri +120 -0
- package/templates/CLAUDE.md.web +63 -0
- package/templates/COMPONENT.md.android +58 -0
- package/templates/COMPONENT.md.devops +54 -0
- package/templates/COMPONENT.md.generic +35 -0
- package/templates/COMPONENT.md.go +59 -0
- package/templates/COMPONENT.md.harmony +63 -0
- package/templates/COMPONENT.md.java +69 -0
- package/templates/COMPONENT.md.mobile-flutter +56 -0
- package/templates/COMPONENT.md.mobile-react-native +55 -0
- package/templates/COMPONENT.md.mobile-swift +56 -0
- package/templates/COMPONENT.md.python +67 -0
- package/templates/COMPONENT.md.rust +57 -0
- package/templates/COMPONENT.md.rust-tauri +66 -0
- package/templates/COMPONENT.md.web +39 -0
- package/templates/README.md.android +71 -0
- package/templates/README.md.devops +68 -0
- package/templates/README.md.generic +39 -0
- package/templates/README.md.go +70 -0
- package/templates/README.md.harmony +72 -0
- package/templates/README.md.java +73 -0
- package/templates/README.md.mobile-flutter +69 -0
- package/templates/README.md.mobile-react-native +65 -0
- package/templates/README.md.mobile-swift +69 -0
- package/templates/README.md.monorepo +59 -0
- package/templates/README.md.python +66 -0
- package/templates/README.md.rust +69 -0
- package/templates/README.md.rust-tauri +149 -0
- package/templates/README.md.web +94 -0
- package/templates/UI_STYLE.md.android +74 -0
- package/templates/UI_STYLE.md.devops +50 -0
- package/templates/UI_STYLE.md.generic +31 -0
- package/templates/UI_STYLE.md.go +49 -0
- package/templates/UI_STYLE.md.harmony +71 -0
- package/templates/UI_STYLE.md.java +61 -0
- package/templates/UI_STYLE.md.mobile-flutter +70 -0
- package/templates/UI_STYLE.md.mobile-react-native +71 -0
- package/templates/UI_STYLE.md.mobile-swift +71 -0
- package/templates/UI_STYLE.md.python +58 -0
- package/templates/UI_STYLE.md.rust +52 -0
- package/templates/UI_STYLE.md.rust-tauri +102 -0
- package/templates/UI_STYLE.md.web +92 -0
- package/templates/cursor-rules.android.mdc +33 -0
- package/templates/cursor-rules.devops.mdc +32 -0
- package/templates/cursor-rules.generic.mdc +25 -0
- package/templates/cursor-rules.go.mdc +34 -0
- package/templates/cursor-rules.harmony.mdc +30 -0
- package/templates/cursor-rules.java.mdc +30 -0
- package/templates/cursor-rules.mobile-flutter.mdc +42 -0
- package/templates/cursor-rules.mobile-react-native.mdc +43 -0
- package/templates/cursor-rules.mobile-swift.mdc +42 -0
- package/templates/cursor-rules.python.mdc +33 -0
- package/templates/cursor-rules.rust-tauri.mdc +67 -0
- package/templates/cursor-rules.rust.mdc +30 -0
- package/templates/cursor-rules.web.mdc +30 -0
- package/templates/kiro-steering.android.md +39 -0
- package/templates/kiro-steering.devops.md +32 -0
- package/templates/kiro-steering.generic.md +28 -0
- package/templates/kiro-steering.go.md +41 -0
- package/templates/kiro-steering.harmony.md +36 -0
- package/templates/kiro-steering.java.md +37 -0
- package/templates/kiro-steering.mobile-flutter.md +73 -0
- package/templates/kiro-steering.mobile-react-native.md +71 -0
- package/templates/kiro-steering.mobile-swift.md +62 -0
- package/templates/kiro-steering.python.md +34 -0
- package/templates/kiro-steering.rust-tauri.md +50 -0
- package/templates/kiro-steering.rust.md +36 -0
- package/templates/kiro-steering.web.md +41 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: clarify-before-build
|
|
3
|
+
description: 在动手写代码前,先分级评估任务复杂度,通过上下文感知提问澄清需求,避免幻觉和偏差
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Clarify Before Build
|
|
8
|
+
|
|
9
|
+
在任何功能实现之前,先评估任务复杂度并澄清需求。这是减少 AI 幻觉和需求偏差的核心机制。
|
|
10
|
+
|
|
11
|
+
## 任务复杂度分级
|
|
12
|
+
|
|
13
|
+
在收到用户的实现请求时,先判断复杂度等级:
|
|
14
|
+
|
|
15
|
+
| 级别 | 名称 | 判断标准 | 行为 |
|
|
16
|
+
|------|------|----------|------|
|
|
17
|
+
| **Tier 0** | 无需提问 | 单值修改、typo、格式调整、明确的单行改动 | 直接执行 |
|
|
18
|
+
| **Tier 1** | 快速确认 | 小改动但有 1-2 个模糊点(如"加个 loading") | 问 1-2 个关键问题 |
|
|
19
|
+
| **Tier 2** | 结构化澄清 | 新功能、中等复杂度(如"加搜索功能"、"做个设置页") | 问 3-5 个上下文相关问题 |
|
|
20
|
+
| **Tier 3** | 完整设计 | 新平台、架构级、需求模糊(如"做一个天气 App") | 委托给 `/brainstorming` |
|
|
21
|
+
|
|
22
|
+
### 判断 Checklist
|
|
23
|
+
|
|
24
|
+
对每个实现请求,快速过以下问题:
|
|
25
|
+
|
|
26
|
+
1. **需求是否完全明确?** — 用户是否已给出所有必要细节(文件位置、具体行为、边界条件)?
|
|
27
|
+
2. **是否存在多种合理实现方式?** — 如果是,需要确认偏好
|
|
28
|
+
3. **改动范围是否可控?** — 是否只涉及 1-3 个文件?
|
|
29
|
+
4. **是否需要引入新依赖/新模式?** — 如果是,需要确认
|
|
30
|
+
|
|
31
|
+
如果以上任一回答为"不确定",则至少升一级。
|
|
32
|
+
|
|
33
|
+
### 退出机制
|
|
34
|
+
|
|
35
|
+
当用户发出以下信号时,立即按 Tier 0 处理,不再提问:
|
|
36
|
+
|
|
37
|
+
- "别问了"、"不要问"、"别再问了"
|
|
38
|
+
- "直接做"、"直接实现"、"直接开始"
|
|
39
|
+
- "just do it"、"go ahead"、"stop asking"
|
|
40
|
+
- "不用确认"、"跳过提问"、"不要确认"
|
|
41
|
+
|
|
42
|
+
## 上下文感知提问原则
|
|
43
|
+
|
|
44
|
+
### 先读后问
|
|
45
|
+
|
|
46
|
+
提问前必须先了解项目现状,不问项目中已有明确答案的问题:
|
|
47
|
+
|
|
48
|
+
1. 读 `CLAUDE.md` / `COMPONENT.md` — 了解项目结构和规范
|
|
49
|
+
2. 读 `package.json` / `pom.xml` / `Cargo.toml` 等依赖文件 — 了解技术栈
|
|
50
|
+
3. 扫描相关源码文件 — 了解现有模式和代码风格
|
|
51
|
+
|
|
52
|
+
### 好的提问 vs 坏的提问
|
|
53
|
+
|
|
54
|
+
**坏**(浪费用户时间,答案已在项目中):
|
|
55
|
+
- "你用什么前端框架?" — package.json 已有答案
|
|
56
|
+
- "项目用什么状态管理?" — 源码已明确
|
|
57
|
+
|
|
58
|
+
**好**(基于上下文的精确提问):
|
|
59
|
+
- "我看到你用 Zustand 管理状态,新的搜索功能的状态也用这个模式?还是需要独立的 store?"
|
|
60
|
+
- "现有 API 都用 REST,新的实时通知功能你倾向于 WebSocket 还是 SSE?"
|
|
61
|
+
|
|
62
|
+
### 反幻觉规则
|
|
63
|
+
|
|
64
|
+
1. **不假设已安装的库** — 使用前先检查 `package.json` / `pom.xml` 等依赖文件
|
|
65
|
+
2. **不假设现有模式** — 先读相关源码确认实际使用的模式,不凭经验猜测
|
|
66
|
+
3. **不假设用户偏好** — 多种合理方案时,列出选项让用户选择
|
|
67
|
+
4. **不假设项目约定** — 先读项目配置和规范文件
|
|
68
|
+
|
|
69
|
+
## 按场景的问题模板
|
|
70
|
+
|
|
71
|
+
### 新功能
|
|
72
|
+
|
|
73
|
+
- 这个功能的主要使用场景是什么?面向哪类用户?
|
|
74
|
+
- 优先级最高的核心功能是哪个?哪些可以后续迭代?
|
|
75
|
+
- 是否需要与现有功能(如登录、权限)集成?
|
|
76
|
+
- 对性能/可访问性/移动端适配有什么要求?
|
|
77
|
+
|
|
78
|
+
### Bug 修复
|
|
79
|
+
|
|
80
|
+
- 能描述一下复现步骤和预期行为吗?
|
|
81
|
+
- 这个 bug 是在特定条件下才出现,还是普遍存在?
|
|
82
|
+
- 是否有相关的错误日志或截图?
|
|
83
|
+
|
|
84
|
+
### 重构
|
|
85
|
+
|
|
86
|
+
- 重构的动机是什么?性能、可读性、还是为后续功能做准备?
|
|
87
|
+
- 有哪些行为必须保持不变(即回归风险点)?
|
|
88
|
+
- 是否有测试覆盖需要重构的区域?
|
|
89
|
+
|
|
90
|
+
### UI 开发
|
|
91
|
+
|
|
92
|
+
- 有设计稿或 Figma 链接吗?
|
|
93
|
+
- 需要支持的屏幕尺寸/断点有哪些?
|
|
94
|
+
- 动画和交互细节有什么要求?
|
|
95
|
+
|
|
96
|
+
### 后端/API
|
|
97
|
+
|
|
98
|
+
- API 的认证方式是什么?
|
|
99
|
+
- 预期的并发量和数据量级?
|
|
100
|
+
- 是否需要分页/缓存/限流?
|
|
101
|
+
|
|
102
|
+
## 与其他 Skill 的协作
|
|
103
|
+
|
|
104
|
+
- **Tier 3** → 委托给 `/brainstorming` 进行完整的设计探索
|
|
105
|
+
- **新功能 + 有测试要求** → `/test-driven-development`
|
|
106
|
+
- **重构 + 有回归风险** → `/systematic-debugging`
|
|
107
|
+
- **完成后** → 检查文档是否需要更新(`/doc-coauthoring`)
|
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: code-review
|
|
3
|
+
description: "AI-driven code quality analysis across 8 dimensions (quality, dead-code, duplication, error-security, architecture, maintainability, coupling-cohesion, deprecation-debt) with scoring, fix suggestions, and refactoring plans. Use independently via /code-review or auto-triggered by project-analyze v5.0 Phase 4."
|
|
4
|
+
version: 0.3.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Code Review Skill (aTool v3.0)
|
|
8
|
+
|
|
9
|
+
AI 主导的代码质量分析,覆盖 8 个维度(含架构合规、可维护性、耦合内聚、技术债务),生成评分报告、修复建议和重构方案。
|
|
10
|
+
|
|
11
|
+
## 触发方式
|
|
12
|
+
|
|
13
|
+
| 方式 | 说明 |
|
|
14
|
+
|------|------|
|
|
15
|
+
| `/code-review` | 分析当前项目 |
|
|
16
|
+
| `/code-review src/auth/` | 分析指定目录 |
|
|
17
|
+
| project-analyze v5.0 Phase 4 | 自动触发 |
|
|
18
|
+
| verification-before-completion | 轻量级检查(仅修改文件) |
|
|
19
|
+
|
|
20
|
+
## 分析步骤
|
|
21
|
+
|
|
22
|
+
### Step 1: 确定分析范围
|
|
23
|
+
|
|
24
|
+
- 用户指定目录 → 分析该目录下所有源文件
|
|
25
|
+
- 无指定 → 分析项目根目录下所有源文件
|
|
26
|
+
- 轻量模式(SDD) → 仅分析当前任务修改的文件
|
|
27
|
+
- **知识图谱模式** → 如果 `.atool-docs/knowledge-graph.json` 存在,利用图谱数据进行耦合分析
|
|
28
|
+
|
|
29
|
+
排除规则(与 project-analyze 一致):
|
|
30
|
+
- `node_modules/`, `vendor/`, `.git/`, `dist/`, `build/`, `target/`
|
|
31
|
+
- 锁文件、生成文件、第三方代码
|
|
32
|
+
- 测试文件(`*_test.*`, `*.spec.*`, `test_*`)
|
|
33
|
+
|
|
34
|
+
### Step 2: 加载分析规则
|
|
35
|
+
|
|
36
|
+
从 `skills/code-review/rules/` 加载 **8 个维度**规则:
|
|
37
|
+
|
|
38
|
+
| # | 维度 | 文件 | 权重 | 说明 |
|
|
39
|
+
|---|------|------|------|------|
|
|
40
|
+
| 1 | 代码质量 | `rules/quality.md` | 0.15 | 圈复杂度、函数长度、嵌套深度、注释率、参数数量、Halstead Volume |
|
|
41
|
+
| 2 | 死代码检测 | `rules/dead-code.md` | 0.10 | 未使用函数/import、不可达代码、被注释代码块 |
|
|
42
|
+
| 3 | 重复代码 | `rules/duplication.md` | 0.10 | 相似代码块、函数体、抽象不足 |
|
|
43
|
+
| 4 | 错误处理与安全 | `rules/error-security.md` | 0.20 | 空catch、SQL注入、硬编码凭证、未验证输入 |
|
|
44
|
+
| 5 | 架构合规 | `rules/architecture.md` | 0.15 | 分层违反、DDD合规、微服务适应性、包结构 |
|
|
45
|
+
| 6 | 可维护性 | `rules/maintainability.md` | 0.10 | SQALE修复工作量、MI指数、代码异味 |
|
|
46
|
+
| 7 | 耦合与内聚 | `rules/coupling-cohesion.md` | 0.10 | Ca/Ce/Instability、循环依赖、CK Metrics、DSM |
|
|
47
|
+
| 8 | 废弃与债务 | `rules/deprecation-debt.md` | 0.10 | 已废弃API、TODO老化、过时模式、废弃代码段 |
|
|
48
|
+
|
|
49
|
+
**权重之和验证:** 0.15 + 0.10 + 0.10 + 0.20 + 0.15 + 0.10 + 0.10 + 0.10 = **1.00** ✓
|
|
50
|
+
|
|
51
|
+
**维度 6/7 加载条件:**
|
|
52
|
+
- 维度 7(耦合与内聚)需要 `.atool-docs/knowledge-graph.json`,不存在时跳过(标记 "skipped (no graph data)")
|
|
53
|
+
- 维度 6(可维护性)始终加载,MI 计算需要维度 1 的 Halstead Volume 数据
|
|
54
|
+
|
|
55
|
+
如果项目有技术栈对应规则(如 `rules/rust.md`),额外加载。
|
|
56
|
+
|
|
57
|
+
### Step 3: 文件扫描
|
|
58
|
+
|
|
59
|
+
使用 project-analyze 的扫描模式识别源文件:
|
|
60
|
+
- 按文件扩展名过滤(排除 .md, .json, .yaml, .css 等非源文件)
|
|
61
|
+
- 按模块/目录分组(每组最多 **8 个文件**,为规则内容留更多空间)
|
|
62
|
+
- 跳过超大文件(>100KB,只提取签名)
|
|
63
|
+
|
|
64
|
+
### Step 4: 多 Agent 并行分析
|
|
65
|
+
|
|
66
|
+
为每个模块/文件组启动 sub-agent:
|
|
67
|
+
- 每个 sub-agent 读取该模块所有源文件
|
|
68
|
+
- 按 8 个维度规则逐项检查
|
|
69
|
+
- 输出:问题列表(severity + file + line + issue + suggestion)
|
|
70
|
+
|
|
71
|
+
**Agent Dispatch Control(硬性限制):** 最多 5 个并行 sub-agent。当模块/文件组超过 5 个时:
|
|
72
|
+
1. 按模块重要性评分(如可获取)或文件数降序排列
|
|
73
|
+
2. 派发第一批 5 个 agent
|
|
74
|
+
3. 等待当前批次所有 agent 完成后再派发下一批
|
|
75
|
+
4. 重复直到所有组分析完毕
|
|
76
|
+
这是防止 LLM 并发限制和 API 限流的硬性要求。
|
|
77
|
+
|
|
78
|
+
**Sub-agent prompt 必须包含:**
|
|
79
|
+
1. 分析范围(文件列表)
|
|
80
|
+
2. **适用的维度规则**的完整内容(不是引用路径)
|
|
81
|
+
- 维度 1-5, 6, 8:始终注入
|
|
82
|
+
- 维度 7(耦合与内聚):仅当知识图谱存在时注入图谱摘要
|
|
83
|
+
3. 输出格式要求(Markdown 表格)
|
|
84
|
+
4. 语言约束(中文输出)
|
|
85
|
+
5. 项目技术栈信息(用于架构合规维度判断)
|
|
86
|
+
6. **知识图谱上下文**(如存在):当前模块的 Ca/Ce 值、循环依赖状态、依赖模块列表
|
|
87
|
+
|
|
88
|
+
### Step 5: 评分聚合
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
# 维度评分(0-100,越高越差)
|
|
92
|
+
dimension_score = min(issues_weighted_sum / normalization_factor * 100, 100)
|
|
93
|
+
|
|
94
|
+
# 文件级评分(8 维度加权)
|
|
95
|
+
file_score = sum(dimension_score * dimension_weight)
|
|
96
|
+
where weights: quality=0.15, dead-code=0.10, duplication=0.10,
|
|
97
|
+
error-security=0.20, architecture=0.15, maintainability=0.10,
|
|
98
|
+
coupling-cohesion=0.10, deprecation-debt=0.10
|
|
99
|
+
|
|
100
|
+
# 跳过的维度权重重分配
|
|
101
|
+
if coupling-cohesion skipped:
|
|
102
|
+
redistribute 0.10 proportionally to remaining dimensions
|
|
103
|
+
|
|
104
|
+
# 项目级评分(按文件大小加权)
|
|
105
|
+
project_score = sum(file_score * file_line_count) / sum(file_line_count)
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Step 6: 生成报告
|
|
109
|
+
|
|
110
|
+
输出 `CODE_REVIEW.md` 到项目根目录(同时写入 `.atool-docs/code-review/summary.json`)。
|
|
111
|
+
|
|
112
|
+
## 健康等级
|
|
113
|
+
|
|
114
|
+
| 分数 | 等级 | 描述 |
|
|
115
|
+
|------|------|------|
|
|
116
|
+
| 0-20 | 健康 | 代码质量良好,可放心维护 |
|
|
117
|
+
| 20-40 | 一般 | 有改进空间但不影响开发效率 |
|
|
118
|
+
| 40-60 | 需关注 | 存在明显问题,建议优先修复 |
|
|
119
|
+
| 60-80 | 较差 | 代码质量较差,维护成本高 |
|
|
120
|
+
| 80-100 | 严重 | 严重技术债务,需系统性重构 |
|
|
121
|
+
|
|
122
|
+
## 输出模板
|
|
123
|
+
|
|
124
|
+
```markdown
|
|
125
|
+
# 代码质量报告
|
|
126
|
+
|
|
127
|
+
**生成时间:** {date}
|
|
128
|
+
**分析范围:** {scope} ({file_count} 文件, {line_count} 行)
|
|
129
|
+
**技术栈:** {stack}
|
|
130
|
+
**分析版本:** v3.0 (8-dimension)
|
|
131
|
+
|
|
132
|
+
## 综合评分:{score}/100 — {health_level}
|
|
133
|
+
|
|
134
|
+
| 维度 | 评分 | 权重 | 问题数 | 状态 |
|
|
135
|
+
|------|------|------|--------|------|
|
|
136
|
+
| 代码质量 | {score}/100 | 0.15 | {count} | ✅ |
|
|
137
|
+
| 死代码检测 | {score}/100 | 0.10 | {count} | ✅ |
|
|
138
|
+
| 重复代码 | {score}/100 | 0.10 | {count} | ✅ |
|
|
139
|
+
| 错误处理与安全 | {score}/100 | 0.20 | {count} | ✅ |
|
|
140
|
+
| 架构合规 | {score}/100 | 0.15 | {count} | ✅ |
|
|
141
|
+
| 可维护性 | {score}/100 | 0.10 | {count} | ✅ |
|
|
142
|
+
| 耦合与内聚 | {score}/100 | 0.10 | {count} | ✅/⏭️ |
|
|
143
|
+
| 废弃与债务 | {score}/100 | 0.10 | {count} | ✅ |
|
|
144
|
+
|
|
145
|
+
## 汇总
|
|
146
|
+
|
|
147
|
+
- Critical: {n} | Warning: {n} | Info: {n}
|
|
148
|
+
- 死代码估计:约 {lines} 行({percentage}%)
|
|
149
|
+
- 技术债务比率:{ratio}({level})
|
|
150
|
+
- 估算修复工作量:{hours} 人时
|
|
151
|
+
- 循环依赖:{cycle_count} 个
|
|
152
|
+
|
|
153
|
+
## 代码质量
|
|
154
|
+
|
|
155
|
+
| Severity | File | Line | Issue | Suggestion |
|
|
156
|
+
|----------|------|------|-------|------------|
|
|
157
|
+
| ... | ... | ... | ... | ... |
|
|
158
|
+
|
|
159
|
+
## 死代码检测
|
|
160
|
+
|
|
161
|
+
| Severity | File | Line | Issue |
|
|
162
|
+
|----------|------|------|-------|
|
|
163
|
+
| ... | ... | ... | ... |
|
|
164
|
+
|
|
165
|
+
## 重复代码
|
|
166
|
+
|
|
167
|
+
| Severity | Files | Lines | Issue |
|
|
168
|
+
|----------|-------|-------|-------|
|
|
169
|
+
| ... | ... | ... | ... |
|
|
170
|
+
|
|
171
|
+
## 错误处理与安全
|
|
172
|
+
|
|
173
|
+
| Severity | File | Line | Issue |
|
|
174
|
+
|----------|------|------|-------|
|
|
175
|
+
| ... | ... | ... | ... |
|
|
176
|
+
|
|
177
|
+
## 架构合规评估
|
|
178
|
+
|
|
179
|
+
### 分层违反
|
|
180
|
+
|
|
181
|
+
| Severity | File | Layer | Violation | Suggestion |
|
|
182
|
+
|----------|------|-------|-----------|------------|
|
|
183
|
+
| ... | ... | ... | ... | ... |
|
|
184
|
+
|
|
185
|
+
### 微服务适应性(如适用)
|
|
186
|
+
|
|
187
|
+
| 检测项 | 状态 | 详情 | 建议 |
|
|
188
|
+
|--------|------|------|------|
|
|
189
|
+
| ... | ... | ... | ... |
|
|
190
|
+
|
|
191
|
+
### 包结构
|
|
192
|
+
|
|
193
|
+
| 检测项 | 状态 | 详情 |
|
|
194
|
+
|--------|------|------|
|
|
195
|
+
| ... | ... | ... |
|
|
196
|
+
|
|
197
|
+
## 可维护性评估
|
|
198
|
+
|
|
199
|
+
**技术债务比率:** {ratio} — {level}
|
|
200
|
+
**MI 均值:** {mi_value}
|
|
201
|
+
**估算修复工作量:** {hours} 人时
|
|
202
|
+
|
|
203
|
+
| 异味类型 | 数量 | 总修复时间 |
|
|
204
|
+
|----------|------|-----------|
|
|
205
|
+
| ... | ... | ... |
|
|
206
|
+
|
|
207
|
+
### 高风险文件
|
|
208
|
+
|
|
209
|
+
| 文件 | MI | CC | 最大函数长度 | 风险因素 |
|
|
210
|
+
|------|-----|-----|------------|---------|
|
|
211
|
+
| ... | ... | ... | ... | ... |
|
|
212
|
+
|
|
213
|
+
## 耦合与内聚(知识图谱驱动)
|
|
214
|
+
|
|
215
|
+
**平均耦合度:** Ca={avg_ca}, Ce={avg_ce}
|
|
216
|
+
**循环依赖:** {cycle_count} 个
|
|
217
|
+
|
|
218
|
+
### 模块耦合矩阵
|
|
219
|
+
|
|
220
|
+
{DSM matrix}
|
|
221
|
+
|
|
222
|
+
### 循环依赖
|
|
223
|
+
|
|
224
|
+
| 循环路径 | 涉及模块数 | 破坏建议 |
|
|
225
|
+
|----------|-----------|---------|
|
|
226
|
+
| ... | ... | ... |
|
|
227
|
+
|
|
228
|
+
### CK Metrics 告警(OO 项目)
|
|
229
|
+
|
|
230
|
+
| 类 | WMC | CBO | LCOM | 问题 |
|
|
231
|
+
|----|-----|-----|------|------|
|
|
232
|
+
| ... | ... | ... | ... | ... |
|
|
233
|
+
|
|
234
|
+
## 废弃与债务
|
|
235
|
+
|
|
236
|
+
**已废弃 API:** {count} 处
|
|
237
|
+
**TODO/FIXME 积压:** {count} 个(其中严重老化 {n} 个)
|
|
238
|
+
**过时模式:** {count} 处
|
|
239
|
+
|
|
240
|
+
### 已废弃 API 使用
|
|
241
|
+
|
|
242
|
+
| 严重度 | 文件 | 行 | 废弃 API | 替代方案 |
|
|
243
|
+
|--------|------|-----|---------|---------|
|
|
244
|
+
| ... | ... | ... | ... | ... |
|
|
245
|
+
|
|
246
|
+
### TODO 老化分析
|
|
247
|
+
|
|
248
|
+
| 严重度 | 文件 | 行 | 标记 | 内容 | 年龄 |
|
|
249
|
+
|--------|------|-----|------|------|------|
|
|
250
|
+
| ... | ... | ... | ... | ... | ... |
|
|
251
|
+
|
|
252
|
+
## 模块级架构健康度
|
|
253
|
+
|
|
254
|
+
| 模块 | 分层合规 | 耦合 | 内聚 | 债务 | 综合 | 严重问题数 |
|
|
255
|
+
|------|----------|------|------|------|------|-----------|
|
|
256
|
+
| ... | ... | ... | ... | ... | ... | ... |
|
|
257
|
+
|
|
258
|
+
## 重构建议
|
|
259
|
+
|
|
260
|
+
### 高优先级重构(影响架构健康)
|
|
261
|
+
|
|
262
|
+
1. **{重构名称}**
|
|
263
|
+
- 当前状态:{描述}
|
|
264
|
+
- 目标状态:{描述}
|
|
265
|
+
- 影响范围:{文件列表}
|
|
266
|
+
- 步骤:
|
|
267
|
+
1. {step 1}
|
|
268
|
+
2. {step 2}
|
|
269
|
+
3. {step 3}
|
|
270
|
+
- 预计工作量:{S/M/L}
|
|
271
|
+
|
|
272
|
+
## 优先修复清单(Top 10)
|
|
273
|
+
|
|
274
|
+
1. [{severity}] {file}:{line} — {issue} → {fix_suggestion}
|
|
275
|
+
2. ...
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
## 轻量级模式(SDD 集成)
|
|
279
|
+
|
|
280
|
+
用于 `verification-before-completion` 和 `writing-plans` 中的代码质量检查。
|
|
281
|
+
|
|
282
|
+
**与完整分析的区别:**
|
|
283
|
+
|
|
284
|
+
| 特性 | 轻量级 | 完整分析 |
|
|
285
|
+
|------|--------|----------|
|
|
286
|
+
| 范围 | 当前修改的文件 | 全项目或指定目录 |
|
|
287
|
+
| 维度 | 仅 Critical 级别检查 | 全部 8 维度 |
|
|
288
|
+
| 输出 | 内联反馈,无文件 | CODE_REVIEW.md |
|
|
289
|
+
| 评分 | 不评分 | 完整评分 |
|
|
290
|
+
| 耗时 | <1 分钟 | 5-15 分钟 |
|
|
291
|
+
|
|
292
|
+
**轻量级检查项(仅 Critical):**
|
|
293
|
+
- 硬编码凭证/密钥
|
|
294
|
+
- SQL 注入风险
|
|
295
|
+
- 空 catch/except 块
|
|
296
|
+
- 不可达代码
|
|
297
|
+
- 函数圈复杂度 >15
|
|
298
|
+
- 函数长度 >120 行
|
|
299
|
+
- 分层违反(Controller 直接调用 Repository/DAO)
|
|
300
|
+
- **已废弃 Critical API 使用**(React 废弃生命周期、Vue 2 废弃 API、eval/exec)
|
|
301
|
+
|
|
302
|
+
## Phase 4 集成(project-analyze v5.0)
|
|
303
|
+
|
|
304
|
+
在 project-analyze v5.0 的 Phase 4 中自动调用:
|
|
305
|
+
- Phase 0-1: 不执行代码审查
|
|
306
|
+
- Phase 2 (L2+): 执行完整 8 维度代码审查,生成 CODE_REVIEW.md
|
|
307
|
+
- Phase 2 (L3): 执行完整代码审查 + 每个问题的修复代码建议 + 重构方案
|
|
308
|
+
|
|
309
|
+
## Skill 协作
|
|
310
|
+
|
|
311
|
+
### 与 software-architecture 的协作
|
|
312
|
+
|
|
313
|
+
- 当 Dimension 5(架构合规)发现**重度架构违反**时(如:分层大面积违反、循环依赖 >3 个、微服务边界严重不合理),在报告末尾追加:
|
|
314
|
+
> ⚠️ 检测到重大架构合规问题。建议运行 `/software-architecture` skill 进行系统级架构评审,确定根因和改进方案。
|
|
315
|
+
- 架构合规评分 < 40 的模块自动标记为「需架构评审」
|
|
316
|
+
|
|
317
|
+
### 与 conventions skills 的协作
|
|
318
|
+
|
|
319
|
+
- 8 个维度规则提供通用检查标准;**如需更详细的栈级规范**(如 Java 命名约定、React 组件规范、Go 错误处理模式),参考对应的 `{stack}-conventions` skill
|
|
320
|
+
- 架构合规维度中的分层检查应与对应 conventions skill 的分层规则保持一致
|
|
321
|
+
- 支持的 conventions skills:`java-conventions`、`web-conventions`、`go-conventions`、`python-conventions`、`rust-conventions`、`swift-conventions`、`flutter-conventions`、`react-native-conventions`、`android-conventions`、`harmony-conventions`、`devops-conventions`
|
|
322
|
+
|
|
323
|
+
### 与 project-query 的协作
|
|
324
|
+
|
|
325
|
+
- 需要查询分析结果的详细数据时,建议运行 `/project-query`
|
|
326
|
+
- 可查询 CODE_REVIEW.md 的评分明细、特定维度问题列表、模块级健康度等结构化数据
|
|
327
|
+
|
|
328
|
+
### 与 doc-standards-enforcer 的协作
|
|
329
|
+
|
|
330
|
+
- 生成的 `CODE_REVIEW.md` 和 `.atool-docs/` 下的报告文件应遵循 `doc-standards-enforcer` 的格式规范
|
|
331
|
+
- 独立运行的 `/code-review` 不强制执行文档标准验证,但建议用户在文档正式交付前使用 `doc-standards-enforcer` 检查
|
|
332
|
+
|
|
333
|
+
**知识图谱集成:**
|
|
334
|
+
- Phase 3 完成后,`.atool-docs/knowledge-graph.json` 可用于维度 7 的耦合分析
|
|
335
|
+
- 如果 Phase 4 在 Phase 3 之前运行(如独立调用 `/code-review`),维度 7 跳过
|
|
336
|
+
- 独立调用时建议先运行 `/project-analyze --phase 0-3` 生成知识图谱
|
|
337
|
+
- 知识图谱格式兼容 v5.0(14 node types, 24 edge types),自动适配新旧版本
|
|
338
|
+
|
|
339
|
+
MODULE-DOC.md 新增以下章节:
|
|
340
|
+
- `## 已知问题` — 该模块的代码质量问题摘要
|
|
341
|
+
- `## 架构合规评估` — 分层合规表格 + 包结构分析 + 依赖方向
|
|
342
|
+
- `## 耦合分析` — Ca/Ce/Instability + 循环依赖 + CK Metrics
|
|
343
|
+
- `## 技术债务` — MI 指数 + 废弃 API + TODO 老化
|
|
344
|
+
|
|
345
|
+
## 跨 IDE 适配
|
|
346
|
+
|
|
347
|
+
### IDE 检测逻辑
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
if "Agent" tool available (sub-agent dispatch):
|
|
351
|
+
IDE = "claude" → 并行 sub-agent 模式
|
|
352
|
+
elif Cursor environment detected (CURSOR_* env vars):
|
|
353
|
+
IDE = "cursor" → 顺序分析模式
|
|
354
|
+
elif Kiro environment detected:
|
|
355
|
+
IDE = "kiro" → 轻量级模式
|
|
356
|
+
else:
|
|
357
|
+
IDE = "claude" → 默认并行
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### 执行模式矩阵
|
|
361
|
+
|
|
362
|
+
| 模式 | 适用 IDE | 分析方式 | 维度 | 输出 |
|
|
363
|
+
|------|----------|----------|------|------|
|
|
364
|
+
| 完整并行 | Claude Code | 多 sub-agent 并行 | 全部 8 维度 | CODE_REVIEW.md + summary.json |
|
|
365
|
+
| 顺序分析 | Cursor | 逐模块顺序分析 | 全部 8 维度 | CODE_REVIEW.md + summary.json |
|
|
366
|
+
| 轻量级 | Kiro | 仅 Critical 检查,无 sub-agent | 仅 Critical 级 | 内联反馈,无文件输出 |
|
|
367
|
+
|
|
368
|
+
### Cursor 顺序模式
|
|
369
|
+
|
|
370
|
+
- 模块按 importance 排序,逐个分析
|
|
371
|
+
- 每完成一个模块输出进度行:`[Code Review] ✓ module-name (12 issues found)`
|
|
372
|
+
- 所有 8 个维度规则正常加载执行
|
|
373
|
+
- 评分聚合、CODE_REVIEW.md 生成与 Claude 模式一致
|
|
374
|
+
|
|
375
|
+
### Kiro 轻量级模式
|
|
376
|
+
|
|
377
|
+
- **不启动 sub-agent**,由主 agent 直接执行
|
|
378
|
+
- 仅执行「轻量级检查项」(见上方轻量级模式章节)
|
|
379
|
+
- 维度 7(耦合与内聚)需要知识图谱,不存在时跳过
|
|
380
|
+
- **不生成 CODE_REVIEW.md 和 summary.json**
|
|
381
|
+
- 输出格式:内联 Markdown 反馈,列出发现的 Critical 问题
|
|
382
|
+
|
|
383
|
+
---
|
|
384
|
+
|
|
385
|
+
## 质量检查清单
|
|
386
|
+
|
|
387
|
+
- [ ] 8 个维度规则全部加载并执行(维度 7 可选)
|
|
388
|
+
- [ ] 评分计算正确(权重之和 = 1.00)
|
|
389
|
+
- [ ] 跳过的维度权重已重分配
|
|
390
|
+
- [ ] 问题按严重度正确分类(Critical/Warning/Info)
|
|
391
|
+
- [ ] 修复建议具体可执行(不是"改进代码"等空话)
|
|
392
|
+
- [ ] 死代码估算行数合理
|
|
393
|
+
- [ ] 安全问题无假阳性(环境变量引用不算硬编码)
|
|
394
|
+
- [ ] 重复代码相似度判断合理(排除样板代码)
|
|
395
|
+
- [ ] 架构合规维度已加载并执行(第 5 维度)
|
|
396
|
+
- [ ] 分层违反已检测(import 分析,白名单排除已应用)
|
|
397
|
+
- [ ] 微服务适应性已评估(如适用)
|
|
398
|
+
- [ ] **可维护性维度已执行**(SQALE 修复工作量、MI 指数、代码异味)
|
|
399
|
+
- [ ] **耦合与内聚维度已执行或标记跳过**(Ca/Ce、循环依赖、CK Metrics)
|
|
400
|
+
- [ ] **废弃与债务维度已执行**(已废弃 API、TODO 老化、过时模式、废弃代码段)
|
|
401
|
+
- [ ] 重构建议包含具体步骤和预计工作量
|
|
402
|
+
- [ ] 模块级架构健康度表格已生成(含 8 维度评分)
|
|
403
|
+
- [ ] CODE_REVIEW.md 格式符合模板
|
|
404
|
+
- [ ] 健康等级与评分匹配
|
|
405
|
+
- [ ] 优先修复清单按严重度×影响范围排序
|
|
406
|
+
- [ ] `.atool-docs/code-review/summary.json` 已写入
|