🤖 什么是 Agentic 编程?
Agentic 编程是 AI 从「补全代码」进化到「自主完成开发任务」的新范式。OpenClaw 通过 ACP(Agent Coding Protocol) 协议,让 AI Agent 能够:需求分析 → 代码生成 → 测试执行 → 部署发布,全程自主完成。
💡 核心优势:传统 AI 辅助编程需要你一行行确认,Agentic 模式下一个指令完成整个功能模块的开发。
🚀 完整工作流
Step 1: 需求分析
Agent 自动拆解需求,生成任务计划和验收标准。
# 向 Agent 描述需求
"帮我开发一个 RESTful API,实现用户注册、登录、JWT 认证,
使用 FastAPI + PostgreSQL,包含单元测试"
Step 2: 代码生成
Agent 调用 write 工具生成代码文件,遵循项目规范。
# Agent 自动执行
write(path="/project/api/auth.py", content="...")
write(path="/project/tests/test_auth.py", content="...")
write(path="/project/requirements.txt", content="...")
Step 3: 测试执行
Agent 运行测试,根据失败结果自动修复代码。
# Agent 自动执行测试
exec(command="cd /project && pytest tests/ -v")
# 如果失败,Agent 会分析错误并修复代码,重新测试
Step 4: 部署发布
Agent 生成 Dockerfile、CI/CD 配置,准备上线。
# Agent 生成部署文件
write(path="/project/Dockerfile", content="...")
write(path="/project/.github/workflows/deploy.yml", content="...")
🔧 使用 ACP 协议
OpenClaw 的 ACP 协议是专为编程 Agent 设计的通信规范,支持 Claude Code、Cursor Agent、GitHub Copilot 等多种后端。
配置 ACP 运行时
# gateway.yaml
runtime:
acp:
defaultAgent: "claude-code"
allowedAgents:
- "claude-code"
- "cursor-agent"
- "codex"
timeoutSeconds: 600
sandbox: "require" # 强制沙箱执行
启动 ACP 编程任务
# 通过 sessions_spawn 启动编程 Agent
sessions_spawn(
runtime="acp",
agentId="claude-code",
task="开发一个 Markdown 转 HTML 的 Python 库,包含 CLI 入口和单元测试",
mode="run"
)
💡 最佳实践
- 任务粒度 - 单个 Agent 任务不超过 500 行代码,过大会导致上下文溢出
- 沙箱隔离 - 始终在 sandbox 中运行不受信任的代码生成任务
- 人工审核 - 设置
human_approval: true,关键操作需人工确认 - 版本控制 - Agent 生成的代码自动提交 git,保留完整历史
- 测试驱动 - 让 Agent 先写测试再写实现(TDD 模式)
📝 实战案例
案例:用 Agent 开发一个 OpenClaw Skill
# 向 OpenClaw 下达任务
"用 ACP 模式开发一个 OpenClaw Skill:
- 名称:stock-price-skill
- 功能:查询股票价格,支持 A 股和美股
- 数据源:Yahoo Finance API
- 包含:SKILL.md、skill.py、单元测试
- 部署路径:~/.openclaw/skills/stock-price/"
# Agent 执行流程:
# 1. 分析需求,确定依赖(yfinance 库)
# 2. 编写 SKILL.md(技能描述)
# 3. 编写 skill.py(核心逻辑)
# 4. 编写测试用例
# 5. 本地测试验证
# 6. 部署到 skills 目录
# 7. 返回完成报告
⚠️ 注意事项
安全提醒:
- ACP Agent 具有文件系统访问权限,务必使用 sandbox 模式
- 生成的代码需人工 Review,特别是涉及数据库操作的部分
- API Key、密码等敏感信息不要写入生成的代码中
- 长时间运行的 Agent 任务建议设置 timeout,避免资源耗尽