💡 前人经验:这些是社区总结的最佳实践,帮你避开常见的坑
问题:
正确做法:
时间节省:至少节省2-3小时的试错时间
问题:
# ❌ 错误:用GPT-4做简单任务
openclaw config set models.default "gpt-4"
# 结果:月费用500+元
正确做法:
# ✅ 正确:根据任务选择模型
# 简单任务用DeepSeek
openclaw config set models.default "deepseek-chat"
# 复杂任务用GPT-4
openclaw config set models.complex "gpt-4"
# 结果:月费用30-50元,节省90%
成本对比:
| 任务类型 | 错误选择 | 正确选择 | 成本差异 |
|---|---|---|---|
| 文件搜索 | GPT-4 ($0.03/1K) | DeepSeek ($0.001/1K) | 30倍 |
| 简单问答 | GPT-4 | DeepSeek | 30倍 |
| 代码生成 | GPT-4 | DeepSeek | 30倍 |
| 复杂推理 | GPT-4 | GPT-4 | 相同 |
问题:
正确做法:
# ✅ 配置专门的工作目录
openclaw config set workspace.path "~/Documents/OpenClaw"
# ✅ 限制访问范围
openclaw config set files.searchPaths '["~/Documents/OpenClaw", "~/Desktop"]'
# ✅ 排除敏感目录
openclaw config set files.excludePaths '[
"~/.ssh",
"~/Documents/Private",
"~/Documents/Finance"
]'
问题:
# ❌ 错误:在配置文件中明文存储
{
"models": {
"providers": {
"openai": {
"apiKey": "sk-1234567890abcdef" // 明文!
}
}
}
}
正确做法:
# ✅ 使用环境变量
export OPENAI_API_KEY="sk-xxx"
export DEEPSEEK_API_KEY="sk-xxx"
# ✅ 或使用密钥管理工具
openclaw config set models.providers.openai.apiKey --from-env OPENAI_API_KEY
# ✅ 设置文件权限
chmod 600 ~/.openclaw/config.json
问题:
正确做法:
# ✅ 定期清理缓存(每周一次)
openclaw cache clear --history
openclaw cache clear --index
# ✅ 配置自动清理
openclaw config set cache.autoClean true
openclaw config set cache.maxAge 7 # 7天
# ✅ 限制缓存大小
openclaw config set cache.maxSize 1000 # MB
问题:
正确做法:
# ✅ 定期检查更新(每月一次)
openclaw update check
# ✅ 查看更新日志
openclaw changelog
# ✅ 更新到最新版本
openclaw update
# ✅ 订阅更新通知
# 关注GitHub Release: https://github.com/openclaw/openclaw/releases
问题:
正确做法:
# ✅ 定期备份配置
# 方案1:手动备份
cp -r ~/.openclaw ~/.openclaw.backup.$(date +%Y%m%d)
# 方案2:使用Git管理
cd ~/.openclaw
git init
git add .
git commit -m "backup config"
# 方案3:自动备份脚本
cat > ~/backup-openclaw.sh << 'EOF'
#!/bin/bash
BACKUP_DIR=~/openclaw-backups
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/openclaw-$(date +%Y%m%d-%H%M%S).tar.gz ~/.openclaw
# 保留最近7天的备份
find $BACKUP_DIR -name "openclaw-*.tar.gz" -mtime +7 -delete
EOF
chmod +x ~/backup-openclaw.sh
# 添加到crontab(每天备份)
# 0 2 * * * ~/backup-openclaw.sh
问题:
正确做法:
# ✅ 使用测试环境
# 方案1:创建测试配置
cp -r ~/.openclaw ~/.openclaw-test
export OPENCLAW_CONFIG_DIR=~/.openclaw-test
# 方案2:使用Docker
docker run -it openclaw/openclaw:latest
# 方案3:使用不同端口
openclaw gateway run --port 18790 --config ~/.openclaw-test/config.json
问题:
正确做法:
# ✅ 启用使用量监控
openclaw config set monitoring.enabled true
# ✅ 设置预算警告
openclaw config set monitoring.budget.daily 10 # 每天10元
openclaw config set monitoring.budget.monthly 300 # 每月300元
# ✅ 查看使用统计
openclaw stats usage --daily
openclaw stats usage --monthly
# ✅ 设置通知
openclaw config set monitoring.alerts.email "your@email.com"
openclaw config set monitoring.alerts.threshold 0.8 # 80%时警告
问题:
正确做法:
# ✅ 先搜索是否有现成的Skills
openclaw skills search "file search"
# ✅ 安装必备Skills
clawhub install @openclaw/skill-file-search
clawhub install @openclaw/skill-web-search
clawhub install @openclaw/skill-calendar
# ✅ 定期浏览ClawHub
# 访问:https://clawhub.ai
❌ 错误选择:GPT-4(贵且慢)
✅ 推荐选择:
配置示例:
{
"models": {
"default": "deepseek-chat",
"providers": {
"deepseek": {
"apiKey": "sk-xxx",
"models": {
"deepseek-chat": {
"maxTokens": 4000,
"temperature": 0.7
}
}
}
}
}
}
❌ 错误选择:通用对话模型
✅ 推荐选择:
配置示例:
{
"models": {
"code": "deepseek-coder",
"providers": {
"deepseek": {
"models": {
"deepseek-coder": {
"maxTokens": 8000,
"temperature": 0.2 // 代码生成用低温度
}
}
}
}
}
}
❌ 错误选择:短上下文模型
✅ 推荐选择:
配置示例:
{
"models": {
"longContext": "kimi",
"providers": {
"moonshot": {
"apiKey": "sk-xxx",
"models": {
"kimi": {
"maxTokens": 200000
}
}
}
}
}
}
❌ 错误选择:纯文本模型
✅ 推荐选择:
配置示例:
{
"models": {
"vision": "gpt-4-vision",
"providers": {
"openai": {
"models": {
"gpt-4-vision": {
"maxTokens": 4000
}
}
}
}
}
}
原则:简单任务用便宜模型,复杂任务用贵模型
实施方案:
{
"models": {
"routing": {
"enabled": true,
"rules": [
{
"condition": "tokens < 500",
"model": "deepseek-chat" // 简单任务
},
{
"condition": "tokens >= 500 && tokens < 2000",
"model": "gpt-3.5-turbo" // 中等任务
},
{
"condition": "tokens >= 2000",
"model": "gpt-4" // 复杂任务
}
]
}
}
}
成本节省:60-80%
原则:相同问题不重复调用API
实施方案:
{
"cache": {
"enabled": true,
"ttl": 3600, // 1小时
"maxSize": 1000, // 最多缓存1000条
"strategy": "lru" // 最近最少使用
}
}
成本节省:30-50%
原则:合并多个小请求为一个大请求
❌ 错误做法:
// 发送10次请求
for (let i = 0; i < 10; i++) {
await openclaw.ask(`处理文件${i}`);
}
// 成本:10次API调用
✅ 正确做法:
// 合并为1次请求
const files = Array.from({length: 10}, (_, i) => `文件${i}`);
await openclaw.ask(`批量处理这些文件:${files.join(', ')}`);
// 成本:1次API调用
成本节省:90%
实施方案:
# 设置每日预算
openclaw config set budget.daily 10 # 10元/天
# 设置每月预算
openclaw config set budget.monthly 300 # 300元/月
# 超出预算时的行为
openclaw config set budget.onExceed "notify" # 通知
# 或
openclaw config set budget.onExceed "stop" # 停止服务
适用场景:重度使用(每月>1000次调用)
成本对比:
| 方案 | 月调用次数 | 按次付费 | 独享账号 | 节省 |
|---|---|---|---|---|
| 轻度使用 | 100 | ¥30 | ¥200 | -170 |
| 中度使用 | 500 | ¥150 | ¥200 | -50 |
| 重度使用 | 2000 | ¥600 | ¥200 | +400 |
| 超重度 | 5000 | ¥1500 | ¥200 | +1300 |
结论:月调用>1000次时,独享账号更划算
必须做到:
# ✅ 使用环境变量
export OPENAI_API_KEY="sk-xxx"
# ✅ 设置文件权限
chmod 600 ~/.openclaw/config.json
# ✅ 不要提交到Git
echo ".openclaw/config.json" >> .gitignore
# ✅ 定期轮换密钥
# 每3个月更换一次API密钥
绝对不要:
# ❌ 明文存储在代码中
const apiKey = "sk-1234567890abcdef";
# ❌ 提交到公开仓库
git add config.json
git push
# ❌ 分享配置文件
# 不要把包含API密钥的配置文件发给别人
敏感数据处理:
{
"privacy": {
"enabled": true,
"rules": [
{
"type": "phone",
"action": "mask", // 脱敏
"pattern": "\\d{11}"
},
{
"type": "email",
"action": "mask"
},
{
"type": "idcard",
"action": "block" // 阻止发送
}
]
}
}
文件访问控制:
{
"files": {
"allowPaths": [
"~/Documents/OpenClaw",
"~/Desktop"
],
"denyPaths": [
"~/.ssh",
"~/Documents/Private",
"~/Documents/Finance",
"~/Documents/Medical"
]
}
}
使用HTTPS:
{
"gateway": {
"ssl": {
"enabled": true,
"cert": "/path/to/cert.pem",
"key": "/path/to/key.pem"
}
}
}
IP白名单:
{
"gateway": {
"allowIPs": [
"127.0.0.1",
"192.168.1.0/24"
]
}
}
启用审计:
{
"audit": {
"enabled": true,
"logLevel": "info",
"logFile": "~/.openclaw/logs/audit.log",
"retention": 90 // 保留90天
}
}
定期检查:
# 查看最近的操作
tail -n 100 ~/.openclaw/logs/audit.log
# 搜索敏感操作
grep "delete" ~/.openclaw/logs/audit.log
grep "upload" ~/.openclaw/logs/audit.log
配置:
{
"models": {
"streaming": true,
"streamingDelay": 50 // ms
}
}
效果:
配置:
{
"cache": {
"enabled": true,
"type": "redis", // 或 "memory"
"redis": {
"host": "localhost",
"port": 6379
}
}
}
效果:
配置:
{
"files": {
"index": {
"enabled": true,
"incremental": true, // 增量索引
"schedule": "0 2 * * *", // 每天凌晨2点
"excludePatterns": [
"node_modules",
".git",
"*.log"
]
}
}
}
效果:
适用场景:云端部署
配置:
{
"cdn": {
"enabled": true,
"provider": "cloudflare",
"domain": "openclaw.yourdomain.com"
}
}
效果:
❌ 错误做法:
# 安装所有Skills
clawhub install --all
✅ 正确做法:
# 只安装需要的Skills
clawhub install @openclaw/skill-file-search
clawhub install @openclaw/skill-web-search
clawhub install @openclaw/skill-calendar
原因:
配置自动更新:
{
"skills": {
"autoUpdate": true,
"updateSchedule": "0 3 * * 0" // 每周日凌晨3点
}
}
手动更新:
# 检查更新
openclaw skills outdated
# 更新所有Skills
openclaw skills update --all
# 更新特定Skills
openclaw skills update @openclaw/skill-file-search
配置:
{
"skills": {
"priority": [
"@openclaw/skill-file-search", // 高优先级
"@openclaw/skill-web-search",
"@openclaw/skill-calendar" // 低优先级
]
}
}
效果:
配置多个Agent:
{
"agents": {
"work": {
"model": "gpt-4",
"workspace": "~/Documents/Work",
"channels": ["feishu"]
},
"personal": {
"model": "deepseek-chat",
"workspace": "~/Documents/Personal",
"channels": ["telegram"]
}
}
}
避免信息过载:
{
"channels": {
"feishu": {
"filters": {
"ignoreGroups": ["闲聊群", "通知群"],
"onlyMentions": true, // 只响应@消息
"keywords": ["openclaw", "帮助"]
}
}
}
}
配置:
{
"schedule": {
"workHours": {
"enabled": true,
"timezone": "Asia/Shanghai",
"hours": {
"monday": ["09:00-18:00"],
"tuesday": ["09:00-18:00"],
"wednesday": ["09:00-18:00"],
"thursday": ["09:00-18:00"],
"friday": ["09:00-18:00"]
}
},
"outOfHoursMessage": "我现在不在工作时间,紧急事项请发邮件"
}
}
原则:确保重复执行不会产生副作用
❌ 错误示例:
// 每次执行都创建新文件
await createFile('report.txt', content);
✅ 正确示例:
// 检查文件是否存在
if (!await fileExists('report.txt')) {
await createFile('report.txt', content);
} else {
await updateFile('report.txt', content);
}
配置:
{
"automation": {
"errorHandling": {
"retry": {
"enabled": true,
"maxAttempts": 3,
"backoff": "exponential"
},
"notification": {
"enabled": true,
"channels": ["email", "feishu"]
}
}
}
}
配置:
{
"automation": {
"logging": {
"enabled": true,
"level": "info",
"file": "~/.openclaw/logs/automation.log",
"rotation": {
"maxSize": "10M",
"maxFiles": 10
}
}
}
}
最后更新:2026年2月14日