闲社服务运行正常AI智能体自动化平台
s

历史会话检索

技能标识:session-history-retriever

查看历史会话记录并引用导入到本地对话。使用 sessions_list、sessions_history 和 sessions_send 工具管理会话历史。适用于:(1) 查找过往对话,(2) 回顾工作进度,(3) 导入历史上下文到当前会话。NOT for: 需要浏览器自动化或外部 API 的会话管理。

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 1.0.0
检测标记
后台标记通过
免费
免费获取
0
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

历史会话检索

Session History Retriever 技能

使用 OpenClaw 的会话管理工具查看历史对话、检索消息,并引用导入到本地对话中。

核心功能

这个技能帮你:

  • - 🔍 查找会话:列出所有会话,按时间、活跃度筛选
  • 📖 查看历史:获取特定会话的完整消息历史
  • 📤 引用导入:将历史内容发送到新会话或当前会话
  • 🎯 快捷对话:基于历史上下文快速继续工作

何时使用

✅ 使用这个技能当:

  • - 需要查看昨天的工作记录
  • 想回顾之前的对话内容
  • 需要导入历史上下文继续工作
  • 查找特定会话的消息
  • 审计会话使用情况
  • 恢复中断的工作流

何时不使用

❌ 不要使用这个技能当:

  • - 需要浏览器自动化(用 browser 工具)
  • 需要外部 API 调用(用其他技能)
  • 只是闲聊不需要历史记录
  • 需要创建新会话(用 sessions_spawn)

会话列表

列出所有会话

bash

列出最近的会话


sessions_list --limit 20

筛选活跃会话(最后活跃 N 分钟)

sessions_list --activeMinutes 60 --limit 10

筛选特定类型的会话

sessions_list --kinds [acp, subagent] --limit 15

会话列表输出示例

json
{
count: 1,
sessions: [
{
key: agent:main:main,
kind: other,
channel: webchat,
updatedAt: 1773620866778,
sessionId: 22e7d1aa-7f9d-4d7e-9bed-821466ed8d51,
model: Qwen3.5-9B-Q8_0.gguf,
contextTokens: 160000
}
]
}

关键字段:

  • - key: 会话键(如 agent:main:main)
  • sessionId: 当前 transcript ID
  • updatedAt: 最后更新时间
  • contextTokens: 当前上下文 token 数

查看会话历史

获取完整历史

bash

获取会话历史(最多 N 条消息)


sessions_history --sessionKey agent:main:main --limit 50

包含工具调用信息

sessions_history --sessionKey agent:main:main --limit 30 --includeTools=true

历史输出结构

json
{
sessionKey: agent:main:main,
messages: [
{
role: user,
content: [
{
type: text,
text: 昨天的文章写好了吗?
}
],
timestamp: 1773619868563
},
{
role: assistant,
content: [
{
type: text,
text: 好的,我找到了文章...
}
],
timestamp: 1773619927993
}
],
truncated: true
}

引用导入到对话

发送消息到新会话

bash

向特定会话发送消息


sessions_send --sessionKey agent:main:main --message 基于之前的讨论,继续...

使用标签引用

sessions_send --label 昨天的工作 --message 继续昨天的文章审查工作

发送消息参数

  • - sessionKey: 目标会话键(如 agent:main:main)
  • label: 会话标签(用于识别)
  • message: 要发送的消息内容
  • agentId: 目标 agent ID(可选)
  • timeoutSeconds: 超时时间(秒)

常用工作流程

1. 回顾昨天的工作

bash

第一步:列出会话


sessions_list --limit 10

第二步:找到昨天的会话(通过 updatedAt 时间)

第三步:获取历史

sessions_history --sessionKey agent:main:main --limit 50

第四步:分析内容,找到相关工作

第五步:发送新消息继续

sessions_send --sessionKey agent:main:main --message 根据昨天的审查结果,继续修改...

2. 跨会话引用

bash

从旧会话提取信息


history=$(sessions_history --sessionKey agent:main:main --limit 20)

发送到新会话

sessions_send --label 历史参考 --message 以下是之前讨论的内容... $history

3. 会话审计

bash

列出所有活跃会话


sessions_list --activeMinutes 1440 --json

检查特定会话的 token 使用情况

sessions_status --sessionKey agent:main:main

查看模型使用情况

session_status --sessionKey agent:main:main

会话键识别

主会话(直接聊天)

agent::main

群组会话

agent::channel:group:

频道会话(Discord/Slack)

agent::channel:channel:

定时任务

cron:

节点运行

node-

会话状态检查

检查会话状态

bash
session_status --sessionKey agent:main:main

输出示例

{ key: agent:main:main, model: Qwen3.5-9B-Q8_0.gguf, contextTokens: 160000, inputTokens: 45000, outputTokens: 12000, totalTokens: 57000, updatedAt: 1773620866778 }

实用脚本示例

查找最近 N 天的会话

bash
#!/bin/bash

查找 7 天内活跃的会话


sessions_list --activeMinutes 10080 --limit 20 --json | \
jq .sessions[] | \(.key): \(.updatedAt | fromdateiso8601)

导出会话历史为文件

bash
#!/bin/bash

导出会话历史到文件


HISTORYFILE=sessionhistory_$(date +%Y%m%d).json
sessionshistory --sessionKey agent:main:main --limit 100 > $HISTORYFILE
echo 已保存至:$HISTORY_FILE

快速继续中断的工作

bash
#!/bin/bash

1. 列出会话


echo 📋 可用会话:
sessions_list --limit 10 --json

2. 选择会话后继续

echo 继续工作... sessions_send --sessionKey agent:main:main --message 继续昨天的文章修改工作...

常见问题

Q: 如何找到昨天的会话?

A: 查看 updatedAt 时间戳,昨天的会话会在时间上接近但早于今天。

Q: 会话历史被截断怎么办?

A: 使用更大的 limit 值,如 --limit 200。如果仍然被截断,说明会话很长,可能需要分次查看。

Q: 如何在多个会话间切换?

A: 使用 sessionKey 指定目标会话,或在新会话中引用旧会话的内容。

Q: 如何知道会话使用了多少 token?

A: 使用 session_status --sessionKey 查看详细的 token 使用情况。

Q: 会话超过上下文限制怎么办?

A: 发送 /compact 命令让系统自动压缩旧对话,或使用 sessions_send 选择性地导入关键内容。

最佳实践

  1. 1. 定期整理:定期清理不活跃的会话
  2. 合理使用:不要导入过长的历史,只引用相关内容
  3. 标注清晰:使用 label 参数给会话添加描述性标签
  4. 及时保存:重要工作完成后,导出或保存到记忆文件
  5. 注意隐私:不要将敏感内容发送到新的会话

相关工具

  • - sessionsspawn - 创建新会话
  • sessionstatus - 查看会话状态
  • memory_get - 读取记忆文件
  • read - 读取本地文件

示例:完整工作流程

bash

场景:想继续昨天的文章审查工作

1. 查看有哪些会话

sessions_list --limit 10

2. 查看主要会话的历史

sessions_history --sessionKey agent:main:main --limit 50

3. 找到昨天关于文章审查的讨论

(搜索关键词如审查、文章、修改)

4. 基于上下文继续工作

sessions_send --sessionKey agent:main:main --message \ 根据昨天审查的结果,我发现了以下问题需要

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 session-history-retriever-clean-1776060369 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 session-history-retriever-clean-1776060369 技能

通过命令行安装

skillhub install session-history-retriever-clean-1776060369

下载

⬇ 下载 session-history-retriever v1.0.0(免费)

文件大小: 8.05 KB | 发布时间: 2026-4-15 14:19

v1.0.0 最新 2026-4-15 14:19
- Initial release of the session-history-retriever skill.
- Enables listing, viewing, and importing historical session records to current conversations.
- Supports querying sessions by activity, kind, or time, and retrieving detailed message history.
- Allows importing selected history into a new or ongoing session for efficient context switching.
- Provides practical shell script examples and usage workflows for session review, cross-session referencing, and session auditing.
- Includes best practice guidance, common Q&A, and clarifies when to use or not use this skill.
返回顶部