<p align="right"><font color="#3f3f3f">2025年06月21日</font></p> 本指南专注于使用Claude Code和Claude-Flow实现高效的自动化开发流程,无需额外的多Agent管理工具。 ## 第一部分:核心环境设置(10分钟) ### 1.1 基础工具安装 ```bash # 1. 安装Node.js和基础工具 # macOS brew install node git gh # Ubuntu/WSL sudo apt update sudo apt install nodejs npm git # 安装GitHub CLI: https://github.com/cli/cli#installation # 2. 安装Claude Code npm install -g @anthropic-ai/claude-code # 3. 首次认证(按提示完成OAuth) claude ``` ### 1.2 安装Claude-Flow(高级编排系统) ```bash # 全局安装Claude-Flow npm install -g claude-flow@latest # 创建项目并初始化 mkdir my-awesome-project && cd my-awesome-project npx claude-flow@latest init --sparc # 这会创建完整的项目结构和配置文件 ``` ## 第二部分:解决手动Accept问题 ### 方案1:使用Claude-Flow的自动模式(推荐) ```bash # 配置自动接受 ./claude-flow config set auto-accept.enabled true ./claude-flow config set auto-accept.safety-level medium # safety-level选项: # - low: 接受所有更改 # - medium: 只在测试通过时接受(推荐) # - high: 只接受小范围更改 # 执行任务时自动接受 ./claude-flow swarm "开发新功能" --auto-accept ``` ### 方案2:环境变量控制 ```bash # 添加到 ~/.bashrc 或 ~/.zshrc export CLAUDE_AUTO_ACCEPT=true export CLAUDE_BATCH_MODE=true export CLAUDE_SKIP_CONFIRMATIONS=true export CLAUDE_TRUST_MODE=high # 立即生效 source ~/.bashrc ``` ### 方案3:创建自动化包装脚本 ```bash #!/usr/bin/env expect # 保存为: claude-auto set timeout -1 set command [lindex $argv 0] spawn claude "$command" expect { "Accept?" { send "y\r"; exp_continue } "Continue?" { send "y\r"; exp_continue } "Proceed?" { send "y\r"; exp_continue } eof } ``` 使用方法: ```bash # 安装expect brew install expect # macOS sudo apt install expect # Ubuntu chmod +x claude-auto ./claude-auto "实现用户认证功能" ``` ## 第三部分:项目配置与自动化 ### 3.1 创建项目配置 创建 `.claude/CLAUDE.md` 文件(Claude Code会自动读取): ```markdown # 项目上下文 ## 技术栈 - 后端:Node.js + Express + TypeScript - 前端:React + TypeScript + Tailwind CSS - 数据库:PostgreSQL + Prisma - 测试:Jest + Cypress ## 开发原则 1. 所有代码必须有类型定义 2. API遵循RESTful规范 3. 每个功能必须包含测试 4. 使用conventional commits规范 ## 项目结构 - /backend - API服务 - /frontend - React应用 - /shared - 共享类型定义 - /docs - 项目文档 ``` ### 3.2 定义自定义命令 创建 `.claude/commands/` 目录下的命令文件: **全栈功能开发** `.claude/commands/fullstack-feature.md`: ```markdown 开发全栈功能:$ARGUMENTS 执行步骤: 1. 分析需求,设计API接口 2. 创建共享的TypeScript类型定义 3. 实现后端API(包含验证和错误处理) 4. 实现前端界面和状态管理 5. 创建端到端测试 6. 更新API文档 7. 创建feature分支并提交所有更改 8. 自动创建PR并请求代码审查 记住: - 保持前后端类型一致性 - 实现proper错误处理 - 添加loading和错误状态 - 确保响应式设计 ``` ## 第四部分:使用Claude-Flow进行高级开发 ### 4.1 基础使用 ```bash # 简单任务 ./claude-flow swarm "创建用户认证系统" --auto-accept # 并行开发多个功能 ./claude-flow swarm "构建完整的博客系统" \ --strategy development \ --max-agents 5 \ --parallel \ --monitor ``` ### 4.2 使用SPARC专业化Agent ```bash # 架构设计 ./claude-flow sparc run architect "设计电商平台的微服务架构" # 代码实现 ./claude-flow sparc run coder "实现用户服务微服务" # 测试开发 ./claude-flow sparc run tdd "为用户服务创建完整测试套件" # 安全审查 ./claude-flow sparc run security-review "审查认证和授权实现" ``` ### 4.3 递归优化模式 ```bash # 持续改进代码质量 ./claude-flow optimize ./src \ --iterations 3 \ --metrics "performance,readability,security" \ --auto-commit ``` ## 第五部分:实用自动化脚本 ### 5.1 创建任务管理脚本 创建 `claude-task.sh`: ```bash #!/bin/bash # 简化的任务执行脚本 TASK_NAME="$1" TASK_DESC="$2" BRANCH_NAME="feature/$(echo $TASK_NAME | tr ' ' '-' | tr '[:upper:]' '[:lower:]')" if [ -z "$TASK_NAME" ] || [ -z "$TASK_DESC" ]; then echo "用法: $0 <任务名称> <任务描述>" exit 1 fi echo "🚀 开始任务: $TASK_NAME" # 创建分支 git checkout -b "$BRANCH_NAME" # 执行Claude任务(使用自动接受模式) CLAUDE_AUTO_ACCEPT=true claude "$TASK_DESC 要求: 1. 实现完整功能 2. 包含必要的测试 3. 添加注释说明 4. 完成后总结所做的更改" # 提交代码 git add -A git commit -m "feat: $TASK_NAME" git push -u origin "$BRANCH_NAME" # 创建PR(如果安装了GitHub CLI) if command -v gh &> /dev/null; then gh pr create \ --title "✨ $TASK_NAME" \ --body "由Claude Code自动完成" \ --assignee "@me" fi echo "✨ 任务完成!" ``` ### 5.2 前后端协作脚本 创建 `claude-fullstack.sh`: ```bash #!/bin/bash # 前后端协作开发脚本 FEATURE_NAME="$1" API_CONTRACT=".claude/contracts/${FEATURE_NAME}.yaml" # 创建API契约 cat > "$API_CONTRACT" << EOF openapi: 3.0.0 info: title: ${FEATURE_NAME} API version: 1.0.0 paths: /api/${FEATURE_NAME}: post: summary: ${FEATURE_NAME}端点 requestBody: required: true responses: 200: description: 成功响应 EOF echo "📄 已创建API契约" # 使用Claude-Flow并行开发 ./claude-flow swarm "基于契约实现${FEATURE_NAME}功能" \ --contract "$API_CONTRACT" \ --components "backend,frontend,tests" \ --parallel \ --auto-accept echo "✅ 全栈功能开发完成!" ``` ## 第六部分:高级应用场景 ### 6.1 从GitHub Issue自动开发 ```bash #!/bin/bash # auto-issue.sh - 自动处理GitHub Issue # 获取所有打开的issue gh issue list --state open --json number,title,body | \ jq -c '.[]' | while read issue; do NUMBER=$(echo $issue | jq -r .number) TITLE=$(echo $issue | jq -r .title) BODY=$(echo $issue | jq -r .body) echo "处理 Issue #$NUMBER: $TITLE" ./claude-flow swarm "解决Issue #$NUMBER: $TITLE. 详情: $BODY" \ --strategy bugfix \ --branch "fix/issue-$NUMBER" \ --auto-pr \ --link-issue $NUMBER done ``` ### 6.2 持续集成工作流 创建 `.github/workflows/claude-develop.yml`: ```yaml name: Claude自动开发 on: schedule: - cron: '0 9 * * 1-5' # 工作日早上9点 workflow_dispatch: jobs: auto-develop: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Setup Claude环境 run: | npm install -g claude-flow@latest echo "CLAUDE_AUTO_ACCEPT=true" >> $GITHUB_ENV - name: 执行开发任务 env: CLAUDE_API_KEY: ${{ secrets.CLAUDE_API_KEY }} run: | # 优化代码质量 ./claude-flow optimize . \ --metrics "performance,security" \ --auto-commit # 更新文档 ./claude-flow sparc run documenter "更新API文档" ``` ### 6.3 代码现代化 ```bash # 将遗留代码库升级到现代标准 ./claude-flow modernize ./legacy-app \ --target "typescript,async-await,es6" \ --strategy progressive \ --test-coverage required \ --max-iterations 5 ``` ## 第七部分:最佳实践 ### 7.1 智能提示词模板 创建 `.claude/templates/prompt-template.md`: ```markdown 你是一个高级软件工程师。 项目背景: - 技术栈:[从.claude/CLAUDE.md读取] - 编码规范:[从项目配置读取] 任务:$TASK_DESCRIPTION 要求: 1. 代码质量 - 类型安全 - 错误处理 - 性能优化 2. 测试覆盖 - 单元测试 - 集成测试 - E2E测试(如适用) 3. 文档 - 内联注释 - API文档 - README更新 输出格式: - 创建/修改的文件列表 - 关键决策说明 - 测试说明 - 部署注意事项 ``` ### 7.2 配置文件模板 创建 `.claude-flow/config.js`: ```javascript module.exports = { // 自动接受配置 autoAccept: { enabled: true, safetyLevel: 'medium', excludePatterns: ['*.env', '*.secret.*'] }, // Agent配置 agents: { maxParallel: 3, timeout: 300000, // 5分钟 retryAttempts: 2 }, // 优化配置 optimization: { iterations: 3, metrics: ['performance', 'readability', 'security'], threshold: 0.8 }, // Git配置 git: { autoCommit: true, conventionalCommits: true, branchingStrategy: 'feature/{task-name}' } }; ``` ## 第八部分:额度管理 ### 8.1 智能额度控制 ```bash # 配置额度限制 ./claude-flow config set rate-limit.enabled true ./claude-flow config set rate-limit.max-parallel 2 ./claude-flow config set rate-limit.cooldown-hours 5 # 查看使用情况 ./claude-flow stats ``` ### 8.2 额度监控脚本 ```bash #!/bin/bash # monitor-usage.sh USAGE_FILE=".claude/usage.json" MAX_DAILY_TASKS=10 # 更新使用记录 update_usage() { local count=$(jq -r '.today // 0' "$USAGE_FILE" 2>/dev/null || echo 0) count=$((count + 1)) echo "{\"today\": $count, \"date\": \"$(date +%Y-%m-%d)\"}" > "$USAGE_FILE" if [ $count -gt $MAX_DAILY_TASKS ]; then echo "⚠️ 已达到每日任务限制" exit 1 fi } # 在执行任务前调用 update_usage ``` ## 故障排除 ### 常见问题 1. **Claude命令未找到** ```bash export PATH="$PATH:$(npm config get prefix)/bin" ``` 2. **自动接受不生效** ```bash # 检查环境变量 echo $CLAUDE_AUTO_ACCEPT # 确保使用正确的包装脚本 ./claude-auto "你的任务" ``` 3. **Claude-Flow初始化失败** ```bash # 清理并重新初始化 rm -rf .claude-flow npx claude-flow@latest init --sparc --force ``` ## 推荐工作流程 ### 日常开发流程 ```bash # 1. 早上开始工作 ./claude-flow sparc run planner "分析今日待办任务" # 2. 开发新功能 ./claude-task.sh "用户通知系统" "实现邮件和应用内通知" # 3. 优化现有代码 ./claude-flow optimize ./src --auto-accept # 4. 结束工作前 ./claude-flow sparc run reviewer "审查今日代码更改" ``` ### 项目初始化流程 ```bash # 1. 创建项目结构 npx claude-flow@latest init --sparc # 2. 配置项目上下文 cat > .claude/CLAUDE.md << EOF # 你的项目配置 EOF # 3. 创建基础架构 ./claude-flow sparc run architect "设计项目架构" # 4. 实现核心功能 ./claude-flow swarm "实现核心业务逻辑" --parallel ```