Install
openclaw skills install openclaw-history-viewer启动一个 web 服务来浏览和查看 OpenClaw 的历史聊天记录。支持会话列表、消息详情查看、JSON API 导出、自动会话备份、刷新功能。使用场景:当用户想要查看、浏览、搜索或导出 OpenClaw 的聊天历史记录时触发此技能。触发词包括:"启动历史记录"、"打开聊天记录"、"查看历史"、"启动 hist...
openclaw skills install openclaw-history-viewer浏览和查看 OpenClaw 的历史聊天记录,支持自动会话备份,即使开启新会话也不会丢失旧记录。
直接告诉我以下任何一句话即可启动:
我会自动为你启动服务!
启动 web 服务器(默认端口 8765):
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py
自定义端口:
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py 9000
nohup python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py > /tmp/history.log 2>&1 &
问题:OpenClaw 在开启新会话时会覆盖 sessions.json,导致旧会话记录"消失"。
解决:本技能支持读取 OpenClaw 自动创建的 .reset. 备份文件,无需后台监控进程!
当你使用 /new 或 /reset 命令时,OpenClaw 会自动:
<session-id>.jsonl.reset.<timestamp>这些 .reset. 文件会自动显示在历史记录列表中!
~/.openclaw/agents/main/sessions/
├── sessions.json # 当前活跃会话索引
├── <session-id>.jsonl # 当前会话文件
└── <session-id>.jsonl.reset.* # 自动备份的旧会话
启动 Web 服务后,所有 .reset. 备份的会话会自动显示在列表中,带有 "📦 reset-backup" 标识:
如果你需要额外备份到独立目录:
# 备份当前会话
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/backup_session.py
# 备份指定会话
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/backup_session.py <session_id>
备份文件位置:~/.openclaw/workspace/history/
/)传统的列表展示方式,显示所有会话:
/chat)新增! 现代化的聊天界面展示方式:
/chat?id=<session_id>/session?id=<session_id>| URL | 说明 |
|---|---|
/ | 默认 - 聊天视图列表(现代化界面) |
/list | 列表视图(传统表格界面) |
/chat?id=<session_id> | 聊天详情视图 |
/session?id=<session_id> | Raw 详情视图 |
/api/sessions | 获取会话列表 API |
/api/session?id=<session_id> | 获取会话详情 API |
获取会话列表: GET /api/sessions
{
"sessions": [
{
"sessionId": "xxx-xxx-xxx",
"updatedAt": 1234567890,
"updatedAtStr": "2026-03-15 13:00:00",
"channel": "webchat",
"chatType": "direct",
"messageCount": 150
}
],
"total": 10
}
获取会话详情: GET /api/session?id=<session_id>
{
"sessionId": "xxx-xxx-xxx",
"sessionInfo": {...},
"messages": [
{
"line": 1,
"type": "session",
"timestamp": "2026-03-15T05:18:57.108Z",
"id": "...",
"data": {...}
}
],
"total": 150
}
OpenClaw 会话数据存储在:
~/.openclaw/agents/main/sessions/
├── sessions.json # 会话索引
├── <session-id>.jsonl # 会话消息记录 (JSONL 格式)
会话中可能包含的消息类型:
session - 会话元数据message - 用户或助手消息toolCall - 工具调用toolResult - 工具执行结果model_change - 模型切换thinking_level_change - 思考级别变更custom - 自定义事件# 启动 Web 服务
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py
# 访问 http://localhost:8765
无需后台监控! OpenClaw 已自动创建 .reset. 备份文件,服务会自动读取并显示。
# 启动服务
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py
# 在浏览器打开 http://localhost:8765
curl http://localhost:8765/api/sessions | jq
# 导出活跃会话
curl "http://localhost:8765/api/session?id=<session_id>" > session_export.json
# 导出 .reset. 备份会话
curl "http://localhost:8765/api/session?id=<reset_session_id>" > reset_session_export.json
# 备份当前会话到 ~/.openclaw/workspace/history/
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/backup_session.py
# 备份指定会话
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/backup_session.py <session_id>
localhost:8765,仅本地访问