📦 📜 对话日志检索

v1.1.0

使用 jq 搜索并分析你自己的会话日志(旧对话/父对话)。

0· 16·0 当前·0 累计
0

运行时依赖

无特殊依赖

安装命令

点击复制
官方npx clawhub@latest install huimai-session-logs
镜像加速npx clawhub@latest install huimai-session-logs --registry https://cn.longxiaskill.com

技能文档

session-logs 检索存储在 session JSONL 文件中的完整对话历史。当用户提及旧对话、父对话或询问之前内容时使用。 触发条件 用户询问过往聊天、父对话或不在内存文件中的历史上下文时调用。 位置 Session 日志位于:~/.clawdbot/agents//sessions/(使用 system prompt Runtime 行中的 agent= 值)。 sessions.json - 索引,映射 session key 到 session ID .jsonl - 每会话的完整对话记录

结构 每条 .jsonl 包含: type: "session"(元数据)或 "message" timestamp: ISO 时间戳 message.role: "user"、"assistant" 或 "toolResult" message.content[]: 文本、思考或工具调用(过滤 type=="text" 得可读内容) message.usage.cost.total: 单条响应费用

常用查询 按日期与大小列出所有会话 for f in ~/.clawdbot/agents//sessions/.jsonl; do date=$(head -1 "$f" | jq -r '.timestamp' | cut -dT -f1) size=$(ls -lh "$f" | awk '{print $5}') echo "$date $size $(basename $f)" done | sort -r

查找某日会话 for f in ~/.clawdbot/agents//sessions/.jsonl; do head -1 "$f" | jq -r '.timestamp' | grep -q "2026-01-06" && echo "$f" done

提取单会话用户消息 jq -r 'select(.message.role == "user") | .message.content[]? | select(.type == "text") | .text' .jsonl

在助手回复中搜索关键词 jq -r 'select(.message.role == "assistant") | .message.content[]? | select(.type == "text") | .text' .jsonl | rg -i "keyword"

获取单会话总费用 jq -s '[.[] | .message.usage.cost.total // 0] | add' .jsonl

每日费用汇总 for f in ~/.clawdbot/agents//sessions/.jsonl; do date=$(head -1 "$f" | jq -r '.timestamp' | cut -dT -f1) cost=$(jq -s '[.[] | .message.usage.cost.total // 0] | add' "$f") echo "$date $cost" done | awk '{a[$1]+=$2} END {for(d in a) print d, "$"a[d]}' | sort -r

统计单会话消息与 token jq -s '{ messages: length, user: [.[] | select(.message.role == "user")] | length, assistant: [.[] | select(.message.role == "assistant")] | length, first: .[0].timestamp, last: .[-1].timestamp }' .jsonl

工具使用概览 jq -r '.message.content[]? | select(.type == "toolCall") | .name' .jsonl | sort | uniq -c | sort -rn

跨所有会话搜索短语 rg -l "phrase" ~/.clawdbot/agents//sessions/.jsonl

提示 Session 为追加式 JSONL(每行一个 JSON 对象) 大会话可达数 MB,采样可用 head/tail sessions.json 索引将聊天平台(discord、whatsapp 等)映射到 session ID 已删除会话带 .deleted. 后缀 快速纯文本提示(低噪音) jq -r 'select(.type=="message") | .message.content[]? | select(.type=="text") | .text' ~/.clawdbot/agents//sessions/.jsonl | rg 'keyword'

数据来源ClawHub ↗ · 中文优化:龙虾技能库