mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-04 01:40:45 +08:00
🚀 Revolutionary AI-powered development workflow orchestration system ## 🔥 Core Innovations - **Document-State Separation**: Markdown for planning, JSON for execution state - **Progressive Complexity Management**: Level 0-2 adaptive workflow depth - **5-Agent Orchestration**: Specialized AI agents with context preservation - **Session-First Architecture**: Auto-discovery and state inheritance ## 🏗️ Key Features - Intelligent workflow orchestration (Simple/Medium/Complex patterns) - Real-time document-state synchronization with conflict resolution - Hierarchical task management with 3-level JSON structure - Gemini CLI integration with 12+ specialized templates - Comprehensive file output generation for all workflow commands ## 📦 Installation Remote one-liner installation: ``` iex (iwr -useb https://raw.githubusercontent.com/catlog22/Claude-CCW/main/install-remote.ps1) ``` ## 🎯 System Architecture 4-layer intelligent development architecture: 1. Command Layer - Smart routing and version management 2. Agent Layer - 5 specialized development agents 3. Workflow Layer - Gemini templates and task orchestration 4. Memory Layer - Distributed documentation and auto-sync 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
20 KiB
20 KiB
任务执行计划 JSON 表达结构设计
概述
本文档定义了任务执行计划的标准化JSON表达结构,用于描述、调度和跟踪复杂任务的执行流程。该结构支持依赖关系、并行执行、条件分支、错误处理和实时监控。
一、核心架构设计
1.1 执行计划层次结构
ExecutionPlan (执行计划)
├── MetaData (元数据)
├── ExecutionContext (执行上下文)
├── TaskGraph (任务图)
├── ExecutionPhases (执行阶段)
├── SchedulingRules (调度规则)
├── MonitoringConfig (监控配置)
└── ErrorHandling (错误处理)
1.2 执行模式分类
type ExecutionMode =
| 'sequential' // 顺序执行
| 'parallel' // 并行执行
| 'pipeline' // 管道执行
| 'conditional' // 条件执行
| 'hybrid'; // 混合模式
二、JSON Schema 定义
2.1 执行计划根结构
{
"$schema": "https://claude-code.com/schemas/execution-plan/v1.1.json",
"plan_id": "EXEC-WFS-oauth-system-001",
"plan_name": "OAuth2 Authentication System Implementation",
"version": "1.2.0",
"created_at": "2025-09-06T14:30:00Z",
"updated_at": "2025-09-06T15:45:00Z",
"created_by": "planning-agent",
"metadata": {
"workflow_id": "WFS-oauth-system",
"session_id": "SESSION-20250906-001",
"project_context": "Implement secure OAuth2 authentication with JWT tokens",
"estimated_duration": "PT18H",
"complexity": "high",
"risk_level": "medium",
"tags": ["authentication", "security", "oauth2", "jwt"],
"stakeholders": ["backend-team", "security-team", "qa-team"]
},
"execution_context": {
"environment": "development",
"base_directory": "/project/oauth-system",
"tech_stack": ["nodejs", "typescript", "postgresql", "redis"],
"prerequisites": [
"database_setup_complete",
"development_environment_ready",
"dependencies_installed"
],
"global_variables": {
"API_VERSION": "v2",
"DB_CONNECTION": "postgresql://localhost:5432/oauth_db",
"REDIS_URL": "redis://localhost:6379"
}
},
"task_graph": {
"nodes": [
{
"task_id": "IMPL-001",
"name": "Database Schema Design",
"type": "design",
"agent": "planning-agent",
"estimated_duration": "PT2H",
"priority": "high",
"dependencies": [],
"outputs": ["schema.sql", "migration_scripts"],
"validation_criteria": ["schema_validates", "migrations_tested"]
},
{
"task_id": "IMPL-002",
"name": "User Model Implementation",
"type": "implementation",
"agent": "code-developer",
"estimated_duration": "PT3H",
"priority": "high",
"dependencies": ["IMPL-001"],
"inputs": ["schema.sql"],
"outputs": ["user.model.ts", "user.repository.ts"],
"validation_criteria": ["unit_tests_pass", "integration_tests_pass"]
},
{
"task_id": "IMPL-003",
"name": "JWT Token Service",
"type": "implementation",
"agent": "code-developer",
"estimated_duration": "PT4H",
"priority": "critical",
"dependencies": ["IMPL-002"],
"inputs": ["user.model.ts"],
"outputs": ["jwt.service.ts", "token.interface.ts"],
"validation_criteria": ["security_audit_pass", "performance_test_pass"]
},
{
"task_id": "IMPL-004",
"name": "OAuth2 Flow Implementation",
"type": "implementation",
"agent": "code-developer",
"estimated_duration": "PT5H",
"priority": "critical",
"dependencies": ["IMPL-003"],
"inputs": ["jwt.service.ts", "user.repository.ts"],
"outputs": ["oauth2.controller.ts", "oauth2.service.ts"],
"validation_criteria": ["oauth2_spec_compliance", "security_validated"]
},
{
"task_id": "IMPL-005",
"name": "API Middleware Integration",
"type": "integration",
"agent": "code-developer",
"estimated_duration": "PT2H",
"priority": "normal",
"dependencies": ["IMPL-004"],
"inputs": ["oauth2.service.ts"],
"outputs": ["auth.middleware.ts", "rate-limit.middleware.ts"],
"validation_criteria": ["middleware_tests_pass", "integration_verified"]
},
{
"task_id": "IMPL-006",
"name": "Comprehensive Testing Suite",
"type": "testing",
"agent": "test-agent",
"estimated_duration": "PT4H",
"priority": "high",
"dependencies": ["IMPL-005"],
"inputs": ["oauth2.controller.ts", "auth.middleware.ts"],
"outputs": ["test.suite.ts", "integration.test.ts", "security.test.ts"],
"validation_criteria": ["95%_coverage", "all_tests_pass", "security_tests_pass"]
}
],
"edges": [
{
"from": "IMPL-001",
"to": "IMPL-002",
"type": "hard_dependency",
"condition": "deliverables_complete",
"weight": 1.0
},
{
"from": "IMPL-002",
"to": "IMPL-003",
"type": "hard_dependency",
"condition": "validation_passed",
"weight": 1.0
},
{
"from": "IMPL-003",
"to": "IMPL-004",
"type": "hard_dependency",
"condition": "security_approved",
"weight": 1.0
},
{
"from": "IMPL-004",
"to": "IMPL-005",
"type": "hard_dependency",
"condition": "integration_ready",
"weight": 0.8
},
{
"from": "IMPL-005",
"to": "IMPL-006",
"type": "soft_dependency",
"condition": "implementation_stable",
"weight": 0.6
}
]
},
"execution_phases": [
{
"phase_id": "PHASE-001",
"name": "Foundation Setup",
"description": "Core database and model setup",
"execution_mode": "sequential",
"tasks": ["IMPL-001", "IMPL-002"],
"estimated_duration": "PT5H",
"success_criteria": [
"database_schema_deployed",
"user_model_functional",
"unit_tests_passing"
],
"rollback_strategy": {
"type": "database_rollback",
"checkpoint": "pre_migration_state"
}
},
{
"phase_id": "PHASE-002",
"name": "Security Implementation",
"description": "JWT and OAuth2 security layer",
"execution_mode": "sequential",
"tasks": ["IMPL-003", "IMPL-004"],
"estimated_duration": "PT9H",
"success_criteria": [
"jwt_tokens_working",
"oauth2_flow_complete",
"security_audit_passed"
],
"rollback_strategy": {
"type": "code_rollback",
"checkpoint": "post_foundation_state"
}
},
{
"phase_id": "PHASE-003",
"name": "Integration & Testing",
"description": "System integration and comprehensive testing",
"execution_mode": "parallel",
"tasks": ["IMPL-005", "IMPL-006"],
"estimated_duration": "PT4H",
"success_criteria": [
"middleware_integrated",
"all_tests_passing",
"performance_benchmarks_met"
],
"rollback_strategy": {
"type": "feature_rollback",
"checkpoint": "pre_integration_state"
}
}
],
"scheduling_rules": {
"execution_strategy": "hybrid",
"max_parallel_tasks": 3,
"resource_allocation": {
"code-developer": {
"max_concurrent": 2,
"priority_weight": 0.8
},
"planning-agent": {
"max_concurrent": 1,
"priority_weight": 0.9
},
"test-agent": {
"max_concurrent": 1,
"priority_weight": 0.7
}
},
"timing_constraints": {
"business_hours_only": false,
"max_daily_duration": "PT8H",
"break_intervals": ["PT4H"],
"maintenance_windows": ["02:00-04:00"]
},
"priority_rules": [
{
"rule": "critical_tasks_first",
"condition": "priority == 'critical'",
"weight_multiplier": 2.0
},
{
"rule": "security_tasks_priority",
"condition": "tags.includes('security')",
"weight_multiplier": 1.5
},
{
"rule": "dependency_chain_priority",
"condition": "is_on_critical_path",
"weight_multiplier": 1.3
}
],
"load_balancing": {
"strategy": "least_loaded_agent",
"consider_task_type": true,
"agent_affinity": true,
"failover_enabled": true
}
},
"monitoring_config": {
"realtime_tracking": true,
"progress_update_interval": 300,
"checkpoint_frequency": "per_task",
"metrics_collection": {
"execution_time": true,
"resource_usage": true,
"error_rates": true,
"agent_performance": true,
"dependency_wait_time": true
},
"notifications": [
{
"trigger": "task_completed",
"channels": ["log", "console"],
"include_metrics": true
},
{
"trigger": "task_failed",
"channels": ["log", "console", "alert"],
"include_stacktrace": true
},
{
"trigger": "phase_completed",
"channels": ["log", "console"],
"include_summary": true
},
{
"trigger": "execution_blocked",
"channels": ["alert", "console"],
"escalation_delay": 300
}
],
"dashboard_config": {
"enabled": true,
"refresh_interval": 30,
"show_critical_path": true,
"show_agent_load": true,
"show_timeline": true
}
},
"error_handling": {
"global_retry_policy": {
"max_retries": 3,
"backoff_strategy": "exponential",
"base_delay": 60,
"max_delay": 1800
},
"task_specific_policies": {
"IMPL-003": {
"max_retries": 5,
"custom_validation": "security_check_required",
"escalation_on_failure": "security-team"
},
"IMPL-006": {
"max_retries": 2,
"allow_partial_success": true,
"minimum_coverage": 0.90
}
},
"failure_scenarios": [
{
"scenario": "agent_unavailable",
"action": "reassign_to_backup_agent",
"parameters": {
"backup_agents": ["general-purpose"],
"context_preservation": true
}
},
{
"scenario": "dependency_failure",
"action": "pause_downstream_tasks",
"parameters": {
"notification_required": true,
"manual_intervention": true
}
},
{
"scenario": "resource_exhaustion",
"action": "reduce_parallelism",
"parameters": {
"reduction_factor": 0.5,
"temporary_duration": 1800
}
},
{
"scenario": "critical_task_failure",
"action": "escalate_and_pause",
"parameters": {
"escalation_targets": ["project-lead", "tech-lead"],
"pause_execution": true,
"preserve_state": true
}
}
],
"rollback_strategies": {
"automatic_rollback": {
"enabled": true,
"trigger_conditions": [
"critical_task_failure",
"security_validation_failure",
"data_corruption_detected"
],
"preserve_logs": true,
"notify_stakeholders": true
},
"manual_rollback": {
"checkpoints_available": true,
"granularity": "per_phase",
"rollback_verification": "required"
}
}
},
"execution_state": {
"status": "planned",
"current_phase": null,
"active_tasks": [],
"completed_tasks": [],
"failed_tasks": [],
"blocked_tasks": [],
"progress": {
"overall_percentage": 0,
"tasks_completed": 0,
"tasks_total": 6,
"estimated_remaining": "PT18H",
"actual_elapsed": "PT0H"
},
"resource_utilization": {
"code-developer": {
"active_tasks": 0,
"load_percentage": 0,
"queue_depth": 0
},
"planning-agent": {
"active_tasks": 0,
"load_percentage": 0,
"queue_depth": 0
},
"test-agent": {
"active_tasks": 0,
"load_percentage": 0,
"queue_depth": 0
}
},
"execution_timeline": [],
"performance_metrics": {},
"last_checkpoint": null,
"next_scheduled_task": "IMPL-001"
},
"validation_rules": {
"pre_execution": [
{
"rule": "all_dependencies_available",
"description": "验证所有依赖项已准备就绪"
},
{
"rule": "agents_available",
"description": "验证所需Agent可用"
},
{
"rule": "resources_sufficient",
"description": "验证系统资源充足"
}
],
"during_execution": [
{
"rule": "task_validation_passed",
"description": "每个任务必须通过验证标准"
},
{
"rule": "dependency_constraints_met",
"description": "依赖约束必须满足"
},
{
"rule": "resource_limits_respected",
"description": "不得超出资源限制"
}
],
"post_execution": [
{
"rule": "all_deliverables_produced",
"description": "所有预期产出物已生成"
},
{
"rule": "quality_gates_passed",
"description": "质量门禁检查通过"
},
{
"rule": "integration_tests_passed",
"description": "集成测试全部通过"
}
]
}
}
三、执行计划操作接口
3.1 执行计划操作
// 执行计划操作接口
interface ExecutionPlanOperations {
// 基础操作
create(plan: ExecutionPlanDefinition): Promise<ExecutionPlan>;
validate(plan: ExecutionPlan): Promise<ValidationResult>;
execute(planId: string, options?: ExecutionOptions): Promise<ExecutionSession>;
pause(planId: string): Promise<void>;
resume(planId: string): Promise<void>;
abort(planId: string, reason: string): Promise<void>;
// 查询操作
getStatus(planId: string): Promise<ExecutionStatus>;
getProgress(planId: string): Promise<ProgressReport>;
getMetrics(planId: string): Promise<PerformanceMetrics>;
// 修改操作
updatePlan(planId: string, updates: Partial<ExecutionPlan>): Promise<ExecutionPlan>;
addTask(planId: string, task: TaskDefinition): Promise<void>;
removeTask(planId: string, taskId: string): Promise<void>;
modifyDependency(planId: string, dependency: DependencyUpdate): Promise<void>;
// 高级操作
optimizePlan(planId: string, criteria: OptimizationCriteria): Promise<OptimizedPlan>;
simulateExecution(planId: string): Promise<SimulationResult>;
generateReport(planId: string, format: 'json' | 'html' | 'markdown'): Promise<string>;
}
3.2 执行状态查询
{
"query_api": {
"get_current_status": {
"endpoint": "/execution-plans/{planId}/status",
"response": {
"plan_id": "EXEC-WFS-oauth-system-001",
"status": "executing",
"current_phase": "PHASE-002",
"active_tasks": ["IMPL-003"],
"progress": {
"overall": 45,
"current_phase": 60,
"estimated_completion": "2025-09-07T08:30:00Z"
},
"agent_status": {
"code-developer": "busy",
"planning-agent": "idle",
"test-agent": "idle"
}
}
},
"get_execution_timeline": {
"endpoint": "/execution-plans/{planId}/timeline",
"response": [
{
"timestamp": "2025-09-06T14:30:00Z",
"event": "execution_started",
"details": {"phase": "PHASE-001"}
},
{
"timestamp": "2025-09-06T16:45:00Z",
"event": "task_completed",
"details": {"task_id": "IMPL-001", "duration": "PT2H15M"}
},
{
"timestamp": "2025-09-06T17:00:00Z",
"event": "task_started",
"details": {"task_id": "IMPL-002", "agent": "code-developer"}
}
]
},
"get_performance_metrics": {
"endpoint": "/execution-plans/{planId}/metrics",
"response": {
"execution_efficiency": 0.87,
"average_task_duration": "PT2H30M",
"agent_utilization": {
"code-developer": 0.85,
"planning-agent": 0.60,
"test-agent": 0.40
},
"bottlenecks": [
{
"task_id": "IMPL-003",
"reason": "complexity_underestimated",
"impact": "15_minute_delay"
}
]
}
}
}
}
四、执行计划模式库
4.1 常用执行模式模板
{
"execution_patterns": {
"feature_development": {
"name": "Feature Development Pattern",
"description": "Standard feature implementation workflow",
"phases": [
{"name": "Design", "mode": "sequential"},
{"name": "Implementation", "mode": "parallel"},
{"name": "Testing", "mode": "sequential"},
{"name": "Integration", "mode": "sequential"}
],
"estimated_duration": "PT12H",
"agent_requirements": ["planning-agent", "code-developer", "test-agent"],
"success_rate": 0.92
},
"bug_fix": {
"name": "Bug Fix Pattern",
"description": "Rapid bug diagnosis and resolution",
"phases": [
{"name": "Diagnosis", "mode": "sequential"},
{"name": "Fix Implementation", "mode": "sequential"},
{"name": "Verification", "mode": "parallel"}
],
"estimated_duration": "PT4H",
"agent_requirements": ["code-developer", "test-agent"],
"success_rate": 0.95
},
"refactoring": {
"name": "Code Refactoring Pattern",
"description": "Safe code restructuring workflow",
"phases": [
{"name": "Analysis", "mode": "sequential"},
{"name": "Planning", "mode": "sequential"},
{"name": "Incremental Changes", "mode": "sequential"},
{"name": "Validation", "mode": "parallel"}
],
"estimated_duration": "PT8H",
"agent_requirements": ["code-review-agent", "code-developer", "test-agent"],
"success_rate": 0.88
},
"integration": {
"name": "System Integration Pattern",
"description": "Multi-component integration workflow",
"phases": [
{"name": "Compatibility Check", "mode": "parallel"},
{"name": "Interface Design", "mode": "sequential"},
{"name": "Integration Implementation", "mode": "parallel"},
{"name": "End-to-End Testing", "mode": "sequential"}
],
"estimated_duration": "PT16H",
"agent_requirements": ["planning-agent", "code-developer", "test-agent"],
"success_rate": 0.83
}
}
}
4.2 执行优化建议
{
"optimization_recommendations": {
"parallelization_opportunities": [
{
"phase": "PHASE-003",
"suggestion": "IMPL-005和IMPL-006可以并行执行",
"estimated_time_saving": "PT2H",
"risk_level": "low"
}
],
"resource_optimization": [
{
"recommendation": "在PHASE-001期间,test-agent处于空闲状态",
"suggestion": "可以提前开始测试用例设计",
"impact": "提高资源利用率15%"
}
],
"critical_path_optimization": [
{
"current_critical_path": "IMPL-001 → IMPL-002 → IMPL-003 → IMPL-004",
"bottleneck": "IMPL-003 (JWT Token Service)",
"optimization": "考虑将JWT实现分解为更小的子任务",
"potential_benefit": "减少关键路径风险"
}
]
}
}
五、实施指南
5.1 集成接口
// Claude Code命令集成
interface TaskExecutionPlanIntegration {
// 从任务分解生成执行计划
generateFromBreakdown(taskBreakdown: TaskBreakdown): ExecutionPlan;
// 与Agent系统集成
executeWithAgents(plan: ExecutionPlan): Promise<ExecutionResult>;
// 与监控系统集成
setupMonitoring(plan: ExecutionPlan): MonitoringSession;
// 与文档系统集成
syncWithDocuments(plan: ExecutionPlan): Promise<DocumentSyncResult>;
}
5.2 使用示例
# 创建执行计划
/task:plan create --from-breakdown IMPL-001 --template=feature_development
# 验证执行计划
/task:plan validate EXEC-WFS-oauth-system-001
# 执行计划
/task:plan execute EXEC-WFS-oauth-system-001 --mode=auto
# 监控执行状态
/task:plan status EXEC-WFS-oauth-system-001 --dashboard
# 优化执行计划
/task:plan optimize EXEC-WFS-oauth-system-001 --criteria=time_efficiency
本JSON Schema版本: v1.1 | 设计日期: 2025-09-06 | 兼容性: Claude Code v2.0+