Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>CodeRewindNew to Visual Studio Code? Get it now.
CodeRewind

CodeRewind

Nabil M. Al-Rousan

|
38 installs
| (0) | Free
To track and replay code changes
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

CodeRewind

Logs every document edit in a VS Code workspace (typed keystrokes, pastes, autocomplete/AI insertions, anything that changes a document) to a local JSONL file, so the session can be replayed and reviewed later. Nothing leaves your machine.

Usage

  1. Run CodeRewind: Start Recording (Command Palette) to begin logging the open workspace. A status bar item shows recording state and can toggle it.
  2. Edit files normally.
  3. Run CodeRewind: Stop Recording when done. The session is saved to .vscode/keylog/session-<timestamp>.jsonl in the workspace.
  4. Use CodeRewind: Export Current Session As... (while still recording) or grab the .jsonl file directly from .vscode/keylog/ (use CodeRewind: Reveal Log Folder to find it).

Add .vscode/keylog/ to your .gitignore if you don't want session logs committed.

Edit attribution

  • Paste via Ctrl+V/Cmd+V is intercepted and stamped "source":"paste-command".
  • Accepting an inline suggestion (e.g. Copilot ghost text) via Tab is intercepted and stamped "source":"suggestion-accept".
  • Editor focus/blur state is also logged as context for manual review.

Edits with a source are confirmed; everything else falls back to a size/speed heuristic. Paste via the right-click context menu, and AI tool UIs that don't go through VS Code's built-in inline-suggestion commit command, aren't captured by the intercepts and fall back to the heuristic.

Replay

Replay a session's .jsonl file with the companion CodeRewind web app (drag the file onto the page, no server or build step needed).

Event log format

Each line of the .jsonl file is one JSON object: either an edit:

{"t":1700000000123,"file":"src/app.ts","type":"insert","rangeStart":120,"rangeEnd":120,"text":"const x = 1;","textLength":12,"docVersion":42}

or a session/file marker:

{"t":1700000000000,"file":"","type":"session-start"}
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft