/bookmark command — set named cache breakpoints for cache-safe rewind

Resolved 💬 3 comments Opened Feb 18, 2026 by kitaekatt Closed Mar 19, 2026

Problem

Using /rewind causes a cache miss. When users rewind to an earlier point in the conversation, the cached context from that point is invalidated, requiring expensive re-reads on subsequent turns. This makes /rewind costly to use even when the user knows exactly where they want to go.

Proposed Solution

Add a /bookmark [name] command that marks a point in the session and creates a cache_control breakpoint at that position. When the user runs /rewind [name], the session rewinds to that bookmark without evicting the cached context — the cache checkpoint is preserved because it was explicitly created at bookmark time.

Usage

/bookmark                    # create a bookmark at current position (auto-named)
/bookmark before-refactor    # create a named bookmark
/rewind bookmark             # rewind to the most recent bookmark
/rewind before-refactor      # rewind to a specific named bookmark

Expected Behavior

  • /bookmark name stores the current message index and triggers a cache_control ephemeral breakpoint at that position
  • /rewind name truncates the conversation to the bookmarked position and resumes from the pre-existing cache checkpoint — no cache miss
  • Multiple named bookmarks can coexist in a session
  • Bookmarks are listed somewhere discoverable (e.g., /bookmark --list)

Why This Matters

Users often know in advance where they may want to rewind — before a risky refactor, before a long agentic loop, at a known good state. Today they have to choose between the convenience of /rewind and the cost of a cache miss. Bookmarks decouple "mark this point" from "rewind happened to land here," making both cache-safe and intentional.

Relationship to Existing Features

This is additive to /rewind — unnamed /rewind behavior is unchanged. Bookmarks are opt-in and require user intent.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗