Native Diff in VS Code file editor
What variant of Codex are you using?
VSCode Extension
What feature would you like to see?
Display Codex-generated code changes as native inline diffs directly in the VS Code editor, instead of rendering them in the chat preview panel.
Specifically:
- Write proposed changes to disk (let's not change this existing behavior, more later)
- Show inline diffs within the file editor (using VS Code’s native diff/decorations system)
- Provide per-change controls such as Accept/Reject or Keep/Undo directly in the editor, as well as ability to accept all changes in batch
- Allow users to edit the proposed changes directly in the normal VS Code editor surface before finalizing.
In short, the change review and acceptance flow should match the GitHub Copilot experience: inline, native, and editor-centric rather than chat-centric.
Additional information
The current UI introduces several friction points:
- Granular rejection of side effects
Many Codex changes are largely correct but include small unintended modifications (often 1–5 lines). Reviewing changes in a small chat preview panel makes it difficult to selectively reject only the unwanted lines. Inline diffs would enable precise control at the line or hunk level.
- Editing within the native VS Code environment
The chat-based preview creates a secondary editing surface that bypasses the full VS Code experience (extensions, formatting tools, keybindings, navigation, etc.). Reviewing and refining changes directly in the file editor would:
- Preserve full editor capabilities.
- Reduce context switching.
- Allow immediate manual adjustments before acceptance.
- Formatting and readability limitations
The chat preview panel is constrained in width and does not consistently support features like word wrap (especially problematic for markdown or long lines). Inline diffs in the editor would automatically inherit the user’s editor configuration and improve readability.
There are other related requests, like #2998, but they to conflate two separate concerns:
- Where the diff is displayed (inline editor vs. separate pane/chat).
- Whether changes are written to disk before or after review.
The primary request for me is point 1: native inline diff display with per-change acceptance controls. If inline Accept/Reject (or Keep/Undo) functionality is implemented, the timing of when changes are written to disk becomes a secondary implementation detail rather than the core usability issue.
This change would significantly improve:
- Precision in reviewing AI-generated modifications.
- Workflow consistency with established tools like Copilot.
- Overall developer ergonomics within VS Code
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗