Repository navigation
PatchPilot v2.1.0
Background agents, a setup that finds your runtime on its own, and a new default model.
Added
- Background agents.
exploreandgeneralagents run while the main agent keeps working. The list under the status bar shows each one with its time and tokens. Select an agent to read its history or message it. Esc stops the agent you are viewing,ctrl+x ctrl+kstops all of them. Agents survive a restart, and a finished batch wakes an idle main agent. - First-run setup finds every running runtime (Ollama, LM Studio, MLX, llama.cpp, vLLM) and lists it with its models. With nothing running, it shows the install commands for macOS, Linux or Windows and checks again on enter. It ends with a tool-call check on the chosen model, a few prompts to try and the keys that matter.
- MLX autostart on Apple Silicon. When the configured endpoint does not serve the model, PatchPilot starts
mlx_lm.server, waits for a real answer and stops the server on exit.PATCHPILOT_AUTOSTART=0turns it off. patchpilot benchruns fixed coding tasks against the configured model and reports pass rate and speed.- A file being written by a tool call is shown while the call streams, and edits are shown as diffs.
/compact nowsummarises older turns on demand.
Changed
- New installs default to Qwen3.5 9B:
qwen3.5:9bon Ollama,mlx-community/Qwen3.5-9B-4bitfor MLX. Existing settings in~/.patchpilot/.envare kept. - A session is one conversation. Tool calls and their results stay in history as native tool messages, and older turns are summarised only above 85 % of the context window.
- In
bypassmode the shell is trusted: it may reach outside the workspace and run interpreters.rm -rf,git push/reset/clean,npm publishand glob or variable expansion still ask, and secret paths stay blocked. - The scrollback shell is the only interface. The transcript goes to the terminal's own scrollback, and the session is no longer printed twice.
- Sampling follows each model family's published values, including Qwen's presence penalty against repetition loops.
globmatches real patterns and starts at a pattern's literal directory. Reading a folder returns a listing.
Fixed
- Model streams stay open while a large tool call is being written, and the status line says so.
- A reply cut off at the output limit no longer ends the run.
- A model that rewrites the same file a third time without a check in between is stopped.
- A stopped run shows as stopped and never prints half a tool call.
- Terminal escape sequences in tool output no longer reach the transcript.
- A write is refused when the file changed since that agent last read it, and approval prompts open one at a time with the agent's name.
Security
- zod 4.6.7 and vitest 5 close the open npm advisories.
Verification
npm run typechecknpm testnpm run buildnpm auditnpm audit signaturesnpm pack --dry-runnpx knip