ruyishell v0.1.6
Session-switch fix, three-state approval, llama.cpp compatibility & Windows ConPTY improvements
馃殌 New Features
- Three-state permission approval:
approval = "ask"(default, reads free, writes ask) /"always"/"never", with/approvecommand and--always-approve/--never-approvestartup flags /history <number>: recall a previous user input to the current edit line from shell history- llama.cpp context overflow auto-adaptation: recognize llama.cpp's "exceeds the available context size" error, parse the server's actual
n_ctxand adjust the window dynamically, no hardcoded limit needed - Shell events get their own role: shell events become an independent
eventsrole; tool calls are displayed paired with their results - HumanDuration smart display: render duration in its largest non-zero unit(s), no trailing zero segments
馃悰 Fixes
- Session switch no longer leaks old shell events: reset the shell event ring and half-typed line on session switch, preventing old-session context from bleeding into the new session
- PowerShell input line preserved after mode switch: keep the PowerShell prompt row intact when switching between shell and AI mode
- Windows ConPTY window size polling: actively poll console size on Windows so ConPTY keeps up with resize events
- Pty slave cross-platform refactor + macOS reconnect: split reopen logic by platform (unix/windows); on macOS the revoked pty slave can be reopened after a session leader is killed
- Guarantee reply stream ends on a fresh line
- Bash OSC 7 cwd marker now actually emits
cdin shell mode syncs rysh cwd- Windows terminal color detection no longer discards all colors
- Blank line between thinking and answer on phase switch
馃摎 Documentation
docs/roadmap.md: task provenance and model A/B evaluation planningREADMEadds error-in-shell scenario description (both English and Chinese)- Real-time thread inline design document
馃敡 Build Fix
- Replace
syscall.Dup2withunix.Dup2incmd/rysh/ptyslave_unix.goto fix cross-compilation onlinux/arm64(Go 1.25+ deprecatedsyscall.Dup2)
Full changelog: v0.1.5...v0.1.6
Install
macOS / Linux:
curl -fsSL https://github.com/frybox/ruyishell/releases/latest/download/install.sh | bash
Windows: download the zip for your CPU architecture and put rysh.exe on your PATH.