session-logs

GitHub

用于搜索和分析本地会话日志文件,支持查询历史对话、统计成本及关键词检索。

skills/session-logs/SKILL.md linuxhsj/openclaw-zero-token

Trigger Scenarios

用户询问之前的聊天记录或父级对话内容 需要查找不在当前记忆上下文中的历史背景信息

Install

npx skills add linuxhsj/openclaw-zero-token --skill session-logs -g -y
More Options

Use without installing

npx skills use linuxhsj/openclaw-zero-token@session-logs

指定 Agent (Claude Code)

npx skills add linuxhsj/openclaw-zero-token --skill session-logs -a claude-code -g -y

安装 repo 全部 skill

npx skills add linuxhsj/openclaw-zero-token --all -g -y

预览 repo 内 skill

npx skills add linuxhsj/openclaw-zero-token --list

SKILL.md

Frontmatter
{
    "name": "session-logs",
    "metadata": {
        "openclaw": {
            "emoji": "📜",
            "requires": {
                "bins": [
                    "jq",
                    "rg"
                ]
            }
        }
    },
    "description": "Search and analyze your own session logs (older\/parent conversations) using jq."
}

session-logs

Search your complete conversation history stored in session JSONL files. Use this when a user references older/parent conversations or asks what was said before.

Trigger

Use this skill when the user asks about prior chats, parent conversations, or historical context that isn't in memory files.

Location

Session logs live at: ~/.openclaw/agents/<agentId>/sessions/ (use the agent=<id> value from the system prompt Runtime line).

  • sessions.json - Index mapping session keys to session IDs
  • <session-id>.jsonl - Full conversation transcript per session

Structure

Each .jsonl file contains messages with:

  • type: "session" (metadata) or "message"
  • timestamp: ISO timestamp
  • message.role: "user", "assistant", or "toolResult"
  • message.content[]: Text, thinking, or tool calls (filter type=="text" for human-readable content)
  • message.usage.cost.total: Cost per response

Common Queries

List all sessions by date and size

for f in ~/.openclaw/agents/<agentId>/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

Find sessions from a specific day

for f in ~/.openclaw/agents/<agentId>/sessions/*.jsonl; do
  head -1 "$f" | jq -r '.timestamp' | grep -q "2026-01-06" && echo "$f"
done

Extract user messages from a session

jq -r 'select(.message.role == "user") | .message.content[]? | select(.type == "text") | .text' <session>.jsonl

Search for keyword in assistant responses

jq -r 'select(.message.role == "assistant") | .message.content[]? | select(.type == "text") | .text' <session>.jsonl | rg -i "keyword"

Get total cost for a session

jq -s '[.[] | .message.usage.cost.total // 0] | add' <session>.jsonl

Daily cost summary

for f in ~/.openclaw/agents/<agentId>/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

Count messages and tokens in a session

jq -s '{
  messages: length,
  user: [.[] | select(.message.role == "user")] | length,
  assistant: [.[] | select(.message.role == "assistant")] | length,
  first: .[0].timestamp,
  last: .[-1].timestamp
}' <session>.jsonl

Tool usage breakdown

jq -r '.message.content[]? | select(.type == "toolCall") | .name' <session>.jsonl | sort | uniq -c | sort -rn

Search across ALL sessions for a phrase

rg -l "phrase" ~/.openclaw/agents/<agentId>/sessions/*.jsonl

Tips

  • Sessions are append-only JSONL (one JSON object per line)
  • Large sessions can be several MB - use head/tail for sampling
  • The sessions.json index maps chat providers (discord, whatsapp, etc.) to session IDs
  • Deleted sessions have .deleted.<timestamp> suffix

Fast text-only hint (low noise)

jq -r 'select(.type=="message") | .message.content[]? | select(.type=="text") | .text' ~/.openclaw/agents/<agentId>/sessions/<id>.jsonl | rg 'keyword'

Version History

  • a654bcf Current 2026-07-25 07:13

Same Skill Collection

diffs/skills/diffs/SKILL.md
extensions/acpx/skills/acp-router/SKILL.md
extensions/diffs/skills/diffs/SKILL.md
extensions/feishu/skills/feishu-doc/SKILL.md
extensions/feishu/skills/feishu-drive/SKILL.md
extensions/feishu/skills/feishu-perm/SKILL.md
extensions/feishu/skills/feishu-wiki/SKILL.md
extensions/open-prose/skills/prose/SKILL.md
extensions/tavily/skills/tavily/SKILL.md
open-prose/skills/prose/SKILL.md
skills/1password/SKILL.md
skills/apple-notes/SKILL.md
skills/apple-reminders/SKILL.md
skills/bear-notes/SKILL.md
skills/blogwatcher/SKILL.md
skills/blucli/SKILL.md
skills/bluebubbles/SKILL.md
skills/browser-cdp/SKILL.md
skills/clawhub/SKILL.md
skills/discord/SKILL.md
skills/eightctl/SKILL.md
skills/gemini/SKILL.md
skills/gh-issues/SKILL.md
skills/gifgrep/SKILL.md
skills/github/SKILL.md
skills/gog/SKILL.md
skills/goplaces/SKILL.md
skills/healthcheck/SKILL.md
skills/himalaya/SKILL.md
skills/imsg/SKILL.md
skills/mcporter/SKILL.md
skills/model-usage/SKILL.md
skills/nano-banana-pro/SKILL.md
skills/nano-pdf/SKILL.md
skills/notion/SKILL.md
skills/obsidian/SKILL.md
skills/openai-image-gen/SKILL.md
skills/openai-whisper-api/SKILL.md
skills/openai-whisper/SKILL.md
skills/openhue/SKILL.md
skills/oracle/SKILL.md
skills/ordercli/SKILL.md
skills/peekaboo/SKILL.md
skills/sherpa-onnx-tts/SKILL.md
skills/slack/SKILL.md
skills/songsee/SKILL.md
skills/sonoscli/SKILL.md
skills/spotify-player/SKILL.md
skills/summarize/SKILL.md

Metadata

Files
0
Version
a654bcf
Hash
7c6a0070
Indexed
2026-07-25 07:13

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-22 00:56
浙ICP备14020137号-1 $mapa de visitantes$