session-logs

โดย firecrawl

ค้นหาและวิเคราะห์บันทึกเซสชันของคุณเอง (บทสนทนาที่เก่ากว่า/ต้นทาง) โดยใช้ 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 (การรวม prompt และไฟล์, เอ็นจิน, เซสชัน, และรูปแบบการแนบไฟล์)
pinecone
firecrawl
ฐานข้อมูลเวกเตอร์ที่จัดการแล้วสำหรับแอปพลิเคชัน AI ในระบบผลิต จัดการเต็มรูปแบบ ปรับขนาดอัตโนมัติ พร้อมการค้นหาแบบไฮบริด (dense + sparse) การกรองเมตาดาต้า และเนมสเปซ…
wpds
firecrawl
ใช้เมื่อสร้าง UI ที่ใช้ประโยชน์จาก 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
ดึงข้อมูล Issue จาก GitHub สร้างเอเยนต์ย่อยเพื่อดำเนินการแก้ไขและเปิด Pull Request จากนั้นติดตามและจัดการกับความคิดเห็นในการตรวจสอบ PR การใช้งาน: /gh-issues [owner/repo] [--label…