Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Revision RequestNew to Visual Studio Code? Get it now.
Revision Request

Revision Request

Kiyuob Jung

| (0) | Free
Review revision requests before modifying your files, and choose whether to accept them.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Revision Request

Revision Request lets you review proposed changes and decide which ones to apply to your files.

Each .rr file contains a revision request for one existing UTF-8 text file (for example, .py, .ts, .md, .json, and .tex). Opening it does not modify the original.

Accept applies the change, Ignore leaves the original unchanged.

Installation

  • Search for revision request in the Extensions view in VS Code.
  • Download via marketplace.

Review a revision request

  1. Open the project folder containing the original file in VS Code, and place the .rr request inside that workspace.
  2. Open the .rr file. Its preview opens automatically by default; if needed, right-click the request in Explorer and choose Open Preview.
  3. Compare the original and proposed text, then use Accept or Ignore for each change.
  4. When finished, keep the .rr file to retain available Undo controls, or delete it. By default, Accept all and Ignore all ask whether to delete the request when they complete the review.

Try the example requests for replacements, added and deleted lines, an empty starting file, and clearing all content.

Accepting changes requires workspace trust. Unsaved or conflicting changes to the original block Accept and Undo of accepted changes. If the original has changed outside this review, generate a fresh request from the current file.

Buttons

  • Accept: Apply and save the selected change to the original file.
  • Ignore: Record the decision without changing the original.
  • Accept all / Ignore all: Decide all remaining pending changes in the request.
  • Undo: Return an accepted or ignored change to pending. Undoing Accept restores that change's original text while preserving other accepted changes. Undo remains available while the .rr exists and the original still matches the recorded changes.
  • Why: Show the change's explanation in a popover. The button is disabled when no explanation is provided.
  • ORIGINAL: Click the filename beneath this label to open the editable original file.
  • Native diff: Use this Explorer context-menu command on a .rr file to open VS Code's built-in comparison.
  • Open RR as JSON: Use this Explorer context-menu command to inspect the stored request without automatically opening its preview.

Create a request with an AI agent

Ask your AI agent to create a .rr request without modifying the original. The request format explains the JSON structure and includes examples for replacements, insertions, and deletions.

MCP lets the agent read the original, create requests, open previews, and check your review decisions through the extension. Open and trust your local workspace in VS Code with Revision Request enabled, then ask your agent:

Read the Revision Request MCP guide and help me connect this AI client to Revision Request. Use the configuration generated by the VS Code extension, and verify access to my workspace after connecting.

The agent may need you to run Revision Request: Copy MCP Configuration or reconnect your AI client. Agent Accept, Ignore, and Undo through MCP are disabled by default. See the MCP guide for setup and tool details. MCP is optional when an agent writes a .rr file directly.

For the desktop plugin with bundled skills and an MCP launcher, see plugin setup.

Create a request from your own edits

Use this workflow when you have edited a copy yourself and want someone else to review the changes.

  1. Keep the original file, such as paper/section.tex, and make your edits in a separate copy, such as paper/section.proposed.tex.
  2. Open and trust the workspace containing the original in VS Code. Save both files.
  3. In the Revision Request sidebar, click the + button (Create Revision Request) at the top of Requests. Select the original file first, then the modified copy.
  4. The extension creates paper/section.tex.rr beside the original and opens its preview. Both input files remain unchanged, and an existing request is never overwritten.
  5. Send the generated .rr file, with its changes still pending, to the reviewer.

The reviewer needs Revision Request and a copy of the original with the same contents at the request's workspace-relative path. If they already have that original, you only need to send the .rr file.

Using the repository CLI

From a clone of this repository, run npm ci once, then:

npm run request -- --workspace . --original paper/section.tex --proposed paper/section.proposed.tex --reason "Clarify the definition."

This creates paper/section.tex.rr without changing either input. Optional --output proposals/section.tex.rr selects another existing folder inside the workspace; keep the filename section.tex.rr. Existing requests are never overwritten. Run npm run request -- --help for all options.

Both creation methods preserve the original line endings and UTF-8 BOM. Changes that line entries cannot represent, such as line-ending-only or final-newline-only changes, are rejected.

Other functions

  • Resize columns: Drag the center divider; the preview remembers its position. Double-click to restore equal widths. With the divider focused, use Left/Right arrows, Shift for larger steps, or Home/End for the width limits.

  • Edit proposal: Click pending code to edit one source line in place. Save and Cancel replace its action buttons. Save changes only the .rr proposal; Accept is still required to change the original. Saving the original content removes that entry without affecting other decisions. Undo resolved entries before editing them.

Settings

See Settings for preview behavior, appearance, completed-request cleanup, and MCP permissions, with their defaults.

Limits

Requests are limited to 20 MiB, source text and each fragment to 5 MiB of UTF-8 text, and each reason to 50,000 UTF-8 bytes. Up to 10,000 entries are allowed, subject to bounded comparison time. NUL characters, invalid Unicode, binary files, non-UTF-8 files, absolute paths, traversal, and unsafe filenames are rejected.

See the JSON schema and MCP connection guide.

Develop

npm ci
npm run check
npm run build
npm test

Press F5 to launch an Extension Development Host. Test Accept against disposable files.

Additional checks: npm run test:extension, npm run test:mcp, and npm run test:ui (Edge or Chrome required).

Run npm run package to create a VSIX; its path is printed. Install it with Extensions → Install from VSIX....

Run npm run test:plugin for the plugin connection checks and npm run package:plugin to create its ZIP package. The repo marketplace in .agents/plugins/marketplace.json also supports local installation directly from plugin/.

Tested on Windows with VS Code 1.145.3. macOS, Linux, and VS Code 1.96 remain untested.

License

Revision Request is released under the MIT License, which permits commercial reuse with its required notices. Bundled third-party components retain their respective licenses. Their copyright and license notices are included in THIRD_PARTY_NOTICES.txt with the extension. Keep those notices when redistributing the extension.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft