Ygg v0.3.1-alpha
Pre-releaseYgg v0.3.1-alpha
Ygg v0.3.1-alpha is a rendering-correctness patch for the default native
terminal-scrollback interface. It fixes intermittent transcript corruption while
model output is streaming, especially when terminal resizing and scrolling happen
together.
Ygg is not an operating-system sandbox. An enabled bash tool runs with the
authority of the user who launched Ygg; use OS isolation for untrusted workspaces,
models, or extensions.
Install
Ygg supports macOS and Linux. Install Rust 1.86 or newer and rg (ripgrep), then
run the pinned installer:
curl --proto '=https' --tlsv1.2 -LsSf \
https://raw.githubusercontent.com/skaft-software/ygg/v0.3.1-alpha/scripts/install.sh | shOr install without changing a shell profile:
cargo install --locked \
--git https://github.com/skaft-software/ygg \
--tag v0.3.1-alpha \
--bin ygg \
ygg-coding-agentVerify the installation with ygg --version and ygg --help.
What changed
- Finalized streamed rows now enter native scrollback exactly once when a
provisional Markdown layout shrinks. - Resize handling atomically deletes Kitty image placements, clears the reflowed
screen and saved lines, and replays the complete Ygg-owned transcript at the
new dimensions. - Large lists and tables expose stable item and row commit boundaries, allowing
long responses to keep advancing into scrollback during generation. - Theme changes, compaction disclosure toggles, and other presentation repaints
preserve terminal-owned history. They do not clear scrollback or replay
committed transcript rows. - Deferred session-history prepends and cancelled streaming attempts preserve
globally ordered commit identities without sacrificing lazy long-session
rendering.
The regression suite exercises streaming layout shrink, terminal width changes,
nonzero scrollback offsets, and synchronized output in combination.
Compatibility and limitations
- Existing Ygg sessions and historical
exectool records remain supported. - Resizing intentionally clears all terminal-owned saved lines, including shell
output from before Ygg started, so the transcript can be rebuilt without
depending on terminal-specific reflow behavior. - Native terminal scrollback keeps the styling it had when rows were committed;
a later theme change repaints only the live grid. - Configuration, session, extension, and public crate APIs remain pre-1.0 and may
evolve in later releases. - Command execution is Unix-only and inherits the launching user's filesystem,
environment, process, and network authority.
See the changelog
and security policy
for the complete changes and security boundary.