---
title: "Next Edit Prediction"
description: "- Users can decide to switch between autocomplete and next edit. - Next edit triggers at the same time autocomplete is triggered, via vscode's inline completion provider. - The following happens after the trigger: - User's current cursor position is captured. - We define an editable range, ±5 lines from the current cursor position. - User's most recent edit is captured as a unified diff. (this is "
type: skill
canonical_url: https://claudary.paisolsolutions.com/skills/readme-325
source: "Claudary"
difficulty: intermediate
author: "Claude Code Knowledge Pack"
date: 2026-07-10T11:36:23.836Z
license: CC-BY-4.0
attribution: "Next Edit Prediction — Claudary (https://claudary.paisolsolutions.com/skills/readme-325)"
---

# Next Edit Prediction
- Users can decide to switch between autocomplete and next edit. - Next edit triggers at the same time autocomplete is triggered, via vscode's inline completion provider. - The following happens after the trigger: - User's current cursor position is captured. - We define an editable range, ±5 lines from the current cursor position. - User's most recent edit is captured as a unified diff. (this is 

## Overview

# Next Edit Prediction

## What is it?

## How is it different from autocomplete?

## Where are we right now?

- Users can decide to switch between autocomplete and next edit.
- Next edit triggers at the same time autocomplete is triggered, via vscode's inline completion provider.
- The following happens after the trigger:
  - User's current cursor position is captured.
  - We define an editable range, ±5 lines from the current cursor position.
  - User's most recent edit is captured as a unified diff. (this is currently buggy)
  - This is sent to the model, which returns a new editable range with next edit predictions.
  - We display this new editable range in a SVG decoration.
  - User can either tab to accept or esc to reject.
    - On accept, the old editable range will be replaced by the new editable region. The cursor will be moved to the last line containing some change.
    - On reject, nothing happens.

## What needs to be worked on?

- User edit captures.
- Find a better way to trigger next edit (this links back to the diff capture problem).
  - We can see that next edit triggers as soon as the user accepts a change. This is because autocomplete runs the same way.
  - I think autocomplete has some filter logic that doesn't display the ghost text under some conditions, which I am guessing are the following:
    - The model does not have any more completions to create.
    - The prediction at the cursor location has been cached.
- JetBrains integration.

---

Source: [Claudary](https://claudary.paisolsolutions.com/skills/readme-325) · https://claudary.paisolsolutions.com
