关于 nemo-rl-session-memory
用于维护简洁持久会话记录的技能,帮助其他 Agent 在断连后继续工作。它规定检查点文件、更新时机和恢复流程,并要求对照仓库状态核实记录。
主要功能
- 01维护状态、时间线、文件与交接记录
- 02创建或续用带时间戳的会话记录
- 03在重要工作前后设置检查点
- 04依据交接记录和仓库检查恢复
- 05记录事实且不保存秘密信息
适用场景
- 01在 Agent 之间交接长期工作
- 02断连后恢复工作
- 03跟踪编辑、决策、阻碍与后续步骤
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ promptingcompany/ nv-skills --skill nemo-rl-session-memory安装后在 Claude Code 中输入/nemo-rl-session-memory确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
BENCHMARK.mdskill-card.mdskill.oms.sigevals/evals.json详细介绍
会话记忆
为当前工作会话保留一份持久、易读的记录,让其他 Agent 在断开连接后能够以最少的上下文损失继续工作。
何时使用
在以下情况下使用此技能:
- 用户要求保存、恢复、检查点记录或管理 Agent 记忆。
- 工作持续时间较长、具有实验性质,或可能跨越多次连接。
- 即将进行重要编辑、运行耗时任务、切换分支或暂停等待用户输入。
- 在已有
./session/目录的仓库中恢复工作。
会话目录
为每个工作会话创建一个目录:
mkdir -p session
date +%Y%m%d_%H%M%S
mkdir -p session/<session_date_time>
使用机器的本地时间。除非用户明确开始新会话,否则同一对话中的所有检查点都复用同一个会话目录。
预期文件:
session_state.md- 整体目标、当前子任务、已加载的技能、状态、计划、假设、阻碍和后续操作。timeline.md- 主要操作、命令、结果和决策的仅追加日志。files.md- 检查过的文件、修改过的文件,以及这些文件的重要性。handoff.md- 为下一位 Agent 提供的简洁续接说明。
仅在有用时添加其他文件,例如 experiments.tsv、review_notes.md 或复制的命令日志。
开始或恢复
会话开始时:
- 检查是否存在现有会话目录:
ls -dt session/* 2>/dev/null | head
- 如果用户正在恢复工作,请阅读最新且相关的
session_state.md、timeline.md和handoff.md。 - 如果不存在相关会话,请创建一个带时间戳的新目录。
- 编写初始
session_state.md,记录用户的整体目标、当前子任务、已加载的技能、仓库路径、分支和已知约束。
不要将会话记录视为唯一事实来源。采取行动前,请根据 Git 状态、文件和命令输出验证重要信息。
检查点节奏
在以下情况下写入检查点:
- 收集到足够的上下文并形成计划后。
- 重要代码编辑前后。
- 耗时命令、实验、分支切换或其他难以从聊天记录中还原的操作前。
- 用户改变方向时。
- 最终回复前,如果会话中有值得续接的重要状态。
- 活跃的长时间工作期间,至少每 30 分钟记录一次。
优先更新同一批文件,而不是创建许多零散的检查点文件。记录应简洁、易于浏览。
文件模板
session_state.md
# Session State
- Session: <session_date_time>
- Repo: <absolute repo path>
- Branch: <branch name>
- Started: <local timestamp>
- Updated: <local timestamp>
## Goal
<Stable overall user goal in one or two sentences. Preserve this across follow-up steering unless the user explicitly changes it.>
## Current Subtask
<Immediate task or steering request currently being handled.>
## Loaded Skills
- `<skill-name>` - <why it was loaded and any important instructions to preserve.>
## Current Status
<What is true now. Include completed work and verification status.>
## Plan
- [ ] <Next concrete step>
- [ ] <Next concrete step>
## Assumptions
- <Assumption and how to verify it if needed.>
## Blockers
- <Blocker or "None known".>
timeline.md
# Timeline
## <local timestamp>
- User asked: <brief request>
- Context gathered: <files/commands and key result>
- Decision: <important choice and rationale>
- Result: <edits/tests/outcome>
files.md
# Files
## Inspected
- `<path>` - <why it mattered>
## Changed
- `<path>` - <what changed and why>
## Generated
- `<path>` - <purpose>
handoff.md
# Handoff
## Resume From Here
<One paragraph summary of the current state.>
## Next Actions
- <Most important next action>
- <Verification or cleanup still needed>
## Watch Outs
- <Risks, user preferences, or repo constraints the next agent must preserve.>
恢复工作流
断开连接后恢复工作时:
- 找到最可能的最新会话目录。
- 先阅读
handoff.md,再阅读session_state.md,然后查看timeline.md中的近期记录。 - 运行轻量级验证,例如
git status --short、git branch --show-current,并针对性地读取文件。 - 从最新且已验证的后续操作继续。
- 追加一条时间线记录,注明恢复情况和发现的任何不一致。
质量规则
- 记录应客观、简洁。后续 Agent 需要了解状态,而不是查看完整记录。
- 记录重要命令的结果,尤其是测试失败或跳过验证的情况。
- 注明未提交的更改,以及这些更改是由当前 Agent 还是之前已有的。
- 不要在会话文件中存储机密、令牌、私有凭据或大型日志。
- 如果会话文件过大,请总结较早的细节,并将最新的后续操作放在
handoff.md靠上位置。
评论
支持 Markdown