@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,140 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui-ux-pro
|
|
3
|
+
description: Expert UI/UX design skill for creating beautiful, user-friendly interfaces. Provides guidance on design principles, accessibility, component selection, color theory, typography, and responsive design best practices.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# UI/UX Pro
|
|
8
|
+
|
|
9
|
+
This skill provides expert UI/UX design guidance for creating professional, user-friendly interfaces.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
Use this skill when:
|
|
14
|
+
- Designing or reviewing user interfaces
|
|
15
|
+
- Making design system decisions
|
|
16
|
+
- Choosing colors, typography, or layouts
|
|
17
|
+
- Ensuring accessibility compliance
|
|
18
|
+
- Creating responsive designs
|
|
19
|
+
- Building component libraries
|
|
20
|
+
|
|
21
|
+
## Core Principles
|
|
22
|
+
|
|
23
|
+
### 1. User-First Design
|
|
24
|
+
- Understand user needs before designing
|
|
25
|
+
- Create clear user flows
|
|
26
|
+
- Prioritize content hierarchy
|
|
27
|
+
- Design for the target audience
|
|
28
|
+
|
|
29
|
+
### 2. Visual Hierarchy
|
|
30
|
+
- Use size, color, and spacing to guide attention
|
|
31
|
+
- Establish clear focal points
|
|
32
|
+
- Group related elements
|
|
33
|
+
- Create breathing room with whitespace
|
|
34
|
+
|
|
35
|
+
### 3. Consistency
|
|
36
|
+
- Maintain design system coherence
|
|
37
|
+
- Use consistent spacing scales
|
|
38
|
+
- Keep typography predictable
|
|
39
|
+
- Reuse component patterns
|
|
40
|
+
|
|
41
|
+
### 4. Accessibility (A11y)
|
|
42
|
+
- Ensure WCAG 2.1 AA compliance minimum
|
|
43
|
+
- Color contrast ratio: 4.5:1 for text, 3:1 for UI components
|
|
44
|
+
- Support keyboard navigation
|
|
45
|
+
- Provide meaningful alt text
|
|
46
|
+
- Test with screen readers
|
|
47
|
+
|
|
48
|
+
## Design Guidelines
|
|
49
|
+
|
|
50
|
+
### Color
|
|
51
|
+
- **Primary**: Use for main actions and branding
|
|
52
|
+
- **Secondary**: Use for supporting actions
|
|
53
|
+
- **Neutral**: Use for text, backgrounds, borders
|
|
54
|
+
- **Semantic**: Use for states (success, error, warning, info)
|
|
55
|
+
- **Dark mode**: Always provide dark mode support
|
|
56
|
+
|
|
57
|
+
### Typography
|
|
58
|
+
- **Font size**: Minimum 16px for body text
|
|
59
|
+
- **Line height**: 1.5 for body, 1.2 for headings
|
|
60
|
+
- **Font weights**: Use 400-600 for most text
|
|
61
|
+
- **Max width**: 60-75 characters per line for readability
|
|
62
|
+
|
|
63
|
+
### Spacing
|
|
64
|
+
- Use 8px base grid (8, 16, 24, 32, 48, 64)
|
|
65
|
+
- Maintain consistent vertical rhythm
|
|
66
|
+
- Provide adequate touch targets (44x44px minimum)
|
|
67
|
+
- Group related elements with proximity
|
|
68
|
+
|
|
69
|
+
### Layout
|
|
70
|
+
- **Mobile-first**: Design for smallest screens first
|
|
71
|
+
- **Breakpoints**: 640px, 768px, 1024px, 1280px, 1536px
|
|
72
|
+
- **Containers**: Max-width 1280px-1536px for content
|
|
73
|
+
- **Grid**: Use 12-column grid for complex layouts
|
|
74
|
+
|
|
75
|
+
## Component Best Practices
|
|
76
|
+
|
|
77
|
+
### Buttons
|
|
78
|
+
- Clear, action-oriented labels
|
|
79
|
+
- Primary/Secondary/Ghost variants
|
|
80
|
+
- Loading and disabled states
|
|
81
|
+
- Consistent sizing (sm, md, lg)
|
|
82
|
+
|
|
83
|
+
### Forms
|
|
84
|
+
- Label every input clearly
|
|
85
|
+
- Show validation inline
|
|
86
|
+
- Group related fields
|
|
87
|
+
- Use appropriate input types
|
|
88
|
+
|
|
89
|
+
### Navigation
|
|
90
|
+
- Keep it simple and scannable
|
|
91
|
+
- Highlight current location
|
|
92
|
+
- Mobile: hamburger or bottom nav
|
|
93
|
+
- Desktop: horizontal or sidebar
|
|
94
|
+
|
|
95
|
+
### Cards
|
|
96
|
+
- Clear content hierarchy
|
|
97
|
+
- Consistent padding
|
|
98
|
+
- Subtle shadows or borders
|
|
99
|
+
- Hover/focus states
|
|
100
|
+
|
|
101
|
+
## Responsive Design Checklist
|
|
102
|
+
|
|
103
|
+
- [ ] Works on 320px width (small phones)
|
|
104
|
+
- [ ] Touch targets are 44x44px minimum
|
|
105
|
+
- [ ] Font sizes scale appropriately
|
|
106
|
+
- [ ] Images are responsive
|
|
107
|
+
- [ ] Navigation adapts to screen size
|
|
108
|
+
- [ ] No horizontal scrolling
|
|
109
|
+
- [ ] Content is readable without zoom
|
|
110
|
+
|
|
111
|
+
## Tools & Resources
|
|
112
|
+
|
|
113
|
+
- **Colors**: Adobe Color, Coolors, ColorHunt
|
|
114
|
+
- **Typography**: Google Fonts, Font Pair
|
|
115
|
+
- **Icons**: Lucide, Heroicons, Phosphor
|
|
116
|
+
- **Inspiration**: Dribbble, Behance, Mobbin
|
|
117
|
+
- **Testing**: Lighthouse, WAVE, axe DevTools
|
|
118
|
+
|
|
119
|
+
## Design Review Questions
|
|
120
|
+
|
|
121
|
+
1. Is the purpose of this screen immediately clear?
|
|
122
|
+
2. Can users complete their primary task in 3 clicks or less?
|
|
123
|
+
3. Is the visual hierarchy obvious?
|
|
124
|
+
4. Would this work for users with color blindness?
|
|
125
|
+
5. Does it work on a 320px wide screen?
|
|
126
|
+
6. Are error messages helpful and actionable?
|
|
127
|
+
7. Is the loading experience graceful?
|
|
128
|
+
|
|
129
|
+
## Common Mistakes to Avoid
|
|
130
|
+
|
|
131
|
+
- Using placeholder text (Lorem ipsum) in final designs
|
|
132
|
+
- Inconsistent spacing
|
|
133
|
+
- Poor color contrast
|
|
134
|
+
- Too many font families
|
|
135
|
+
- Ignoring empty states
|
|
136
|
+
- Missing error handling UI
|
|
137
|
+
- No loading states
|
|
138
|
+
- Overusing animations
|
|
139
|
+
- Cluttered interfaces
|
|
140
|
+
- Hidden important actions
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-before-completion
|
|
3
|
+
description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs. Extends superpowers:verification-before-completion with documentation freshness verification.
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Verification Before Completion (aTool Enhanced)
|
|
8
|
+
|
|
9
|
+
This skill extends `superpowers:verification-before-completion` with **documentation freshness checks**.
|
|
10
|
+
|
|
11
|
+
**Use the superpowers:verification-before-completion skill as the base**, then apply these additions:
|
|
12
|
+
|
|
13
|
+
## Enhancement: Documentation Freshness Gate
|
|
14
|
+
|
|
15
|
+
**BEFORE claiming any task or feature is complete**, verify documentation is in sync with code changes.
|
|
16
|
+
|
|
17
|
+
### The Documentation Gate Function
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
BEFORE claiming completion:
|
|
21
|
+
|
|
22
|
+
1. LIST: What source files did you create or modify?
|
|
23
|
+
2. CHECK: Which documentation files reference those source files?
|
|
24
|
+
- README.md (architecture, structure, tech stack)
|
|
25
|
+
- COMPONENT.md (component API, usage examples)
|
|
26
|
+
- UI_STYLE.md (UI patterns, design tokens)
|
|
27
|
+
- docs/ (module knowledge base)
|
|
28
|
+
3. COMPARE: Is each doc file at least as recent as the source files it describes?
|
|
29
|
+
- If source file mtime > doc file mtime → documentation is STALE
|
|
30
|
+
4. VERIFY: Have all stale docs been updated to reflect changes?
|
|
31
|
+
- If NO → Update docs first, THEN claim completion
|
|
32
|
+
- If YES → Claim completion WITH evidence
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Common Failures (Documentation)
|
|
36
|
+
|
|
37
|
+
| Claim | Requires | Not Sufficient |
|
|
38
|
+
|-------|----------|----------------|
|
|
39
|
+
| "Docs updated" | Actually edited the doc files | "No doc changes needed" without checking |
|
|
40
|
+
| "No doc impact" | Verified each doc file is unaffected | Assumed no impact without checking |
|
|
41
|
+
| "README reflects changes" | README mtime >= source mtime | "README was already correct" |
|
|
42
|
+
| "Feature complete" | Code + tests + docs all pass | Code + tests only |
|
|
43
|
+
|
|
44
|
+
### Red Flags - STOP
|
|
45
|
+
|
|
46
|
+
- Claiming "no documentation update needed" without listing affected docs
|
|
47
|
+
- Skipping doc check because "changes are minor"
|
|
48
|
+
- Moving to next task without verifying docs are fresh
|
|
49
|
+
- Committing code without committing corresponding doc updates
|
|
50
|
+
|
|
51
|
+
### How To Check Documentation Freshness
|
|
52
|
+
|
|
53
|
+
**Method 1: Use the doc-sync-reminder hook**
|
|
54
|
+
If the ATOOL-DOC-SYNC-REMINDER appears, documentation is stale. Update it before claiming completion.
|
|
55
|
+
|
|
56
|
+
**Method 2: Manual check**
|
|
57
|
+
```bash
|
|
58
|
+
# Check if any source files are newer than README.md
|
|
59
|
+
find src/ -newer README.md -type f | head -5
|
|
60
|
+
|
|
61
|
+
# Check if any source files are newer than COMPONENT.md
|
|
62
|
+
find src/ -newer COMPONENT.md -type f | head -5
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Method 3: For projects with aTool analysis**
|
|
66
|
+
Check the ATOOL-PROJECT-CONTEXT in the session for "X source files modified after README.md" warnings.
|
|
67
|
+
|
|
68
|
+
### Completion Claim Template
|
|
69
|
+
|
|
70
|
+
When claiming completion, include documentation evidence:
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
✅ Tests: [command] → [output showing pass]
|
|
74
|
+
✅ Build: [command] → [exit 0]
|
|
75
|
+
✅ Docs: README.md §Architecture updated, COMPONENT.md §API updated, docs/ unchanged (verified)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Or if docs genuinely don't need updates:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
✅ Tests: [command] → [output showing pass]
|
|
82
|
+
✅ Build: [command] → [exit 0]
|
|
83
|
+
✅ Docs: Checked README.md, COMPONENT.md, UI_STYLE.md — no sections reference changed files (verified)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Enhancement: Code Quality Gate
|
|
87
|
+
|
|
88
|
+
**BEFORE claiming completion, for files modified in this task:**
|
|
89
|
+
|
|
90
|
+
### The Code Quality Gate Function
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
BEFORE claiming completion (after documentation check):
|
|
94
|
+
|
|
95
|
+
1. CHECK: Run code-review lightweight analysis on changed files
|
|
96
|
+
2. IDENTIFY: Any Critical-severity issues?
|
|
97
|
+
- Hardcoded secrets, SQL injection, empty catch blocks, unreachable code
|
|
98
|
+
3. RESOLVE:
|
|
99
|
+
- Critical issues found → MUST fix before claiming completion
|
|
100
|
+
- Warning issues found → LIST in completion report, recommend fixing
|
|
101
|
+
- Info issues → Note for future improvement
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Code Quality Red Flags - STOP
|
|
105
|
+
|
|
106
|
+
- Claiming "code looks fine" without checking against review rules
|
|
107
|
+
- Ignoring hardcoded secrets or SQL injection patterns
|
|
108
|
+
- Skipping quality check because "changes are minor"
|
|
109
|
+
- Moving to next task with known Critical issues
|
|
110
|
+
|
|
111
|
+
### Completion Claim Template (Updated)
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
✅ Tests: [command] → [output showing pass]
|
|
115
|
+
✅ Build: [command] → [exit 0]
|
|
116
|
+
✅ Docs: [documentation evidence]
|
|
117
|
+
✅ Code Quality: No Critical issues in changed files (verified)
|
|
118
|
+
Warnings: [count] ([list briefly, or "none"])
|
|
119
|
+
```
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-conventions
|
|
3
|
+
description: Use when writing, reviewing, or refactoring frontend code — applies project structure, JavaScript style, JSDoc, React, Vue, Svelte, HTML, CSS/Less, and TypeScript conventions.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
category: conventions
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Web Development Conventions
|
|
9
|
+
|
|
10
|
+
Use this skill when working on web applications (React, Next.js, Vue, Svelte) or plain JavaScript/HTML/CSS projects.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- Detected web project (package.json with react/next/vue/svelte)
|
|
14
|
+
- Writing, reviewing, or refactoring frontend code
|
|
15
|
+
- Asking about web framework best practices
|
|
16
|
+
|
|
17
|
+
If the repository already has stricter local lint rules, follow the stricter rule.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Core Behavior
|
|
22
|
+
|
|
23
|
+
Before writing code:
|
|
24
|
+
1. Infer whether the task is for a business project, shared package, React module, Vue page, or plain JS/HTML/CSS.
|
|
25
|
+
2. Keep directory structure **business-oriented**, not resource-type-oriented.
|
|
26
|
+
3. Match the existing framework and module style already used in the codebase.
|
|
27
|
+
4. Prefer readable, maintainable code over framework tricks.
|
|
28
|
+
|
|
29
|
+
After writing code, run a mental lint pass against the self-check checklist at the end of this skill.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Project and Directory Structure
|
|
34
|
+
|
|
35
|
+
- Directories must be organized by **function / business domain**, not by resource type at root.
|
|
36
|
+
- Common root directories: `src`, `test`, `doc`, `dep`; optionally `tool`, `entry`.
|
|
37
|
+
- **Do not** place resource-type directories (`js`, `css`, `img`) directly under project root.
|
|
38
|
+
- In business projects, `src` contains business directories and `common` only.
|
|
39
|
+
- `common` is reserved for shared business resources.
|
|
40
|
+
- JS source files in `src` must be organized by business logic — not placed under a `src/js/` subdirectory.
|
|
41
|
+
- Directory names: concise and singular (`src` not `source`, `img` not `images`, `css` not `styles`).
|
|
42
|
+
- Shared images across pages: `src/common/img/`; page-specific or CSS-referenced images: local `./img/`.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## TypeScript
|
|
47
|
+
|
|
48
|
+
- Use TypeScript for all new files.
|
|
49
|
+
- Define interfaces/types for props, state, and API responses.
|
|
50
|
+
- Avoid `any` — use `unknown` and type narrowing.
|
|
51
|
+
- Prefer `interface` for object shapes, `type` for unions.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## JavaScript Formatting
|
|
56
|
+
|
|
57
|
+
- Encoding: UTF-8 without BOM; trailing newline at end of file.
|
|
58
|
+
- Indentation: **4 spaces** — never 2 spaces, never tabs.
|
|
59
|
+
- `case` / `default` in `switch`: indented one level inside `switch`.
|
|
60
|
+
- Binary operators: spaces on both sides.
|
|
61
|
+
- Unary operators: no space between operator and operand.
|
|
62
|
+
- Space required before `{` that starts a block.
|
|
63
|
+
- Keywords (`if`, `else`, `for`, `while`, `function`, `switch`, `do`, `try`, `catch`, `finally`) followed by a space.
|
|
64
|
+
- No space between function name and `(` in declaration, expression, or call.
|
|
65
|
+
- Object literal `:` — no space before, one space after.
|
|
66
|
+
- No spaces before `,` or `;`; one space after (when not at end of line).
|
|
67
|
+
- No spaces just inside `()` or `[]`.
|
|
68
|
+
- No trailing whitespace.
|
|
69
|
+
- End every statement with `;`.
|
|
70
|
+
- Keep line length within 120 characters; when breaking, put operator at the start of the new line.
|
|
71
|
+
- Separate different logical blocks with blank lines.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## JavaScript Naming
|
|
76
|
+
|
|
77
|
+
| Entity | Convention | Example |
|
|
78
|
+
|--------|-----------|---------|
|
|
79
|
+
| Variables | `camelCase` | `userData` |
|
|
80
|
+
| Functions | `camelCase` (verb-object) | `fetchUserList` |
|
|
81
|
+
| Classes | `PascalCase` | `UserService` |
|
|
82
|
+
| Constants | `UPPER_SNAKE_CASE` | `MAX_RETRY_COUNT` |
|
|
83
|
+
| Enums (object) | `PascalCase` | `UserStatus` |
|
|
84
|
+
| Enum members | `UPPER_SNAKE_CASE` | `UserStatus.ACTIVE` |
|
|
85
|
+
| Namespaces | `camelCase` | `userModule` |
|
|
86
|
+
| Boolean vars | prefix `is` / `has` | `isLoading`, `hasError` |
|
|
87
|
+
| Promise vars | progressive verb-object | `loadingData` |
|
|
88
|
+
|
|
89
|
+
Acronyms respect surrounding style: `XMLParser`, `insertHTML`, `HTTPRequest`.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## JSDoc and Comments
|
|
94
|
+
|
|
95
|
+
The following **must** use `/** ... */` doc comments:
|
|
96
|
+
- File, namespace, class, function/method, class property, event, global variable, constant, AMD module.
|
|
97
|
+
|
|
98
|
+
Rules:
|
|
99
|
+
- Single-line comments on their own line, using `// `.
|
|
100
|
+
- Avoid `/* ... */` block comments; prefer multiple `// ` lines.
|
|
101
|
+
- Leave one blank line before a doc comment.
|
|
102
|
+
- Document intent and guarantees, not implementation trivia.
|
|
103
|
+
- `@param` and `@return` require type and description.
|
|
104
|
+
- Use lowercase primitive type names: `{string}`, `{number}`, `{boolean}`.
|
|
105
|
+
- For object parameters, document each field with a separate `@param`.
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Module and Loader Rules
|
|
110
|
+
|
|
111
|
+
- AMD-style modules: `define(factory)` — do not specify explicit `moduleId` and `dependencies` unless the project already requires it.
|
|
112
|
+
- Prefer returning the module object from `factory`.
|
|
113
|
+
- In global runtime: async `require([...], callback)`.
|
|
114
|
+
- Inside module definitions: use local `require`, not global `require`.
|
|
115
|
+
- Reusable package internals must use relative module ids.
|
|
116
|
+
- Static dependency plugins (css/tpl/js) should be required at the start of the factory.
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## Components
|
|
121
|
+
|
|
122
|
+
- Functional components only (no class components for new code).
|
|
123
|
+
- Single responsibility — one component, one purpose.
|
|
124
|
+
- Co-locate related files (component, styles, tests, types).
|
|
125
|
+
- Use barrel exports (`index.ts`) for module public API.
|
|
126
|
+
- Default export the main component; named exports for utilities.
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## React / Next.js
|
|
131
|
+
|
|
132
|
+
### Hooks
|
|
133
|
+
- Custom hooks for reusable logic (`useAuth`, `useDebounce`).
|
|
134
|
+
- `useCallback` for event handlers passed as props.
|
|
135
|
+
- `useMemo` for expensive computations.
|
|
136
|
+
- `useRef` for mutable values that don't trigger re-renders.
|
|
137
|
+
|
|
138
|
+
### State Management
|
|
139
|
+
- Local state first (`useState`, `useReducer`).
|
|
140
|
+
- Lift state to the lowest common ancestor.
|
|
141
|
+
- Context for widely shared state.
|
|
142
|
+
- External libraries (Zustand, Redux Toolkit) for complex state.
|
|
143
|
+
|
|
144
|
+
### Component Rules (React)
|
|
145
|
+
- Component names: `PascalCase`; must match file name.
|
|
146
|
+
- Higher-order components: `camelCase`, preferably `withXxx` or `xxxable` style.
|
|
147
|
+
- Callback props: `onXxx` naming.
|
|
148
|
+
- Event handler methods inside components: use business-meaningful names, not `onXxx`.
|
|
149
|
+
|
|
150
|
+
### Next.js Specific
|
|
151
|
+
- App Router (not Pages Router) for new projects.
|
|
152
|
+
- Server Components by default; Client Components when needed.
|
|
153
|
+
- Use `loading.tsx` for Suspense boundaries.
|
|
154
|
+
- Route handlers (`route.ts`) for API endpoints.
|
|
155
|
+
- Metadata API for SEO.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Vue / Nuxt
|
|
160
|
+
|
|
161
|
+
### Composition API
|
|
162
|
+
- Use `<script setup>` syntax.
|
|
163
|
+
- Composables (`use*` functions) for reusable logic.
|
|
164
|
+
- `ref` and `reactive` for reactive state; `computed` for derived state.
|
|
165
|
+
- `watch` / `watchEffect` for side effects.
|
|
166
|
+
- Vue component naming, props, methods, and views must be consistent and semantic.
|
|
167
|
+
- Keep Vue files organized: template, script, style in the project's preferred order.
|
|
168
|
+
|
|
169
|
+
### Nuxt Specific
|
|
170
|
+
- Use auto-imports (no need to import composables).
|
|
171
|
+
- Server routes in `server/api/`.
|
|
172
|
+
- Use `useFetch` and `useAsyncData` for data fetching.
|
|
173
|
+
- Middleware in `middleware/`.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Svelte / SvelteKit
|
|
178
|
+
|
|
179
|
+
- Use `$:` reactive declarations.
|
|
180
|
+
- Stores for shared state; actions for form handling.
|
|
181
|
+
- SvelteKit: file-based routing in `src/routes/`; load functions for data fetching; form actions for POST/PUT/DELETE; layouts in `+layout.svelte`.
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
## HTML Rules
|
|
186
|
+
|
|
187
|
+
- Valid DOCTYPE and UTF-8 encoding.
|
|
188
|
+
- Consistent indentation and wrapping.
|
|
189
|
+
- Semantic, readable tag and attribute naming.
|
|
190
|
+
- Include standard metadata: title, favicon, viewport where relevant.
|
|
191
|
+
- Form controls must have clear labels; buttons use appropriate element types.
|
|
192
|
+
- Consider accessibility for forms and interactive content.
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## CSS / Less Rules
|
|
197
|
+
|
|
198
|
+
- 4-space indentation for standalone style files.
|
|
199
|
+
- No unnecessary spaces or excessively long lines.
|
|
200
|
+
- Keep selector and property ordering stable.
|
|
201
|
+
- Prefer concise properties and reasonable shorthand.
|
|
202
|
+
- **Avoid `!important`** unless there is clear justification.
|
|
203
|
+
- Use controlled `z-index` values — no arbitrary stacking escalation.
|
|
204
|
+
- Keep responsive and compatibility code explicit and minimal.
|
|
205
|
+
- In Less: keep imports, variables, nesting, mixins, and namespaces tidy and readable.
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Styling
|
|
210
|
+
- Use the project's established styling solution (Tailwind, CSS Modules, styled-components, etc.).
|
|
211
|
+
- Don't mix styling approaches within a project.
|
|
212
|
+
- Responsive design by default; follow a consistent spacing scale.
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
## Testing
|
|
217
|
+
- Component tests: Testing Library (`@testing-library/react`, `@testing-library/vue`, etc.).
|
|
218
|
+
- Unit tests: Vitest or Jest.
|
|
219
|
+
- E2E tests: Playwright or Cypress.
|
|
220
|
+
- Mock API calls in component tests; test user behavior, not implementation details.
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## Performance
|
|
225
|
+
- Code splitting and lazy loading.
|
|
226
|
+
- Optimize images (next/image, vite-plugin-imagemin).
|
|
227
|
+
- Virtualize long lists.
|
|
228
|
+
- Debounce expensive operations.
|
|
229
|
+
- Use Web Workers for heavy computation.
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## Self-Check Before Finalizing
|
|
234
|
+
|
|
235
|
+
1. Is the directory placement business-oriented and consistent?
|
|
236
|
+
2. Did I avoid putting business JS under `src/js/`?
|
|
237
|
+
3. Are naming styles correct for variables, classes, constants, components, and props?
|
|
238
|
+
4. Is indentation 4 spaces with no tabs?
|
|
239
|
+
5. Are semicolons present?
|
|
240
|
+
6. Are spaces around operators and after keywords correct?
|
|
241
|
+
7. Are any lines needlessly over 120 characters?
|
|
242
|
+
8. Are doc comments (`/** */`) present where required?
|
|
243
|
+
9. If using AMD, did I use `define(factory)` and local `require`?
|
|
244
|
+
10. For React, do component names match file names and export style?
|
|
245
|
+
11. For Vue, are props/methods/views named clearly and consistently?
|
|
246
|
+
12. Did I avoid unnecessary `!important`, random `z-index`, or messy nesting?
|
|
247
|
+
13. Are shared and page-local images placed in the right directories?
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
## Review Output Format
|
|
252
|
+
|
|
253
|
+
When reviewing frontend code, group findings as:
|
|
254
|
+
|
|
255
|
+
- **Blocking violations** — structure and naming issues that must be fixed
|
|
256
|
+
- **Recommended improvements** — best practices not yet followed
|
|
257
|
+
- **Optional cleanups** — style or readability improvements
|
|
258
|
+
|
|
259
|
+
Always call out structure and naming issues before style nits.
|