v0.5.0
The TUI answers the mouse, and the mouse answers back
Seven changes, all in the terminal UI, all about things you could see but not touch.
Select text with a plain drag
Mouse support and native drag-to-select are mutually exclusive at the terminal level — while the app receives clicks, the terminal stops selecting. Now the drag itself resolves the conflict: drag across message text once and mouse reporting pauses for 10 seconds with a notice — drag again and native selection works, in every terminal, no modifier to remember. Shift- or Alt-modified presses open the same window instantly where terminals deliver them, and the idle strip carries a clickable [drag] select text chip that skips the first drag entirely. /mouse off remains the permanent form. (#278)
Links you can actually open
- URLs in chat are OSC 8 hyperlinks everywhere now — including while the reply is still streaming, and including scheme-less
www.example.com, which previously wasn't detected at all. (#277) - Terminals that ignore OSC 8 (stock macOS Terminal.app among them) get a working path too: messages with URLs grow
[open <host>]chips beside[copy], routed through the app's own mouse layer — one click opens the OS default browser. Only http(s) is ever handed to the OS. (#277)
The rail folds away
A « in the sidebar's top-right corner folds it; a » at the head of the status bar brings it back; /sidebar does both from the keyboard. The fold is your choice and survives resizes — the restore control only appears when the terminal could actually seat the rail again. (#275)
Tasks catch up with Sessions
The Tasks header gets its own + new chip, landing straight in the create form, with the N running counter seated mid-gap between title and chip. The counter also counts correctly now: it used to read at most "5 running" because it measured the five visible rows, not the task list. (#282)
⚠️ ctrl+p retires — the menu answers to Esc alone
Esc already opened the menu from an empty idle prompt and already closed every overlay; ctrl+p was a second name for the same thing. It is removed end to end — binding, hint chips, rail label, docs. Muscle memory: Esc on an empty prompt, the ☰ Menu button, the breadcrumb, or the ctrl+g chords. (#280)
Smaller
- The idle hint strip now advertises
ctrl+n · new window— the shortcut existed, nothing on screen said so. The chip is clickable. (#279) - New curated local model: Qwen3.8 27B Uncensored (
JonathanColetti/Qwen3.8-27B-Uncensored-GGUF, noMTP Q4_K_M, 16.5 GB, vision projector included) — the most-downloaded uncensored upload on Hugging Face of the last month. Deliberately last in every list, tagged Use at your own risk, and never the auto-recommendation. (#281)
What's Changed
- feat(tui): clickable links in every chat message, including mid-stream by @plombeer31 in #277
- feat(models-catalog): add uncensored Qwen3.8 27B, pinned last and never auto-recommended by @plombeer31 in #281
- feat(tui): a collapsible rail — « folds it, » brings it back, /sidebar for the keyboard by @plombeer31 in #275
- feat(tui): + new on the Tasks header, with the running counter centered — and counted correctly by @plombeer31 in #282
- feat(tui): the menu answers to esc alone, ctrl+p retires by @plombeer31 in #280
- feat(tui): advertise the ctrl+n new-window key in the idle hint strip by @plombeer31 in #279
- feat(tui): Shift+drag text selection while the mouse is on by @plombeer31 in #278
Full Changelog: v0.4.2...v0.5.0