Skip to content

Ygg v0.3.1-alpha

Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 26 Jul 06:28
· 294 commits to main since this release

Ygg 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 | sh

Or 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-agent

Verify 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 exec tool 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.