devflow-file-standards
File naming conventions, directory structure, and YAML frontmatter standards for CC-DevFlow. Consolidates shared conventions from all agents.
$ Instalar
git clone https://github.com/Dimon94/cc-devflow /tmp/cc-devflow && cp -r /tmp/cc-devflow/.claude/skills/devflow-file-standards ~/.claude/skills/cc-devflow// tip: Run this command in your terminal to install the skill
name: devflow-file-standards description: File naming conventions, directory structure, and YAML frontmatter standards for CC-DevFlow. Consolidates shared conventions from all agents.
DevFlow File Standards
Purpose
Consolidate file naming, directory structure, and format conventions that are shared across multiple agents and commands. This skill does NOT duplicate agent-specific standards.
Requirement IDs
Format
REQ-\d{3} # e.g., REQ-001, REQ-042, REQ-123
Usage
- Flow commands: All
/flow-*commands accept REQ-ID as argument - Git branches:
feature/REQ-XXX-{slug-title} - Directory paths:
devflow/requirements/REQ-XXX/ - Status tracking:
orchestration_status.jsoncontainsreqIdfield
Source
- Enforced by: All 13 agents
- Validated by:
.claude/scripts/check-prerequisites.sh
Task IDs
Format
T\d{3} # e.g., T001, T042, T123
Usage in TASKS.md
- [ ] **T001** [P] Task description
- [ ] **T010** [US1] User story 1 task
Labels
[P]: Parallel execution possible[US#]: User story number (e.g., [US1], [US2])
Source
- Generated by: planner agent
- Format defined in:
.claude/docs/templates/TASKS_TEMPLATE.md
Directory Structure
Requirements
devflow/requirements/REQ-XXX/
├── research/ # /flow-init 输出
│ ├── research.md # consolidate-research.sh 生成
│ ├── tasks.json # generate-research-tasks.sh 生成
│ ├── internal/
│ │ └── codebase-overview.md
│ ├── mcp/ # MCP 服务器调查(可选)
│ └── codebase-tech-analysis.md # /flow-tech 输出
├── PRD.md # /flow-prd 输出 (prd-writer agent)
├── TECH_DESIGN.md # /flow-tech 输出 (tech-architect agent)
├── data-model.md # /flow-tech 输出 (extract-data-model.sh)
├── contracts/ # /flow-tech 输出 (export-contracts.sh)
│ ├── api-users.yaml # OpenAPI contracts
│ └── api-auth.yaml
├── quickstart.md # /flow-tech 输出 (generate-quickstart.sh)
├── UI_PROTOTYPE.html # /flow-ui 输出 (ui-designer agent, 可选)
├── EPIC.md # /flow-epic 输出 (planner agent)
├── TASKS.md # /flow-epic 输出 (planner agent)
├── reviews/ # /flow-qa 输出
│ ├── TEST_PLAN.md # qa-tester agent
│ ├── TEST_REPORT.md # qa-tester agent
│ └── SECURITY_REPORT.md # security-reviewer agent
├── EXECUTION_LOG.md # 事件日志 (所有 flow 命令追加)
├── orchestration_status.json # 状态跟踪 (所有 flow 命令更新)
└── README.md # 工作流指南
### Bugs
devflow/bugs/BUG-XXX/ ├── BUG_ANALYSIS.md # /flow-fix 输出 (bug-analyzer agent) ├── PLAN.md # /flow-fix 输出 (planner agent) ├── TASKS.md # /flow-fix 输出 (planner agent) ├── EXECUTION_LOG.md └── status.json # 类似 orchestration_status.json
### Source
- Created by: `.claude/scripts/create-requirement.sh`
- Template: `.claude/docs/templates/` 目录
- Enforced by: All flow commands
## YAML Frontmatter
### Document Types
#### PRD.md
```yaml
---
reqId: REQ-123
title: User Authentication
version: 1.0.0
createdAt: 2025-10-31T12:34:56Z
updatedAt: 2025-10-31T15:20:30Z
status: approved
author: prd-writer agent
---
TECH_DESIGN.md
---
reqId: REQ-123
version: 1.0.0
architecture: Microservices
techStack:
- Node.js
- PostgreSQL
- Redis
createdAt: 2025-10-31T14:10:00Z
author: tech-architect agent
---
EPIC.md
---
reqId: REQ-123
title: User Authentication Epic
version: 1.0.0
estimatedEffort: 5 days
createdAt: 2025-10-31T16:00:00Z
author: planner agent
---
TASKS.md
---
reqId: REQ-123
totalTasks: 25
completedTasks: 0
version: 1.0.0
createdAt: 2025-10-31T16:30:00Z
updatedAt: 2025-10-31T16:30:00Z
author: planner agent
---
Source
- Enforced by: prd-writer, tech-architect, planner agents
- Parsed by:
.claude/scripts/check-prerequisites.sh,.claude/scripts/generate-status-report.sh
orchestration_status.json
Structure (Requirements)
{
"reqId": "REQ-123",
"title": "User Authentication",
"status": "initialized",
"phase": "planning",
"phase0_complete": false,
"phase1_complete": false,
"completedSteps": [],
"createdAt": "2025-10-31T12:34:56Z",
"updatedAt": "2025-10-31T12:34:56Z"
}
Status Values
initialized → /flow-init 完成
prd_generation_in_progress → /flow-prd 执行中
prd_generation_failed → /flow-prd 失败(可重试)
prd_complete → /flow-prd 完成
tech_design_in_progress → /flow-tech 执行中
tech_design_failed → /flow-tech 失败
tech_design_complete → /flow-tech 完成
epic_generation_in_progress → /flow-epic 执行中
epic_generation_failed → /flow-epic 失败
epic_complete → /flow-epic 完成
development_in_progress → /flow-dev 执行中
development_complete → /flow-dev 完成
qa_in_progress → /flow-qa 执行中
qa_complete → /flow-qa 完成
released → /flow-release 完成
Phase Values
planning → 需求规划阶段 (init, prd)
design → 技术设计阶段 (tech, ui)
epic_planning → 任务规划阶段 (epic)
implementation → 开发阶段 (dev)
qa → 质量保障阶段 (qa)
release → 发布阶段 (release)
Source
- Updated by: All flow commands
- Read by: cc-devflow-orchestrator skill, check-prerequisites.sh
- Schema: Implicitly defined across all flow command docs
status.json (for Bugs)
Structure
{
"bugId": "BUG-456",
"title": "Fix login timeout",
"status": "initialized",
"phase": "analysis",
"severity": "high",
"createdAt": "2025-10-31T12:34:56Z",
"updatedAt": "2025-10-31T12:34:56Z"
}
Severity Values
critical → 严重,系统不可用
high → 高,核心功能受影响
medium → 中,部分功能受影响
low → 低,轻微问题
Source
- Used by:
/flow-fixcommand - Updated by: bug-analyzer agent
File Naming Patterns
Markdown Documents
UPPERCASE_WITH_UNDERSCORES.md # Primary documents (PRD.md, EPIC.md, TASKS.md)
lowercase-with-dashes.md # Supporting documents (data-model.md, quickstart.md)
Scripts
kebab-case.sh # All bash scripts (check-prerequisites.sh)
kebab-case.ts # All TypeScript scripts (skill-activation-prompt.ts)
Directories
lowercase # Top-level (devflow/, research/, contracts/)
kebab-case # Multi-word (codebase-tech-analysis/)
Source
- Implicitly enforced by: All agents and scripts
- No explicit validator
Contract Files
Format
api-{resource}.yaml # OpenAPI 3.0 format
graphql-{schema}.graphql # GraphQL schema
Example
contracts/
├── api-users.yaml # User management API
├── api-auth.yaml # Authentication API
└── graphql-schema.graphql # GraphQL schema (if used)
Source
- Generated by: tech-architect agent via
export-contracts.sh - Referenced by: planner agent in TASKS.md (Phase 2 contract tests)
Special Files
.gitignore Patterns (for devflow/)
# ✅ Should be committed
devflow/requirements/**/PRD.md
devflow/requirements/**/EPIC.md
devflow/requirements/**/TASKS.md
devflow/requirements/**/orchestration_status.json
# ❌ Should NOT be committed
devflow/requirements/**/.env
devflow/requirements/**/secrets/
devflow/requirements/**/node_modules/
.claude/tsc-cache/ (PostToolUse tracking)
.claude/tsc-cache/
└── {session_id}/
├── edited-files.log # Timestamp:path:repo
└── affected-repos.txt # List of affected repos (e.g., devflow/REQ-123)
Source
- Generated by: PostToolUse hook (post-tool-use-tracker.sh)
- Read by: check-prerequisites.sh (for REQ_ID inference)
Agent-Specific Standards (NOT in this skill)
This skill does NOT contain agent-specific content standards:
- prd-writer: INVEST principles, Anti-Expansion mandate, Given-When-Then → See prd-writer agent
- tech-architect: Architecture patterns, tech stack justification, Phase -1 Gates → See tech-architect agent
- ui-designer: 80+ design masters, responsive design rules, NO PLACEHOLDER → See ui-designer agent
- planner: Task breakdown methodology, TDD sequence, Phase -1 Gates enforcement → See planner agent
- qa-tester: Test strategy, coverage requirements, performance benchmarks → See qa-tester agent
Rationale: Those are agent execution standards (how to generate content), not file format standards (how to name/structure files).
Usage Examples
Query 1: "What's the format of REQ-ID?"
Answer: REQ-\d{3} (e.g., REQ-001, REQ-042, REQ-123)
Query 2: "Where does PRD.md go?"
Answer: devflow/requirements/REQ-XXX/PRD.md
Query 3: "What fields are in orchestration_status.json?"
Answer: reqId, title, status, phase, phase0_complete, phase1_complete, completedSteps, createdAt, updatedAt
Query 4: "How do I name a contract file?"
Answer: api-{resource}.yaml (e.g., api-users.yaml, api-auth.yaml)
Query 5: "What's the YAML frontmatter for TASKS.md?"
Answer: reqId, totalTasks, completedTasks, version, createdAt, updatedAt, author
Design Principle
This skill does NOT contain:
- ❌ Agent execution standards (PRD content rules, tech design methodology, etc.)
- ❌ Detailed Phase Gate logic (that's in flow command files)
- ❌ Complete template contents (that's in
.claude/docs/templates/)
This skill ONLY contains:
- ✅ File naming conventions (shared across all agents)
- ✅ Directory structure (created by scripts, used by all agents)
- ✅ YAML frontmatter format (enforced by multiple agents)
- ✅ orchestration_status.json schema (updated by all flow commands)
- ✅ Cross-cutting file format standards
Rationale: Avoid duplication ("不重不漏" principle). Agents own content standards, this skill owns format standards.
Repository
