DSCC
home / guides / sessions

Sessions

DSCC persists every interactive run to disk so you can inspect, resume, or compact it later.

Storage

Item Value
Directory .dscc/sessions/
Filename session-{timestamp_millis}.json
Struct Session { version, messages[] } at runtime/src/session.rs:46–50
Message { role, blocks[], usage? }
Block types text, tool_use, tool_result

Commands

Command Purpose
/session list List local sessions
/session switch <id> Switch to an existing session
/resume <session-path> Resume a session from a path (slash form)
--resume <file.json> [/cmd...] CLI flag, resumes then optionally runs a slash command (main.rs:301–302, 490–506)
/export [file] Write current conversation to disk
/compact Replace history with a summary

Compaction

Handled in-library at crates/commands/src/lib.rs:1756–1770. The default trigger fires when the conversation has more than 4 messages AND at least 10,000 estimated tokens (compact.rs:14–20).

The summary bundles (compact.rs:143–227):

See also