Sync Claude Sessions
Export Claude Code conversations to Obsidian for observability and analysis.
Quick Reference
# Alias (add to ~/.zshrc)
alias cs="python3 ~/.claude/skills/sync-claude-sessions/scripts/claude-sessions"
# Common commands
cs list # Active sessions
cs list --all # All sessions
cs export --today # Export today's sessions
cs resume --pick # Interactive resume
cs note "got it working" # Add timestamped comment
cs close "done" # Mark session done
Commands
| Command |
Description |
sync |
Sync session (hook or explicit) |
export |
Batch export (--today, --all, <file>) |
resume |
Resume session (--pick, --active, <file>) |
note |
Add timestamped comment |
close |
Mark done + optional comment |
list |
List sessions (--active, --all, --json) |
Workflow Routing
| Task |
Workflow |
| Enable live sync hooks |
workflows/setup.md |
| Log/annotate session |
workflows/log-session.md |
Output
Sessions exported to Claude-Sessions/ with:
- Frontmatter:
type, date, session_id, title, summary, skills, messages, status, tags, rating, comments
- Content: Summary, Skills Used (linked), Artifacts (wiki-linked), My Notes, Conversation
Preserved on Sync
## My Notes section
- Frontmatter:
comments, related, status, tags, rating
Frontmatter Schema
See Templates/Types/claude-session.md for the canonical template.
type: claude-session
date: YYYY-MM-DD
session_id: uuid
title: "..."
summary: "..." # auto-generated by Claude Code or haiku
skills: [skill1, skill2]
messages: 42
last_activity: ISO timestamp
status: active | done | blocked | handoff
tags: [] # see schema/tags.yaml
rating: null # 1-10
comments: |
[2026-02-05 14:30] Comment here
[2026-02-05 15:00] Another comment
related: []
Tags Schema
Tags are defined in schema/tags.yaml with descriptions, keywords, and examples.
Type tags: research, implementation, debugging, planning, brainstorm, admin, quick, video, automation, writing
Project tags: lab, openclaw, personal, client
Agent should read schema/tags.yaml to validate tags when logging sessions.
1---2name: sync-claude-sessions3description: Sync Claude Code sessions to Obsidian markdown. Export, resume, add notes, close sessions. USE WHEN user says "sync sessions", "export sessions", "resume session", "add session note", "close session", "log session".4---56# Sync Claude Sessions78Export Claude Code conversations to Obsidian for observability and analysis.910## Quick Reference1112```bash13# Alias (add to ~/.zshrc)14alias cs="python3 ~/.claude/skills/sync-claude-sessions/scripts/claude-sessions"1516# Common commands17cs list # Active sessions18cs list --all # All sessions19cs export --today # Export today's sessions20cs resume --pick # Interactive resume21cs note "got it working" # Add timestamped comment22cs close "done" # Mark session done23```2425## Commands2627| Command | Description |28|---------|-------------|29| `sync` | Sync session (hook or explicit) |30| `export` | Batch export (`--today`, `--all`, `<file>`) |31| `resume` | Resume session (`--pick`, `--active`, `<file>`) |32| `note` | Add timestamped comment |33| `close` | Mark done + optional comment |34| `list` | List sessions (`--active`, `--all`, `--json`) |3536## Workflow Routing3738| Task | Workflow |39|------|----------|40| Enable live sync hooks | [workflows/setup.md](workflows/setup.md) |41| Log/annotate session | [workflows/log-session.md](workflows/log-session.md) |4243## Output4445Sessions exported to `Claude-Sessions/` with:46- Frontmatter: `type`, `date`, `session_id`, `title`, `summary`, `skills`, `messages`, `status`, `tags`, `rating`, `comments`47- Content: Summary, Skills Used (linked), Artifacts (wiki-linked), My Notes, Conversation4849## Preserved on Sync5051- `## My Notes` section52- Frontmatter: `comments`, `related`, `status`, `tags`, `rating`5354## Frontmatter Schema5556> See `Templates/Types/claude-session.md` for the canonical template.5758```yaml59type: claude-session60date: YYYY-MM-DD61session_id: uuid62title: "..."63summary: "..." # auto-generated by Claude Code or haiku64skills: [skill1, skill2]65messages: 4266last_activity: ISO timestamp67status: active | done | blocked | handoff68tags: [] # see schema/tags.yaml69rating: null # 1-1070comments: |71 [2026-02-05 14:30] Comment here72 [2026-02-05 15:00] Another comment73related: []74```7576## Tags Schema7778Tags are defined in `schema/tags.yaml` with descriptions, keywords, and examples.7980**Type tags:** research, implementation, debugging, planning, brainstorm, admin, quick, video, automation, writing8182**Project tags:** lab, openclaw, personal, client8384Agent should read `schema/tags.yaml` to validate tags when logging sessions.