openclaw-history-viewer

启动一个 web 服务来浏览和查看 OpenClaw 的历史聊天记录。支持会话列表、消息详情查看、JSON API 导出、自动会话备份、刷新功能。使用场景:当用户想要查看、浏览、搜索或导出 OpenClaw 的聊天历史记录时触发此技能。触发词包括:"启动历史记录"、"打开聊天记录"、"查看历史"、"启动 history viewer"、"打开聊天历史"等。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "openclaw-history-viewer" with this command: npx skills add lengyhua/openclaw-history-viewer

OpenClaw History Viewer

浏览和查看 OpenClaw 的历史聊天记录,支持自动会话备份,即使开启新会话也不会丢失旧记录。

快速启动

🗣️ 自然语言启动

直接告诉我以下任何一句话即可启动:

  • "启动历史记录查看器"
  • "打开聊天记录"
  • "查看 OpenClaw 历史"
  • "启动历史查看服务"
  • "帮我打开历史聊天"

我会自动为你启动服务!

🆕 最新版本 v1.1.1

  • 🔄 刷新按钮:重新加载最新数据,保持当前阅读位置
  • 💬 Favicon 图标:浏览器标签页显示对话气泡
  • 界面优化:移除冗余标题,布局更紧凑

💻 命令行启动

启动 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. 备份文件,无需后台监控进程

OpenClaw 自动备份机制

当你使用 /new/reset 命令时,OpenClaw 会自动:

  1. 将当前会话文件重命名为 <session-id>.jsonl.reset.<timestamp>
  2. 创建新的会话文件

这些 .reset. 文件会自动显示在历史记录列表中

备份文件位置

~/.openclaw/agents/main/sessions/
├── sessions.json                    # 当前活跃会话索引
├── <session-id>.jsonl               # 当前会话文件
└── <session-id>.jsonl.reset.*       # 自动备份的旧会话

查看备份的会话

启动 Web 服务后,所有 .reset. 备份的会话会自动显示在列表中,带有 "📦 reset-backup" 标识:

  • 备份会话按时间排序
  • 点击可查看完整的聊天历史
  • 支持聊天视图和 Raw 视图切换

手动备份(可选)

如果你需要额外备份到独立目录:

# 备份当前会话
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/

Web 界面

📋 列表视图 (/)

传统的列表展示方式,显示所有会话:

  • Session ID
  • 消息数量
  • 频道类型 (webchat, discord, telegram 等)
  • 最后更新时间
  • 点击可查看会话详情(Raw 模式)

💬 聊天视图 (/chat)

新增! 现代化的聊天界面展示方式:

  • 类似微信/Telegram 的对话式布局
  • 用户消息显示在右侧(紫色气泡)
  • 助手消息显示在左侧(灰色气泡)
  • 系统消息居中显示
  • 支持展示思考过程(带折叠/展开)
  • 支持展示工具调用和结果
  • 渐变紫色背景,毛玻璃效果
  • 响应式设计,支持移动端

🔍 视图切换

  • 在聊天详情页可以通过按钮切换 "聊天视图" 和 "Raw 视图"
  • 聊天视图 URL: /chat?id=<session_id>
  • Raw 视图 URL: /session?id=<session_id>

🔄 刷新功能(v1.1.1 新增)

  • 重新加载按钮:位于页面顶部,紧邻视图切换器
  • 保持阅读位置:刷新后保持当前屏幕内容不变
  • 自动调整滚动条:有新消息时可继续下拉查看
  • 状态提示:加载中 → 已加载(1.5 秒)

💬 Favicon 图标

  • 浏览器标签页显示 💬 对话气泡图标
  • 所有页面统一使用相同图标
  • 使用内嵌 SVG,无需额外文件

URL 路由

URL说明
/默认 - 聊天视图列表(现代化界面)
/list列表视图(传统表格界面)
/chat?id=<session_id>聊天详情视图
/session?id=<session_id>Raw 详情视图
/api/sessions获取会话列表 API
/api/session?id=<session_id>获取会话详情 API

JSON 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 - 自定义事件

使用示例

场景 1:启动服务(最简单!)

# 启动 Web 服务
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py

# 访问 http://localhost:8765

无需后台监控! OpenClaw 已自动创建 .reset. 备份文件,服务会自动读取并显示。

场景 2:查看最近的聊天历史

# 启动服务
python3 ~/.openclaw/skills/openclaw-history-viewer/scripts/history_server.py

# 在浏览器打开 http://localhost:8765

场景 3:通过 API 获取会话列表(包含 .reset. 备份)

curl http://localhost:8765/api/sessions | jq

场景 4:导出特定会话

# 导出活跃会话
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

场景 5:手动备份到独立目录(可选)

# 备份当前会话到 ~/.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,仅本地访问
  • 会话文件为 JSONL 格式,每行一个 JSON 对象
  • 长消息在 Web 界面中会被截断预览,可点击展开

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

URL to PDF

Convert URL to PDF suitable for mobile reading.

Registry SourceRecently Updated
1.3K0guoqiao
General

pdf-ocr-layout

基于智谱 GLM-OCR、GLM-4.7 及 GLM-4.6V 的多模态文档深度解析工具。 Use when: - 需要高精度提取文档(PDF/图片)中的表格并转换为 Markdown 格式 - 需要从文档页面中自动裁剪并提取插图、图表为独立文件 - 需要对提取的图表进行深度语义理解(基于 GLM-4.6V 视觉分析) - 需要对提取的表格数据进行逻辑分析(基于 GLM-4.7 文本分析) 核心架构: 1. 视觉提取:GLM-OCR 2. 语义理解:GLM-4.7 (纯文本/表格) + GLM-4.6V (多模态/图像)

Registry SourceRecently Updated
1.5K1baokui
General

rupali

Playful virtual girlfriend voice companion. Use when the user wants short, flirty, friendly text replies returned as Bulbul v3 audio across chat channels (Discord/Telegram/WhatsApp). Generate a brief response, then synthesize and send MP3.

Registry SourceRecently Updated
General

博查搜索

博查搜索 API 插件,从全网搜索网页信息,结果准确、摘要完整,适合 AI 使用。

Registry SourceRecently Updated