session-logs
Search and analyze your session index to look up past sessions by date, channel, or user.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Search and analyze your session index to look up past sessions by date, channel, or user.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Analyze and document codebase architecture: dependency graphs, module boundaries, API surfaces, tech debt. Use when: (1) user asks 'how is this codebase structured', (2) onboarding to a new project, (3) planning a large feature that spans modules, (4) identifying tech debt or coupling issues. NOT for: specific code changes (use refactor), reviewing a PR (use code-review).
Structured code review for PRs, diffs, or changed files. Use when: (1) reviewing a pull request, (2) checking code quality before merge, (3) auditing changes for correctness/security/performance, (4) user asks to review code or a diff. NOT for: debugging failures (use debug), running tests (use verify), or general code reading.
Manage dependencies: audit outdated packages, resolve conflicts, evaluate alternatives, handle breaking upgrades. Use when: (1) updating dependencies, (2) resolving version conflicts, (3) checking for vulnerabilities in deps, (4) evaluating a new library. NOT for: general code changes, security vulnerabilities in own code (use security-audit).
Generate or update documentation: API docs, README, CHANGELOG, ADRs. Use when: (1) user asks to document code, (2) writing a README for a new project, (3) updating docs after a change, (4) creating architecture decision records. NOT for: inline code comments (just add them), reviewing docs (use code-review).
Advanced git operations: rebase strategies, cherry-pick workflows, bisect automation, worktree management, conflict resolution, branch cleanup. Use when: (1) complex git operations beyond basic add/commit/push, (2) resolving merge conflicts, (3) reorganizing commit history, (4) managing multiple working branches. NOT for: basic git (use git tools directly), GitHub API operations (use github skill).
Language-specific idiom guides for Go, Python, TypeScript, Rust. Covers non-obvious patterns: project layout, error handling, testing idioms, build quirks, common pitfalls. Use when: (1) writing code in a specific language and need idiomatic patterns, (2) user asks 'what's the Go/Python/etc way to do X', (3) porting code between languages. NOT for: syntax questions (the model already knows syntax).
| name | session-logs |
| description | Search and analyze your session index to look up past sessions by date, channel, or user. |
| metadata | {"openclaw":{"emoji":"📜","requires":{"bins":["jq"]}}} |
Browse your session history stored in the metiq sessions index. Use this when a user references older conversations or asks what was discussed before.
Use this skill when the user asks about prior sessions, parent conversations, or historical context that isn't in memory files.
Session data lives at: ~/.metiq/sessions.json — a JSON index of all sessions.
sessions.json - Index of sessions with metadata (session key, start time, channel, user, topic)Note: metiq stores session metadata in the index but does not persist full conversation transcripts to disk. Use memory files (
~/.metiq/memory/) for information you want to recall across sessions.
sessions.json is a JSON object mapping session keys to session metadata:
{
"discord:12345:67890": {
"sessionKey": "discord:12345:67890",
"startedAt": "2026-03-01T10:00:00Z",
"lastActiveAt": "2026-03-01T10:45:00Z",
"channel": "discord",
"userID": "12345",
"topic": "Discussing Nostr relays"
}
}
jq -r 'to_entries | sort_by(.value.startedAt) | reverse | .[] | "\(.value.startedAt[:10]) \(.value.channel) \(.key)"' ~/.metiq/sessions.json
jq -r 'to_entries | .[] | select(.value.startedAt | startswith("2026-03-01")) | .key' ~/.metiq/sessions.json
jq -r 'to_entries | .[] | select(.value.channel == "discord") | "\(.value.startedAt[:10]) \(.key)"' ~/.metiq/sessions.json
jq -r 'to_entries | .[] | select(.value.userID == "12345") | "\(.value.startedAt[:10]) \(.key)"' ~/.metiq/sessions.json
jq -r '[to_entries[] | .value.channel] | group_by(.) | map({channel: .[0], count: length}) | sort_by(.count) | reverse[]' ~/.metiq/sessions.json
TODAY=$(date -u +%Y-%m-%d)
jq -r --arg today "$TODAY" 'to_entries | .[] | select(.value.lastActiveAt | startswith($today)) | "\(.value.channel) \(.key)"' ~/.metiq/sessions.json
channel:userID:threadID)~/.metiq/memory//compact or /export before ending a session