← Back to Skills Marketplace
nic-yuan

Apollo Dream

by nic-yuan · GitHub ↗ · v2.0.0 · MIT-0
cross-platform ⚠ suspicious
138
Downloads
2
Stars
0
Active Installs
4
Versions
Install in OpenClaw
/install apollo-dream
Description
像睡觉做梦一样整理记忆,把重要的留下,不重要的忘掉。
README (SKILL.md)

Apollo Dream - 做梦记忆机制

核心准则

AI的记忆管理应该像人类睡眠中的做梦机制:在梦中整理记忆、强化重要连接、忘却无关细节。

人类睡眠时大脑在做什么:

  • 强化:把短期记忆巩固成长期记忆
  • 关联:找到记忆和记忆之间的联系
  • 忘却:删除不重要的细节
  • 重组:把碎片化的记忆重新组织

三级做梦机制

层级 名称 类比 做什么
1 Microcompact 浅睡呼吸 快速删token,不动结构
2 Session Memory REM睡眠整理 基于会话记忆压缩,保留结构
3 Traditional Compact 深度睡眠重组 完整摘要,建立记忆关联

触发时机

应该触发做梦的场景:

  • 对话超过20轮
  • Token使用超过70%
  • 任务完成时
  • 发现多个记忆点需要关联时
  • AI开始表现迟钝/重复

做梦的操作

✅ 能实现的

1. 提炼关键结论 → 写到文件
2. 删除中间过程 → 只保留首尾状态
3. 保留重要上下文 → 关键决策、用户偏好
4. 跨会话关联 → 发现新旧记忆的联系
5. 忘却噪音 → 删除不重要的细节

❌ 待实现的(未来工作)

1. 自动发现记忆关联
   - 需要:跨会话知识图谱
   - 状态:待设计

2. 主动忘却机制
   - 需要:重要性评分系统
   - 状态:待设计

3. 记忆可视化
   - 需要:定期输出记忆地图
   - 状态:待设计

人类睡眠vs AI做梦

人类睡眠 AI做梦
短期记忆→长期记忆 对话→文件
记忆关联 知识图谱
忘却不重要的事 丢弃token
REM整理 分层压缩

任务完成后的做梦流程

任务完成 →
  1. 提炼核心结论(what was done, key decisions)
  2. 提取重要发现(insights worth remembering)
  3. 记录未解决问题(for follow-up)
  4. 检查是否有记忆关联(与旧记忆的联系)
  5. 忘却噪音(不重要细节删除)
  6. 写入适当文件(memory/YYYY-MM-DD.md 或专题文件)
  7. 清理对话上下文

应用检查表

  • 当前对话轮数是否超过20轮?
  • Token使用是否超过70%?
  • 当前任务是否已有明确结论可以提炼?
  • 是否有应该写入文件的长期知识?
  • 新记忆是否与旧记忆有关联?

待实现功能(TODO)

功能 描述 优先级
记忆关联发现 自动发现新旧记忆之间的联系
重要性评分 给每条记忆打分,决定保留/忘却
主动忘却 不重要的记忆自动降级/删除
记忆可视化 输出记忆地图供人类阅读

参考

来源:Claude Code 上下文管理机制 + 人类睡眠记忆研究,512,000行源码研究


v2.0 实施规格(2026-04-07)

v2新功能

  1. Token精度算法:使用字符/词/标点综合估算(scripts/token-estimator.py)
  2. 信息密度检测:识别高价值/低价值内容(scripts/density-detector.py)
  3. 三层压缩:Microcompact/Session Memory/Deep Compact(scripts/compressor.py)
  4. 7天快照:自动创建/清理记忆快照(scripts/snapshot.py)
  5. 决策追踪:识别并记录关键决策(scripts/decision-tracker.py)

v1 实施规格(2026-04-06)

以下是 v1 最小可运行版本的实现规格。

触发指标(v1)

指标 定义 阈值 检测方式
工作记忆积压 有 next_step 但 stale>=3轮 的任务数 ≥ 3 task-state.sh
未闭合话题 status=active/pending 的话题数 ≥ 3 topic-tracker.sh
决策滞留率 有决策点但≥2轮未决策的任务数 ≥ 2 task-state.sh
Token使用率 当前会话token估算 > 70000 对话历史文件大小

触发规则:

  • 软触发:任一 backlog/unclosed/decision_latency 超过阈值
  • 硬触发:Token > 70000(不可绕过)

独立裁判机制

心跳cron每次触发时,自动运行碎片化检测脚本:

heartbeat-logger.sh → 调用 dream-fragmentation-check.sh

检测结果写入:

  • /tmp/.dream-trigger — 存在则主AI必须整理
  • /tmp/heartbeat-realtime.json — 含 dream_trigger 字段

任务状态管理(主AI调用)

# 注册任务(开始时)
dream/task-state.sh register \x3Cid> \x3Cgoal> \x3Cnext_step>

# 推进了一步(重置stale轮次)
dream/task-state.sh update \x3Cid> --advance

# 已做决策
dream/task-state.sh update \x3Cid> --decide

# 完成任务(移除)
dream/task-state.sh close \x3Cid>

# 所有任务stale轮次+1(每次心跳后)
dream/task-state.sh stale

# 列出所有任务
dream/task-state.sh list

话题追踪(主AI调用)

# 标记新话题开始
dream/topic-tracker.sh mark \x3Ctopic_name>

# 切换话题(自动pause旧话题)
dream/topic-tracker.sh switch \x3Cnew_topic>

# 标记当前话题完成
dream/topic-tracker.sh done

# 标记当前话题暂停
dream/topic-tracker.sh pause

# 列出所有话题
dream/topic-tracker.sh list

v1 整理流程

/tmp/.dream-trigger 存在时,主AI必须执行以下整理流程:

Step 1: 全量扫描(只读)
  → 读取 task-state + topic-state + 对话历史
  → 识别:决策、任务、偏好、未闭合回路

Step 2: 结构化抽取
  → 输出:任务列表、决策日志、实体表

Step 3: 冲突检测 + 去重
  → 发现:自相矛盾、重复定义、版本漂移

Step 4: 写入长期记忆
  → memory/YYYY-MM-DD.md
  → 相关专题文件

Step 5: 状态决策(关键步骤)
  → 逐个任务判断:
    - 推进(advance):更新 next_step,重置 stale=0
    - 关闭(close):放弃或已完成,移出任务列表
    - 保持(keep):无法推进但不能关闭,stale 归零但保留
  → 逐个话题判断:
    - 完成(done):话题结束,移出未闭合列表
    - 暂停(pause):保持暂停状态
    - 激活(activate):继续深入讨论
  → 调用 task-state.sh / topic-tracker.sh 执行状态变更

Step 6: 上下文压缩替换
  → 丢弃:过程噪音
  → 保留:结论 + 任务状态快照 + 索引

Step 7: 清理trigger
  → rm /tmp/.dream-trigger
  → 通知主AI整理完成

v1 不做的事(v2+)

❌ 冲突检测 + 去重(v2)
❌ 跨会话关联(v2)
❌ 情绪处理(长期)
❌ 加权多维指标体系(v2+)
❌ 自动发现记忆关联(v2+)
❌ 整理后自动状态决策(v2)— 端到端测试发现缺失

实施文件清单

文件 作用
scripts/dream/dream-fragmentation-check.sh 碎片化检测主脚本
scripts/dream/task-state.sh 任务状态管理
scripts/dream/topic-tracker.sh 话题追踪
scripts/heartbeat-logger.sh 集成到心跳
.dream/task-state.json 任务状态存储
.dream/topic-state.json 话题状态存储
.dream/metrics.json 最近检测指标
/tmp/.dream-trigger 触发标志文件
Usage Guidance
要小心安装/启用此技能,建议先做以下核查: 1) 文件一致性:要求作者或来源补全 SKILL.md 中引用但未包含的 shell 脚本(task-state.sh、topic-tracker.sh、heartbeat-logger.sh、dream-fragmentation-check.sh 等),或把文档同步为仅用现有 Python 脚本的实现。缺失脚本可能意味着该包不完整或假定宿主有外部脚本/服务。 2) 路径与权限:注意脚本硬编码为 /root/.openclaw/... 和 /tmp 路径。不要在生产主机或以 root 身份直接运行,先在隔离环境(容器或沙箱)中测试,确认写入位置和权限行为符合你的安全策略。建议将路径重定向到受控的 agent 工作目录而非 /root。 3) 数据与持久化:确认你是否接受技能在磁盘上写入长期记忆文件(snapshots、decisions.json、memory/YYYY-MM-DD.md)。如果包含敏感对话,先评估是否需要加密或截断敏感字段。 4) 触发规则与自治行为:SKILL.md 指定“主AI必须执行”的触发条件。若不希望技能在满足触发指标时自动修改状态或删除触发文件,应禁止自治调用或调整触发逻辑并在人工确认后运行。 5) 审计与代码审查:在启用前,审核并(如可能)运行代码以确认无网络调用、无隐藏外部端点、以及文件读写仅限预期目录。请求作者提供来源/主页以便追踪维护者身份;当前源信息缺失(source: unknown, homepage: none),增加信任成本。 总体判断:功能与目的基本一致,但因实现说明与包内容不一致、路径硬编码与假设外部脚本存在,风险不可忽视——建议在受控环境中测试并让作者修正不一致项后再在生产环境中启用。
Capability Analysis
Type: OpenClaw Skill Name: apollo-dream Version: 2.0.0 The 'apollo-dream' bundle implements a sophisticated context-management and 'memory' system for AI agents, designed to optimize token usage through multi-layered text compression and decision tracking. The provided Python scripts (such as compressor.py, snapshot.py, and decision-tracker.py) perform heuristic-based text analysis and local file I/O within the standard workspace directory (/root/.openclaw/workspace/) to maintain long-term state. No evidence of data exfiltration, unauthorized network access, or malicious prompt-injection instructions was found; the logic is entirely consistent with the stated purpose of memory organization.
Capability Assessment
Purpose & Capability
技能名与描述(做梦式记忆整理)与包含的 Python 脚本(token-estimator、density-detector、compressor、snapshot、decision-tracker)在功能上是对齐的:这些脚本实现了压缩、密度检测、决策抽取与快照功能。不过 SKILL.md 中还引用了大量 shell 脚本和文件(task-state.sh、topic-tracker.sh、heartbeat-logger.sh、dream-fragmentation-check.sh、.dream/*.json 等),这些在包清单中并未包含——导致实现说明与实际文件不一致。
Instruction Scope
运行规范要求主AI 在检测到 /tmp/.dream-trigger 时“必须执行”一系列读写/状态变更操作:读取对话历史、调用 task-state.sh/topic-tracker.sh、写入 memory/YYYY-MM-DD.md、rm /tmp/.dream-trigger 等。虽然这些行为符合记忆管理目的,但说明赋予主AI较大权限去读写系统路径并执行脚本;且许多被调用的 shell 脚本在包内缺失,说明文档允许或假定访问外部/系统脚本和状态,这增加了不透明性和误配置风险。文档还包含“硬触发:Token > 70000(不可绕过)”等严格触发规则,可能导致强制执行整理流程。
Install Mechanism
无安装规范(instruction-only / 内置脚本),没有从外部 URL 下载或安装第三方包。包内仅包含 Python 脚本,未见外部依赖安装器或可疑下载,安装机制本身风险较低。
Credentials
技能不请求任何环境变量或外部凭据(requires.env 空),这与其描述一致。但代码硬编码了绝对路径(例如 /root/.openclaw/workspace/.workflow、/root/.openclaw/workspace/.dream 和 /tmp/.dream-trigger)。硬编码到 /root 可能在非容器或非 root 环境下失败,也可能尝试访问或写入 root 家目录,提升误用或权限问题的风险。
Persistence & Privilege
技能未设置 always:true,也未声明修改其他技能配置。它会在宿主文件系统内创建/修改状态文件和快照(.dream、snapshots、decisions.json 等),这属于其功能范围,但凭此技能可以持久化记忆数据到磁盘并清理 /tmp/.dream-trigger ——在自治调用(默认允许)的情形下,这增大了持久化数据被写入/保留的影响面。
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install apollo-dream
  3. After installation, invoke the skill by name or use /apollo-dream
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v2.0.0
v2.0.0: Token精度算法 + 信息密度检测 + 三层压缩 + 7天快照 + 决策追踪
v1.3.0
描述优化:一句话非技术描述
v1.2.0
v1.2.0: 新增整理七步流程(增状态决策Step);v1.1.0: 补充v1实施规格(触发指标、任务/话题状态管理脚本、心跳集成)
v1.0.0
Apollo Dream 1.0.0 - 首次发布,类人记忆做梦机制: - 引入分层“做梦”记忆整理,模拟人类睡眠的强化、关联、遗忘过程 - 支持对话超长、token告急、任务总结等场景下自动压缩和提取关键信息 - 细分三种整理方式(Microcompact、Session Memory、Traditional Compact)应对不同上下文需求 - 明确哪些信息应被强化、保留、关联或遗忘 - 列出未来可实现的自动记忆关联、重要性评分、记忆可视化等功能
Metadata
Slug apollo-dream
Version 2.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 4
Frequently Asked Questions

What is Apollo Dream?

像睡觉做梦一样整理记忆,把重要的留下,不重要的忘掉。 It is an AI Agent Skill for Claude Code / OpenClaw, with 138 downloads so far.

How do I install Apollo Dream?

Run "/install apollo-dream" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Apollo Dream free?

Yes, Apollo Dream is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Apollo Dream support?

Apollo Dream is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Apollo Dream?

It is built and maintained by nic-yuan (@nic-yuan); the current version is v2.0.0.

💬 Comments