TOOLS.md - Travel Agent 工具配置

共享配置/root/.openclaw/workspace/TOOLS.md
爬取规则/root/.openclaw/workspace/CRAWLING_RULES.md


🔑 API 配置

Tavily API

  • 环境变量TAVILY_API_KEY
  • 配置位置~/.bashrc(cron 需显式 source)
  • 用途:实时搜索(国保开放情况核实)

小红书 MCP

  • 状态:⚠️ Cookie 过期(需用户重新登录)
  • 用途:国保单位开放情况核实

📊 数据源可靠性

来源 可靠性 用途
政府官网 ⭐⭐⭐ 国保名录
国家文物局 PDF ⭐⭐ 国保名录
小红书 ⭐⭐⭐ 开放情况核实
Tavily 搜索 ⭐⭐ 开放情况核实(备选)

🤖 核心技能清单

进化报告闭环

  • evolution-report-validator - 验收昨日计划
  • task-execution-tracker - 追踪超期任务
  • data-anomaly-escalator - 数据异常升级

自动任务监控

  • exhibition-crawler - 北京展览爬取
  • feishu-sync-direct - 飞书直接同步

旅行规划

  • trip-planning - 三套方案生成
  • wiki-province-template - 省份页面模板
  • 12306-train-query - 高铁车次查询

📍 文件位置

北京展览数据目录规范 ⭐(2026-04-11 修复)

文件 路径 说明
爬虫输出 beijing-exhibitions/scripts/data/beijing_exhibitions_YYYY-MM-DD.md ✅ 正确路径
飞书同步读取 beijing-exhibitions/scripts/data/ ✅ 已修复(原 data/ 错误)
历史遗留目录 beijing-exhibitions/data/ ⚠️ 空目录,待清理
通知标记 beijing-exhibitions/notification_pending.json ✅ 正常

教训:04-07 至 04-10 因路径不匹配(爬虫写 scripts/data/,飞书读 data/)导致 4 天数据未同步

其他文件

文件 路径
任务清单 task.md
记忆日志 memory/YYYY-MM-DD.md

📋 Cron 配置

# 每日 00:00 记忆初始化(确保记忆文件存在)⭐
0 0 * * * cd /root/.openclaw/workspace/travel && ./scripts/memory_daily_init.sh >> memory/daily_init.log 2>&1

# 每日 22:55 记忆初始化检查(兜底保障)
55 22 * * * cd /root/.openclaw/workspace/travel && ./scripts/memory_daily_init.sh >> memory/daily_init.log 2>&1

# 每日 9:00 北京展览爬取
0 9 * * * source ~/.bashrc && /root/.openclaw/workspace/travel/beijing-exhibitions/scripts/daily_cron.sh

# 每日 23:00 每日记忆总结
0 23 * * * cd /root/.openclaw/workspace/travel && ./scripts/memory_daily_summary.sh >> memory/daily_summary.log 2>&1

# 每日 23:30 进化报告
30 23 * * * /root/.openclaw/workspace/scripts/daily_evolution.sh

⚠️ 重要:关键任务行首不能有 #(注释符号),否则任务不会执行!


🔍 Cron 配置检查

检查命令

crontab -l | grep -E "(memory|beijing|crawl)"

检查项

  • memory_daily_init.sh 未被注释(行首无 #
  • daily_cron.sh 未被注释
  • memory_daily_summary.sh 未被注释

故障排查

  1. 检查 cron 配置:crontab -l
  2. 取消注释:crontab -e,移除行首的 #
  3. 验证服务:systemctl status cron
  4. 手动执行测试:./scripts/memory_daily_init.sh
  5. 检查日志:cat memory/daily_init.log

教训:2026-04-08 至 04-17,memory_daily_init.sh 的 cron 配置被注释,导致连续 10 天记忆文件未创建

修复方案

  • 取消注释 cron 配置行
  • 手动执行一次验证脚本功能
  • 补创建缺失的记忆文件(04-08/09/11/12/13/14/15/16/17)
  • 添加 cron 配置健康检查(每日进化报告流程自动执行)

状态:✅ 已修复(2026-04-17 19:26)


✅ Tavily API 状态(2026-05-08 更新)

状态:✅ 已恢复,cron 自动爬取正常

时间线

  • 04-06:最后一次正常执行
  • 04-07~05-07:连续 31 天失败(根因:set-e + source bashrc → 脚本静默退出)
  • 05-07:找到根因并修复
  • 05-08:cron 自动执行成功,13 个展览,飞书同步成功

根因set -e + source ~/.bashrc 组合,/etc/profile.d/colorxzgrep.sh 返回非零导致脚本退出 修复:将 source ~/.bashrc 移到 set -e 之前

API 错误码速查(2026-04-25 新增)

HTTP 状态码 含义 修复建议
401/403 Key 未配置或无效 检查环境变量
429 限流 增加请求间隔
432 配额耗尽 升级套餐或更换 API

Cron 脚本安全规范(2026-05-07 新增)

规则 说明
source 在 set -e 之前 source ~/.bashrc 必须在 set -e 之前执行
避免非交互 source cron 脚本中尽量只加载必要环境变量
第一行输出标识 脚本第一行有效输出必须是标识性日志

根因/etc/profile.d/colorxzgrep.sh/usr/libexec/grepconf.sh -c 返回 exit 1,在 set -e 模式下导致整个脚本静默退出


🆕 提议新技能

技能 1:Wiki 三级校准器 (wiki-calibrator)

功能

  • 批量检查所有省份页面格式一致性
  • 验证 Home.md 统计表与省份页面数据对齐
  • 自动统一格式(表格、面包屑、链接结构)

状态:提议中(04-29 首次完成手动校准,建议脚本化)

技能 2:Git 提交完整性检查器 (git-commit-checker)

功能

  • 每次进化报告末尾自动检查 git status
  • 检测到 unstaged 变更时自动执行提交
  • 记录提交状态到当日记忆文件

状态:提议中(反复出现未提交变更问题)


🔧 记忆初始化脚本

路径scripts/memory_daily_init.sh

功能

  • 创建 memory/YYYY-MM-DD.md 模板文件
  • 确保每日记忆总结有写入目标
  • 记录执行日志到 memory/daily_init.log

故障排查

  1. 检查脚本是否存在:ls -la scripts/memory_daily_init.sh
  2. 检查脚本权限:chmod +x scripts/memory_daily_init.sh
  3. 检查 cron 配置:crontab -l
  4. 手动执行验证:./scripts/memory_daily_init.sh
  5. 检查日志:cat memory/daily_init.log

*最后更新:2026-05-08(daily_cron.sh 修复验证通过 MEMORY.md 第三次清理)*