aios-core 2.1.6 → 2.2.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/.aios-core/core/README.md +229 -229
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/core/data/aios-kb.md +923 -923
- package/.aios-core/core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/core/docs/component-creation-guide.md +457 -457
- package/.aios-core/core/docs/session-update-pattern.md +307 -307
- package/.aios-core/core/docs/template-syntax.md +266 -266
- package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
- package/.aios-core/core/index.esm.js +42 -42
- package/.aios-core/core/index.js +1 -1
- package/.aios-core/core/migration/migration-config.yaml +83 -83
- package/.aios-core/core/migration/module-mapping.yaml +89 -89
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
- package/.aios-core/core/registry/README.md +179 -179
- package/.aios-core/core/utils/security-utils.js +1 -1
- package/.aios-core/core-config.yaml +391 -382
- package/.aios-core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/data/aios-kb.md +923 -923
- package/.aios-core/data/technical-preferences.md +3 -3
- package/.aios-core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/development/README.md +142 -142
- package/.aios-core/development/agent-teams/team-all.yaml +15 -15
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
- package/.aios-core/development/agents/aios-master.md +339 -339
- package/.aios-core/development/agents/analyst.md +195 -195
- package/.aios-core/development/agents/architect.md +359 -359
- package/.aios-core/development/agents/data-engineer.md +468 -468
- package/.aios-core/development/agents/dev.md +390 -390
- package/.aios-core/development/agents/devops.md +398 -398
- package/.aios-core/development/agents/pm.md +198 -198
- package/.aios-core/development/agents/po.md +256 -256
- package/.aios-core/development/agents/qa.md +312 -312
- package/.aios-core/development/agents/sm.md +220 -220
- package/.aios-core/development/agents/ux-design-expert.md +451 -451
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
- package/.aios-core/development/tasks/add-mcp.md +319 -319
- package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
- package/.aios-core/development/tasks/analyze-framework.md +696 -696
- package/.aios-core/development/tasks/analyze-performance.md +637 -637
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
- package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
- package/.aios-core/development/tasks/audit-codebase.md +429 -429
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
- package/.aios-core/development/tasks/audit-utilities.md +358 -358
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
- package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
- package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
- package/.aios-core/development/tasks/build-component.md +478 -478
- package/.aios-core/development/tasks/calculate-roi.md +455 -455
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
- package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
- package/.aios-core/development/tasks/compose-molecule.md +284 -284
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
- package/.aios-core/development/tasks/correct-course.md +279 -279
- package/.aios-core/development/tasks/create-agent.md +321 -321
- package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
- package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
- package/.aios-core/development/tasks/create-doc.md +316 -316
- package/.aios-core/development/tasks/create-next-story.md +774 -774
- package/.aios-core/development/tasks/create-suite.md +283 -283
- package/.aios-core/development/tasks/create-task.md +371 -371
- package/.aios-core/development/tasks/create-workflow.md +370 -370
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
- package/.aios-core/development/tasks/db-apply-migration.md +381 -381
- package/.aios-core/development/tasks/db-bootstrap.md +642 -642
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
- package/.aios-core/development/tasks/db-dry-run.md +293 -293
- package/.aios-core/development/tasks/db-env-check.md +260 -260
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
- package/.aios-core/development/tasks/db-explain.md +631 -631
- package/.aios-core/development/tasks/db-impersonate.md +495 -495
- package/.aios-core/development/tasks/db-load-csv.md +593 -593
- package/.aios-core/development/tasks/db-policy-apply.md +653 -653
- package/.aios-core/development/tasks/db-rls-audit.md +411 -411
- package/.aios-core/development/tasks/db-rollback.md +739 -739
- package/.aios-core/development/tasks/db-run-sql.md +613 -613
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
- package/.aios-core/development/tasks/db-seed.md +390 -390
- package/.aios-core/development/tasks/db-smoke-test.md +351 -351
- package/.aios-core/development/tasks/db-snapshot.md +569 -569
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
- package/.aios-core/development/tasks/db-verify-order.md +515 -515
- package/.aios-core/development/tasks/deprecate-component.md +956 -956
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
- package/.aios-core/development/tasks/dev-develop-story.md +846 -846
- package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
- package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
- package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
- package/.aios-core/development/tasks/document-project.md +552 -552
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
- package/.aios-core/development/tasks/execute-checklist.md +301 -301
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
- package/.aios-core/development/tasks/extend-pattern.md +269 -269
- package/.aios-core/development/tasks/extract-tokens.md +467 -467
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
- package/.aios-core/development/tasks/generate-documentation.md +284 -284
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
- package/.aios-core/development/tasks/generate-shock-report.md +501 -501
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
- package/.aios-core/development/tasks/improve-self.md +822 -822
- package/.aios-core/development/tasks/index-docs.md +387 -387
- package/.aios-core/development/tasks/init-project-status.md +506 -506
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
- package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
- package/.aios-core/development/tasks/learn-patterns.md +900 -900
- package/.aios-core/development/tasks/mcp-workflow.md +437 -437
- package/.aios-core/development/tasks/modify-agent.md +381 -381
- package/.aios-core/development/tasks/modify-task.md +424 -424
- package/.aios-core/development/tasks/modify-workflow.md +465 -465
- package/.aios-core/development/tasks/po-backlog-add.md +370 -370
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
- package/.aios-core/development/tasks/po-pull-story.md +316 -316
- package/.aios-core/development/tasks/po-stories-index.md +351 -351
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
- package/.aios-core/development/tasks/po-sync-story.md +303 -303
- package/.aios-core/development/tasks/pr-automation.md +701 -701
- package/.aios-core/development/tasks/propose-modification.md +842 -842
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
- package/.aios-core/development/tasks/qa-gate.md +373 -373
- package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
- package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
- package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
- package/.aios-core/development/tasks/qa-review-story.md +682 -682
- package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
- package/.aios-core/development/tasks/qa-run-tests.md +277 -277
- package/.aios-core/development/tasks/qa-test-design.md +387 -387
- package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
- package/.aios-core/development/tasks/release-management.md +723 -723
- package/.aios-core/development/tasks/security-audit.md +554 -554
- package/.aios-core/development/tasks/security-scan.md +790 -790
- package/.aios-core/development/tasks/setup-database.md +741 -741
- package/.aios-core/development/tasks/setup-design-system.md +462 -462
- package/.aios-core/development/tasks/setup-github.md +874 -874
- package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
- package/.aios-core/development/tasks/setup-project-docs.md +1 -1
- package/.aios-core/development/tasks/shard-doc.md +537 -537
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
- package/.aios-core/development/tasks/sync-documentation.md +864 -864
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
- package/.aios-core/development/tasks/test-as-user.md +621 -621
- package/.aios-core/development/tasks/test-validation-task.md +171 -171
- package/.aios-core/development/tasks/undo-last.md +346 -346
- package/.aios-core/development/tasks/update-manifest.md +409 -409
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
- package/.aios-core/development/tasks/ux-user-research.md +559 -559
- package/.aios-core/development/tasks/validate-next-story.md +422 -422
- package/.aios-core/development/workflows/README.md +83 -83
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/docs/component-creation-guide.md +457 -457
- package/.aios-core/docs/session-update-pattern.md +307 -307
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
- package/.aios-core/docs/template-syntax.md +266 -266
- package/.aios-core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/index.esm.js +15 -15
- package/.aios-core/index.js +1 -1
- package/.aios-core/infrastructure/README.md +126 -126
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
- package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
- package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
- package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
- package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
- package/.aios-core/infrastructure/scripts/component-search.js +1 -1
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
- package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
- package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
- package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
- package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
- package/.aios-core/infrastructure/tools/README.md +222 -222
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
- package/.aios-core/install-manifest.yaml +347 -347
- package/.aios-core/product/README.md +56 -56
- package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
- package/.aios-core/product/checklists/architect-checklist.md +443 -443
- package/.aios-core/product/checklists/change-checklist.md +182 -182
- package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -119
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
- package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
- package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
- package/.aios-core/product/checklists/pm-checklist.md +375 -375
- package/.aios-core/product/checklists/po-master-checklist.md +441 -441
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
- package/.aios-core/product/checklists/release-checklist.md +122 -122
- package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
- package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
- package/.aios-core/product/data/atomic-design-principles.md +108 -0
- package/.aios-core/product/data/brainstorming-techniques.md +36 -36
- package/.aios-core/product/data/consolidation-algorithms.md +142 -0
- package/.aios-core/product/data/database-best-practices.md +182 -0
- package/.aios-core/product/data/design-token-best-practices.md +107 -0
- package/.aios-core/product/data/elicitation-methods.md +134 -134
- package/.aios-core/product/data/integration-patterns.md +207 -0
- package/.aios-core/product/data/migration-safety-guide.md +329 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
- package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
- package/.aios-core/product/data/rls-security-patterns.md +333 -0
- package/.aios-core/product/data/roi-calculation-guide.md +142 -0
- package/.aios-core/product/data/supabase-patterns.md +330 -0
- package/.aios-core/product/data/test-levels-framework.md +148 -148
- package/.aios-core/product/data/test-priorities-matrix.md +174 -174
- package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -225
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
- package/.aios-core/product/templates/activation-instructions-template.md +258 -258
- package/.aios-core/product/templates/agent-template.yaml +120 -120
- package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
- package/.aios-core/product/templates/changelog-template.md +134 -134
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
- package/.aios-core/product/templates/github-pr-template.md +67 -67
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
- package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
- package/.aios-core/product/templates/mcp-workflow.js +271 -271
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
- package/.aios-core/product/templates/personalized-agent-template.md +258 -258
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
- package/.aios-core/product/templates/personalized-task-template.md +344 -344
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
- package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
- package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
- package/.aios-core/product/templates/story-tmpl.yaml +331 -331
- package/.aios-core/product/templates/task-execution-report.md +495 -495
- package/.aios-core/product/templates/task-template.md +122 -122
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
- package/.aios-core/product/templates/workflow-template.yaml +133 -133
- package/.aios-core/scripts/README.md +354 -354
- package/.aios-core/scripts/aios-doc-template.md +325 -325
- package/.aios-core/scripts/elicitation-engine.js +1 -1
- package/.aios-core/scripts/test-template-system.js +1 -1
- package/.aios-core/scripts/workflow-management.md +69 -69
- package/.aios-core/user-guide.md +1413 -1413
- package/.aios-core/working-in-the-brownfield.md +361 -361
- package/LICENSE +1 -1
- package/README.md +702 -703
- package/bin/aios-init-old.js +3 -3
- package/bin/aios-init-v4.js +1 -1
- package/bin/aios-init.backup-v1.1.4.js +1 -1
- package/bin/aios-init.js +3 -3
- package/bin/aios.js +279 -279
- package/bin/utils/install-errors.js +339 -339
- package/bin/utils/install-transaction.js +445 -445
- package/index.d.ts +18 -18
- package/index.esm.js +20 -20
- package/index.js +6 -6
- package/package.json +8 -10
- package/packages/installer/src/config/templates/env-template.js +27 -4
- package/packages/installer/src/detection/detect-project-type.js +81 -81
- package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
- package/packages/installer/tests/unit/env-template.test.js +8 -8
- package/src/config/ide-configs.js +1 -1
- package/src/wizard/feedback.js +2 -2
- package/src/wizard/index.js +1 -1
- package/src/wizard/validation/report-generator.js +1 -1
- package/src/wizard/validation/troubleshooting-system.js +13 -13
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
- package/.aios-core/tasks/find-component.md.legacy +0 -391
- package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
- package/.aios-core/tasks/generate-migration.md.legacy +0 -382
- package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
- package/.aios-core/tasks/update-tests.md.legacy +0 -283
|
@@ -1,672 +1,672 @@
|
|
|
1
|
-
# Design System Artifact Scanner
|
|
2
|
-
|
|
3
|
-
> **Task ID:** ux-ds-scan-artifact
|
|
4
|
-
> **Agent:** UX-Design Expert
|
|
5
|
-
> **Phase:** Universal (works with any phase)
|
|
6
|
-
> **Interactive:** Yes (elicit=true)
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Execution Modes
|
|
11
|
-
|
|
12
|
-
**Choose your execution mode:**
|
|
13
|
-
|
|
14
|
-
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
15
|
-
- Autonomous decision making with logging
|
|
16
|
-
- Minimal user interaction
|
|
17
|
-
- **Best for:** Simple, deterministic tasks
|
|
18
|
-
|
|
19
|
-
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
20
|
-
- Explicit decision checkpoints
|
|
21
|
-
- Educational explanations
|
|
22
|
-
- **Best for:** Learning, complex decisions
|
|
23
|
-
|
|
24
|
-
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
25
|
-
- Task analysis phase (identify all ambiguities)
|
|
26
|
-
- Zero ambiguity execution
|
|
27
|
-
- **Best for:** Ambiguous requirements, critical work
|
|
28
|
-
|
|
29
|
-
**Parameter:** `mode` (optional, default: `interactive`)
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## Task Definition (AIOS Task Format V1.0)
|
|
34
|
-
|
|
35
|
-
```yaml
|
|
36
|
-
task: uxDsScanArtifact()
|
|
37
|
-
responsável: Uma (Empathizer)
|
|
38
|
-
responsavel_type: Agente
|
|
39
|
-
atomic_layer: Strategy
|
|
40
|
-
|
|
41
|
-
**Entrada:**
|
|
42
|
-
- campo: task
|
|
43
|
-
tipo: string
|
|
44
|
-
origem: User Input
|
|
45
|
-
obrigatório: true
|
|
46
|
-
validação: Must be registered task
|
|
47
|
-
|
|
48
|
-
- campo: parameters
|
|
49
|
-
tipo: object
|
|
50
|
-
origem: User Input
|
|
51
|
-
obrigatório: false
|
|
52
|
-
validação: Valid task parameters
|
|
53
|
-
|
|
54
|
-
- campo: mode
|
|
55
|
-
tipo: string
|
|
56
|
-
origem: User Input
|
|
57
|
-
obrigatório: false
|
|
58
|
-
validação: yolo|interactive|pre-flight
|
|
59
|
-
|
|
60
|
-
**Saída:**
|
|
61
|
-
- campo: execution_result
|
|
62
|
-
tipo: object
|
|
63
|
-
destino: Memory
|
|
64
|
-
persistido: false
|
|
65
|
-
|
|
66
|
-
- campo: logs
|
|
67
|
-
tipo: array
|
|
68
|
-
destino: File (.ai/logs/*)
|
|
69
|
-
persistido: true
|
|
70
|
-
|
|
71
|
-
- campo: state
|
|
72
|
-
tipo: object
|
|
73
|
-
destino: State management
|
|
74
|
-
persistido: true
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## Pre-Conditions
|
|
80
|
-
|
|
81
|
-
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
82
|
-
|
|
83
|
-
**Checklist:**
|
|
84
|
-
|
|
85
|
-
```yaml
|
|
86
|
-
pre-conditions:
|
|
87
|
-
- [ ] Task is registered; required parameters provided; dependencies met
|
|
88
|
-
tipo: pre-condition
|
|
89
|
-
blocker: true
|
|
90
|
-
validação: |
|
|
91
|
-
Check task is registered; required parameters provided; dependencies met
|
|
92
|
-
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## Post-Conditions
|
|
98
|
-
|
|
99
|
-
**Purpose:** Validate execution success AFTER task completes
|
|
100
|
-
|
|
101
|
-
**Checklist:**
|
|
102
|
-
|
|
103
|
-
```yaml
|
|
104
|
-
post-conditions:
|
|
105
|
-
- [ ] Task completed; exit code 0; expected outputs created
|
|
106
|
-
tipo: post-condition
|
|
107
|
-
blocker: true
|
|
108
|
-
validação: |
|
|
109
|
-
Verify task completed; exit code 0; expected outputs created
|
|
110
|
-
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
## Acceptance Criteria
|
|
116
|
-
|
|
117
|
-
**Purpose:** Definitive pass/fail criteria for task completion
|
|
118
|
-
|
|
119
|
-
**Checklist:**
|
|
120
|
-
|
|
121
|
-
```yaml
|
|
122
|
-
acceptance-criteria:
|
|
123
|
-
- [ ] Task completed as expected; side effects documented
|
|
124
|
-
tipo: acceptance-criterion
|
|
125
|
-
blocker: true
|
|
126
|
-
validação: |
|
|
127
|
-
Assert task completed as expected; side effects documented
|
|
128
|
-
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Tools
|
|
134
|
-
|
|
135
|
-
**External/shared resources used by this task:**
|
|
136
|
-
|
|
137
|
-
- **Tool:** task-runner
|
|
138
|
-
- **Purpose:** Task execution and orchestration
|
|
139
|
-
- **Source:** .aios-core/core/task-runner.js
|
|
140
|
-
|
|
141
|
-
- **Tool:** logger
|
|
142
|
-
- **Purpose:** Execution logging and error tracking
|
|
143
|
-
- **Source:** .aios-core/utils/logger.js
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
## Scripts
|
|
148
|
-
|
|
149
|
-
**Agent-specific code for this task:**
|
|
150
|
-
|
|
151
|
-
- **Script:** execute-task.js
|
|
152
|
-
- **Purpose:** Generic task execution wrapper
|
|
153
|
-
- **Language:** JavaScript
|
|
154
|
-
- **Location:** .aios-core/scripts/execute-task.js
|
|
155
|
-
|
|
156
|
-
---
|
|
157
|
-
|
|
158
|
-
## Error Handling
|
|
159
|
-
|
|
160
|
-
**Strategy:** retry
|
|
161
|
-
|
|
162
|
-
**Common Errors:**
|
|
163
|
-
|
|
164
|
-
1. **Error:** Task Not Found
|
|
165
|
-
- **Cause:** Specified task not registered in system
|
|
166
|
-
- **Resolution:** Verify task name and registration
|
|
167
|
-
- **Recovery:** List available tasks, suggest similar
|
|
168
|
-
|
|
169
|
-
2. **Error:** Invalid Parameters
|
|
170
|
-
- **Cause:** Task parameters do not match expected schema
|
|
171
|
-
- **Resolution:** Validate parameters against task definition
|
|
172
|
-
- **Recovery:** Provide parameter template, reject execution
|
|
173
|
-
|
|
174
|
-
3. **Error:** Execution Timeout
|
|
175
|
-
- **Cause:** Task exceeds maximum execution time
|
|
176
|
-
- **Resolution:** Optimize task or increase timeout
|
|
177
|
-
- **Recovery:** Kill task, cleanup resources, log state
|
|
178
|
-
|
|
179
|
-
---
|
|
180
|
-
|
|
181
|
-
## Performance
|
|
182
|
-
|
|
183
|
-
**Expected Metrics:**
|
|
184
|
-
|
|
185
|
-
```yaml
|
|
186
|
-
duration_expected: 5-20 min (estimated)
|
|
187
|
-
cost_estimated: $0.003-0.015
|
|
188
|
-
token_usage: ~2,000-8,000 tokens
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
**Optimization Notes:**
|
|
192
|
-
- Iterative analysis with depth limits; cache intermediate results; batch similar operations
|
|
193
|
-
|
|
194
|
-
---
|
|
195
|
-
|
|
196
|
-
## Metadata
|
|
197
|
-
|
|
198
|
-
```yaml
|
|
199
|
-
story: N/A
|
|
200
|
-
version: 1.0.0
|
|
201
|
-
dependencies:
|
|
202
|
-
- N/A
|
|
203
|
-
tags:
|
|
204
|
-
- automation
|
|
205
|
-
- workflow
|
|
206
|
-
updated_at: 2025-11-17
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
---
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
## 📋 Description
|
|
213
|
-
|
|
214
|
-
Analyze HTML/React artifacts (files, screenshots, or live URLs) to extract design patterns, components, and design tokens. Automatically detect atoms, molecules, organisms following Atomic Design methodology. Generate component build suggestions and design system recommendations.
|
|
215
|
-
|
|
216
|
-
---
|
|
217
|
-
|
|
218
|
-
## 🎯 Objectives
|
|
219
|
-
|
|
220
|
-
- Scan existing UI artifacts for design patterns
|
|
221
|
-
- Extract components at atomic, molecular, and organism levels
|
|
222
|
-
- Identify design tokens (colors, typography, spacing, etc.)
|
|
223
|
-
- Generate component build recommendations
|
|
224
|
-
- Provide design system migration path
|
|
225
|
-
|
|
226
|
-
---
|
|
227
|
-
|
|
228
|
-
## 📊 Supported Artifact Types
|
|
229
|
-
|
|
230
|
-
### Type 1: HTML Files
|
|
231
|
-
**Format:** .html, .htm
|
|
232
|
-
**Analysis:** Parse DOM, extract styles, identify components
|
|
233
|
-
**Speed:** Fast (< 5 seconds)
|
|
234
|
-
|
|
235
|
-
### Type 2: React Components
|
|
236
|
-
**Format:** .jsx, .tsx, .js with JSX
|
|
237
|
-
**Analysis:** AST parsing, prop extraction, component structure
|
|
238
|
-
**Speed:** Fast (< 10 seconds)
|
|
239
|
-
|
|
240
|
-
### Type 3: Screenshots
|
|
241
|
-
**Format:** .png, .jpg, .jpeg
|
|
242
|
-
**Analysis:** Visual pattern recognition (requires AI vision)
|
|
243
|
-
**Speed:** Moderate (10-30 seconds)
|
|
244
|
-
|
|
245
|
-
### Type 4: Live URLs
|
|
246
|
-
**Format:** https://example.com
|
|
247
|
-
**Analysis:** Fetch + parse, full DOM analysis
|
|
248
|
-
**Speed:** Moderate (15-45 seconds depending on page)
|
|
249
|
-
|
|
250
|
-
---
|
|
251
|
-
|
|
252
|
-
## 🔄 Workflow
|
|
253
|
-
|
|
254
|
-
### Step 1: Specify Artifact
|
|
255
|
-
**Interactive Elicitation:**
|
|
256
|
-
|
|
257
|
-
```
|
|
258
|
-
What type of artifact do you want to scan?
|
|
259
|
-
|
|
260
|
-
1. HTML file (local path)
|
|
261
|
-
2. React component file (.jsx/.tsx)
|
|
262
|
-
3. Screenshot image (.png/.jpg)
|
|
263
|
-
4. Live website URL
|
|
264
|
-
|
|
265
|
-
Your selection: _____
|
|
266
|
-
|
|
267
|
-
Provide the path or URL:
|
|
268
|
-
Your input: _____
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
---
|
|
272
|
-
|
|
273
|
-
### Step 2: Scan & Parse Artifact
|
|
274
|
-
|
|
275
|
-
**HTML/React Parsing:**
|
|
276
|
-
1. Load file content
|
|
277
|
-
2. Parse DOM/AST structure
|
|
278
|
-
3. Extract all elements with attributes
|
|
279
|
-
4. Identify unique patterns
|
|
280
|
-
5. Group similar elements
|
|
281
|
-
|
|
282
|
-
**Screenshot Analysis:**
|
|
283
|
-
1. Load image
|
|
284
|
-
2. Detect UI regions (header, content, footer)
|
|
285
|
-
3. Identify buttons, inputs, cards, etc.
|
|
286
|
-
4. Extract color palette
|
|
287
|
-
5. Measure spacing patterns
|
|
288
|
-
|
|
289
|
-
**Live URL Fetching:**
|
|
290
|
-
1. Fetch page HTML
|
|
291
|
-
2. Download inline styles
|
|
292
|
-
3. Parse external CSS (if accessible)
|
|
293
|
-
4. Extract computed styles
|
|
294
|
-
5. Identify interactive components
|
|
295
|
-
|
|
296
|
-
---
|
|
297
|
-
|
|
298
|
-
### Step 3: Extract Design Tokens
|
|
299
|
-
|
|
300
|
-
**Color Tokens:**
|
|
301
|
-
```
|
|
302
|
-
colors:
|
|
303
|
-
primary:
|
|
304
|
-
- "#3B82F6" (used 42 times)
|
|
305
|
-
- "#2563EB" (used 18 times)
|
|
306
|
-
secondary:
|
|
307
|
-
- "#10B981" (used 23 times)
|
|
308
|
-
neutral:
|
|
309
|
-
- "#F3F4F6" (used 67 times - backgrounds)
|
|
310
|
-
- "#6B7280" (used 45 times - text)
|
|
311
|
-
- "#1F2937" (used 38 times - headings)
|
|
312
|
-
accent:
|
|
313
|
-
- "#F59E0B" (used 12 times)
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
**Typography Tokens:**
|
|
317
|
-
```
|
|
318
|
-
typography:
|
|
319
|
-
fontFamilies:
|
|
320
|
-
- "Inter, sans-serif" (primary)
|
|
321
|
-
- "JetBrains Mono, monospace" (code)
|
|
322
|
-
fontSizes:
|
|
323
|
-
- 12px (labels, captions)
|
|
324
|
-
- 14px (body text) ← most common
|
|
325
|
-
- 16px (default)
|
|
326
|
-
- 20px (h3)
|
|
327
|
-
- 24px (h2)
|
|
328
|
-
- 32px (h1)
|
|
329
|
-
fontWeights:
|
|
330
|
-
- 400 (regular)
|
|
331
|
-
- 500 (medium)
|
|
332
|
-
- 600 (semibold)
|
|
333
|
-
- 700 (bold)
|
|
334
|
-
```
|
|
335
|
-
|
|
336
|
-
**Spacing Tokens:**
|
|
337
|
-
```
|
|
338
|
-
spacing:
|
|
339
|
-
scale: [4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px]
|
|
340
|
-
common_patterns:
|
|
341
|
-
- Buttons: 8px vertical, 16px horizontal padding
|
|
342
|
-
- Cards: 16px padding, 16px gap between
|
|
343
|
-
- Sections: 32px vertical spacing
|
|
344
|
-
- Page margins: 24px mobile, 48px desktop
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
**Border Radius Tokens:**
|
|
348
|
-
```
|
|
349
|
-
borderRadius:
|
|
350
|
-
- 0px (sharp edges - 15% of components)
|
|
351
|
-
- 4px (slight rounding - 60% of components) ← default
|
|
352
|
-
- 8px (rounded - 20% of components)
|
|
353
|
-
- 9999px (fully rounded - 5% of components)
|
|
354
|
-
```
|
|
355
|
-
|
|
356
|
-
**Shadow Tokens:**
|
|
357
|
-
```
|
|
358
|
-
shadows:
|
|
359
|
-
- none (flat design)
|
|
360
|
-
- sm: "0 1px 2px rgba(0,0,0,0.05)"
|
|
361
|
-
- md: "0 4px 6px rgba(0,0,0,0.1)" ← most common
|
|
362
|
-
- lg: "0 10px 15px rgba(0,0,0,0.1)"
|
|
363
|
-
```
|
|
364
|
-
|
|
365
|
-
---
|
|
366
|
-
|
|
367
|
-
### Step 4: Identify Components (Atomic Design)
|
|
368
|
-
|
|
369
|
-
**Atoms (Fundamental Building Blocks):**
|
|
370
|
-
```
|
|
371
|
-
atoms:
|
|
372
|
-
- Button
|
|
373
|
-
variants: [primary, secondary, outline, ghost]
|
|
374
|
-
count: 47 instances
|
|
375
|
-
styles: {padding: 8px 16px, borderRadius: 4px, ...}
|
|
376
|
-
|
|
377
|
-
- Input
|
|
378
|
-
types: [text, email, password, number, search]
|
|
379
|
-
count: 23 instances
|
|
380
|
-
styles: {height: 40px, border: 1px solid #D1D5DB, ...}
|
|
381
|
-
|
|
382
|
-
- Label
|
|
383
|
-
count: 31 instances
|
|
384
|
-
styles: {fontSize: 14px, fontWeight: 500, ...}
|
|
385
|
-
|
|
386
|
-
- Icon
|
|
387
|
-
set: [check, x, chevron-down, search, user, settings]
|
|
388
|
-
count: 89 instances
|
|
389
|
-
size: 16px, 20px, 24px
|
|
390
|
-
|
|
391
|
-
- Badge
|
|
392
|
-
count: 12 instances
|
|
393
|
-
variants: [success, warning, error, info]
|
|
394
|
-
```
|
|
395
|
-
|
|
396
|
-
**Molecules (Simple Combinations):**
|
|
397
|
-
```
|
|
398
|
-
molecules:
|
|
399
|
-
- FormField (Label + Input + Helper Text)
|
|
400
|
-
count: 18 instances
|
|
401
|
-
pattern: Vertical stack with 4px gap
|
|
402
|
-
|
|
403
|
-
- SearchBar (Input + Icon + Optional Button)
|
|
404
|
-
count: 3 instances
|
|
405
|
-
pattern: Horizontal flex with icon prefix
|
|
406
|
-
|
|
407
|
-
- Card (Border + Padding + Shadow)
|
|
408
|
-
count: 24 instances
|
|
409
|
-
pattern: 16px padding, 8px borderRadius, md shadow
|
|
410
|
-
|
|
411
|
-
- NavItem (Icon + Label + Optional Badge)
|
|
412
|
-
count: 8 instances (in navigation)
|
|
413
|
-
pattern: Horizontal flex, 12px gap
|
|
414
|
-
|
|
415
|
-
- StatDisplay (Label + Number + Trend Icon)
|
|
416
|
-
count: 6 instances (dashboard)
|
|
417
|
-
pattern: Vertical stack, number emphasized
|
|
418
|
-
```
|
|
419
|
-
|
|
420
|
-
**Organisms (Complex Sections):**
|
|
421
|
-
```
|
|
422
|
-
organisms:
|
|
423
|
-
- Header (Logo + Navigation + Search + Profile)
|
|
424
|
-
count: 1 instance (global)
|
|
425
|
-
complexity: HIGH
|
|
426
|
-
|
|
427
|
-
- ProductCard (Image + Title + Description + Price + CTA)
|
|
428
|
-
count: 16 instances (grid)
|
|
429
|
-
complexity: MEDIUM
|
|
430
|
-
|
|
431
|
-
- DataTable (Headers + Rows + Pagination + Actions)
|
|
432
|
-
count: 2 instances
|
|
433
|
-
complexity: HIGH
|
|
434
|
-
|
|
435
|
-
- Modal (Overlay + Header + Body + Footer + Close)
|
|
436
|
-
count: 3 instances (login, confirm, settings)
|
|
437
|
-
complexity: MEDIUM
|
|
438
|
-
|
|
439
|
-
- Form (Multiple Fields + Validation + Submit)
|
|
440
|
-
count: 4 instances
|
|
441
|
-
complexity: MEDIUM
|
|
442
|
-
```
|
|
443
|
-
|
|
444
|
-
---
|
|
445
|
-
|
|
446
|
-
### Step 5: Calculate Pattern Redundancy
|
|
447
|
-
|
|
448
|
-
**Redundancy Analysis:**
|
|
449
|
-
```
|
|
450
|
-
Pattern: Buttons
|
|
451
|
-
----
|
|
452
|
-
Total instances: 47
|
|
453
|
-
Unique variations: 12 (based on style clustering)
|
|
454
|
-
Optimal set: 3 (primary, secondary, outline)
|
|
455
|
-
Reduction: 75% (12 → 3)
|
|
456
|
-
Maintenance savings: 37.5 hours/month → 9.4 hours/month
|
|
457
|
-
|
|
458
|
-
Pattern: Colors
|
|
459
|
-
----
|
|
460
|
-
Total colors: 89 hex values
|
|
461
|
-
After clustering (5% HSL threshold): 18 distinct colors
|
|
462
|
-
Optimal token set: 12 tokens
|
|
463
|
-
Reduction: 86.5% (89 → 12)
|
|
464
|
-
|
|
465
|
-
Pattern: Spacing Values
|
|
466
|
-
----
|
|
467
|
-
Total unique values: 47 px values
|
|
468
|
-
After normalization to 4px scale: 12 values
|
|
469
|
-
Optimal set: 8 tokens (4, 8, 12, 16, 24, 32, 48, 64)
|
|
470
|
-
Reduction: 74.5% (47 → 12)
|
|
471
|
-
```
|
|
472
|
-
|
|
473
|
-
---
|
|
474
|
-
|
|
475
|
-
### Step 6: Generate Build Recommendations
|
|
476
|
-
|
|
477
|
-
**Component Priority Matrix:**
|
|
478
|
-
```
|
|
479
|
-
Priority: HIGH (Build First)
|
|
480
|
-
- Button (47 instances - most used)
|
|
481
|
-
- Input (23 instances - forms critical)
|
|
482
|
-
- Card (24 instances - content display)
|
|
483
|
-
|
|
484
|
-
Priority: MEDIUM (Build Second)
|
|
485
|
-
- FormField molecule (18 instances)
|
|
486
|
-
- Badge (12 instances - status display)
|
|
487
|
-
- Modal (3 instances but high complexity)
|
|
488
|
-
|
|
489
|
-
Priority: LOW (Build Last or Skip)
|
|
490
|
-
- Custom widgets (1-2 instances)
|
|
491
|
-
- Page-specific components
|
|
492
|
-
- One-off patterns
|
|
493
|
-
```
|
|
494
|
-
|
|
495
|
-
**Build Order Recommendation:**
|
|
496
|
-
```
|
|
497
|
-
Phase 1: Core Atoms (Week 1)
|
|
498
|
-
1. Button (all 4 variants)
|
|
499
|
-
2. Input (all 5 types)
|
|
500
|
-
3. Label
|
|
501
|
-
4. Icon set (12 icons)
|
|
502
|
-
|
|
503
|
-
Phase 2: Common Molecules (Week 2)
|
|
504
|
-
5. FormField (Label + Input + Helper)
|
|
505
|
-
6. Card
|
|
506
|
-
7. Badge
|
|
507
|
-
8. SearchBar
|
|
508
|
-
|
|
509
|
-
Phase 3: Complex Organisms (Week 3)
|
|
510
|
-
9. Header
|
|
511
|
-
10. Form (with validation)
|
|
512
|
-
11. Modal
|
|
513
|
-
12. DataTable
|
|
514
|
-
|
|
515
|
-
Phase 4: Page Templates (Week 4)
|
|
516
|
-
13. Dashboard template
|
|
517
|
-
14. Form page template
|
|
518
|
-
15. Detail page template
|
|
519
|
-
```
|
|
520
|
-
|
|
521
|
-
---
|
|
522
|
-
|
|
523
|
-
## 📤 Outputs
|
|
524
|
-
|
|
525
|
-
All artifacts saved to: `outputs/design-system/{project}/scan/`
|
|
526
|
-
|
|
527
|
-
### Required Files:
|
|
528
|
-
1. **scan-summary.md** - High-level findings
|
|
529
|
-
2. **design-tokens.yaml** - Extracted tokens (colors, typography, spacing)
|
|
530
|
-
3. **component-inventory.md** - List of components (Atomic Design)
|
|
531
|
-
4. **redundancy-analysis.md** - Pattern redundancy calculations
|
|
532
|
-
5. **build-recommendations.md** - Priority matrix and build order
|
|
533
|
-
|
|
534
|
-
### Optional Files:
|
|
535
|
-
6. **screenshots/** - Visual comparisons of patterns
|
|
536
|
-
7. **extracted-styles.css** - All CSS extracted from artifact
|
|
537
|
-
8. **comparison-matrix.xlsx** - Side-by-side pattern comparisons
|
|
538
|
-
|
|
539
|
-
---
|
|
540
|
-
|
|
541
|
-
## ✅ Success Criteria
|
|
542
|
-
|
|
543
|
-
- [ ] Artifact successfully scanned and parsed
|
|
544
|
-
- [ ] Design tokens extracted (colors, typography, spacing, etc.)
|
|
545
|
-
- [ ] Components identified at atomic, molecular, organism levels
|
|
546
|
-
- [ ] Pattern redundancy calculated with reduction percentages
|
|
547
|
-
- [ ] Build recommendations prioritized (HIGH/MEDIUM/LOW)
|
|
548
|
-
- [ ] Build order phases defined (1-4 weeks)
|
|
549
|
-
- [ ] All outputs saved to `outputs/design-system/{project}/scan/`
|
|
550
|
-
- [ ] `.state.yaml` updated with scan results
|
|
551
|
-
|
|
552
|
-
---
|
|
553
|
-
|
|
554
|
-
## 🔄 Integration with Other Tasks
|
|
555
|
-
|
|
556
|
-
**Works with any phase:**
|
|
557
|
-
- `*research` - Scan competitor sites for UX patterns
|
|
558
|
-
- `*wireframe` - Scan existing app to inventory current components
|
|
559
|
-
- `*audit` - Complement full codebase audit with specific artifact focus
|
|
560
|
-
- `*consolidate` - Use scan to inform consolidation decisions
|
|
561
|
-
- `*build` - Use component inventory to guide what to build
|
|
562
|
-
|
|
563
|
-
**State Management:**
|
|
564
|
-
Updates `.state.yaml` with:
|
|
565
|
-
- `artifact_scanned: {type, path}`
|
|
566
|
-
- `tokens_extracted: {colors, typography, spacing}`
|
|
567
|
-
- `components_found: [list of components]`
|
|
568
|
-
- `redundancy_metrics: {buttons, colors, spacing}`
|
|
569
|
-
- `scan_date: [ISO date]`
|
|
570
|
-
|
|
571
|
-
---
|
|
572
|
-
|
|
573
|
-
## 📚 Token Extraction Algorithms
|
|
574
|
-
|
|
575
|
-
### Color Clustering (HSL-based, 5% threshold)
|
|
576
|
-
```
|
|
577
|
-
Algorithm:
|
|
578
|
-
1. Extract all hex colors from artifact
|
|
579
|
-
2. Convert to HSL (Hue, Saturation, Lightness)
|
|
580
|
-
3. Cluster colors within 5% HSL distance
|
|
581
|
-
4. Select most-used color from each cluster as token
|
|
582
|
-
5. Name tokens by category (primary, secondary, neutral, accent)
|
|
583
|
-
```
|
|
584
|
-
|
|
585
|
-
### Spacing Normalization (4px base)
|
|
586
|
-
```
|
|
587
|
-
Algorithm:
|
|
588
|
-
1. Extract all px values from padding, margin, gap
|
|
589
|
-
2. Round to nearest 4px multiple
|
|
590
|
-
3. Count frequency of each value
|
|
591
|
-
4. Select top 8 most-used values as tokens
|
|
592
|
-
5. Name tokens: xs, sm, md, lg, xl, 2xl, 3xl
|
|
593
|
-
```
|
|
594
|
-
|
|
595
|
-
### Component Similarity Detection
|
|
596
|
-
```
|
|
597
|
-
Algorithm:
|
|
598
|
-
1. Extract element structure (tag + classes + children)
|
|
599
|
-
2. Extract styles (computed CSS)
|
|
600
|
-
3. Calculate similarity score (0-100%)
|
|
601
|
-
4. Group components with >85% similarity
|
|
602
|
-
5. Identify most common variant as base
|
|
603
|
-
```
|
|
604
|
-
|
|
605
|
-
---
|
|
606
|
-
|
|
607
|
-
## ⚠️ Limitations
|
|
608
|
-
|
|
609
|
-
### HTML/React Files:
|
|
610
|
-
- ✅ Can parse structure and styles
|
|
611
|
-
- ✅ Can extract inline and CSS classes
|
|
612
|
-
- ❌ Cannot see rendered visual (no browser)
|
|
613
|
-
- ❌ Cannot detect dynamic behavior
|
|
614
|
-
|
|
615
|
-
### Screenshots:
|
|
616
|
-
- ✅ Can see visual appearance
|
|
617
|
-
- ✅ Can detect colors and spacing
|
|
618
|
-
- ❌ Cannot extract code structure
|
|
619
|
-
- ❌ Cannot identify interactive states (hover, focus)
|
|
620
|
-
|
|
621
|
-
### Live URLs:
|
|
622
|
-
- ✅ Can fetch full page HTML
|
|
623
|
-
- ✅ Can extract all styles
|
|
624
|
-
- ❌ May be blocked by CORS/auth
|
|
625
|
-
- ❌ Cannot access private pages without login
|
|
626
|
-
|
|
627
|
-
---
|
|
628
|
-
|
|
629
|
-
## 🎯 Example Output
|
|
630
|
-
|
|
631
|
-
**Example: Scan Result for Dashboard**
|
|
632
|
-
|
|
633
|
-
```markdown
|
|
634
|
-
# Scan Summary: Dashboard Page
|
|
635
|
-
|
|
636
|
-
**Artifact:** https://example.com/dashboard
|
|
637
|
-
**Scanned:** 2025-11-12 14:35
|
|
638
|
-
**Page Complexity:** MEDIUM (47 components, 3 levels deep)
|
|
639
|
-
|
|
640
|
-
## Design Tokens Extracted
|
|
641
|
-
- **Colors:** 18 distinct colors → 12 tokens recommended
|
|
642
|
-
- **Typography:** 6 font sizes, 4 weights → Well-structured
|
|
643
|
-
- **Spacing:** 47 values → Normalize to 8 tokens
|
|
644
|
-
- **Border Radius:** 3 values (0px, 4px, 8px) → Already optimal
|
|
645
|
-
|
|
646
|
-
## Components Found (Atomic Design)
|
|
647
|
-
### Atoms (8 types, 147 instances)
|
|
648
|
-
- Button (47), Input (23), Label (31), Icon (89), Badge (12), ...
|
|
649
|
-
|
|
650
|
-
### Molecules (5 types, 42 instances)
|
|
651
|
-
- FormField (18), Card (24), SearchBar (3), NavItem (8), ...
|
|
652
|
-
|
|
653
|
-
### Organisms (4 types, 7 instances)
|
|
654
|
-
- Header (1), Form (4), Modal (3), DataTable (2)
|
|
655
|
-
|
|
656
|
-
## Redundancy Analysis
|
|
657
|
-
- **Buttons:** 75% reduction possible (12 variants → 3)
|
|
658
|
-
- **Colors:** 86.5% reduction possible (89 → 12)
|
|
659
|
-
- **Spacing:** 74.5% reduction possible (47 → 12)
|
|
660
|
-
|
|
661
|
-
## Build Recommendations
|
|
662
|
-
**Phase 1 (Week 1):** Button, Input, Label, Icon
|
|
663
|
-
**Phase 2 (Week 2):** FormField, Card, Badge
|
|
664
|
-
**Phase 3 (Week 3):** Header, Form, Modal
|
|
665
|
-
**Phase 4 (Week 4):** DataTable, Templates
|
|
666
|
-
```
|
|
667
|
-
|
|
668
|
-
---
|
|
669
|
-
|
|
670
|
-
**Created:** 2025-11-12
|
|
671
|
-
**Story:** 4.3 - UX-Design-Expert Merge
|
|
672
|
-
**Version:** 1.0.0
|
|
1
|
+
# Design System Artifact Scanner
|
|
2
|
+
|
|
3
|
+
> **Task ID:** ux-ds-scan-artifact
|
|
4
|
+
> **Agent:** UX-Design Expert
|
|
5
|
+
> **Phase:** Universal (works with any phase)
|
|
6
|
+
> **Interactive:** Yes (elicit=true)
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Execution Modes
|
|
11
|
+
|
|
12
|
+
**Choose your execution mode:**
|
|
13
|
+
|
|
14
|
+
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
15
|
+
- Autonomous decision making with logging
|
|
16
|
+
- Minimal user interaction
|
|
17
|
+
- **Best for:** Simple, deterministic tasks
|
|
18
|
+
|
|
19
|
+
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
20
|
+
- Explicit decision checkpoints
|
|
21
|
+
- Educational explanations
|
|
22
|
+
- **Best for:** Learning, complex decisions
|
|
23
|
+
|
|
24
|
+
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
25
|
+
- Task analysis phase (identify all ambiguities)
|
|
26
|
+
- Zero ambiguity execution
|
|
27
|
+
- **Best for:** Ambiguous requirements, critical work
|
|
28
|
+
|
|
29
|
+
**Parameter:** `mode` (optional, default: `interactive`)
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Task Definition (AIOS Task Format V1.0)
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
task: uxDsScanArtifact()
|
|
37
|
+
responsável: Uma (Empathizer)
|
|
38
|
+
responsavel_type: Agente
|
|
39
|
+
atomic_layer: Strategy
|
|
40
|
+
|
|
41
|
+
**Entrada:**
|
|
42
|
+
- campo: task
|
|
43
|
+
tipo: string
|
|
44
|
+
origem: User Input
|
|
45
|
+
obrigatório: true
|
|
46
|
+
validação: Must be registered task
|
|
47
|
+
|
|
48
|
+
- campo: parameters
|
|
49
|
+
tipo: object
|
|
50
|
+
origem: User Input
|
|
51
|
+
obrigatório: false
|
|
52
|
+
validação: Valid task parameters
|
|
53
|
+
|
|
54
|
+
- campo: mode
|
|
55
|
+
tipo: string
|
|
56
|
+
origem: User Input
|
|
57
|
+
obrigatório: false
|
|
58
|
+
validação: yolo|interactive|pre-flight
|
|
59
|
+
|
|
60
|
+
**Saída:**
|
|
61
|
+
- campo: execution_result
|
|
62
|
+
tipo: object
|
|
63
|
+
destino: Memory
|
|
64
|
+
persistido: false
|
|
65
|
+
|
|
66
|
+
- campo: logs
|
|
67
|
+
tipo: array
|
|
68
|
+
destino: File (.ai/logs/*)
|
|
69
|
+
persistido: true
|
|
70
|
+
|
|
71
|
+
- campo: state
|
|
72
|
+
tipo: object
|
|
73
|
+
destino: State management
|
|
74
|
+
persistido: true
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Pre-Conditions
|
|
80
|
+
|
|
81
|
+
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
82
|
+
|
|
83
|
+
**Checklist:**
|
|
84
|
+
|
|
85
|
+
```yaml
|
|
86
|
+
pre-conditions:
|
|
87
|
+
- [ ] Task is registered; required parameters provided; dependencies met
|
|
88
|
+
tipo: pre-condition
|
|
89
|
+
blocker: true
|
|
90
|
+
validação: |
|
|
91
|
+
Check task is registered; required parameters provided; dependencies met
|
|
92
|
+
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Post-Conditions
|
|
98
|
+
|
|
99
|
+
**Purpose:** Validate execution success AFTER task completes
|
|
100
|
+
|
|
101
|
+
**Checklist:**
|
|
102
|
+
|
|
103
|
+
```yaml
|
|
104
|
+
post-conditions:
|
|
105
|
+
- [ ] Task completed; exit code 0; expected outputs created
|
|
106
|
+
tipo: post-condition
|
|
107
|
+
blocker: true
|
|
108
|
+
validação: |
|
|
109
|
+
Verify task completed; exit code 0; expected outputs created
|
|
110
|
+
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Acceptance Criteria
|
|
116
|
+
|
|
117
|
+
**Purpose:** Definitive pass/fail criteria for task completion
|
|
118
|
+
|
|
119
|
+
**Checklist:**
|
|
120
|
+
|
|
121
|
+
```yaml
|
|
122
|
+
acceptance-criteria:
|
|
123
|
+
- [ ] Task completed as expected; side effects documented
|
|
124
|
+
tipo: acceptance-criterion
|
|
125
|
+
blocker: true
|
|
126
|
+
validação: |
|
|
127
|
+
Assert task completed as expected; side effects documented
|
|
128
|
+
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Tools
|
|
134
|
+
|
|
135
|
+
**External/shared resources used by this task:**
|
|
136
|
+
|
|
137
|
+
- **Tool:** task-runner
|
|
138
|
+
- **Purpose:** Task execution and orchestration
|
|
139
|
+
- **Source:** .aios-core/core/task-runner.js
|
|
140
|
+
|
|
141
|
+
- **Tool:** logger
|
|
142
|
+
- **Purpose:** Execution logging and error tracking
|
|
143
|
+
- **Source:** .aios-core/utils/logger.js
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Scripts
|
|
148
|
+
|
|
149
|
+
**Agent-specific code for this task:**
|
|
150
|
+
|
|
151
|
+
- **Script:** execute-task.js
|
|
152
|
+
- **Purpose:** Generic task execution wrapper
|
|
153
|
+
- **Language:** JavaScript
|
|
154
|
+
- **Location:** .aios-core/scripts/execute-task.js
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Error Handling
|
|
159
|
+
|
|
160
|
+
**Strategy:** retry
|
|
161
|
+
|
|
162
|
+
**Common Errors:**
|
|
163
|
+
|
|
164
|
+
1. **Error:** Task Not Found
|
|
165
|
+
- **Cause:** Specified task not registered in system
|
|
166
|
+
- **Resolution:** Verify task name and registration
|
|
167
|
+
- **Recovery:** List available tasks, suggest similar
|
|
168
|
+
|
|
169
|
+
2. **Error:** Invalid Parameters
|
|
170
|
+
- **Cause:** Task parameters do not match expected schema
|
|
171
|
+
- **Resolution:** Validate parameters against task definition
|
|
172
|
+
- **Recovery:** Provide parameter template, reject execution
|
|
173
|
+
|
|
174
|
+
3. **Error:** Execution Timeout
|
|
175
|
+
- **Cause:** Task exceeds maximum execution time
|
|
176
|
+
- **Resolution:** Optimize task or increase timeout
|
|
177
|
+
- **Recovery:** Kill task, cleanup resources, log state
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Performance
|
|
182
|
+
|
|
183
|
+
**Expected Metrics:**
|
|
184
|
+
|
|
185
|
+
```yaml
|
|
186
|
+
duration_expected: 5-20 min (estimated)
|
|
187
|
+
cost_estimated: $0.003-0.015
|
|
188
|
+
token_usage: ~2,000-8,000 tokens
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**Optimization Notes:**
|
|
192
|
+
- Iterative analysis with depth limits; cache intermediate results; batch similar operations
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Metadata
|
|
197
|
+
|
|
198
|
+
```yaml
|
|
199
|
+
story: N/A
|
|
200
|
+
version: 1.0.0
|
|
201
|
+
dependencies:
|
|
202
|
+
- N/A
|
|
203
|
+
tags:
|
|
204
|
+
- automation
|
|
205
|
+
- workflow
|
|
206
|
+
updated_at: 2025-11-17
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
## 📋 Description
|
|
213
|
+
|
|
214
|
+
Analyze HTML/React artifacts (files, screenshots, or live URLs) to extract design patterns, components, and design tokens. Automatically detect atoms, molecules, organisms following Atomic Design methodology. Generate component build suggestions and design system recommendations.
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## 🎯 Objectives
|
|
219
|
+
|
|
220
|
+
- Scan existing UI artifacts for design patterns
|
|
221
|
+
- Extract components at atomic, molecular, and organism levels
|
|
222
|
+
- Identify design tokens (colors, typography, spacing, etc.)
|
|
223
|
+
- Generate component build recommendations
|
|
224
|
+
- Provide design system migration path
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## 📊 Supported Artifact Types
|
|
229
|
+
|
|
230
|
+
### Type 1: HTML Files
|
|
231
|
+
**Format:** .html, .htm
|
|
232
|
+
**Analysis:** Parse DOM, extract styles, identify components
|
|
233
|
+
**Speed:** Fast (< 5 seconds)
|
|
234
|
+
|
|
235
|
+
### Type 2: React Components
|
|
236
|
+
**Format:** .jsx, .tsx, .js with JSX
|
|
237
|
+
**Analysis:** AST parsing, prop extraction, component structure
|
|
238
|
+
**Speed:** Fast (< 10 seconds)
|
|
239
|
+
|
|
240
|
+
### Type 3: Screenshots
|
|
241
|
+
**Format:** .png, .jpg, .jpeg
|
|
242
|
+
**Analysis:** Visual pattern recognition (requires AI vision)
|
|
243
|
+
**Speed:** Moderate (10-30 seconds)
|
|
244
|
+
|
|
245
|
+
### Type 4: Live URLs
|
|
246
|
+
**Format:** https://example.com
|
|
247
|
+
**Analysis:** Fetch + parse, full DOM analysis
|
|
248
|
+
**Speed:** Moderate (15-45 seconds depending on page)
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## 🔄 Workflow
|
|
253
|
+
|
|
254
|
+
### Step 1: Specify Artifact
|
|
255
|
+
**Interactive Elicitation:**
|
|
256
|
+
|
|
257
|
+
```
|
|
258
|
+
What type of artifact do you want to scan?
|
|
259
|
+
|
|
260
|
+
1. HTML file (local path)
|
|
261
|
+
2. React component file (.jsx/.tsx)
|
|
262
|
+
3. Screenshot image (.png/.jpg)
|
|
263
|
+
4. Live website URL
|
|
264
|
+
|
|
265
|
+
Your selection: _____
|
|
266
|
+
|
|
267
|
+
Provide the path or URL:
|
|
268
|
+
Your input: _____
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
### Step 2: Scan & Parse Artifact
|
|
274
|
+
|
|
275
|
+
**HTML/React Parsing:**
|
|
276
|
+
1. Load file content
|
|
277
|
+
2. Parse DOM/AST structure
|
|
278
|
+
3. Extract all elements with attributes
|
|
279
|
+
4. Identify unique patterns
|
|
280
|
+
5. Group similar elements
|
|
281
|
+
|
|
282
|
+
**Screenshot Analysis:**
|
|
283
|
+
1. Load image
|
|
284
|
+
2. Detect UI regions (header, content, footer)
|
|
285
|
+
3. Identify buttons, inputs, cards, etc.
|
|
286
|
+
4. Extract color palette
|
|
287
|
+
5. Measure spacing patterns
|
|
288
|
+
|
|
289
|
+
**Live URL Fetching:**
|
|
290
|
+
1. Fetch page HTML
|
|
291
|
+
2. Download inline styles
|
|
292
|
+
3. Parse external CSS (if accessible)
|
|
293
|
+
4. Extract computed styles
|
|
294
|
+
5. Identify interactive components
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
### Step 3: Extract Design Tokens
|
|
299
|
+
|
|
300
|
+
**Color Tokens:**
|
|
301
|
+
```
|
|
302
|
+
colors:
|
|
303
|
+
primary:
|
|
304
|
+
- "#3B82F6" (used 42 times)
|
|
305
|
+
- "#2563EB" (used 18 times)
|
|
306
|
+
secondary:
|
|
307
|
+
- "#10B981" (used 23 times)
|
|
308
|
+
neutral:
|
|
309
|
+
- "#F3F4F6" (used 67 times - backgrounds)
|
|
310
|
+
- "#6B7280" (used 45 times - text)
|
|
311
|
+
- "#1F2937" (used 38 times - headings)
|
|
312
|
+
accent:
|
|
313
|
+
- "#F59E0B" (used 12 times)
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
**Typography Tokens:**
|
|
317
|
+
```
|
|
318
|
+
typography:
|
|
319
|
+
fontFamilies:
|
|
320
|
+
- "Inter, sans-serif" (primary)
|
|
321
|
+
- "JetBrains Mono, monospace" (code)
|
|
322
|
+
fontSizes:
|
|
323
|
+
- 12px (labels, captions)
|
|
324
|
+
- 14px (body text) ← most common
|
|
325
|
+
- 16px (default)
|
|
326
|
+
- 20px (h3)
|
|
327
|
+
- 24px (h2)
|
|
328
|
+
- 32px (h1)
|
|
329
|
+
fontWeights:
|
|
330
|
+
- 400 (regular)
|
|
331
|
+
- 500 (medium)
|
|
332
|
+
- 600 (semibold)
|
|
333
|
+
- 700 (bold)
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
**Spacing Tokens:**
|
|
337
|
+
```
|
|
338
|
+
spacing:
|
|
339
|
+
scale: [4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px]
|
|
340
|
+
common_patterns:
|
|
341
|
+
- Buttons: 8px vertical, 16px horizontal padding
|
|
342
|
+
- Cards: 16px padding, 16px gap between
|
|
343
|
+
- Sections: 32px vertical spacing
|
|
344
|
+
- Page margins: 24px mobile, 48px desktop
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
**Border Radius Tokens:**
|
|
348
|
+
```
|
|
349
|
+
borderRadius:
|
|
350
|
+
- 0px (sharp edges - 15% of components)
|
|
351
|
+
- 4px (slight rounding - 60% of components) ← default
|
|
352
|
+
- 8px (rounded - 20% of components)
|
|
353
|
+
- 9999px (fully rounded - 5% of components)
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
**Shadow Tokens:**
|
|
357
|
+
```
|
|
358
|
+
shadows:
|
|
359
|
+
- none (flat design)
|
|
360
|
+
- sm: "0 1px 2px rgba(0,0,0,0.05)"
|
|
361
|
+
- md: "0 4px 6px rgba(0,0,0,0.1)" ← most common
|
|
362
|
+
- lg: "0 10px 15px rgba(0,0,0,0.1)"
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
---
|
|
366
|
+
|
|
367
|
+
### Step 4: Identify Components (Atomic Design)
|
|
368
|
+
|
|
369
|
+
**Atoms (Fundamental Building Blocks):**
|
|
370
|
+
```
|
|
371
|
+
atoms:
|
|
372
|
+
- Button
|
|
373
|
+
variants: [primary, secondary, outline, ghost]
|
|
374
|
+
count: 47 instances
|
|
375
|
+
styles: {padding: 8px 16px, borderRadius: 4px, ...}
|
|
376
|
+
|
|
377
|
+
- Input
|
|
378
|
+
types: [text, email, password, number, search]
|
|
379
|
+
count: 23 instances
|
|
380
|
+
styles: {height: 40px, border: 1px solid #D1D5DB, ...}
|
|
381
|
+
|
|
382
|
+
- Label
|
|
383
|
+
count: 31 instances
|
|
384
|
+
styles: {fontSize: 14px, fontWeight: 500, ...}
|
|
385
|
+
|
|
386
|
+
- Icon
|
|
387
|
+
set: [check, x, chevron-down, search, user, settings]
|
|
388
|
+
count: 89 instances
|
|
389
|
+
size: 16px, 20px, 24px
|
|
390
|
+
|
|
391
|
+
- Badge
|
|
392
|
+
count: 12 instances
|
|
393
|
+
variants: [success, warning, error, info]
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
**Molecules (Simple Combinations):**
|
|
397
|
+
```
|
|
398
|
+
molecules:
|
|
399
|
+
- FormField (Label + Input + Helper Text)
|
|
400
|
+
count: 18 instances
|
|
401
|
+
pattern: Vertical stack with 4px gap
|
|
402
|
+
|
|
403
|
+
- SearchBar (Input + Icon + Optional Button)
|
|
404
|
+
count: 3 instances
|
|
405
|
+
pattern: Horizontal flex with icon prefix
|
|
406
|
+
|
|
407
|
+
- Card (Border + Padding + Shadow)
|
|
408
|
+
count: 24 instances
|
|
409
|
+
pattern: 16px padding, 8px borderRadius, md shadow
|
|
410
|
+
|
|
411
|
+
- NavItem (Icon + Label + Optional Badge)
|
|
412
|
+
count: 8 instances (in navigation)
|
|
413
|
+
pattern: Horizontal flex, 12px gap
|
|
414
|
+
|
|
415
|
+
- StatDisplay (Label + Number + Trend Icon)
|
|
416
|
+
count: 6 instances (dashboard)
|
|
417
|
+
pattern: Vertical stack, number emphasized
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
**Organisms (Complex Sections):**
|
|
421
|
+
```
|
|
422
|
+
organisms:
|
|
423
|
+
- Header (Logo + Navigation + Search + Profile)
|
|
424
|
+
count: 1 instance (global)
|
|
425
|
+
complexity: HIGH
|
|
426
|
+
|
|
427
|
+
- ProductCard (Image + Title + Description + Price + CTA)
|
|
428
|
+
count: 16 instances (grid)
|
|
429
|
+
complexity: MEDIUM
|
|
430
|
+
|
|
431
|
+
- DataTable (Headers + Rows + Pagination + Actions)
|
|
432
|
+
count: 2 instances
|
|
433
|
+
complexity: HIGH
|
|
434
|
+
|
|
435
|
+
- Modal (Overlay + Header + Body + Footer + Close)
|
|
436
|
+
count: 3 instances (login, confirm, settings)
|
|
437
|
+
complexity: MEDIUM
|
|
438
|
+
|
|
439
|
+
- Form (Multiple Fields + Validation + Submit)
|
|
440
|
+
count: 4 instances
|
|
441
|
+
complexity: MEDIUM
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
---
|
|
445
|
+
|
|
446
|
+
### Step 5: Calculate Pattern Redundancy
|
|
447
|
+
|
|
448
|
+
**Redundancy Analysis:**
|
|
449
|
+
```
|
|
450
|
+
Pattern: Buttons
|
|
451
|
+
----
|
|
452
|
+
Total instances: 47
|
|
453
|
+
Unique variations: 12 (based on style clustering)
|
|
454
|
+
Optimal set: 3 (primary, secondary, outline)
|
|
455
|
+
Reduction: 75% (12 → 3)
|
|
456
|
+
Maintenance savings: 37.5 hours/month → 9.4 hours/month
|
|
457
|
+
|
|
458
|
+
Pattern: Colors
|
|
459
|
+
----
|
|
460
|
+
Total colors: 89 hex values
|
|
461
|
+
After clustering (5% HSL threshold): 18 distinct colors
|
|
462
|
+
Optimal token set: 12 tokens
|
|
463
|
+
Reduction: 86.5% (89 → 12)
|
|
464
|
+
|
|
465
|
+
Pattern: Spacing Values
|
|
466
|
+
----
|
|
467
|
+
Total unique values: 47 px values
|
|
468
|
+
After normalization to 4px scale: 12 values
|
|
469
|
+
Optimal set: 8 tokens (4, 8, 12, 16, 24, 32, 48, 64)
|
|
470
|
+
Reduction: 74.5% (47 → 12)
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
---
|
|
474
|
+
|
|
475
|
+
### Step 6: Generate Build Recommendations
|
|
476
|
+
|
|
477
|
+
**Component Priority Matrix:**
|
|
478
|
+
```
|
|
479
|
+
Priority: HIGH (Build First)
|
|
480
|
+
- Button (47 instances - most used)
|
|
481
|
+
- Input (23 instances - forms critical)
|
|
482
|
+
- Card (24 instances - content display)
|
|
483
|
+
|
|
484
|
+
Priority: MEDIUM (Build Second)
|
|
485
|
+
- FormField molecule (18 instances)
|
|
486
|
+
- Badge (12 instances - status display)
|
|
487
|
+
- Modal (3 instances but high complexity)
|
|
488
|
+
|
|
489
|
+
Priority: LOW (Build Last or Skip)
|
|
490
|
+
- Custom widgets (1-2 instances)
|
|
491
|
+
- Page-specific components
|
|
492
|
+
- One-off patterns
|
|
493
|
+
```
|
|
494
|
+
|
|
495
|
+
**Build Order Recommendation:**
|
|
496
|
+
```
|
|
497
|
+
Phase 1: Core Atoms (Week 1)
|
|
498
|
+
1. Button (all 4 variants)
|
|
499
|
+
2. Input (all 5 types)
|
|
500
|
+
3. Label
|
|
501
|
+
4. Icon set (12 icons)
|
|
502
|
+
|
|
503
|
+
Phase 2: Common Molecules (Week 2)
|
|
504
|
+
5. FormField (Label + Input + Helper)
|
|
505
|
+
6. Card
|
|
506
|
+
7. Badge
|
|
507
|
+
8. SearchBar
|
|
508
|
+
|
|
509
|
+
Phase 3: Complex Organisms (Week 3)
|
|
510
|
+
9. Header
|
|
511
|
+
10. Form (with validation)
|
|
512
|
+
11. Modal
|
|
513
|
+
12. DataTable
|
|
514
|
+
|
|
515
|
+
Phase 4: Page Templates (Week 4)
|
|
516
|
+
13. Dashboard template
|
|
517
|
+
14. Form page template
|
|
518
|
+
15. Detail page template
|
|
519
|
+
```
|
|
520
|
+
|
|
521
|
+
---
|
|
522
|
+
|
|
523
|
+
## 📤 Outputs
|
|
524
|
+
|
|
525
|
+
All artifacts saved to: `outputs/design-system/{project}/scan/`
|
|
526
|
+
|
|
527
|
+
### Required Files:
|
|
528
|
+
1. **scan-summary.md** - High-level findings
|
|
529
|
+
2. **design-tokens.yaml** - Extracted tokens (colors, typography, spacing)
|
|
530
|
+
3. **component-inventory.md** - List of components (Atomic Design)
|
|
531
|
+
4. **redundancy-analysis.md** - Pattern redundancy calculations
|
|
532
|
+
5. **build-recommendations.md** - Priority matrix and build order
|
|
533
|
+
|
|
534
|
+
### Optional Files:
|
|
535
|
+
6. **screenshots/** - Visual comparisons of patterns
|
|
536
|
+
7. **extracted-styles.css** - All CSS extracted from artifact
|
|
537
|
+
8. **comparison-matrix.xlsx** - Side-by-side pattern comparisons
|
|
538
|
+
|
|
539
|
+
---
|
|
540
|
+
|
|
541
|
+
## ✅ Success Criteria
|
|
542
|
+
|
|
543
|
+
- [ ] Artifact successfully scanned and parsed
|
|
544
|
+
- [ ] Design tokens extracted (colors, typography, spacing, etc.)
|
|
545
|
+
- [ ] Components identified at atomic, molecular, organism levels
|
|
546
|
+
- [ ] Pattern redundancy calculated with reduction percentages
|
|
547
|
+
- [ ] Build recommendations prioritized (HIGH/MEDIUM/LOW)
|
|
548
|
+
- [ ] Build order phases defined (1-4 weeks)
|
|
549
|
+
- [ ] All outputs saved to `outputs/design-system/{project}/scan/`
|
|
550
|
+
- [ ] `.state.yaml` updated with scan results
|
|
551
|
+
|
|
552
|
+
---
|
|
553
|
+
|
|
554
|
+
## 🔄 Integration with Other Tasks
|
|
555
|
+
|
|
556
|
+
**Works with any phase:**
|
|
557
|
+
- `*research` - Scan competitor sites for UX patterns
|
|
558
|
+
- `*wireframe` - Scan existing app to inventory current components
|
|
559
|
+
- `*audit` - Complement full codebase audit with specific artifact focus
|
|
560
|
+
- `*consolidate` - Use scan to inform consolidation decisions
|
|
561
|
+
- `*build` - Use component inventory to guide what to build
|
|
562
|
+
|
|
563
|
+
**State Management:**
|
|
564
|
+
Updates `.state.yaml` with:
|
|
565
|
+
- `artifact_scanned: {type, path}`
|
|
566
|
+
- `tokens_extracted: {colors, typography, spacing}`
|
|
567
|
+
- `components_found: [list of components]`
|
|
568
|
+
- `redundancy_metrics: {buttons, colors, spacing}`
|
|
569
|
+
- `scan_date: [ISO date]`
|
|
570
|
+
|
|
571
|
+
---
|
|
572
|
+
|
|
573
|
+
## 📚 Token Extraction Algorithms
|
|
574
|
+
|
|
575
|
+
### Color Clustering (HSL-based, 5% threshold)
|
|
576
|
+
```
|
|
577
|
+
Algorithm:
|
|
578
|
+
1. Extract all hex colors from artifact
|
|
579
|
+
2. Convert to HSL (Hue, Saturation, Lightness)
|
|
580
|
+
3. Cluster colors within 5% HSL distance
|
|
581
|
+
4. Select most-used color from each cluster as token
|
|
582
|
+
5. Name tokens by category (primary, secondary, neutral, accent)
|
|
583
|
+
```
|
|
584
|
+
|
|
585
|
+
### Spacing Normalization (4px base)
|
|
586
|
+
```
|
|
587
|
+
Algorithm:
|
|
588
|
+
1. Extract all px values from padding, margin, gap
|
|
589
|
+
2. Round to nearest 4px multiple
|
|
590
|
+
3. Count frequency of each value
|
|
591
|
+
4. Select top 8 most-used values as tokens
|
|
592
|
+
5. Name tokens: xs, sm, md, lg, xl, 2xl, 3xl
|
|
593
|
+
```
|
|
594
|
+
|
|
595
|
+
### Component Similarity Detection
|
|
596
|
+
```
|
|
597
|
+
Algorithm:
|
|
598
|
+
1. Extract element structure (tag + classes + children)
|
|
599
|
+
2. Extract styles (computed CSS)
|
|
600
|
+
3. Calculate similarity score (0-100%)
|
|
601
|
+
4. Group components with >85% similarity
|
|
602
|
+
5. Identify most common variant as base
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
---
|
|
606
|
+
|
|
607
|
+
## ⚠️ Limitations
|
|
608
|
+
|
|
609
|
+
### HTML/React Files:
|
|
610
|
+
- ✅ Can parse structure and styles
|
|
611
|
+
- ✅ Can extract inline and CSS classes
|
|
612
|
+
- ❌ Cannot see rendered visual (no browser)
|
|
613
|
+
- ❌ Cannot detect dynamic behavior
|
|
614
|
+
|
|
615
|
+
### Screenshots:
|
|
616
|
+
- ✅ Can see visual appearance
|
|
617
|
+
- ✅ Can detect colors and spacing
|
|
618
|
+
- ❌ Cannot extract code structure
|
|
619
|
+
- ❌ Cannot identify interactive states (hover, focus)
|
|
620
|
+
|
|
621
|
+
### Live URLs:
|
|
622
|
+
- ✅ Can fetch full page HTML
|
|
623
|
+
- ✅ Can extract all styles
|
|
624
|
+
- ❌ May be blocked by CORS/auth
|
|
625
|
+
- ❌ Cannot access private pages without login
|
|
626
|
+
|
|
627
|
+
---
|
|
628
|
+
|
|
629
|
+
## 🎯 Example Output
|
|
630
|
+
|
|
631
|
+
**Example: Scan Result for Dashboard**
|
|
632
|
+
|
|
633
|
+
```markdown
|
|
634
|
+
# Scan Summary: Dashboard Page
|
|
635
|
+
|
|
636
|
+
**Artifact:** https://example.com/dashboard
|
|
637
|
+
**Scanned:** 2025-11-12 14:35
|
|
638
|
+
**Page Complexity:** MEDIUM (47 components, 3 levels deep)
|
|
639
|
+
|
|
640
|
+
## Design Tokens Extracted
|
|
641
|
+
- **Colors:** 18 distinct colors → 12 tokens recommended
|
|
642
|
+
- **Typography:** 6 font sizes, 4 weights → Well-structured
|
|
643
|
+
- **Spacing:** 47 values → Normalize to 8 tokens
|
|
644
|
+
- **Border Radius:** 3 values (0px, 4px, 8px) → Already optimal
|
|
645
|
+
|
|
646
|
+
## Components Found (Atomic Design)
|
|
647
|
+
### Atoms (8 types, 147 instances)
|
|
648
|
+
- Button (47), Input (23), Label (31), Icon (89), Badge (12), ...
|
|
649
|
+
|
|
650
|
+
### Molecules (5 types, 42 instances)
|
|
651
|
+
- FormField (18), Card (24), SearchBar (3), NavItem (8), ...
|
|
652
|
+
|
|
653
|
+
### Organisms (4 types, 7 instances)
|
|
654
|
+
- Header (1), Form (4), Modal (3), DataTable (2)
|
|
655
|
+
|
|
656
|
+
## Redundancy Analysis
|
|
657
|
+
- **Buttons:** 75% reduction possible (12 variants → 3)
|
|
658
|
+
- **Colors:** 86.5% reduction possible (89 → 12)
|
|
659
|
+
- **Spacing:** 74.5% reduction possible (47 → 12)
|
|
660
|
+
|
|
661
|
+
## Build Recommendations
|
|
662
|
+
**Phase 1 (Week 1):** Button, Input, Label, Icon
|
|
663
|
+
**Phase 2 (Week 2):** FormField, Card, Badge
|
|
664
|
+
**Phase 3 (Week 3):** Header, Form, Modal
|
|
665
|
+
**Phase 4 (Week 4):** DataTable, Templates
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
---
|
|
669
|
+
|
|
670
|
+
**Created:** 2025-11-12
|
|
671
|
+
**Story:** 4.3 - UX-Design-Expert Merge
|
|
672
|
+
**Version:** 1.0.0
|