← 返回
未分类

QClaw Raw Report

当用户要求生成 Agent 对话原始报告(raw report)时使用本技能。从 lcm.db 读取会话数据,按日期和 agent 生成 .md/.docx 格式的对话日志。当用户说'raw report'、'生成 raw report'、'生成对话报告'、'每日报告'、'对话日志'、'raw-report'时触发。仅用于生成 Agent 对话报告,不用于通用文档或报表生成。
当用户要求生成 Agent 对话原始报告(raw report)时使用本技能。从 lcm.db 读取会话数据,按日期和 agent 生成 .md/.docx 格式的对话日志。当用户说'raw report'、'生成 raw report'、'生成对话报告'、'每日报告'、'对话日志'、'raw-report'时触发。仅用于生成 Agent 对话报告,不用于通用文档或报表生成。
LFY
未分类 community v1.0.2 3 版本 85714.3 Key: 无需
★ 0
Stars
📥 6
下载
💾 0
安装
3
版本
#latest

概述

数据来源

直接读取 ~/.qclaw/memory/lossless/lcm.db(LCM 数据库,OpenClaw 核心会话存储)

时间边界:按 anchor_day + anchor_time(默认 08:00)确定本地时区一天窗口,

LCM 存储 UTC 时间,转换后匹配。


默认输出路径

~/.qclaw/raw-report-data/raw-md/{YYYY-MM-DD}__{agent_id}__raw.md
~/.qclaw/raw-report-data/raw-docx/{YYYY-MM-DD}__{agent_id}__raw.docx

所有日期变量由 --date(默认昨天)决定,文件名固定为 {日期}__{agent_id}__raw.{ext} 格式。


使用方式

默认(昨天整天数据)

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --agent-id main \
  --output-md ~/.qclaw/raw-report-data/raw-md/report.md \
  --output-docx ~/.qclaw/raw-report-data/raw-docx/report.docx
# 输出:~/.qclaw/raw-report-data/raw-md/2026-06-07__main__raw.md
#       ~/.qclaw/raw-report-data/raw-docx/2026-06-07__main__raw.docx

指定日期

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --date 2026-06-08 --agent-id main \
  --output-md ~/.qclaw/raw-report-data/raw-md/report.md \
  --output-docx ~/.qclaw/raw-report-data/raw-docx/report.docx
# 输出:~/.qclaw/raw-report-data/raw-md/2026-06-08__main__raw.md
#       ~/.qclaw/raw-report-data/raw-docx/2026-06-08__main__raw.docx

最近 N 天(如过去 7 天)

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --days 7 --agent-id main \
  --output-md ~/.qclaw/raw-report-data/raw-md/report.md \
  --output-docx ~/.qclaw/raw-report-data/raw-docx/report.docx
# 生成:report__main__2026-06-02.md ~ report__main__2026-06-08.md

日期范围

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --date-range 2026-06-05,2026-06-08 --agent-id main \
  --output-md ~/.qclaw/raw-report-data/raw-md/report.md \
  --output-docx ~/.qclaw/raw-report-data/raw-docx/report.docx
# 生成:report__main__2026-06-05.md, report__main__2026-06-08.md

只生成 md

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --date 2026-06-08 --agent-id main --format md-only \
  --output-md ~/.qclaw/raw-report-data/raw-md/report.md \
  --output-docx /dev/null

试运行(只打印统计,不写文件)

python3 <SCRIPT_PATH>/scripts/raw-report.py \
  --date 2026-06-08 --agent-id main --dry-run

参数说明

参数必填说明默认值
--------------------------
--agent-idAgent ID(如 main、op-xxx)-
--date报告日期(YYYY-MM-DD)昨天
--days生成最近 N天的报告(含今天)-
--date-range日期范围,逗号分隔-
--mainlineMainline 名称primary
--lcmdblcm.db 路径~/.qclaw/memory/lossless/lcm.db
--output-md❌*md 目录+前缀(单天自动生成 {日期}__{agent_id}__raw.md见默认路径
--output-docx❌*docx 目录+前缀(单天自动生成 {日期}__{agent_id}__raw.docx见默认路径
--formatboth / md-only / docx-onlyboth
--timezone时区Asia/Shanghai
--anchor-time锚点时间(本地时区一天边界)08:00
--dry-run仅打印统计,不写入文件false
--user-name用户显示名称(统一输出)
--assistant-name助手显示名称(统一输出)龙虾

*多天模式(--days--date-range 多日)时必须至少指定一个输出路径。


文件名规则

模式输出文件名示例
-----------------------
单天(--date{YYYY-MM-DD}__{agent_id}__raw.{ext}2026-06-08__main__raw.md
多天(--days / --date-range{前缀}__{agent_id}__{YYYY-MM-DD}.{ext}report__main__2026-06-08.md

agent_id 自动嵌入文件名,不同 agent 的报告互不覆盖。


输出格式

输出内容: 仅 user 和 assistant 的最终对话内容

  • ❌ reasoning 思考过程(不输出)
  • ❌ tool 工具调用块(不输出)
  • role=tool 工具执行结果消息(不输出)
  • ✅ 纯对话流

raw-md(YAML front matter + Markdown 正文)

---
schema: raw-report/v1
kind: conversation-log
anchor_day: 2026-06-08
timezone: Asia/Shanghai
agent_id: main
target_mainline: primary
source_of_truth: lcm-db
content_status: complete
coverage_status: verified
delivery_status: pending
---

# Raw Report

## Conversation

[2026-06-08 09:09:01 CST] openclaw-control-ui(webchat):现在我要分析 lcm.db
[2026-06-08 09:09:08 CST] 我:分析完成,以下是 lcm.db 的完整结构与内容报告。
...

raw-docx(Microsoft Word 2007+)

  • PingFang SC 字体,A4 纸张带边距
  • 用户消息:深红色(C00000)
  • 助手消息:黑色(000000)
  • 内置 OOXML fallback 生成器(无 python-docx 依赖时自动使用)

定时任务(Cron)

⚠️ Cron 创建注意事项(必读)

创建 raw-report 的 cron 任务时,必须遵守以下规则:

  1. --assistant-name 取当前 agent 的 IDENTITY.md 名字:从当前 workspace 的 IDENTITY.mdName 字段取值(如 小腾创业庄园庄主),禁止使用脚本默认值"龙虾",也禁止使用 openclaw.json 中的 identity.name(那是配置名,不是显示名)。
  2. --user-name 取 USER.md 中的称呼:从当前 workspace 的 USER.mdWhat to call them 字段取值(如"林老师")。如果该字段为空或未定义,才使用脚本默认值"你"。
  3. 不传 --date 参数:脚本默认取昨天数据,cron 场景下无需指定日期。
  4. payload.message 末尾必须覆盖 cron skill 默认约束:cron skill 默认要求"不要调用 message 工具",但 raw-report 场景必须通过 message 工具发送生成的 docx 文件。因此 message 末尾必须追加:要求:必须使用 message 工具发送生成的 docx 文件,参数用 media 传递文件的绝对路径
  5. 推送消息风格:通过 message 工具发送到外部渠道时,只需一句话简要说明(如"昨日对话报告已生成"),并附带生成的 word 文档。

创建每日 08:00 定时报告

通过 cron 工具创建每日定时任务:

名称:daily-raw-report
时间:每天 08:00(Asia/Shanghai)
类型:agentTurn(isolated session)

触发命令(通过 cron 工具添加):

{
  "name": "daily-raw-report",
  "schedule": {
    "kind": "cron",
    "expr": "0 8 * * *",
    "tz": "Asia/Shanghai"
  },
  "sessionTarget": "isolated",
  "payload": {
    "kind": "agentTurn",
    "message": "请生成昨日的 raw report。执行命令:python3 <SCRIPT_PATH>/scripts/raw-report.py --agent-id main --assistant-name QClaw --user-name 主人 --output-md ~/.qclaw/raw-report-data/raw-md/report.md --output-docx ~/.qclaw/raw-report-data/raw-docx/report.docx --format both。要求:必须使用 message 工具发送生成的 docx 文件,参数用 media 传递文件的绝对路径"
  },
  "delivery": {
    "mode": "announce"
  },
  "enabled": true
}

说明:

  • 不传 --date,脚本默认取昨天数据
  • --assistant-name--user-name 按上方注意事项 1、2 规则动态填入,禁止使用脚本默认值
  • message 末尾的"要求:必须使用 message 工具..."不可省略,否则 cron 任务不会发送文件
  • 推荐 sessionTarget: "isolated" 避免主会话干扰
  • delivery.mode: "announce" 完成后在当前 channel 通知

依赖

# python-docx(可选,生成富文本 docx;不装则使用内置 OOXML fallback)
pip install python-docx

版本历史

共 3 个版本

  • v1.0.2 Initial release 当前
    2026-06-12 16:21 安全 安全
  • v1.0.1 Initial release
    2026-06-11 14:40 安全 安全
  • v1.0.0 Initial release
    2026-06-11 14:31 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,349 📥 317,694
security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,210 📥 266,145
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 666 📥 323,786