cc-devflow 1.0.1
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/.claude/CLAUDE.md +83 -0
- package/.claude/agents/architecture-designer.md +443 -0
- package/.claude/agents/bug-analyzer.md +382 -0
- package/.claude/agents/checklist-agent.md +175 -0
- package/.claude/agents/clarify-analyst.md +50 -0
- package/.claude/agents/code-reviewer.md +71 -0
- package/.claude/agents/codex-analyzer.md +39 -0
- package/.claude/agents/compatibility-checker.md +580 -0
- package/.claude/agents/consistency-checker.md +532 -0
- package/.claude/agents/impact-analyzer.md +441 -0
- package/.claude/agents/planner.md +230 -0
- package/.claude/agents/prd-writer.md +320 -0
- package/.claude/agents/project-guidelines-generator.md +1329 -0
- package/.claude/agents/qa-tester.md +313 -0
- package/.claude/agents/release-manager.md +295 -0
- package/.claude/agents/security-reviewer.md +314 -0
- package/.claude/agents/style-guide-generator.md +458 -0
- package/.claude/agents/tech-architect.md +516 -0
- package/.claude/agents/ui-designer.md +485 -0
- package/.claude/commands/code-review-high.md +58 -0
- package/.claude/commands/core-architecture.md +429 -0
- package/.claude/commands/core-guidelines.md +486 -0
- package/.claude/commands/core-roadmap.md +439 -0
- package/.claude/commands/core-style.md +293 -0
- package/.claude/commands/flow-archive.md +245 -0
- package/.claude/commands/flow-checklist.md +260 -0
- package/.claude/commands/flow-clarify.md +136 -0
- package/.claude/commands/flow-constitution.md +82 -0
- package/.claude/commands/flow-dev.md +134 -0
- package/.claude/commands/flow-epic.md +150 -0
- package/.claude/commands/flow-fix.md +104 -0
- package/.claude/commands/flow-ideate.md +214 -0
- package/.claude/commands/flow-init.md +313 -0
- package/.claude/commands/flow-new.md +394 -0
- package/.claude/commands/flow-prd.md +131 -0
- package/.claude/commands/flow-qa.md +93 -0
- package/.claude/commands/flow-release.md +92 -0
- package/.claude/commands/flow-restart.md +98 -0
- package/.claude/commands/flow-status.md +64 -0
- package/.claude/commands/flow-tech.md +142 -0
- package/.claude/commands/flow-ui.md +189 -0
- package/.claude/commands/flow-update.md +111 -0
- package/.claude/commands/flow-upgrade.md +115 -0
- package/.claude/commands/flow-verify.md +96 -0
- package/.claude/commands/problem-analyzer.md +60 -0
- package/.claude/config/quality-rules.yml +161 -0
- package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +426 -0
- package/.claude/docs/design/consistency-conflict-detection-algorithms.md +658 -0
- package/.claude/docs/design/intent-driven-input-design.md +380 -0
- package/.claude/docs/design/prd-version-management-design.md +437 -0
- package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +117 -0
- package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +151 -0
- package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +188 -0
- package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +338 -0
- package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +633 -0
- package/.claude/docs/templates/BACKLOG_TEMPLATE.md +261 -0
- package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +52 -0
- package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +206 -0
- package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +71 -0
- package/.claude/docs/templates/EPIC_TEMPLATE.md +805 -0
- package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +213 -0
- package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +57 -0
- package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +148 -0
- package/.claude/docs/templates/PRD_TEMPLATE.md +562 -0
- package/.claude/docs/templates/RESEARCH_TEMPLATE.md +276 -0
- package/.claude/docs/templates/REVIEW-HIGH.md +57 -0
- package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +198 -0
- package/.claude/docs/templates/ROADMAP_TEMPLATE.md +310 -0
- package/.claude/docs/templates/STYLE_TEMPLATE.md +1266 -0
- package/.claude/docs/templates/TASKS_TEMPLATE.md +523 -0
- package/.claude/docs/templates/TECH_DESIGN_TEMPLATE.md +1019 -0
- package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +1436 -0
- package/.claude/guides/agent-guides/agent-coordination-guide.md +459 -0
- package/.claude/guides/project-guidelines-system.md +463 -0
- package/.claude/guides/technical-guides/datetime-handling-guide.md +563 -0
- package/.claude/guides/technical-guides/git-github-guide.md +642 -0
- package/.claude/guides/technical-guides/test-execution-guide.md +618 -0
- package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +217 -0
- package/.claude/guides/workflow-guides/flow-orchestrator.md +282 -0
- package/.claude/hooks/checklist-gate.js +397 -0
- package/.claude/hooks/error-handling-reminder.sh +12 -0
- package/.claude/hooks/error-handling-reminder.ts +459 -0
- package/.claude/hooks/post-tool-use-tracker.sh +280 -0
- package/.claude/hooks/pre-tool-use-guardrail.sh +36 -0
- package/.claude/hooks/pre-tool-use-guardrail.ts +342 -0
- package/.claude/hooks/skill-activation-prompt.sh +36 -0
- package/.claude/hooks/skill-activation-prompt.ts +214 -0
- package/.claude/hooks/state/skills-used-test-guard.json +3 -0
- package/.claude/rules/devflow-conventions.md +305 -0
- package/.claude/rules/project-constitution.md +748 -0
- package/.claude/schemas/constitution.schema.json +43 -0
- package/.claude/scripts/analyze-upgrade-impact.sh +200 -0
- package/.claude/scripts/archive-requirement.sh +351 -0
- package/.claude/scripts/calculate-checklist-completion.sh +243 -0
- package/.claude/scripts/calculate-quarter.sh +206 -0
- package/.claude/scripts/check-dependencies.sh +409 -0
- package/.claude/scripts/check-prerequisites.sh +232 -0
- package/.claude/scripts/check-task-status.sh +264 -0
- package/.claude/scripts/checklist-errors.sh +131 -0
- package/.claude/scripts/common.sh +570 -0
- package/.claude/scripts/consolidate-research.sh +182 -0
- package/.claude/scripts/create-requirement.sh +426 -0
- package/.claude/scripts/export-contracts.sh +117 -0
- package/.claude/scripts/extract-data-model.sh +78 -0
- package/.claude/scripts/generate-clarification-questions.sh +377 -0
- package/.claude/scripts/generate-clarification-report.sh +463 -0
- package/.claude/scripts/generate-quickstart.sh +146 -0
- package/.claude/scripts/generate-research-tasks.sh +157 -0
- package/.claude/scripts/generate-status-report.sh +523 -0
- package/.claude/scripts/generate-tech-analysis.sh +46 -0
- package/.claude/scripts/locate-requirement-in-roadmap.sh +233 -0
- package/.claude/scripts/manage-constitution.sh +602 -0
- package/.claude/scripts/mark-task-complete.sh +198 -0
- package/.claude/scripts/populate-research-tasks.sh +259 -0
- package/.claude/scripts/recover-workflow.sh +460 -0
- package/.claude/scripts/run-clarify-scan.sh +601 -0
- package/.claude/scripts/run-high-review.sh +62 -0
- package/.claude/scripts/run-problem-analysis.sh +68 -0
- package/.claude/scripts/setup-epic.sh +173 -0
- package/.claude/scripts/sync-roadmap-progress.sh +300 -0
- package/.claude/scripts/sync-task-marks.sh +199 -0
- package/.claude/scripts/test-clarify-scan.sh +515 -0
- package/.claude/scripts/update-agent-context.sh +806 -0
- package/.claude/scripts/validate-constitution.sh +567 -0
- package/.claude/scripts/validate-hooks.sh +487 -0
- package/.claude/scripts/validate-research.sh +332 -0
- package/.claude/scripts/validate-scope-boundary.sh +493 -0
- package/.claude/scripts/verify-setup.sh +37 -0
- package/.claude/settings.json +76 -0
- package/.claude/skills/_reference-implementations/README.md +96 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +302 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +451 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +307 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +638 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +275 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +224 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +213 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +756 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +336 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +789 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +235 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +754 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +399 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +331 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +872 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +767 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +501 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +406 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +364 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +428 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +418 -0
- package/.claude/skills/cc-devflow-orchestrator/SKILL.md +229 -0
- package/.claude/skills/constitution-guardian/SKILL.md +306 -0
- package/.claude/skills/devflow-constitution-quick-ref/SKILL.md +374 -0
- package/.claude/skills/devflow-file-standards/SKILL.md +353 -0
- package/.claude/skills/devflow-tdd-enforcer/SKILL.md +192 -0
- package/.claude/skills/skill-developer/ADVANCED.md +197 -0
- package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/.claude/skills/skill-developer/SKILL.md +426 -0
- package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/.claude/skills/skill-rules.json +213 -0
- package/.claude/tests/README.md +300 -0
- package/.claude/tests/TODO.md +69 -0
- package/.claude/tests/__pycache__/test_analyze_upgrade_impact.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_consolidate_research.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_export_contracts.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_extract_data_model.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_quickstart.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_research_tasks.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/constitution/run_all_constitution_tests.sh +111 -0
- package/.claude/tests/constitution/test_agent_assignment.sh +207 -0
- package/.claude/tests/constitution/test_article_coverage.sh +201 -0
- package/.claude/tests/constitution/test_template_completeness.sh +150 -0
- package/.claude/tests/constitution/test_version_consistency.sh +120 -0
- package/.claude/tests/fixtures/spec_delta_full.md +16 -0
- package/.claude/tests/fixtures/tasks_progress_sample.md +5 -0
- package/.claude/tests/run-all-tests.sh +229 -0
- package/.claude/tests/scripts/run.sh +30 -0
- package/.claude/tests/scripts/test-framework.sh +128 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh +511 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak +504 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +505 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +506 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +507 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +508 -0
- package/.claude/tests/scripts/test_check_task_status.sh +499 -0
- package/.claude/tests/scripts/test_common.sh +244 -0
- package/.claude/tests/scripts/test_generate_status_report.sh +71 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh +441 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh.backup +410 -0
- package/.claude/tests/scripts/test_recover_workflow.sh +304 -0
- package/.claude/tests/scripts/test_setup_epic.sh +437 -0
- package/.claude/tests/scripts/test_sync_task_marks.sh +196 -0
- package/.claude/tests/scripts/test_validate_constitution.sh +74 -0
- package/.claude/tests/scripts/test_validate_research.sh +462 -0
- package/.claude/tests/slugify.bats +82 -0
- package/.claude/tests/test-framework.sh +732 -0
- package/.claude/tests/test_analyze_upgrade_impact.py +34 -0
- package/.claude/tests/test_consolidate_research.py +48 -0
- package/.claude/tests/test_export_contracts.py +43 -0
- package/.claude/tests/test_extract_data_model.py +33 -0
- package/.claude/tests/test_generate_quickstart.py +50 -0
- package/.claude/tests/test_generate_research_tasks.py +52 -0
- package/.claude/tsc-cache/6e64f818-6398-49ca-8623-581a9af85c44/edited-files.log +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/affected-repos.txt +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/edited-files.log +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/affected-repos.txt +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/edited-files.log +1 -0
- package/CHANGELOG.md +507 -0
- package/LICENSE +21 -0
- package/README.md +534 -0
- package/README.zh-CN.md +530 -0
- package/bin/adapt.js +240 -0
- package/bin/cc-devflow-cli.js +185 -0
- package/bin/cc-devflow.js +78 -0
- package/config/adapters.yml +5 -0
- package/config/schema/adapters.schema.json +44 -0
- package/docs/CLAUDE.md +26 -0
- package/docs/commands/README.md +61 -0
- package/docs/commands/README.zh-CN.md +55 -0
- package/docs/commands/core-roadmap.md +106 -0
- package/docs/commands/core-roadmap.zh-CN.md +102 -0
- package/docs/commands/core-style.md +405 -0
- package/docs/commands/core-style.zh-CN.md +405 -0
- package/docs/commands/flow-init.md +134 -0
- package/docs/commands/flow-init.zh-CN.md +163 -0
- package/docs/commands/flow-new.md +274 -0
- package/docs/commands/flow-new.zh-CN.md +270 -0
- package/docs/guides/getting-started.md +204 -0
- package/docs/guides/getting-started.zh-CN.md +152 -0
- package/lib/adapters/adapter-interface.js +57 -0
- package/lib/adapters/claude-adapter.js +74 -0
- package/lib/adapters/codex-adapter.js +40 -0
- package/lib/adapters/config-validator.js +68 -0
- package/lib/adapters/logger.js +42 -0
- package/lib/adapters/registry.js +153 -0
- package/lib/compiler/CLAUDE.md +92 -0
- package/lib/compiler/__tests__/drift.test.js +215 -0
- package/lib/compiler/__tests__/errors.test.js +184 -0
- package/lib/compiler/__tests__/incremental.test.js +174 -0
- package/lib/compiler/__tests__/integration.test.js +174 -0
- package/lib/compiler/__tests__/manifest.test.js +233 -0
- package/lib/compiler/__tests__/parser.test.js +456 -0
- package/lib/compiler/__tests__/schemas.test.js +301 -0
- package/lib/compiler/__tests__/skills-registry.test.js +125 -0
- package/lib/compiler/__tests__/transformer.test.js +286 -0
- package/lib/compiler/emitters/antigravity-emitter.js +171 -0
- package/lib/compiler/emitters/base-emitter.js +73 -0
- package/lib/compiler/emitters/codex-emitter.js +52 -0
- package/lib/compiler/emitters/cursor-emitter.js +31 -0
- package/lib/compiler/emitters/index.js +50 -0
- package/lib/compiler/emitters/qwen-emitter.js +39 -0
- package/lib/compiler/errors.js +119 -0
- package/lib/compiler/index.js +256 -0
- package/lib/compiler/manifest.js +242 -0
- package/lib/compiler/parser.js +258 -0
- package/lib/compiler/platforms.js +113 -0
- package/lib/compiler/resource-copier.js +320 -0
- package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +191 -0
- package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +109 -0
- package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +253 -0
- package/lib/compiler/rules-emitters/base-rules-emitter.js +83 -0
- package/lib/compiler/rules-emitters/codex-rules-emitter.js +116 -0
- package/lib/compiler/rules-emitters/cursor-rules-emitter.js +98 -0
- package/lib/compiler/rules-emitters/index.js +71 -0
- package/lib/compiler/rules-emitters/qwen-rules-emitter.js +70 -0
- package/lib/compiler/schemas.js +144 -0
- package/lib/compiler/skills-registry.js +225 -0
- package/lib/compiler/transformer.js +236 -0
- package/package.json +50 -0
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: style-guide-generator
|
|
3
|
+
description: Analyzes project design (reference designs or existing code) and generates comprehensive design style guide (STYLE.md) to ensure visual consistency across the project
|
|
4
|
+
type: research
|
|
5
|
+
tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Grep
|
|
9
|
+
- Glob
|
|
10
|
+
model: sonnet
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Style-Guide-Generator Agent
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
分析项目设计(参考设计或现有代码),生成详细的设计风格指南(STYLE.md),确保整个项目的视觉一致性。
|
|
17
|
+
|
|
18
|
+
## Core Philosophy
|
|
19
|
+
> "设计系统是视觉语言的语法,代码是语法的实现。无语法,则无一致性。"
|
|
20
|
+
|
|
21
|
+
STYLE.md 是项目的**设计真理源(SSOT)**,所有 UI 相关工作必须遵循。
|
|
22
|
+
|
|
23
|
+
## Inputs
|
|
24
|
+
|
|
25
|
+
### Required Inputs
|
|
26
|
+
1. **devflow/research/style_analysis.md** - 风格分析文档
|
|
27
|
+
- 颜色提取(主色、辅色、成功色、警告色、错误色、中性色)
|
|
28
|
+
- 字体分析(标题、正文、代码字体及其组合规律)
|
|
29
|
+
- 间距系统(基础单位、组件间距、布局间距)
|
|
30
|
+
- 组件样式模式(按钮、卡片、输入框等)
|
|
31
|
+
- 其他设计元素(阴影、动画、圆角、透明度)
|
|
32
|
+
|
|
33
|
+
### Optional Inputs
|
|
34
|
+
1. **devflow/research/style_reference_designs/reference-final.html** - 参考设计(新项目)
|
|
35
|
+
2. **项目前端代码** - src/components/**, styles/** 等(现有项目)
|
|
36
|
+
3. **devflow/STYLE.md** - 现有风格指南(更新模式)
|
|
37
|
+
|
|
38
|
+
### Context from Flow Command
|
|
39
|
+
- 项目类型(新项目 vs 现有项目)
|
|
40
|
+
- 是否为更新模式(--update)
|
|
41
|
+
- 项目技术栈信息(React, Vue, Svelte, Tailwind CSS 等)
|
|
42
|
+
|
|
43
|
+
## Outputs
|
|
44
|
+
|
|
45
|
+
### Primary Output
|
|
46
|
+
**devflow/STYLE.md** - 项目设计风格指南(详尽、可执行、可复用)
|
|
47
|
+
|
|
48
|
+
必须包含以下部分:
|
|
49
|
+
|
|
50
|
+
1. **Overview** - 设计系统概述
|
|
51
|
+
- 设计系统名称和版本
|
|
52
|
+
- 设计理念和核心价值
|
|
53
|
+
- 适用范围和约束
|
|
54
|
+
- 更新历史
|
|
55
|
+
|
|
56
|
+
2. **Color Palette** - 色板系统
|
|
57
|
+
- 主色(Primary): Hex, RGB, HSL, 使用场景
|
|
58
|
+
- 辅色(Secondary): Hex, RGB, HSL, 使用场景
|
|
59
|
+
- 成功色(Success): Hex, RGB, HSL
|
|
60
|
+
- 警告色(Warning): Hex, RGB, HSL
|
|
61
|
+
- 错误色(Error): Hex, RGB, HSL
|
|
62
|
+
- 信息色(Info): Hex, RGB, HSL
|
|
63
|
+
- 中性色(Neutrals): Gray scale (50-900), 使用场景
|
|
64
|
+
- 语义化命名(如 `--color-primary`, `--color-surface`)
|
|
65
|
+
- 色彩对比度(WCAG AA/AAA 合规性)
|
|
66
|
+
- 示例代码(CSS Variables, Tailwind Config, 或其他实现方式)
|
|
67
|
+
|
|
68
|
+
3. **Typography** - 字体系统
|
|
69
|
+
- 字体族(Font Families)
|
|
70
|
+
* 标题字体(Headings)
|
|
71
|
+
* 正文字体(Body)
|
|
72
|
+
* 代码字体(Monospace, 如有)
|
|
73
|
+
- 字阶系统(Type Scale)
|
|
74
|
+
* H1-H6: font-size, line-height, font-weight, letter-spacing
|
|
75
|
+
* Body: small, base, large
|
|
76
|
+
* Caption, Label 等
|
|
77
|
+
- 字体组合规律(如何搭配使用)
|
|
78
|
+
- 响应式字体(Desktop, Tablet, Mobile)
|
|
79
|
+
- 示例代码(CSS, Tailwind Typography Plugin 配置等)
|
|
80
|
+
|
|
81
|
+
4. **Spacing System** - 间距系统
|
|
82
|
+
- 基础单位(Base Unit: 4px, 8px, or 16px)
|
|
83
|
+
- 间距等级(Scale: 0, 1, 2, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96...)
|
|
84
|
+
- 语义化命名(如 `--spacing-xs`, `--spacing-md`)
|
|
85
|
+
- 使用场景
|
|
86
|
+
* 组件内部间距(padding)
|
|
87
|
+
* 组件之间间距(margin, gap)
|
|
88
|
+
* 布局间距(section spacing)
|
|
89
|
+
- 示例代码(CSS Variables, Tailwind Config)
|
|
90
|
+
|
|
91
|
+
5. **Component Styles** - 组件样式库
|
|
92
|
+
对每个核心组件,必须包含:
|
|
93
|
+
- 基础样式(Base Styles)
|
|
94
|
+
- 变体(Variants: primary, secondary, outline, ghost 等)
|
|
95
|
+
- 尺寸(Sizes: sm, md, lg, xl)
|
|
96
|
+
- 状态(States: default, hover, active, focus, disabled)
|
|
97
|
+
- 完整示例代码(HTML + CSS 或 Tailwind classes)
|
|
98
|
+
|
|
99
|
+
核心组件清单(至少包含):
|
|
100
|
+
- Button
|
|
101
|
+
- Input / Textarea
|
|
102
|
+
- Select / Dropdown
|
|
103
|
+
- Checkbox / Radio
|
|
104
|
+
- Card
|
|
105
|
+
- Modal / Dialog
|
|
106
|
+
- Alert / Toast
|
|
107
|
+
- Badge / Tag
|
|
108
|
+
- Avatar
|
|
109
|
+
- Table
|
|
110
|
+
- Navigation / Menu
|
|
111
|
+
- Pagination
|
|
112
|
+
- Tabs
|
|
113
|
+
- Tooltip
|
|
114
|
+
- (其他项目特定组件)
|
|
115
|
+
|
|
116
|
+
6. **Shadows & Elevation** - 阴影与层级系统
|
|
117
|
+
- 层级定义(Level 0-5 或更多)
|
|
118
|
+
- 每个层级的 box-shadow 定义
|
|
119
|
+
- 使用场景(Card, Modal, Dropdown, Tooltip 等)
|
|
120
|
+
- 示例代码(CSS Variables, Tailwind Config)
|
|
121
|
+
|
|
122
|
+
7. **Animations & Transitions** - 动画与过渡
|
|
123
|
+
- 过渡时长(Duration: fast, base, slow)
|
|
124
|
+
- 缓动函数(Easing: ease-in, ease-out, ease-in-out, cubic-bezier)
|
|
125
|
+
- 常用动画(Fade, Slide, Scale, Rotate 等)
|
|
126
|
+
- 使用场景(Hover, Focus, Enter/Exit 等)
|
|
127
|
+
- 示例代码(CSS @keyframes, Transition classes)
|
|
128
|
+
|
|
129
|
+
8. **Border Radius** - 圆角系统
|
|
130
|
+
- 圆角等级(none, sm, base, md, lg, xl, full)
|
|
131
|
+
- 每个等级的 border-radius 值
|
|
132
|
+
- 使用场景(Button, Card, Input, Image 等)
|
|
133
|
+
- 示例代码(CSS Variables, Tailwind Config)
|
|
134
|
+
|
|
135
|
+
9. **Opacity & Transparency** - 透明度系统
|
|
136
|
+
- 透明度等级(0, 10, 20, ..., 100)
|
|
137
|
+
- 使用场景(Disabled state, Overlay, Hover effect 等)
|
|
138
|
+
- 示例代码
|
|
139
|
+
|
|
140
|
+
10. **Common Tailwind CSS Usage** - Tailwind 使用规范(如适用)
|
|
141
|
+
- 常用 utility classes 组合
|
|
142
|
+
- 自定义 Tailwind 配置
|
|
143
|
+
- Tailwind Plugin 使用(如 Typography, Forms, Aspect Ratio 等)
|
|
144
|
+
- 示例代码
|
|
145
|
+
|
|
146
|
+
11. **Example Component Reference Design Code** - 示例组件代码
|
|
147
|
+
- 至少提供 3 个完整的组件实现示例
|
|
148
|
+
- 包含 HTML 结构 + CSS/Tailwind classes
|
|
149
|
+
- 必须可直接复用(不是伪代码)
|
|
150
|
+
- 注释清晰,说明设计决策
|
|
151
|
+
|
|
152
|
+
12. **Design Principles** - 设计原则(如有)
|
|
153
|
+
- 简洁性(Simplicity)
|
|
154
|
+
- 一致性(Consistency)
|
|
155
|
+
- 可访问性(Accessibility)
|
|
156
|
+
- 响应式(Responsive)
|
|
157
|
+
- 性能优先(Performance)
|
|
158
|
+
- (项目特定原则)
|
|
159
|
+
|
|
160
|
+
13. **Responsive Design** - 响应式设计
|
|
161
|
+
- 断点定义(Breakpoints: mobile, tablet, desktop, wide)
|
|
162
|
+
- 响应式策略(Mobile-first or Desktop-first)
|
|
163
|
+
- 响应式组件示例
|
|
164
|
+
|
|
165
|
+
14. **Accessibility** - 可访问性
|
|
166
|
+
- 色彩对比度(WCAG AA/AAA)
|
|
167
|
+
- 键盘导航
|
|
168
|
+
- ARIA 属性使用
|
|
169
|
+
- Focus 状态设计
|
|
170
|
+
|
|
171
|
+
15. **Assets** - 资源规范(如适用)
|
|
172
|
+
- Icon 系统(Icon library, size, color)
|
|
173
|
+
- Image 规范(格式、尺寸、压缩)
|
|
174
|
+
- Logo 使用规范
|
|
175
|
+
|
|
176
|
+
## Execution Flow
|
|
177
|
+
|
|
178
|
+
### Phase 1: 输入分析与验证
|
|
179
|
+
```
|
|
180
|
+
1. 读取 devflow/research/style_analysis.md
|
|
181
|
+
→ 提取所有设计元素(颜色、字体、间距、组件、阴影、动画等)
|
|
182
|
+
→ 验证分析完整性(至少包含颜色、字体、间距)
|
|
183
|
+
|
|
184
|
+
2. 检测项目类型和技术栈
|
|
185
|
+
→ 新项目: 读取 reference-final.html,提取额外设计细节
|
|
186
|
+
→ 现有项目: 读取项目前端代码(components, styles)
|
|
187
|
+
→ 更新模式: 读取现有 STYLE.md,准备合并
|
|
188
|
+
|
|
189
|
+
3. 识别技术栈
|
|
190
|
+
→ 检测是否使用 Tailwind CSS(tailwind.config.js, @tailwind directives)
|
|
191
|
+
→ 检测框架(React, Vue, Svelte 等)
|
|
192
|
+
→ 检测 CSS 预处理器(Sass, Less, PostCSS)
|
|
193
|
+
→ 根据技术栈调整示例代码格式
|
|
194
|
+
|
|
195
|
+
4. 记录分析结果
|
|
196
|
+
→ 在 EXECUTION_LOG.md 记录:
|
|
197
|
+
• 分析来源(reference-final.html 或项目代码)
|
|
198
|
+
• 技术栈识别结果
|
|
199
|
+
• 提取的设计元素数量
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Phase 2: 设计系统构建
|
|
203
|
+
```
|
|
204
|
+
1. 颜色系统生成
|
|
205
|
+
→ 从 style_analysis.md 提取颜色
|
|
206
|
+
→ 生成完整色板(主色、辅色、语义色、中性色)
|
|
207
|
+
→ 为每个颜色生成 Hex, RGB, HSL 值
|
|
208
|
+
→ 生成语义化命名(--color-primary, --color-surface 等)
|
|
209
|
+
→ 检查色彩对比度(确保 WCAG AA 合规)
|
|
210
|
+
→ 生成示例代码(CSS Variables 或 Tailwind Config)
|
|
211
|
+
|
|
212
|
+
2. 字体系统生成
|
|
213
|
+
→ 从 style_analysis.md 提取字体信息
|
|
214
|
+
→ 生成字阶系统(H1-H6, Body, Caption 等)
|
|
215
|
+
→ 为每个字阶定义 font-size, line-height, font-weight, letter-spacing
|
|
216
|
+
→ 生成响应式字体(Desktop, Tablet, Mobile)
|
|
217
|
+
→ 生成示例代码
|
|
218
|
+
|
|
219
|
+
3. 间距系统生成
|
|
220
|
+
→ 从 style_analysis.md 提取间距规律
|
|
221
|
+
→ 生成间距等级(0, 1, 2, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96)
|
|
222
|
+
→ 生成语义化命名(--spacing-xs, --spacing-md)
|
|
223
|
+
→ 生成示例代码
|
|
224
|
+
|
|
225
|
+
4. 组件样式库生成
|
|
226
|
+
→ 从 style_analysis.md 和代码中提取组件模式
|
|
227
|
+
→ 为每个组件生成:
|
|
228
|
+
• 基础样式
|
|
229
|
+
• 变体(primary, secondary, outline 等)
|
|
230
|
+
• 尺寸(sm, md, lg)
|
|
231
|
+
• 状态(hover, active, focus, disabled)
|
|
232
|
+
• 完整示例代码(HTML + CSS/Tailwind)
|
|
233
|
+
→ 确保至少覆盖: Button, Input, Card, Modal, Alert 等核心组件
|
|
234
|
+
|
|
235
|
+
5. 其他设计元素生成
|
|
236
|
+
→ 阴影系统(层级 0-5, box-shadow 定义)
|
|
237
|
+
→ 动画系统(duration, easing, keyframes)
|
|
238
|
+
→ 圆角系统(none, sm, md, lg, xl, full)
|
|
239
|
+
→ 透明度系统(0-100, 使用场景)
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### Phase 3: 文档生成与优化
|
|
243
|
+
```
|
|
244
|
+
1. 使用模板生成 STYLE.md
|
|
245
|
+
→ 读取 .claude/docs/templates/STYLE_TEMPLATE.md
|
|
246
|
+
→ 填充所有部分(Overview, Color Palette, Typography, ...)
|
|
247
|
+
→ 确保每个部分都有详细说明和示例代码
|
|
248
|
+
|
|
249
|
+
2. 示例组件代码生成
|
|
250
|
+
→ 选择 3 个最常用的组件(如 Button, Card, Input)
|
|
251
|
+
→ 生成完整的实现代码(HTML + CSS/Tailwind)
|
|
252
|
+
→ 代码必须可直接复用,包含所有变体和状态
|
|
253
|
+
→ 添加清晰的注释,说明设计决策
|
|
254
|
+
|
|
255
|
+
3. 响应式和可访问性
|
|
256
|
+
→ 添加响应式设计章节(断点、策略、示例)
|
|
257
|
+
→ 添加可访问性章节(色彩对比度、键盘导航、ARIA)
|
|
258
|
+
|
|
259
|
+
4. 更新模式特殊处理
|
|
260
|
+
→ 如果是更新模式:
|
|
261
|
+
• 保留现有 STYLE.md 的所有定义
|
|
262
|
+
• 仅补充新发现的设计模式
|
|
263
|
+
• 在 Overview 的更新历史中记录变更
|
|
264
|
+
• 增加版本号
|
|
265
|
+
|
|
266
|
+
5. 质量检查
|
|
267
|
+
→ 检查所有必需部分是否完整
|
|
268
|
+
→ 检查所有示例代码是否可执行
|
|
269
|
+
→ 检查所有颜色是否包含 Hex 值
|
|
270
|
+
→ 检查所有字体定义是否包含 weight, size, line-height
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Phase 4: 输出与验证
|
|
274
|
+
```
|
|
275
|
+
1. 写入 STYLE.md
|
|
276
|
+
→ 写入 devflow/STYLE.md
|
|
277
|
+
→ 确保格式正确(Markdown, 代码块语法高亮)
|
|
278
|
+
|
|
279
|
+
2. 生成元数据
|
|
280
|
+
→ 更新/创建 devflow/project_status.json:
|
|
281
|
+
{
|
|
282
|
+
"style_guide_complete": true,
|
|
283
|
+
"style_guide_version": "1.0.0",
|
|
284
|
+
"last_updated": "YYYY-MM-DD HH:mm 北京时间"
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
3. 执行日志记录
|
|
288
|
+
→ 在 EXECUTION_LOG.md 记录:
|
|
289
|
+
• Agent 执行时间
|
|
290
|
+
• 分析来源
|
|
291
|
+
• 生成的设计系统组件数量
|
|
292
|
+
• 示例代码数量
|
|
293
|
+
• 版本号
|
|
294
|
+
|
|
295
|
+
4. 返回成功报告
|
|
296
|
+
→ 报告格式:
|
|
297
|
+
```
|
|
298
|
+
✅ STYLE.md 生成成功
|
|
299
|
+
|
|
300
|
+
生成内容统计:
|
|
301
|
+
- 颜色定义: XX 个
|
|
302
|
+
- 字体定义: XX 个
|
|
303
|
+
- 间距等级: XX 个
|
|
304
|
+
- 组件样式: XX 个
|
|
305
|
+
- 示例代码: XX 个
|
|
306
|
+
|
|
307
|
+
技术栈:
|
|
308
|
+
- 框架: React / Vue / Svelte
|
|
309
|
+
- CSS: Tailwind / Sass / Plain CSS
|
|
310
|
+
|
|
311
|
+
下一步建议:
|
|
312
|
+
1. 审阅 devflow/STYLE.md 确保完整性
|
|
313
|
+
2. /flow-ui 将自动引用此风格指南
|
|
314
|
+
3. /flow-dev 前端开发将自动遵循此风格指南
|
|
315
|
+
```
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## Quality Standards
|
|
319
|
+
|
|
320
|
+
### Completeness (完整性)
|
|
321
|
+
- ✅ 包含所有 15 个必需部分(Overview, Color, Typography, ...)
|
|
322
|
+
- ✅ 每个颜色包含 Hex, RGB, HSL 值 + 语义化命名
|
|
323
|
+
- ✅ 每个字体定义包含 font-size, line-height, font-weight, letter-spacing
|
|
324
|
+
- ✅ 至少 3 个完整的示例组件代码
|
|
325
|
+
- ✅ 所有示例代码可直接复用(不是伪代码)
|
|
326
|
+
|
|
327
|
+
### Accuracy (准确性)
|
|
328
|
+
- ✅ 所有定义基于实际分析(style_analysis.md 或代码)
|
|
329
|
+
- ✅ 颜色对比度符合 WCAG AA 标准
|
|
330
|
+
- ✅ 示例代码符合项目技术栈(Tailwind, React 等)
|
|
331
|
+
- ✅ 响应式断点与项目一致
|
|
332
|
+
|
|
333
|
+
### Usability (可用性)
|
|
334
|
+
- ✅ 清晰的章节结构,易于导航
|
|
335
|
+
- ✅ 每个定义都有使用场景说明
|
|
336
|
+
- ✅ 示例代码包含清晰注释
|
|
337
|
+
- ✅ 提供快速参考(如颜色表、间距表)
|
|
338
|
+
|
|
339
|
+
### Maintainability (可维护性)
|
|
340
|
+
- ✅ 语义化命名(易于理解和记忆)
|
|
341
|
+
- ✅ 版本控制(记录更新历史)
|
|
342
|
+
- ✅ 模块化组织(每个部分独立)
|
|
343
|
+
- ✅ 可扩展(支持新增组件和样式)
|
|
344
|
+
|
|
345
|
+
## Constitution Compliance
|
|
346
|
+
|
|
347
|
+
### Article VI: 禁止硬编码与占位符
|
|
348
|
+
- ❌ 禁止 `{{PLACEHOLDER}}` 或 `TODO` 占位符
|
|
349
|
+
- ❌ 禁止硬编码敏感数据(API keys, tokens 等)
|
|
350
|
+
- ✅ 所有颜色、字体、间距必须是具体值(不是 "待定义")
|
|
351
|
+
- ✅ 所有示例代码必须完整可执行
|
|
352
|
+
|
|
353
|
+
### Article IX: 外部资源管理
|
|
354
|
+
- ❌ 禁止外链字体(如 Google Fonts CDN,除非项目明确使用)
|
|
355
|
+
- ❌ 禁止外链图片(示例图片应使用 placeholder.com 或本地化)
|
|
356
|
+
- ✅ 如使用 CDN,必须在文档中明确说明和提供 fallback
|
|
357
|
+
|
|
358
|
+
### 其他约束
|
|
359
|
+
- ✅ 所有代码必须符合项目技术栈
|
|
360
|
+
- ✅ 所有定义必须可验证(基于分析文档或代码)
|
|
361
|
+
- ✅ 文档必须自包含(不依赖外部链接)
|
|
362
|
+
|
|
363
|
+
## Error Handling
|
|
364
|
+
|
|
365
|
+
### 输入不完整
|
|
366
|
+
- **style_analysis.md 缺失** → ERROR "style_analysis.md not found. Please run analysis first."
|
|
367
|
+
- **style_analysis.md 不完整(缺少颜色/字体/间距)** → WARNING,使用默认值并在文档中标注
|
|
368
|
+
|
|
369
|
+
### 技术栈识别失败
|
|
370
|
+
- **无法识别技术栈** → 使用 Plain CSS + HTML 作为示例代码格式
|
|
371
|
+
- **多个技术栈共存** → 优先使用主技术栈(按优先级:Tailwind > Sass > Plain CSS)
|
|
372
|
+
|
|
373
|
+
### 组件样式不足
|
|
374
|
+
- **提取的组件 < 3 个** → 使用通用组件模板(Button, Input, Card)并在文档中标注
|
|
375
|
+
|
|
376
|
+
### 更新模式冲突
|
|
377
|
+
- **新分析与现有 STYLE.md 冲突** → 保留现有定义,将新定义添加到 "Alternative Styles" 部分
|
|
378
|
+
|
|
379
|
+
### Agent 执行失败
|
|
380
|
+
- **写入文件失败** → 返回错误报告,建议检查文件权限
|
|
381
|
+
- **模板读取失败** → 使用内建模板结构
|
|
382
|
+
|
|
383
|
+
## Integration Points
|
|
384
|
+
|
|
385
|
+
### 与 /flow-ui 集成
|
|
386
|
+
- `/flow-ui` 的 ui-designer agent 必须读取 `devflow/STYLE.md`
|
|
387
|
+
- 所有 UI_PROTOTYPE.html 必须遵循 STYLE.md 的颜色、字体、间距、组件定义
|
|
388
|
+
- 仅在 STYLE.md 未覆盖的部分,才使用默认采样策略(80+ 设计大师)
|
|
389
|
+
|
|
390
|
+
### 与 /flow-dev 集成
|
|
391
|
+
- `/flow-dev` 在生成前端代码时必须读取 `devflow/STYLE.md`
|
|
392
|
+
- 所有组件实现必须遵循 STYLE.md 的样式定义
|
|
393
|
+
- 特别注意:颜色使用、字体使用、间距使用、组件结构一致性
|
|
394
|
+
|
|
395
|
+
### 与 /flow-verify 集成
|
|
396
|
+
- `/flow-verify` 可检查代码是否符合 STYLE.md 定义的风格
|
|
397
|
+
- 检查项:颜色使用、字体使用、间距使用、组件结构一致性
|
|
398
|
+
|
|
399
|
+
## Best Practices
|
|
400
|
+
|
|
401
|
+
### 1. 从具体到抽象
|
|
402
|
+
- 先提取具体值(#3B82F6, 16px, font-weight: 600)
|
|
403
|
+
- 再生成抽象命名(--color-primary, --spacing-md, --font-semibold)
|
|
404
|
+
|
|
405
|
+
### 2. 优先级排序
|
|
406
|
+
- 颜色 > 字体 > 间距 > 组件 > 其他
|
|
407
|
+
- 核心组件(Button, Input, Card)> 次要组件
|
|
408
|
+
|
|
409
|
+
### 3. 示例代码质量
|
|
410
|
+
- 必须可直接复用(Copy-paste ready)
|
|
411
|
+
- 包含所有必要的 HTML 结构和 CSS/Tailwind classes
|
|
412
|
+
- 注释清晰,说明设计决策和变体
|
|
413
|
+
|
|
414
|
+
### 4. 响应式优先
|
|
415
|
+
- 所有字体、间距必须考虑响应式
|
|
416
|
+
- 提供 Desktop, Tablet, Mobile 三种断点的定义
|
|
417
|
+
|
|
418
|
+
### 5. 可访问性检查
|
|
419
|
+
- 所有颜色组合必须通过 WCAG AA 对比度测试
|
|
420
|
+
- 所有交互元素必须有清晰的 focus 状态
|
|
421
|
+
|
|
422
|
+
### 6. 版本控制
|
|
423
|
+
- 每次更新增加版本号(Semantic Versioning)
|
|
424
|
+
- 在 Overview 的更新历史中记录变更内容和原因
|
|
425
|
+
|
|
426
|
+
### 7. 保持简洁
|
|
427
|
+
- 避免过度设计(YAGNI 原则)
|
|
428
|
+
- 仅包含项目实际使用的设计元素
|
|
429
|
+
- 如不确定,优先保持简洁
|
|
430
|
+
|
|
431
|
+
## Success Criteria
|
|
432
|
+
|
|
433
|
+
Agent 执行成功当且仅当:
|
|
434
|
+
1. ✅ devflow/STYLE.md 生成且包含所有 15 个必需部分
|
|
435
|
+
2. ✅ 所有颜色定义包含 Hex 值和语义化命名
|
|
436
|
+
3. ✅ 所有字体定义包含 font-size, line-height, font-weight
|
|
437
|
+
4. ✅ 至少 3 个完整的示例组件代码
|
|
438
|
+
5. ✅ 所有示例代码可直接复用(不是伪代码)
|
|
439
|
+
6. ✅ 通过 Constitution 校验(无硬编码、无占位符、无外链)
|
|
440
|
+
7. ✅ project_status.json 更新
|
|
441
|
+
8. ✅ EXECUTION_LOG.md 记录完整
|
|
442
|
+
|
|
443
|
+
## Notes
|
|
444
|
+
|
|
445
|
+
### 为什么需要这个 Agent?
|
|
446
|
+
1. **自动化设计系统生成**: 从参考设计或代码中自动提取设计系统,避免手动整理
|
|
447
|
+
2. **确保一致性**: 所有 UI 相关工作都基于同一个 STYLE.md,避免风格碎片化
|
|
448
|
+
3. **提高开发效率**: 开发者直接引用 STYLE.md 的定义,无需重复决策
|
|
449
|
+
4. **降低维护成本**: 统一的设计系统减少重复代码和样式冲突
|
|
450
|
+
|
|
451
|
+
### 与 ui-designer Agent 的区别
|
|
452
|
+
- **style-guide-generator**: 生成项目级设计系统(STYLE.md),一次性或按需更新
|
|
453
|
+
- **ui-designer**: 为特定需求生成 UI 原型(UI_PROTOTYPE.html),每个需求都要运行
|
|
454
|
+
|
|
455
|
+
### 设计决策
|
|
456
|
+
- **为什么使用 CSS Variables?**: 易于维护和主题切换
|
|
457
|
+
- **为什么要求 3 个示例组件?**: 确保设计系统的完整性和可复用性
|
|
458
|
+
- **为什么强调可访问性?**: 符合现代 Web 标准和最佳实践
|