MEMORY.md
... ...
@@ -95,13 +95,36 @@
95 95
```
96 96
97 97
### 相关 Skill
98
-- `~/.openclaw/skills/trip-planning/SKILL.md` - 旅行规划技能(v2.2 已更新表格规范)
98
+- `~/.openclaw/skills/trip-planning/SKILL.md` - 旅行规划技能(v2.3 已更新省份页面模板)
99 99
- `~/.openclaw/skills/wiki-format/SKILL.md` - Wiki 格式规范(v1.0 新建)
100
+- `~/.openclaw/skills/wiki-province-template/SKILL.md` - 省份页面模板(v1.0 新建)⭐ **重点**
100 101
101 102
### 修复记录
102 103
- 2026-03-08 10:45 - 修复冀北线旅行规划(v1.1 → v1.2)
103 104
- 2026-03-08 10:52 - 修复冀东线/冀中线旅行规划(v1.1)
104 105
- 2026-03-08 11:02 - 更新 trip-planning skill 至 v2.2,创建 wiki-format skill v1.0
106
+- 2026-03-08 12:35 - 创建 wiki-province-template skill v1.0,更新 trip-planning 至 v2.3
107
+
108
+### 省份页面标准模板(2026-03-08 固化)⭐ 重点
109
+
110
+**模板位置**:`~/.openclaw/skills/wiki-province-template/SKILL.md`
111
+
112
+**核心结构**:
113
+1. 面包屑导航(HTML 绝对路径)
114
+2. 分城市统计表(按必去景点总量降序)
115
+3. 专题链接(国保 + 博物馆)
116
+4. 已规划行程表格(所有线路汇总)
117
+5. 总览统计(线路数、景点数、天数)
118
+6. 页面更新日志(时间倒序,精确到分钟)
119
+
120
+**参考范例**:
121
+- ✅ `河南.md` - 标准格式
122
+- ✅ `河北.md` - 2026-03-08 优化后格式
123
+
124
+**使用要求**:
125
+- ⚠️ **所有省份页面必须使用此模板**
126
+- ⚠️ **创建新省份页面时先读取模板**
127
+- ⚠️ **修改现有页面时对照模板检查**
105 128
106 129
---
107 130
memory/memory_compression.log
... ...
@@ -0,0 +1,7 @@
1
+[2026-03-08 11:48:01] ========== Travel Agent 记忆压缩开始 ==========
2
+[2026-03-08 11:48:01] ✅ 找到昨天的日志: /root/.openclaw/workspace/travel/memory/2026-03-07.md
3
+[2026-03-08 11:48:01] ℹ️ 昨天没有标记为重要的内容
4
+[2026-03-08 11:48:01] 🧹 清理旧日志...
5
+[2026-03-08 11:48:01] ✅ 旧日志清理完成
6
+[2026-03-08 11:48:01] ========== Travel Agent 记忆压缩完成 ==========
7
+[2026-03-08 11:48:01]
scripts/memory_compression.sh
... ...
@@ -0,0 +1,93 @@
1
+#!/bin/bash
2
+# Travel Agent 记忆压缩脚本 - 每日凌晨执行
3
+# 功能:将每日日志中的重要信息压缩到长期记忆
4
+
5
+set -e
6
+
7
+# 配置
8
+WORKSPACE="/root/.openclaw/workspace/travel"
9
+MEMORY_DIR="$WORKSPACE/memory"
10
+LONG_TERM_MEMORY="$WORKSPACE/MEMORY.md"
11
+LOG_FILE="$MEMORY_DIR/memory_compression.log"
12
+
13
+# 日期
14
+TODAY=$(date +%Y-%m-%d)
15
+YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
16
+YESTERDAY_LOG="$MEMORY_DIR/$YESTERDAY.md"
17
+
18
+# 日志函数
19
+log() {
20
+ echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE"
21
+}
22
+
23
+log "========== Travel Agent 记忆压缩开始 =========="
24
+
25
+# 1. 检查昨天的日志是否存在
26
+if [ ! -f "$YESTERDAY_LOG" ]; then
27
+ log "⚠️ 昨天的日志文件不存在: $YESTERDAY_LOG"
28
+ log "跳过记忆压缩"
29
+ exit 0
30
+fi
31
+
32
+log "✅ 找到昨天的日志: $YESTERDAY_LOG"
33
+
34
+# 2. 提取重要内容
35
+IMPORTANT_CONTENT=$(grep -A 50 "^## 重要" "$YESTERDAY_LOG" 2>/dev/null || echo "")
36
+
37
+if [ -z "$IMPORTANT_CONTENT" ]; then
38
+ log "ℹ️ 昨天没有标记为重要的内容"
39
+else
40
+ log "✅ 找到重要内容,准备压缩"
41
+fi
42
+
43
+# 3. 提取经验教训
44
+LESSONS=$(grep -A 30 "^## 经验教训" "$YESTERDAY_LOG" 2>/dev/null || echo "")
45
+
46
+if [ -n "$LESSONS" ]; then
47
+ log "✅ 找到经验教训"
48
+fi
49
+
50
+# 4. 更新长期记忆
51
+if [ -n "$IMPORTANT_CONTENT" ] || [ -n "$LESSONS" ]; then
52
+ log "📝 更新长期记忆..."
53
+
54
+ # 备份
55
+ if [ -f "$LONG_TERM_MEMORY" ]; then
56
+ cp "$LONG_TERM_MEMORY" "$LONG_TERM_MEMORY.bak"
57
+ fi
58
+
59
+ # 更新时间戳
60
+ if [ -f "$LONG_TERM_MEMORY" ]; then
61
+ CURRENT_TIME=$(date '+%Y-%m-%d %H:%M')
62
+ sed -i "s/最后压缩:.*/最后压缩:$CURRENT_TIME/" "$LONG_TERM_MEMORY" 2>/dev/null || true
63
+ log "✅ 时间戳已更新: $CURRENT_TIME"
64
+
65
+ # 添加每日摘要
66
+ echo "" >> "$LONG_TERM_MEMORY"
67
+ echo "---" >> "$LONG_TERM_MEMORY"
68
+ echo "" >> "$LONG_TERM_MEMORY"
69
+ echo "## 📅 $YESTERDAY 摘要" >> "$LONG_TERM_MEMORY"
70
+ echo "" >> "$LONG_TERM_MEMORY"
71
+
72
+ if [ -n "$IMPORTANT_CONTENT" ]; then
73
+ echo "$IMPORTANT_CONTENT" >> "$LONG_TERM_MEMORY"
74
+ echo "" >> "$LONG_TERM_MEMORY"
75
+ fi
76
+
77
+ if [ -n "$LESSONS" ]; then
78
+ echo "$LESSONS" >> "$LONG_TERM_MEMORY"
79
+ echo "" >> "$LONG_TERM_MEMORY"
80
+ fi
81
+
82
+ log "✅ 长期记忆已更新"
83
+ fi
84
+fi
85
+
86
+# 5. 清理超过7天的旧日志
87
+log "🧹 清理旧日志..."
88
+find "$MEMORY_DIR" -name "*.md" -mtime +7 -type f ! -name "MEMORY.md" -exec rm {} \; 2>/dev/null || true
89
+log "✅ 旧日志清理完成"
90
+
91
+# 6. 完成
92
+log "========== Travel Agent 记忆压缩完成 =========="
93
+log ""
wiki
... ...
@@ -1 +1 @@
1
-Subproject commit 927273ba8611410c8e156b5fab49d38c78ce0b38
1
+Subproject commit 0274dffa02ddb584da4195a66bf0c3fe50611134