Claude-skill-registry dialogue-save-session

Save session context for continuity across sessions. Creates a per-user session memo capturing active focus, recent work, and open questions. Triggers on "save session", "end session", "session memo", "remember context".

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/dialogue-save-session" ~/.claude/skills/majiayu000-claude-skill-registry-dialogue-save-session && rm -rf "$T"
manifest: skills/data/dialogue-save-session/SKILL.md
source content

Skill: Save Session

Saves session context to a per-user session memo file for continuity across Claude sessions. This implements the TMS externalisation operation.

When to Use

  • At the end of a work session to preserve context
  • Before switching to a different task or project
  • When you want the next session to have context about current work

How It Works

Session memos are stored per-user at

.dialogue/session-memo-{username}.yaml
. This supports multi-user workflows where each developer has their own session state that doesn't conflict with others.

At session start, the Dialogue Framework hook reads your session memo and includes key context in the system message.

Schema

# Session memo for {username}
username: "pidster"
last_session: "2026-01-16T18:30:00Z"
active_focus: "FW-017: Merge-Friendly Artifact Structure"
recent_tasks:
  - "FW-017"  # Tasks worked on
recent_decisions:
  - "DEC-20260116-180240"  # Decisions made
open_questions:
  - "How should session memos handle task completion?"
notes: |
  Optional freeform notes about session context.

# Interaction mode preference (overrides project config.yaml)
# Options: human-led | partnership | ai-led
interaction_mode_preference: partnership

# Feature explanation tracking (for teach-by-doing in ai-led mode)
feature_explanations_given:
  decision_logging: 0      # Times explained (stop after 2-3)
  observation_logging: 0
  task_management: 0

To Save Session Context

Gather the following information and write to

.dialogue/session-memo-{username}.yaml
:

  1. Determine username: Use
    $USER
    environment variable
  2. Identify active focus: Current task or primary activity
  3. List recent work: Task IDs worked on, decisions made
  4. Note open questions: Unresolved questions or blockers
  5. Write file: Create/update
    .dialogue/session-memo-{username}.yaml

Example

# Determine username
USERNAME="${USER:-$(whoami)}"

# Write session memo
cat > .dialogue/session-memo-${USERNAME}.yaml << 'EOF'
username: "pidster"
last_session: "2026-01-16T18:30:00Z"
active_focus: "FW-017: Merge-Friendly Artifact Structure"
recent_tasks:
  - "FW-017"
recent_decisions:
  - "DEC-20260116-180240"
open_questions:
  - "How should session memos handle multi-session context?"
notes: |
  Completed per-file migration. Next: test with new session.
interaction_mode_preference: partnership
feature_explanations_given:
  decision_logging: 2
  observation_logging: 1
  task_management: 0
EOF

Updating Interaction Mode

When saving a session, preserve any existing

interaction_mode_preference
unless the user has changed it during the session. If the user used
/set-mode
, update the preference accordingly.

Multi-User Workflow

Each user has their own session memo file:

  • session-memo-pidster.yaml
  • session-memo-alice.yaml
  • session-memo-bob.yaml

This avoids merge conflicts in distributed VCS workflows - session state is personal context, not shared state.

Relationship to Other Skills

SkillPurpose
dialogue-manage-tasks
Track shared task state
dialogue-log-decision
Record shared decisions
dialogue-save-session
Preserve personal session context

Session memos reference tasks and decisions but contain personal context about what you were working on, not the shared project state.