Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 7533b85156
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: shakkernerd <165377636+shakkernerd@users.noreply.github.com>
Reviewed-by: @shakkernerd
3.2 KiB
summary, read_when, title
| summary | read_when | title | |
|---|---|---|---|
| CLI reference for `openclaw sessions` (list stored sessions + usage) |
|
sessions |
openclaw sessions
List stored conversation sessions.
openclaw sessions
openclaw sessions --agent work
openclaw sessions --all-agents
openclaw sessions --active 120
openclaw sessions --json
Scope selection:
- default: configured default agent store
--agent <id>: one configured agent store--all-agents: aggregate all configured agent stores--store <path>: explicit store path (cannot be combined with--agentor--all-agents)
JSON examples:
openclaw sessions --all-agents --json:
{
"path": null,
"stores": [
{ "agentId": "main", "path": "/home/user/.openclaw/agents/main/sessions/sessions.json" },
{ "agentId": "work", "path": "/home/user/.openclaw/agents/work/sessions/sessions.json" }
],
"allAgents": true,
"count": 2,
"activeMinutes": null,
"sessions": [
{ "agentId": "main", "key": "agent:main:main", "model": "gpt-5" },
{ "agentId": "work", "key": "agent:work:main", "model": "claude-opus-4-5" }
]
}
Cleanup maintenance
Run maintenance now (instead of waiting for the next write cycle):
openclaw sessions cleanup --dry-run
openclaw sessions cleanup --agent work --dry-run
openclaw sessions cleanup --all-agents --dry-run
openclaw sessions cleanup --enforce
openclaw sessions cleanup --enforce --active-key "agent:main:telegram:dm:123"
openclaw sessions cleanup --json
openclaw sessions cleanup uses session.maintenance settings from config:
-
Scope note:
openclaw sessions cleanupmaintains session stores/transcripts only. It does not prune cron run logs (cron/runs/<jobId>.jsonl), which are managed bycron.runLog.maxBytesandcron.runLog.keepLinesin Cron configuration and explained in Cron maintenance. -
--dry-run: preview how many entries would be pruned/capped without writing.- In text mode, dry-run prints a per-session action table (
Action,Key,Age,Model,Flags) so you can see what would be kept vs removed.
- In text mode, dry-run prints a per-session action table (
-
--enforce: apply maintenance even whensession.maintenance.modeiswarn. -
--active-key <key>: protect a specific active key from disk-budget eviction. -
--agent <id>: run cleanup for one configured agent store. -
--all-agents: run cleanup for all configured agent stores. -
--store <path>: run against a specificsessions.jsonfile. -
--json: print a JSON summary. With--all-agents, output includes one summary per store.
openclaw sessions cleanup --all-agents --dry-run --json:
{
"allAgents": true,
"mode": "warn",
"dryRun": true,
"stores": [
{
"agentId": "main",
"storePath": "/home/user/.openclaw/agents/main/sessions/sessions.json",
"beforeCount": 120,
"afterCount": 80,
"pruned": 40,
"capped": 0
},
{
"agentId": "work",
"storePath": "/home/user/.openclaw/agents/work/sessions/sessions.json",
"beforeCount": 18,
"afterCount": 18,
"pruned": 0,
"capped": 0
}
]
}
Related:
- Session config: Configuration reference