OpenClaw 提示词与工作流 —— 结构化指令、工作流设计、最佳实践
简介
在前面的文章中,我们已经完成了 OpenClaw 的安装、配置和基础使用。你已经能用
openclaw "指令"来生成代码、审查文件、执行简单任务了。
但你是否遇到过这些问题:
- 指令模糊:你说"帮我优化代码",AI 返回的结果完全不是你想要的
- 上下文丢失:多轮对话后,AI 忘记了最开始的需求
- 效率低下:一个简单的重构任务,来回对话了十几轮还没完成
- 结果不可控:每次运行同样的指令,得到的结果差异很大
这些问题的根源在于:提示词质量和工作流设计。
OpenClaw 作为轻量级 AI 编程 Agent,它的上下文窗口有限(32K-64K tokens),块级编辑的精度也不如大型工具。这意味着好的提示词和清晰的工作流在 OpenClaw 中尤为重要。
本文将从三个维度深入探讨:
- 结构化指令设计 —— 如何写出让 AI 一次性做对的提示词
- 工作流设计 —— 如何把复杂任务拆解为 AI 可高效执行的步骤
- 最佳实践 —— 真实项目中的模板、技巧和避坑指南
目录
- 一、提示词设计的核心原则
- 二、结构化指令模板
- 三、上下文管理策略
- 四、工作流设计方法论
- 五、实战工作流案例
- 六、自动化管线搭建
- 七、模板库建设
- 八、性能调优:Token 与速度
- 九、常见陷阱与规避
- 总结与下篇预告
一、提示词设计的核心原则
1.1 精确性原则
OpenClaw 使用小型模型,它不如 Claude Sonnet 那样擅长"猜测你的意图"。因此,指令必须精确、具体、无歧义。
# ❌ 糟糕的指令
openclaw "优化这段代码"
# ✅ 好的指令
openclaw -f main.py "将 main.py 中所有使用字符串拼接的 SQL 查询
改为参数化查询,使用 sqlite3 的 ? 占位符语法"1.2 约束性原则
明确告诉 AI 不能做什么,和告诉它应该做什么同样重要。
# ✅ 带约束的指令
openclaw -f api.py "重构路由函数,要求:
1. 使用装饰器处理认证,而不是在每个函数中重复
2. 不要改变现有的 URL 路径
3. 保持函数签名不变(向后兼容)
4. 添加类型注解
5. 不要引入新的第三方依赖"1.3 输出格式原则
明确要求输出格式,减少后处理工作。
# ✅ 指定输出格式
openclaw -f schema.py "分析这个文件中的数据库模型,
输出格式为:
- 表名
- 字段1: 类型 (约束)
- 字段2: 类型 (约束)
- 外键关系:表A.字段 -> 表B.字段"1.4 角色设定原则
给 AI 设定角色,可以显著提升输出质量。
# ✅ 角色 + 任务 + 约束 + 格式
openclaw "你是一位资深的 Python 安全审计专家。请审查以下代码中的安全漏洞,
按照以下格式输出:
【高危】描述 - 修复建议
【中危】描述 - 修复建议
【低危】描述 - 修复建议
代码文件:
$(cat auth.py)"二、结构化指令模板
2.1 CRAFT 框架
我们推荐使用 CRAFT 框架来构建结构化指令:
C - Context(背景):任务的背景信息
R - Role(角色):AI 扮演的角色
A - Action(行动):具体要做什么
F - Format(格式):输出格式要求
T - Target(目标):期望达到的目标# CRAFT 模板实战
openclaw "【C】这是一个使用 Flask + SQLAlchemy 的用户管理系统,
目前存在 N+1 查询问题。
【R】你是一位数据库性能优化专家。
【A】请分析以下代码中的查询模式,
1. 识别所有 N+1 查询的位置
2. 为每个问题提供优化方案(使用 joinedload 或 subqueryload)
3. 给出优化后的代码
【F】请按以下格式输出:
问题 #1:[文件:行号]
原始查询:...
优化方案:...
优化后代码:...
【T】目标是将页面加载时间从 2s 降低到 200ms 以内。
代码文件:
$(cat models/user.py)
$(cat routes/user.py)"2.2 代码生成模板
# 代码生成标准模板
openclaw "【功能】实现一个带限流和重试的 HTTP 客户端
【技术栈】Python 3.10+、aiohttp、tenacity
【要求】
1. 支持 GET/POST/PUT/DELETE 方法
2. 内置指数退避重试(最多 3 次)
3. 支持每分钟 60 次的限流
4. 所有方法都有完整的类型注解
5. 包含单元测试示例
【输出】完整可运行的代码 + 使用示例"2.3 代码审查模板
# 代码审查标准模板
openclaw "【审查范围】以下文件的代码变更
【审查维度】
1. 正确性:逻辑错误、边界条件、异常处理
2. 安全性:SQL 注入、XSS、认证绕过
3. 性能:复杂度、内存泄漏、N+1 查询
4. 可维护性:命名、注释、代码重复
5. 测试:测试覆盖率、边界用例
【严重级别】CRITICAL / HIGH / MEDIUM / LOW / INFO
【格式】
[严重级别] [维度] 问题描述
位置:文件:行号
建议:修复方案
代码:
$(cat api/auth.py)
$(cat api/users.py)"2.4 重构模板
# 重构标准模板
openclaw "【重构目标】将单体函数拆分为独立模块
【当前状态】以下函数承担了太多职责:
$(cat services/order_service.py)
【重构要求】
1. 拆分为:订单创建、订单支付、订单通知 三个独立服务
2. 使用依赖注入模式
3. 保持现有 API 接口不变
4. 添加单元测试
5. 输出完整的文件结构
【约束】
- 不改变数据库 schema
- 不改变外部 API 调用方式
- 使用 Python 3.10+ 语法"三、上下文管理策略
3.1 OpenClaw 的上下文限制
由于 OpenClaw 使用轻量级模型,上下文窗口通常在 32K-64K tokens 之间。这意味着我们需要精打细算地使用上下文。
┌──────────────────────────────────────────────────────────┐
│ 上下文窗口分配策略 │
├──────────────────┬──────────────┬────────────────────────┤
│ 部分 │ 预估 Token │ 占比 │
├──────────────────┼──────────────┼────────────────────────┤
│ 系统提示词 │ ~1,000 │ 2-3% │
│ 指令内容 │ ~500-2,000 │ 1-5% │
│ 文件内容 │ ~10,000-30K │ 30-75% │
│ 对话历史 │ ~5,000-15K │ 15-40% │
│ 输出预留 │ ~5,000-10K │ 15-25% │
└──────────────────┴──────────────┴────────────────────────┘3.2 上下文压缩技巧
# 技巧 1:只传递必要的代码片段
# ❌ 传递整个文件
openclaw -f huge_file.py "修改第 150-160 行的逻辑"
# ✅ 提取相关代码片段
sed -n '140,170p' huge_file.py | openclaw "修改这段代码中的循环逻辑"
# 技巧 2:使用 --quiet 减少输出 token
openclaw --quiet "生成快速排序" > sort.py
# 技巧 3:分步处理大文件
openclaw "列出 main.py 中所有的函数定义" > functions.txt
# 然后针对每个函数单独处理3.3 会话管理
# 交互模式中管理上下文
openclaw
# 清空不必要的历史,释放上下文
> /clear
# 保存重要对话,后续可以加载
> /save important_design.md
# 加载之前的对话
> /load important_design.md
# 查看当前上下文使用情况(如果工具支持)
> /config3.4 分块处理策略
对于大型任务,采用分块处理策略:
#!/bin/bash
# 分块处理大型代码库
# 第一步:分析项目结构
openclaw "列出 src/ 目录下所有 Python 文件及其依赖关系" > structure.md
# 第二步:逐个模块处理
for module in api services models; do
echo "处理 $module 模块..."
openclaw -f "src/$module/*.py" \
"为这个模块添加完整的类型注解和文档字符串" \
> "docs/${module}_annotated.py"
done
# 第三步:整合结果
openclaw "根据以下模块文档,生成完整的项目 API 文档" \
-f "docs/*.py" > API_DOCUMENTATION.md四、工作流设计方法论
4.1 工作流设计三原则
┌──────────────────────────────────────────────────────────┐
│ 工作流设计三原则 │
│ │
│ 1. 原子性:每个步骤只做一件事 │
│ - 好的:「提取函数签名」→「添加类型注解」→「生成文档」 │
│ - 坏的:「分析代码并添加类型注解和文档和单元测试」 │
│ │
│ 2. 顺序性:步骤之间有清晰的依赖关系 │
│ - A 的输出是 B 的输入 │
│ - 并行步骤可以独立执行 │
│ │
│ 3. 可验证性:每个步骤的结果都可以检查 │
│ - 语法检查、测试运行、diff 审查 │
│ - 失败时能够快速定位问题 │
└──────────────────────────────────────────────────────────┘4.2 工作流模式
模式一:线性流水线
需求 → 分析 → 设计 → 编码 → 测试 → 文档 → 完成
每个阶段的输出作为下一阶段的输入。#!/bin/bash
# 线性工作流:从需求到文档
# 阶段 1:需求分析
openclaw "基于以下需求,列出功能点和 API 端点:
用户注册、登录、修改密码、查看个人信息" > requirements.md
# 阶段 2:API 设计
openclaw -f requirements.md "设计 RESTful API,输出 OpenAPI 规范" > api_spec.yaml
# 阶段 3:生成骨架代码
openclaw -f api_spec.yaml "基于 OpenAPI 规范生成 Flask 骨架代码" > app.py
# 阶段 4:实现业务逻辑
openclaw -f app.py "实现用户注册和登录的业务逻辑"
# 阶段 5:生成测试
openclaw -f app.py "为注册和登录功能生成 pytest 测试用例" > test_app.py
# 阶段 6:生成文档
openclaw -f app.py -f api_spec.yaml "生成 API 使用文档" > USAGE.md模式二:并行处理
主任务拆解
├── 子任务 A(独立)
├── 子任务 B(独立)
└── 子任务 C(独立)
↓
合并结果#!/bin/bash
# 并行工作流:同时处理多个文件
# 同时审查多个文件(利用后台任务)
openclaw "审查 auth.py 的安全性" &
openclaw "审查 routes.py 的正确性" &
openclaw "审查 models.py 的完整性" &
wait # 等待所有任务完成
# 合并结果
cat *.review > full_review.md模式三:迭代优化
初始版本 → 审查 → 修复 → 测试 → 优化 → 最终版本
↑ │
└──────────────── 反馈循环 ←──────────────┘#!/bin/bash
# 迭代优化工作流
MAX_ITERATIONS=3
for i in $(seq 1 $MAX_ITERATIONS); do
echo "=== 第 $i 轮迭代 ==="
# 1. 运行测试
if python -m pytest tests/ -q; then
echo "测试通过!"
break
fi
# 2. 让 AI 分析失败原因
openclaw "分析以下测试失败的原因,给出修复方案:
$(python -m pytest tests/ --tb=short 2>&1)" > fix_plan.md
# 3. 应用修复
openclaw -f fix_plan.md -f src/*.py "根据修复计划修改代码"
# 4. 验证
python -m pytest tests/ -q
done五、实战工作流案例
5.1 案例一:从零搭建 REST API
#!/bin/bash
# 完整工作流:从零搭建用户管理 API
echo "=== 第 1 步:需求分析 ==="
openclaw "设计一个用户管理系统的 API,包含:
1. 用户注册(邮箱、密码)
2. 用户登录(JWT token)
3. 用户资料 CRUD
4. 密码重置
输出:API 端点列表、请求/响应格式、错误码" > api_design.md
echo "=== 第 2 步:数据模型设计 ==="
openclaw -f api_design.md "设计 SQLAlchemy 数据模型,包含:
- User 表(id, email, password_hash, created_at, updated_at)
- Profile 表(user_id, name, bio, avatar_url)
输出完整的 models.py" > models.py
echo "=== 第 3 步:生成骨架 ==="
openclaw -f api_design.md -f models.py "生成 Flask 应用骨架:
- app.py(应用入口)
- routes/auth.py(认证路由)
- routes/users.py(用户路由)
- config.py(配置)
- requirements.txt" > skeleton.zip
echo "=== 第 4 步:实现核心逻辑 ==="
openclaw -f routes/auth.py -f models.py "实现注册和登录的完整逻辑:
- 密码使用 bcrypt 哈希
- JWT token 生成和验证
- 输入验证和错误处理"
echo "=== 第 5 步:生成测试 ==="
openclaw -f routes/ -f models.py "生成完整的 pytest 测试:
- 单元测试(模型验证)
- 集成测试(API 端点)
- 边界用例测试" > tests/
echo "=== 第 6 步:生成文档 ==="
openclaw -f api_design.md -f routes/ "生成 Swagger/OpenAPI 文档和使用手册"
echo "=== 完成!==="5.2 案例二:代码迁移(Python 2 → Python 3)
#!/bin/bash
# 工作流:Python 2 到 Python 3 的迁移
# 第一步:扫描需要修改的内容
openclaw "扫描以下 Python 2 代码,列出需要迁移的问题:
1. print 语句 → print 函数
2. unicode 处理
3. xrange → range
4. 除法语义变化
5. 迭代器 .iteritems() → .items()
6. except 语法
$(find src/ -name '*.py' -exec cat {} +)" > migration_report.md
# 第二步:分类处理
grep "print 语句" migration_report.md | while read -r issue; do
file=$(echo "$issue" | cut -d: -f1)
openclaw -f "$file" "将所有 print 语句改为 print 函数调用"
done
# 第三步:运行迁移工具
2to3 -w src/
# 第四步:AI 辅助修复
openclaw "运行以下测试,分析失败原因并修复:
$(python -m pytest tests/ --tb=short 2>&1)"
# 第五步:验证
python -m pytest tests/ -v5.3 案例三:添加测试覆盖率
#!/bin/bash
# 工作流:为现有项目添加测试
# 第一步:分析未覆盖的代码
coverage run -m pytest tests/
coverage report --show-missing > coverage_report.txt
# 第二步:逐个模块生成测试
grep -E "^[a-z]" coverage_report.txt | while read -r line; do
file=$(echo "$line" | awk '{print $1}')
missing=$(echo "$line" | awk '{print $NF}')
openclaw -f "$file" "为以下未覆盖的代码行生成测试用例:
行号:$missing
要求:使用 pytest,包含正常路径和异常路径" >> "tests/test_${file%.py}.py"
done
# 第三步:运行并验证
coverage run -m pytest tests/
coverage report
coverage html六、自动化管线搭建
6.1 Makefile 集成
# Makefile:将 OpenClaw 集成到构建流程中
.PHONY: review test docs refactor clean
# 代码审查
review:
openclaw --quiet "审查所有 Python 文件的代码质量" \
-f "src/*.py" -f "tests/*.py" > review.md
@echo "审查报告已生成: review.md"
# 生成文档
docs:
openclaw --quiet "为以下代码生成 API 文档" \
-f "src/*.py" --format markdown > docs/api.md
@echo "文档已生成: docs/api.md"
# 自动重构
refactor:
openclaw -f "src/*.py" "将所有使用 dict 传参的函数\n\
改为使用 dataclass 或 TypedDict"
@echo "重构完成"
# 生成测试
generate-tests:
openclaw -f "src/services/*.py" \
"为这些服务类生成 pytest 测试用例" \
> tests/test_services.py
@echo "测试已生成: tests/test_services.py"
# 完整管线
ci: review docs test
@echo "CI 管线完成"6.2 Git Hooks 集成
#!/bin/bash
# .git/hooks/pre-commit
# 提交前自动运行代码审查
echo "🔍 运行 AI 代码审查..."
# 获取本次变更的文件
changed_files=$(git diff --cached --name-only --diff-filter=ACM | grep '\.py$')
if [ -n "$changed_files" ]; then
# 对变更文件进行审查
for file in $changed_files; do
openclaw --quiet "审查以下变更的代码,指出潜在问题" \
-f "$file" >> /tmp/ai_review_$$
done
# 如果有严重问题,阻止提交
if grep -q "【严重】\|【高危】" /tmp/ai_review_$$; then
echo "❌ 发现严重问题,请修复后重新提交"
cat /tmp/ai_review_$$
rm /tmp/ai_review_$$
exit 1
fi
echo "✅ 代码审查通过"
rm /tmp/ai_review_$$
fi6.3 GitHub Actions 集成
# .github/workflows/ai-review.yml
name: AI Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
ai-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup OpenClaw
run: pip install openclaw
- name: Run AI Review
env:
OPENCLAW_API_KEY: ${{ secrets.OPENCLAW_API_KEY }}
run: |
changed_files=$(git diff --name-only HEAD~1 HEAD | grep '\.py$' || true)
if [ -n "$changed_files" ]; then
for file in $changed_files; do
openclaw --quiet "审查以下代码变更" \
-f "$file" >> review.md
done
fi
- name: Post Review Comment
if: always()
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review.md', 'utf8');
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: '## AI Code Review\n\n' + review
});6.4 定时任务集成
#!/bin/bash
# crontab 条目:每天凌晨 2 点运行代码健康检查
# 0 2 * * * /home/user/scripts/daily_health_check.sh
#!/bin/bash
# daily_health_check.sh
LOG_DIR="/var/log/ai-health-check"
mkdir -p "$LOG_DIR"
DATE=$(date +%Y%m%d)
echo "=== 每日代码健康检查 ===" >> "$LOG_DIR/health_$DATE.log"
# 检查代码质量
openclaw --quiet "分析 src/ 目录下的代码,输出质量报告:
1. 代码重复率
2. 函数复杂度
3. 未使用的导入
4. 命名规范问题" >> "$LOG_DIR/health_$DATE.log"
# 检查依赖安全
openclaw --quiet "检查 requirements.txt 中是否有已知安全漏洞的依赖" \
>> "$LOG_DIR/health_$DATE.log"
# 检查测试覆盖
openclaw --quiet "分析测试覆盖情况,列出未覆盖的关键函数" \
>> "$LOG_DIR/health_$DATE.log"
# 发送通知(如果有问题)
if grep -q "【高危】\|【严重】" "$LOG_DIR/health_$DATE.log"; then
curl -X POST "https://hooks.slack.com/services/xxx" \
-d '{"text":"代码健康检查发现问题,请查看日志"}'
fi七、模板库建设
7.1 指令模板文件
# ~/.config/openclaw/templates.yaml
# 可复用的指令模板
templates:
code_review:
description: "代码审查"
prompt: |
你是一位资深的 {language} 开发工程师。请审查以下代码:
审查维度:
1. 正确性
2. 安全性
3. 性能
4. 可维护性
5. 测试覆盖
输出格式:
[级别] [维度] 问题描述
位置:文件:行号
建议:修复方案
variables:
- language
add_tests:
description: "生成测试用例"
prompt: |
为以下 {language} 代码生成完整的测试用例:
要求:
1. 正常路径测试
2. 异常路径测试
3. 边界条件测试
4. 使用 {test_framework} 框架
variables:
- language
- test_framework
refactor:
description: "代码重构"
prompt: |
重构以下代码,目标:{goal}
约束:
1. 保持外部接口不变
2. 不改变业务逻辑
3. 添加必要的注释
4. 遵循 {style_guide} 规范
variables:
- goal
- style_guide
document:
description: "生成文档"
prompt: |
为以下代码生成 {doc_type} 文档:
包含:
1. 功能概述
2. API 说明(参数、返回值、异常)
3. 使用示例
4. 注意事项
variables:
- doc_type7.2 模板使用脚本
#!/bin/bash
# use-template.sh:使用预定义模板
TEMPLATE_DIR="$HOME/.config/openclaw/templates"
use_template() {
local template_name=$1
shift
local template_file="$TEMPLATE_DIR/${template_name}.txt"
if [ ! -f "$template_file" ]; then
echo "模板不存在: $template_file"
return 1
fi
# 读取模板并替换变量
local prompt=$(cat "$template_file")
# 替换 $FILE 为实际文件内容
if [ -n "$OPENCLAW_FILE" ]; then
prompt=$(echo "$prompt" | sed "s|\$FILE|$(cat "$OPENCLAW_FILE")|g")
fi
# 执行
openclaw "$prompt" "$@"
}
# 使用示例
export OPENCLAW_FILE="src/auth.py"
use_template code_review7.3 项目级模板
# ./openclaw-templates.yaml(项目级模板)
project: "my-api-project"
templates:
new_endpoint:
prompt: |
在 routes/ 目录下创建一个新的 API 端点:
- 路径: {path}
- 方法: {method}
- 功能: {description}
要求:
1. 遵循项目现有的路由风格
2. 使用项目统一的错误处理
3. 添加请求/响应验证
4. 编写对应的测试用例
new_model:
prompt: |
在 models/ 目录下创建一个新的数据库模型:
- 名称: {name}
- 字段: {fields}
- 关系: {relations}
要求:
1. 使用 SQLAlchemy 2.0 语法
2. 添加迁移脚本
3. 添加单元测试八、性能调优:Token 与速度
8.1 减少 Token 消耗
# 策略 1:精简输入文件
# ❌ 包含所有注释和文档
openclaw -f huge_file.py "分析代码结构"
# ✅ 只传递核心代码
grep -v '^\s*#' huge_file.py | grep -v '^\s*$' | \
openclaw "分析代码结构"
# 策略 2:分步请求,避免一次性处理太多
# ❌ 一次性做太多事
openclaw -f "src/*.py" "审查所有代码、生成文档、添加测试"
# ✅ 分步执行
openclaw -f "src/auth.py" "审查代码"
openclaw -f "src/auth.py" "生成文档"
openclaw -f "src/auth.py" "添加测试"8.2 提高响应速度
# 策略 1:选择更快的模型
openclaw --model gpt-4o-mini "快速任务" # 速度快
openclaw --model gpt-4o "复杂任务" # 质量好但慢
# 策略 2:设置合理的超时
openclaw --timeout 30 "简单任务"
openclaw --timeout 120 "复杂分析"
# 策略 3:利用缓存
# OpenClaw 的配置中启用缓存
# config.yaml:
# advanced:
# cache:
# enabled: true
# dir: ~/.cache/openclaw
# max_size: 500
# 策略 4:批量处理时使用并行
parallel --jobs 4 openclaw --quiet ::: \
"审查 auth.py" \
"审查 routes.py" \
"审查 models.py" \
"审查 config.py"8.3 Token 消耗估算
┌───────────────────────────────────────────────────────────┐
│ Token 消耗估算表 │
├──────────────────────┬───────────────┬────────────────────┤
│ 操作 │ 输入 Token │ 输出 Token │
├──────────────────────┼───────────────┼────────────────────┤
│ 解释一段代码 │ ~500-2,000 │ ~500-1,000 │
│ 生成一个函数 │ ~200-500 │ ~500-2,000 │
│ 审查一个文件 │ ~2,000-8,000 │ ~1,000-3,000 │
│ 重构一个模块 │ ~5,000-15K │ ~3,000-10K │
│ 生成完整文档 │ ~3,000-10K │ ~2,000-8,000 │
│ 端到端搭建 API │ ~10K-30K │ ~5,000-20K │
└──────────────────────┴───────────────┴────────────────────┘九、常见陷阱与规避
9.1 指令过于模糊
# ❌ 模糊指令
openclaw "优化这段代码"
# AI 可能会做你不需要的事情
# ✅ 具体指令
openclaw -f main.py "将 time complexity 从 O(n²) 优化到 O(n log n),
使用排序 + 双指针方案,不要改变函数签名"9.2 上下文溢出
# ❌ 一次性加载太多文件
openclaw -f "src/**/*.py" "分析整个项目架构"
# 可能超出上下文窗口
# ✅ 分层次分析
openclaw "列出 src/ 目录的顶层结构"
openclaw -f "src/api/" "分析 api 模块的架构"
openclaw -f "src/services/" "分析 services 模块的架构"9.3 忽略验证步骤
# ❌ AI 生成代码后直接使用
openclaw "生成数据库迁移脚本" > migration.py
python manage.py migrate # 可能失败!
# ✅ 生成后验证
openclaw "生成数据库迁移脚本" > migration.py
# 先检查语法
python -m py_compile migration.py
# 再 dry-run
python manage.py migrate --plan
# 确认无误后执行
python manage.py migrate9.4 忘记约束条件
# ❌ 没有约束
openclaw "重写这个函数"
# ✅ 明确约束
openclaw "重写这个函数,要求:
- 保持完全相同的输入/输出行为
- 不要引入新的依赖
- 性能不能比原来差
- 添加类型注解
- 保持相同的错误处理方式"9.5 不保存中间结果
# ❌ 不在工作流中保存中间结果
openclaw "分析代码" | openclaw "根据分析结果重构"
# 如果第二步失败,一切重来
# ✅ 保存中间结果
openclaw "分析代码" > analysis.md
# 检查 analysis.md
openclaw -f analysis.md "根据分析结果重构"
# 即使第二步失败,分析结果还在总结
本篇我们深入探讨了 OpenClaw 的提示词设计与工作流搭建:
- ✅ CRAFT 框架:Context → Role → Action → Format → Target 的系统化提示词构建方法
- ✅ 结构化模板:代码生成、审查、重构的标准模板
- ✅ 上下文管理:分块处理、压缩、会话管理策略
- ✅ 工作流模式:线性流水线、并行处理、迭代优化
- ✅ 自动化集成:Makefile、Git Hooks、CI/CD、定时任务
- ✅ 模板库建设:可复用的指令模板管理
- ✅ 性能调优:Token 控制、速度优化、消耗估算
- ✅ 常见陷阱:模糊指令、上下文溢出、忽略验证
关键要点:
- 好的提示词 = 明确的约束 + 具体的目标 + 清晰的格式
- 复杂任务必须拆解为原子步骤
- 每个步骤都应该可验证、可回溯
- 模板是提升效率的最佳投资
- 永远不要跳过验证步骤
下篇预告
在下一篇 《Git 集成》 中,我们将深入 OpenClaw 与 Git 的深度融合:
- 🌿 工作树与版本管理 —— 安全地让 AI 操作你的代码仓库
- 🌳 分支管理 —— AI 辅助的分支创建、合并、冲突解决
- 📝 Commit 生成 —— 自动生成符合 Conventional Commits 规范的提交信息
- 🔍 Diff 分析 —— AI 辅助的代码变更审查
- 📊 PR 描述生成 —— 从提交历史自动生成 Pull Request 描述
无论你是想更安全地让 AI 操作代码仓库,还是想自动化 Git 工作流,下一篇都将是你的必备指南。