Releases: arpanpathak/openbatrangs
Releases Β· arpanpathak/openbatrangs
Release list
v0.2.1-alpha
Full Changelog: v0.2.0...v0.2.1-alpha
openBatarangs v0.2.0
What's new in v0.2.0
Stability, safety, UX, and maintainability
- CI now enforces
cargo fmt,cargo clippy -D warnings, and full tests on every push/PR - Chat rendering is cached: idle frames no longer re-highlight the whole log with syntect
- TUI split into focused modules:
input.rs(editing/history/suggestions),scroll.rs(scroll math),chat.rs(highlighting + cache) βapp.rsis ~190 lines smaller - Disk-backed chat history now seeks directly to unread lines instead of re-reading the whole file on every scroll-up (O(chunk) instead of O(total))
nvidia-smiresults are cached for 2s instead of spawning the subprocess every sample- Hardware memory probing extracted behind a
MemoryInfotrait (hardware.rs) - Timed-out shell commands are killed (
kill_on_drop) write_filerefuses to write through symlinked files, closing a workspace-escape hole- Modal TUI confirmations; Ctrl+C cancels tasks/closes pickers; queued tasks survive cancel
- Installer supports
aarch64andx86_64Linux, verifies downloads, requirescurl
Tests
- 181 tests passing: scroll overflow, confirmation state machine, channel confirmer, session-log chunk cursor, chat render cache, symlink write escape, timeout child kill, hardware trait, tiny-terminal layout, and more
v0.1.29 β Stabilization & modular refactor
Stabilization release
Modular codebase
src/cli/β args + config modulessrc/commands/β agent, doctor, models, setupsrc/ollama/β client, types, stream parsingsrc/tools/β files, command, path, text
Rigorous tests (111 total)
- CLI parsing and config mapping
- Ollama NDJSON streaming and serialization
- Filesystem tools with temp dirs, path safety, grep, binary detection
- Shell command execution, stderr, exit codes, timeouts
- Agent tool parsing, streaming, execute read/write
- Perf parsing (/proc, tegrastats)
- TUI wrapping, scrolling, chat history, suggestions, ANSI stripping
Bug fix caught by tests
- CSI ANSI escape stripping no longer leaves color escape remnants
v0.1.28
Fix
- Multiline paste no longer crashes the TUI. The input cursor is now clamped to a valid UTF-8 boundary before every edit, and CRLF/CR pastes are normalized to LF. Pasting multiline text with emoji/wide characters is safe.
- Added a regression test for CRLF + emoji multiline paste.
v0.1.27
Fixes & enhancements
TUI scrolling & text wrapping
- Input box now wraps on display-width boundaries and grows instead of clipping long text; cursor stays visible when the box is height-capped
- Chat auto-scroll no longer yanks the user back to the bottom during generation; scrolling to the bottom re-engages auto-follow
- Chat scrollbar and click-to-open use real wrapped row counts
Chat mode
- Chat mode now keeps real conversation history so the model can follow multi-turn context
- Queued tasks are sequenced correctly
/clearresets history; Ctrl+C removes the dangling user turn
UX fixes
/setupstreams progress into the TUI log instead of corrupting the alternate screen- Perf panel, status line, and banner no longer clip on narrow terminals
- Suggestion selection is clamped correctly
- ANSI escape stripping improved
Model quality
- Strengthened agent/chat prompts against hello-world stubs, placeholders, toy examples, and deeply nested conditionals
Testing
- Added regression tests for wrapping, height growth, and visual row mapping
openBatarangs v0.1.26
v0.1.26
- Enabled bracketed paste β huge pastes now arrive as one Paste event, no more ESC-as-quit mid-paste
- Esc only quits when input is empty (otherwise clears input)
- No more shell eating pasted text after app crash
openBatarangs v0.1.25
v0.1.25
- Fixed crash when pasting huge multi-line text on small terminals (layout overflow)
- Input box and banner now shrink gracefully instead of panicking
- Added regression tests for Unicode paste + small terminal large paste
openBatarangs v0.1.24
v0.1.24
- Fixed crash when pasting large multi-line/Unicode text into the input box
- Cursor now uses byte-index properly, safe with emoji/em-dashes/Unicode
openBatarangs v0.1.23
v0.1.23
- Fixed broken file:// hyperlink display (OSC escape stripping)
- Confirmations ON by default β agent asks before writes/commands
/yolodisables confirmations,/confirmre-enables- Cleaner match-based escape stripping
openBatarangs v0.1.22
v0.1.22
- Code blocks (
...) are now rendered with syntax highlighting - Uses syntect with base16-ocean dark theme β cool and readable