• v1.8.6 4e0b869dd3

    v1.8.6 Stable

    nntrivi2001 released this 2026-09-24 07:40:32 +00:00 | 161 commits to main since this release

    A safer, steadier lane git surface.

    • Prompt suggestions are back. Typing / in the run form lists the lane's commands and skills (plus the CLI's built-ins) and @ lists its files; Enter picks the highlighted one.
    • Active runs shows this lane only. The run list no longer mixes in every other lane's runs and sessions.
    • No empty box. The lane-detail area no longer shows an empty frame when the lane has nothing extra to report.
    • Git lives beside the diff. The branch line, the uncommitted-files hover list and the Fetch/Pull/Push/Branch actions moved from the lane card to the top of the Changes panel — one compact row, with the panel's tabs and range on a second — and they refresh together: a stage, discard or commit updates the counts at once, and a pull re-reads the diff. The git bar no longer commits — the panel's staged-only box is the one way to commit, so nothing sweeps in files you did not stage.
    • Review hunk by hunk. In Review (and the single-file view) every @@ section has its own Stage and Undo — undo one section instead of the whole file; Undo asks twice. Each file's name stays pinned at the top while you scroll through it, with the file's own Stage/Unstage/Discard beside it.
    • Changes panel, roomier. A fourth width step shows Changes full-width; Stage all stages every unstaged file in one click; the commit box sits at the top and, like the Files finder, stays in view while you scroll; Expand all folders is one request instead of one per folder, so it is instant on large repos.
    • Lanes stay inside their folder. A lane that is a subfolder of its repo now lists and acts on only its own files — reads, stage/unstage/discard, commit and the file list. A commit is refused (400 ESTAGEDOUTSIDE) while something outside the lane is staged, so it can never sweep in another lane's work.
    • The router key is never shown. Any settings.local.json (where a lane's AI Router key lives) is refused with 403 ESECRET, on disk and in history, including through symlinks.
    • File names are file names. Git calls treat paths literally (no glob surprises) and parse odd names correctly.
    • Push and errors. Push picks the branch's own remote (or the only one), with a clear message when there is none; a git refusal (rejected push, bad credentials, diverged pull) is reported as 409 EGIT with git's own text instead of a server error. Unstaging a rename unstages both halves. Git writes from two lanes sharing one repo no longer race on index.lock.
    • Changes panel. Switching lanes, or typing fast in quick-open, can no longer paint another lane's or an older search's results; Enter on a file path opens it; a pending discard is disarmed on lane switch.
    • Large diffs. Diffs over 500 rows render only what is on screen, so very large files stay smooth; side-by-side columns stay in step.
    • Git bar & tooltips. No "in sync" without real counts, the branch list refreshes after a switch, no stale facts after switching lanes, and tooltips no longer flicker or vanish on unrelated scrolling.
    Downloads