Skip to content

v0.9.1

Choose a tag to compare

@arielbk arielbk released this 08 Jul 19:07

Fixes completing the Cursor GUI re-entry feature shipped in 0.9.0. Cursor sessions are now identified deterministically, bind to the right flavor, record the real model, and keep their context-token usage.

Cursor session identity

  • Cursor identity is now env-var-driven, mirroring claude/codex: the session id is read from CURSOR_CONVERSATION_ID and its flavor resolved via the composerData:<id> record in state.vscdb. The old cwd + mtime freshness heuristic remains only as a fallback for older Cursor versions or bare terminals. This fixes re-entry landing on the wrong session and GUI sessions binding with the wrong model.
  • Wrong-flavor bindings self-heal: a live GUI session may initially bind to the JSONL agent-transcript flavor (Cursor flushes its composer record lazily), but the locator is canonicalized to the composer flavor on session refresh — clearing the broken cursor-agent --resume button and correcting the model to the real one (e.g. claude-opus-4-8 instead of composer-2.5-fast).
  • A table-less workspace DB is now treated as a missing key instead of erroring.

Context tokens

  • Context-token usage is persisted on sessions (context_tokens_used / context_tokens_limit, migration 0010) instead of being re-derived live, with a preserve-on-null guard matching the existing model/title rules.

🤖 Generated with Claude Code