session-logs

Поиск и анализ ваших собственных логов сессий (старых/родительских разговоров) с помощью jq.

npx skills add https://github.com/firecrawl/openclaw --skill session-logs

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'

Больше skills от firecrawl

firecrawl-research-index
firecrawl
Найдите статьи, отвечающие на исследовательский запрос, с помощью Firecrawl Research, используя семантический поиск, семантическое и структурное расширение, а также проверку в тексте. Всегда используйте этот навык для любых задач по поиску литературы или извлечению статей — от поиска одной статьи до полных наборов из нескольких статей.
data-analysisresearchweb-scraping
oracle
firecrawl
Лучшие практики использования oracle CLI (объединение подсказок и файлов, движки, сессии и шаблоны прикрепления файлов).
pinecone
firecrawl
Управляемая векторная база данных для производственных AI-приложений. Полностью управляемая, с автоматическим масштабированием, гибридным поиском (плотный + разреженный), фильтрацией по метаданным и пространствами имён.
wpds
firecrawl
Используйте при создании интерфейсов на основе WordPress Design System (WPDS) и её компонентов, токенов, паттернов и т.д.
audiocraft-audio-generation
firecrawl
Библиотека PyTorch для генерации аудио, включая преобразование текста в музыку (MusicGen) и текста в звук (AudioGen). Используйте, когда необходимо сгенерировать музыку из текста…
skypilot-multi-cloud-orchestration
firecrawl
Мультиоблачная оркестрация для ML-нагрузок с автоматической оптимизацией затрат. Используйте, когда необходимо запускать обучение или пакетные задания в нескольких облаках, использовать…
firecrawl-seo-audit
firecrawl
Провести SEO-аудит сайта с помощью Firecrawl. Используйте, когда пользователь запрашивает SEO-аудит, проверку метаданных и заголовков, анализ карты сайта/структуры сайта, возможности по ключевым словам, сравнение SERP конкурентов или приоритетные рекомендации по поисковой оптимизации.
data-analysisresearchweb-scraping
gh-issues
firecrawl
Получает задачи GitHub, порождает под-агентов для реализации исправлений и открытия PR, затем отслеживает и обрабатывает комментарии к ревью PR. Использование: /gh-issues [owner/repo] [--label…