Skip to main content

EditVolt Chat

Open the Assistant from the activity bar, or run EditVolt Assistant: Focus on Chat View from the Command Palette. Every conversation runs in one of six modes — pick how much autonomy you want from the mode chip in the composer, or cycle them with ⇧Tab.

ModeWhat it doesTouches your files?
AskQuestions and explanations, with grounded retrievalNever
PlanDesigns an approach step by stepOnly after you approve
DebugEvidence-first loop — hypothesize, instrument, reproduce, fix, clean upStaged diffs you approve
AgentExecutes tasks end to end with tools (the default)Staged diffs you approve
DesignAgent plus a live in-editor browser it can see and driveStaged diffs you approve
MultitaskDecomposes the request into 2–6 subtasks and runs them as parallel workersOne consolidated review

Ask and Plan are read-only by design — nothing changes until you explicitly approve.

Set the mode a new conversation starts in with product.modes.default (default agent).

@-mention context

Type @ in the composer to open the context picker. The categories are:

CategoryWhat it pins
Files & FoldersSearch and pin files or folders from the workspace
WorkspaceHybrid semantic + keyword search over the repo before sending
SymbolA workspace symbol's definition
Commit (Diff of Working State)Your current Git working-tree diff vs HEAD
Branch (Diff with Main)Commits on your branch since diverging from main
Git Ref (Diff vs)Any branch or tag as the diff base
Commit (Diff vs)A commit SHA to diff against HEAD
Pull Request (Diff)An open GitHub PR, via the gh CLI
ProblemsEditor diagnostics — errors and warnings
DocsYour indexed documentation library, or a pinned URL
Past ChatsA previous conversation's transcript
TerminalsAn open terminal's recent output
Browser (Fetch)Lets the turn fetch live web pages and URLs
BrowserBrowser tools — inspect elements, console logs, network traffic (needs product.browser.enabled)
MemorySearch persistent EditVolt memory
SkillsRun a workspace skill from .editvolt/skills

You can also paste, drag, or attach images — vision works across all connected providers. Attachment size limits are configurable (product.composer.attach.imageMaxMb, …ipynbMaxMb, …referencedFileMaxMb).

The base branch used by Branch (Diff with Main) is product.context.changesBaseBranch (default main).

Reasoning effort and output style

Two composer-level controls shape the answer:

  • Effort (product.reasoning.effort, default medium) — how hard the model thinks. auto also serves medium; low and high pin a level across turns.
  • Output style (product.assistant.outputStyle, default default) — concise, explanatory, or structured.

Dictation

Press ⌘⇧Space to dictate into the composer. Speech-to-text runs through Chromium's engine or a local Whisper binary (product.voice.sttEngine: auto | chromium | whisper). Set product.voice.autoSubmit to send automatically when you say one of your product.voice.submitKeywords. Turn the whole feature off with product.voice.enabled.

Reviewing what the AI did

Every agent edit is staged as a diff, never auto-applied. Use Review My Changes for a unified multi-file diff, and checkpoints to roll the workspace back to any earlier point in the conversation.

Related settings: product.edits.inlinePreview (inline diff preview, on), product.edits.formatOnApply (on), product.chat.editResend.confirm (confirm before re-sending an edit, on).

Slash commands

Type / in the composer, or run EditVolt: Slash Command from the palette:

CommandWhat it does
/explainExplain the current selection or file (reasoning-heavy)
/fixFix the diagnostics on the current selection; returns a unified diff
/testGenerate a test using the detected test framework
/reviewBest-practice scan of the current file
/architectArchitecture-level reasoning, ADR-lite (Context / Decision / Consequences)
/whyWorkspace-grounded investigation of "why is X?"
/debugSwitch to Debug mode and run the evidence-first loop
/delegateKick off a parallel subagent — presets: explore, agent, shell, review, debug-repro, ci-investigator

Each command is also its own palette entry, so you can bind it to a key. You can add your own — see Customization.