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