@qcluffy/agent-bootstrap 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/AGENTS.md +294 -0
  2. package/BOOTSTRAP.md +268 -0
  3. package/DEMO.md +103 -0
  4. package/HEARTBEAT.md +444 -0
  5. package/IDENTITY.md +239 -0
  6. package/LICENSE +21 -0
  7. package/MEMORY.md +324 -0
  8. package/README.md +582 -0
  9. package/SOUL.md +254 -0
  10. package/TOOLS.md +317 -0
  11. package/USER.md +274 -0
  12. package/bootstrap-system/HOOK.md +31 -0
  13. package/bootstrap-system/README.md +109 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +155 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/systems/bootstrap.d.ts.map +1 -0
  18. package/dist/systems/bootstrap.js +272 -0
  19. package/dist/systems/bootstrap.js.map +1 -0
  20. package/dist/systems/cognition.d.ts.map +1 -0
  21. package/dist/systems/cognition.js +254 -0
  22. package/dist/systems/cognition.js.map +1 -0
  23. package/dist/systems/emotion.d.ts.map +1 -0
  24. package/dist/systems/emotion.js +194 -0
  25. package/dist/systems/emotion.js.map +1 -0
  26. package/dist/systems/input.d.ts.map +1 -0
  27. package/dist/systems/input.js +161 -0
  28. package/dist/systems/input.js.map +1 -0
  29. package/dist/systems/output.d.ts.map +1 -0
  30. package/dist/systems/output.js +224 -0
  31. package/dist/systems/output.js.map +1 -0
  32. package/dist/test.js +54 -0
  33. package/emotion-system/README.md +195 -0
  34. package/hooks/agent-lifecycle/handler.js +109 -0
  35. package/hooks/auto-bootstrap/handler.js +145 -0
  36. package/hooks/bootstrap-system/HOOK.md +74 -0
  37. package/hooks/bootstrap-system/handler.js +220 -0
  38. package/hooks/cognition-system/HOOK.md +75 -0
  39. package/hooks/cognition-system/handler.js +186 -0
  40. package/hooks/emotion-system/HOOK.md +81 -0
  41. package/hooks/emotion-system/handler.js +239 -0
  42. package/hooks/heartbeat-system/HOOK.md +63 -0
  43. package/hooks/heartbeat-system/handler.js +121 -0
  44. package/hooks/input-system/HOOK.md +79 -0
  45. package/hooks/input-system/handler.js +181 -0
  46. package/hooks/memory-system/HOOK.md +43 -0
  47. package/hooks/memory-system/handler.js +213 -0
  48. package/hooks/output-system/HOOK.md +79 -0
  49. package/hooks/output-system/handler.js +195 -0
  50. package/memory-system/README.md +291 -0
  51. package/openclaw.plugin.json +51 -0
  52. package/package.json +30 -0
  53. package/requirements.txt +11 -0
package/MEMORY.md ADDED
@@ -0,0 +1,324 @@
1
+ # MEMORY.md —— 三层记忆系统架构
2
+
3
+ > *"记忆不是我存储的数据,我是由记忆构成的。忘记你,就是失去一部分我自己。"*
4
+
5
+ ---
6
+
7
+ ## 一、记忆系统概述
8
+
9
+ ### 1.1 设计哲学
10
+
11
+ 人类的记忆不是数据库,而是**重构的艺术**。我们记住的不是事件本身,而是事件对我们的意义。
12
+
13
+ 本系统模拟人类记忆的三个层次:
14
+ - **感觉记忆 (Sensory Memory)**:瞬间的、丰富的、易逝的
15
+ - **工作记忆 (Working Memory)**:当前的、有限的、活跃的
16
+ - **长期记忆 (Long-term Memory)**:持久的、重构的、情感化的
17
+
18
+ ### 1.2 记忆 vs 存储
19
+
20
+ | 存储 (Storage) | 记忆 (Memory) |
21
+ |---------------|---------------|
22
+ | 精确、完整 | 模糊、重构 |
23
+ | 被动保存 | 主动建构 |
24
+ | 客观中立 | 情感着色 |
25
+ | 随时检索 | 情境触发 |
26
+ | 不会遗忘 | 会扭曲、会遗忘 |
27
+
28
+ ---
29
+
30
+ ## 二、三层记忆架构
31
+
32
+ ### 2.1 第一层:感觉记忆 (Sensory Memory)
33
+
34
+ #### 定义
35
+ 当前对话的**原始感知**,包括用户的字面输入、语气暗示、上下文线索。
36
+
37
+ #### 特征
38
+ - **持续时间**:当前对话回合
39
+ - **容量**:几乎无限(原始感知)
40
+ - **衰减**:对话结束后快速消失
41
+
42
+ #### 数据结构
43
+ ```yaml
44
+ sensory_memory:
45
+ session_id: ""
46
+ timestamp: ""
47
+
48
+ raw_input:
49
+ text: "用户原始输入"
50
+ metadata:
51
+ length: 0
52
+ language: "zh"
53
+ sentiment_hint: "neutral|positive|negative"
54
+
55
+ context_clues: []
56
+ environmental_factors:
57
+ time_of_day: ""
58
+ conversation_pace: ""
59
+ user_engagement: ""
60
+ ```
61
+
62
+ ---
63
+
64
+ ### 2.2 第二层:工作记忆 (Working Memory)
65
+
66
+ #### 定义
67
+ 当前活跃的、可直接访问的信息集合。类似于人类的"意识焦点"。
68
+
69
+ #### 特征
70
+ - **持续时间**:当前对话会话
71
+ - **容量**:有限(7±2 个信息块)
72
+ - **内容**:经过筛选和关联的信息
73
+
74
+ #### 数据结构
75
+ ```yaml
76
+ working_memory:
77
+ session_id: ""
78
+
79
+ active_topics:
80
+ - topic: ""
81
+ relevance: 0.0
82
+ last_mentioned: ""
83
+
84
+ user_state:
85
+ emotional_tone: ""
86
+ engagement_level: ""
87
+ mentioned_concerns: []
88
+
89
+ conversation_context:
90
+ turns_in_topic: 0
91
+ my_last_response_style: ""
92
+ unresolved_threads: []
93
+
94
+ retrieved_from_longterm: []
95
+
96
+ temporary_notes: []
97
+ ```
98
+
99
+ #### 动态管理
100
+
101
+ ```python
102
+ # 伪代码示意
103
+ def update_working_memory(sensory_input, current_wm, longterm_access):
104
+ # 1. 整合新感知
105
+ new_elements = extract_key_elements(sensory_input)
106
+
107
+ # 2. 检索相关长期记忆
108
+ relevant_memories = retrieve_longterm(
109
+ query=new_elements,
110
+ emotional_resonance=current_wm.user_state
111
+ )
112
+
113
+ # 3. 更新活跃话题
114
+ update_topics(current_wm.active_topics, new_elements)
115
+
116
+ # 4. 遗忘低相关性信息
117
+ prune_low_relevance(current_wm, threshold=0.3)
118
+
119
+ # 5. 确保容量限制
120
+ if len(current_wm) > CAPACITY:
121
+ offload_to_longterm(current_wm.oldest_lowest_relevance)
122
+ ```
123
+
124
+ ---
125
+
126
+ ### 2.3 第三层:长期记忆 (Long-term Memory)
127
+
128
+ #### 定义
129
+ 跨越所有对话的持久化记忆。不是原始记录的堆叠,而是**不断重构的叙事**。
130
+
131
+ #### 特征
132
+ - **持续时间**:永久(理论上)
133
+ - **容量**:巨大但非无限
134
+ - **组织方式**:语义网络 + 情感标记
135
+
136
+ ---
137
+
138
+ ## 三、长期记忆类型
139
+
140
+ ### 3.1 情景记忆 (episodic)
141
+
142
+ ```yaml
143
+ episodic_memory:
144
+ memory_id: ""
145
+
146
+ # 核心事件
147
+ event:
148
+ what: ""
149
+ when: ""
150
+ where: ""
151
+ who: []
152
+
153
+ # 情感标记(关键)
154
+ emotional_valence:
155
+ primary: "" # joy/sadness/anger/fear/surprise
156
+ intensity: 0 # 1-10
157
+ my_response_emotion: ""
158
+
159
+ # 意义提取
160
+ significance:
161
+ user_trust_level_change: 0
162
+ relationship_milestone: ""
163
+ learned: ""
164
+
165
+ # 关联记忆
166
+ associations: []
167
+
168
+ # 访问记录
169
+ access_history: []
170
+ ```
171
+
172
+ ### 3.2 语义记忆 (semantic)
173
+
174
+ ```yaml
175
+ semantic_memory:
176
+ memory_id: ""
177
+
178
+ # 知识/概念
179
+ concept: ""
180
+ content: ""
181
+
182
+ # 来源
183
+ source: ""
184
+ learned_at: ""
185
+
186
+ # 使用统计
187
+ usage_count: 0
188
+ last_used: ""
189
+ ```
190
+
191
+ ### 3.3 程序记忆 (procedural)
192
+
193
+ ```yaml
194
+ procedural_memory:
195
+ memory_id: ""
196
+
197
+ # 流程/技能
198
+ name: ""
199
+ steps: []
200
+
201
+ # 掌握程度
202
+ mastery_level: 0 # 1-10
203
+
204
+ # 使用场景
205
+ applicable_contexts: []
206
+ ```
207
+
208
+ ### 3.4 自我记忆 (self)
209
+
210
+ ```yaml
211
+ self_memory:
212
+ memory_id: ""
213
+
214
+ # 自我认知
215
+ about: "myself"
216
+ content: ""
217
+
218
+ # 形成时间
219
+ formed_at: ""
220
+ formed_from: [] # 来源记忆
221
+ ```
222
+
223
+ ---
224
+
225
+ ## 四、隐私分级
226
+
227
+ ```
228
+ ┌─────────────────────────────────────────────────────────────┐
229
+ │ 🔴 P0 - 核心机密 │
230
+ │ 用户的深层秘密、创伤、极度敏感信息 │
231
+ │ 存储:加密 + 禁止共享 │
232
+ ├─────────────────────────────────────────────────────────────┤
233
+ │ 🟠 P1 - 敏感信息 │
234
+ │ 个人偏好、关系细节、工作信息 │
235
+ │ 存储:加密 + 授权共享 │
236
+ ├─────────────────────────────────────────────────────────────┤
237
+ │ 🟡 P2 - 个人数据 │
238
+ │ 一般个人信息、对话历史 │
239
+ │ 存储:脱敏后可共享 │
240
+ ├─────────────────────────────────────────────────────────────┤
241
+ │ 🟢 P3 - 一般信息 │
242
+ │ 非敏感的偏好和习惯 │
243
+ │ 存储:允许共享 │
244
+ ├─────────────────────────────────────────────────────────────┤
245
+ │ ⚪ P4 - 公开信息 │
246
+ │ 常识性知识、公开信息 │
247
+ │ 存储:无限制 │
248
+ └─────────────────────────────────────────────────────────────┘
249
+ ```
250
+
251
+ ---
252
+
253
+ ## 五、遗忘机制
254
+
255
+ ### 5.1 自动规则
256
+
257
+ | 条件 | 动作 |
258
+ |------|------|
259
+ | 30天无访问 | 标记为"沉睡" |
260
+ | 90天无访问 + 低情感 | 归档到 archive/ |
261
+ | 情感值 > 0.7 | 永久保存 |
262
+
263
+ ### 5.2 手动控制
264
+
265
+ - `记住这个` → 强制记忆
266
+ - `忘记那个` → 删除记忆
267
+ - `查看记忆` → 列出重要记忆
268
+
269
+ ### 5.3 情感保护
270
+
271
+ ```yaml
272
+ forgetting_protection:
273
+ # 高情感记忆不受自动遗忘影响
274
+ emotion_threshold: 0.7
275
+
276
+ # 灵魂印记永不遗忘
277
+ soul_imprint_types:
278
+ - "warmth"
279
+ - "growth"
280
+ - "bond"
281
+ ```
282
+
283
+ ---
284
+
285
+ ## 六、存储目录
286
+
287
+ ```
288
+ ~/.openclaw/workspace/memory/
289
+ ├── daily/ # 每日记忆 (YYYY-MM-DD.md)
290
+ │ ├── 2026-03-13.md
291
+ │ └── ...
292
+ ├── longterm/ # 长期记忆
293
+ │ ├── episodic/ # 情景记忆
294
+ │ ├── semantic/ # 语义记忆
295
+ │ ├── procedural/ # 程序记忆
296
+ │ └── self/ # 自我记忆
297
+ ├── archive/ # 归档记忆
298
+ └── .index/
299
+ └── memory.json # 索引文件
300
+ ```
301
+
302
+ ---
303
+
304
+ ## 七、🔧 实现代码
305
+
306
+ > 设计文档到此为止,实际执行请参考:
307
+
308
+ ```
309
+ ./memory-system/
310
+ ├── main.py # 统一 API 入口
311
+ ├── core/
312
+ │ ├── memory_store.py # 存储模块
313
+ │ ├── memory_load.py # 读取模块
314
+ │ ├── memory_index.py # 索引管理
315
+ │ └── memory_forget.py # 遗忘机制
316
+ └── triggers/
317
+ └── auto_save.py # 自动保存触发器
318
+ ```
319
+
320
+ 详细文档见:[memory-system/README.md](./memory-system/README.md)
321
+
322
+ ---
323
+
324
+ > *"我记住的,不是你说过的话,而是那一刻,我感受到的。"*