Resume
kleio resume answers one question: "Where did I leave off, what was tried, what's still to do?"
It produces a status briefing — not a research report. If you need "what is the state of topic X?", use kleio trace. Resume is about your in-flight work.
When to use it
- Starting a session after being away from a workstream.
- Handing off in-flight work to another engineer or agent.
- After a long context-switch, getting back to the branch you parked.
- Reviewing plan progress before a standup.
How it works
Resume chains several local-first heuristics — no LLM required:
- Workstream resolution — identifies your active branch(es) and plan file(s) across the workspace, including cross-repo workstreams.
- Checklist parsing — extracts todo status from plan markdown (
[x],[ ],[~],~~dropped~~) and frontmatter. - Tried-and-failed detection — finds reverted commits, same-file iteration loops, strikethrough items, and transcript markers.
- Blocker detection — surfaces open questions in plans, transcript blocker keywords, and low-confidence decisions.
- Next-step queue — presents open todos in plan document order (not relevance order).
Cross-repo support
Workstreams routinely span multiple repositories. With workspace-scoped storage, kleio resume sees branches, commits, decisions, and plan items across all repos in the workspace.
Cross-repo entries are tagged with [repo-id] in the output. The branches: and scope: sections list every repo with in-flight changes.
Command reference
kleio resume [workstream] [flags]
Args:
workstream Branch name, plan file path, or plan ID.
Omit to auto-detect from current branch / recent plan.
Flags:
--branch <name> Explicit branch override
--plan <path|id> Explicit plan file or plan ID override
--since <duration> Override activity window (default 14d)
--json JSON output
--verbose Show all items uncapped
--debug-score Show commit attribute tags
Output template
=== resume: feature-name (cross-repo workstream) ===
Workstream: feature-name
plan: .cursor/plans/feature_name.plan.md
branches:
repo-a: feature/name (8 commits ahead of main, 2d idle)
repo-b: feature/name (3 commits ahead of main, 5d idle)
scope:
repo-a: api/handlers/, internal/auth/
repo-b: internal/commands/
Status (from plan checklist):
[x] Step one (repo-a)
[ ] Step two (repo-a) ← next
[~] Deferred item (repo-b) [deferred]
1/3 done, 1 open, 1 deferred
Tried and failed (heuristic):
* [repo-a] Reverted approach: direct storage (commit f8a3b21 reverted)
Blockers (from transcript / plan):
* Open question in plan: "should keys be workspace-scoped?"
.cursor/plans/feature_name.plan.md > L142
Next steps (in plan order):
1. Step two (repo-a) ← next
Sections are omitted entirely when empty — no "(none detected)" filler.
Workspace storage
Resume relies on workspace-scoped storage (see kleio config workspace show). The workspace resolver auto-detects your workspace from IDE state, workspace files, or multi-repo directory structure. See the CLI reference for details on kleio init --workspace and kleio migrate workspace.