AI Chat & Inline Edit
The core AI features that every user interacts with daily.
Sidebar Chat (Ctrl+L)
The sidebar chat panel supports multiple modes:
| Mode | What it does |
|---|---|
| Ask | Standard chat with codebase context |
| Reasoning | Extended thinking before responding |
| Agent | Multi-step tool calling (like Power Mode but in the sidebar) |
| Gather | Collects context from files before generating |
| Copilot | Follows along as you code, suggests proactively |
Adding context
- Ctrl+L with code selected: sends that selection as context
- @file mentions: attach specific files to the conversation
- Automatic: the chat sees your current file, cursor position, and recent edits
Thread Management
Conversations are persisted as threads. Each thread tracks:
- Message history (user + assistant)
- File checkpoints (snapshots before each edit)
- Staging selections (code context attached to messages)
Threads survive IDE restarts and can be navigated via history.
Inline Edit (Ctrl+K)
Quick code transformation without leaving your editor:
- Select code (or place cursor on a line)
- Press
Ctrl+K - Type what you want changed
- LLM generates the edit as an inline diff (red/green)
- Accept or reject
How it works internally
- Creates a "CtrlKZone" — a bounded region in the editor with an input textarea
- User instruction sent to LLM with the selected code as context
- Response streams back as search/replace blocks
- Diffs render inline in real-time (Fast Apply mode)
- Checkpoints created before and after for undo support
Autocomplete (Tab)
AI-powered completions as you type:
- Fill-in-middle: completes the current statement
- Multi-line: suggests entire blocks
- LRU cached: repeated patterns complete instantly
- Uses FIM (Fill-In-Middle) capable models for speed
- Toggle:
enableAutocompletein settings
Best with a fast local model (Ollama) — no round-trip latency.
Fast Apply vs Slow Apply
Neural Inverse uses two strategies for applying LLM-generated code:
Fast Apply (default):
- LLM outputs search/replace blocks with conflict markers
- Changes stream directly into the editor as inline diffs
- Accept/reject buttons appear inline
- Near-instant visual feedback
Slow Apply (fallback):
- LLM rewrites the entire file
- Traditional diff comparison
- Used when Fast Apply fails or for complete file rewrites
Controlled by enableFastApply in settings.
Commit Message Generation
When you stage changes in the Source Control panel, Neural Inverse can generate commit messages:
- Uses the model selected for the "SCM" feature
- Analyzes staged diffs
- Generates a conventional commit message
- Includes BYOLLM attribution trailers automatically
Contributing
Key files:
void/browser/sidebarPane.ts— sidebar panel registrationvoid/browser/quickEditActions.ts— Ctrl+K action + zone creationvoid/browser/editCodeService.ts— core apply logic (Fast/Slow)void/browser/autocompleteService.ts— tab completion enginevoid/browser/chatThreadService.ts— thread persistence and managementvoid/common/voidSettingsTypes.ts— all settings definitions
Was this page helpful?