Skip to content

Releases: skaft-software/ygg

Ygg v0.6.0

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 23 Aug 23:49

0.6.0 — 2026-08-23

Added

  • Deferred tool-schema loading, ported from Pi's deferred-tools design:
    tool results can now carry added_tool_names — the set of tools that became
    available as a consequence of that execution (for example an extension or
    MCP server registering tools on first use). Models advertising the new
    deferred_tool_loading capability stop re-sending announced schemas in the
    static request tool set; providers without the capability are unaffected.
    This is the load-bearing prerequisite for lazily registered extension and
    MCP tool schemas.
  • Delegated workers now expose a bounded rolling recent_tools activity ring
    (last six tool calls with flattened argument summaries, host timestamps, and
    an error flag) on every agent/list record, and the /subagents picker rows,
    inspect detail, and headless list render the latest action live — so each
    worker answers "what is it doing right now" without opening its transcript.
  • Terminal-gate rejections (CandidateRejected) now carry cumulative session
    cost alongside run cost, so delegated-worker spend tracks token usage between
    accepted turns instead of jumping at settlement.

Changed

  • Subagents now inherit the parent's full standard tool scope (read, search,
    edit, write, bash) by default, matching Claude Code's Task workers;
    pass tools: [read, search] to keep a worker read-only. Worker prompts,
    profiles, the spawn schema, and skill guidance were updated accordingly.
  • The interactive composer's slash-command list refreshes when extension
    contributions change, and an unknown slash command now names enabled
    extensions that are not ready instead of failing with a bare error.

Added

  • Added checksum-verified, bounded, atomic executable-extension bundles for the
    small first-party release catalog and offline/local archives. ygg extension install, list, update, and remove now manage API 0.2 bundles without
    enabling or trusting them; managed nested skills are discoverable but remain
    inactive until explicitly loaded.
  • Added deterministic release packaging, complete tracked-file inclusion checks,
    local install/remove smoke coverage, and post-publication install/update smoke
    coverage for every catalog bundle.
  • Added an interactive /extensions installed-bundle activation menu that
    persists only enablement, never trust, rebuilds the extension host at the idle
    boundary, and becomes read-only when a higher-precedence activation source is
    authoritative.
  • Added a native /subagents worker browser with arrow-key selection,
    owner-bound authoritative live refresh, stable-ID focus, and scrollable,
    owner-authorized read-only delegated transcripts.
  • Added subagent_continue to the first-party ygg-subagents extension:
    it steers an active worker through agent/message or resumes a settled
    worker as a new run of its durable session through agent/follow_up. A
    resumed worker keeps its conversation context, and the host clears the
    stale completion timestamp and re-anchors an elapsed wall deadline so the
    new run owns a fresh budget.
  • Workers in ygg-subagents can now be granted edit, write, and bash
    per spawn through the spawn tools list. The host's scoped tool snapshot
    is the enforcement boundary; the default remains the read-only
    read/search pair.
  • Cargo-installed binaries now embed the text documentation and materialize a
    versioned share/ygg/ tree that refreshes after Cargo-channel updates.

Changed

  • Kept the target-specific Ygg Serve package.toml application archive distinct
    from generic executable-extension extension.toml bundles.
  • Removed ambient executable-extension header/status/footer and presentation
    activity from TUI chrome; extension and worker state now appears only in
    explicit interactive views.
  • Routed the coding product's in-harness child sessions through the trusted,
    owner-bound ygg-subagents extension. Ultra is now unavailable without its
    live observation service, and the root no longer receives a parallel native
    collaboration tool surface.
  • Removed the fixed aggregate subagent token/cost reservation pool. First-party
    children now have fresh contexts and inherit the parent's context/output and
    optional session-token settings exactly; an unlimited parent remains unlimited.
  • Raised first-party subagent limits from 2 active/16 retained children per
    owner to 8 active/32 retained, with explicit ceilings of 256 turns,
    50,000,000 microdollars, and 24 hours of wall time.
  • Made per-child turn, cost, and wall-time ceilings optional in
    agent/spawn.policy: null (or omitted) inherits the parent session's

Ygg v0.5.0

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 20 Aug 05:14

Ygg v0.5.0

Ygg v0.5.0 expands the executable-extension contract, adds supervised extension
lifecycle support and bounded task delegation, and hardens the default terminal
and graphical execution paths. It remains pre-1.0 software: configuration,
sessions, extension APIs, and provider behavior may evolve.

Ygg and its extensions are not operating-system sandboxes. They run with the
authority of the user who launches them; use OS isolation for untrusted
workspaces, models, or extension packages.

Install Ygg

Ygg requires rg (ripgrep). The version-pinned installer selects and verifies a
prebuilt binary for GNU/Linux x86-64, macOS x86-64, or macOS Apple silicon:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.5.0/install-ygg.sh | sh

To compile the pinned release instead, install Rust 1.86 or newer:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.5.0/install-ygg.sh \
  | sh -s -- --from-source

Or use Cargo directly:

cargo install --locked \
  --git https://github.com/skaft-software/ygg \
  --tag v0.5.0 \
  --bins \
  ygg-coding-agent

The installer and Cargo command install both ygg and ygg-host.

Upgrade from v0.4.0 or earlier

Re-run the pinned installer command above, using the same YGG_INSTALL_DIR if
an earlier installer used a custom location. Releases through v0.4.0 do not
have the ygg update command; the v0.5.0 installer replaces both binaries and
the packaged documentation while leaving ~/.ygg configuration, credentials,
sessions, and other user data untouched. Restart the shell, or run hash -r,
then confirm ygg --version reports 0.5.0.

For an existing Cargo installation, run the pinned cargo install command above
instead. After either upgrade path, an installed Serve package must be updated
separately:

ygg extension update ygg-serve

Install Ygg Serve

The graphical interface remains an optional application extension:

ygg extension install ygg-serve
ygg serve

The official package must exactly match Ygg 0.5.0. Supported artifacts are
provided for GNU/Linux x86-64, macOS x86-64, and macOS Apple silicon. Linux
musl targets are not supported.

Highlights

  • Added executable-extension API 0.2 with feature negotiation, bounded
    concurrency, serialized writes, cancellation, progress, artifacts,
    lifecycle observations, secret brokerage, dynamic tool catalogs, and child
    agent sessions.
  • Added automatic extension supervision with bounded restart backoff and stale
    generation fencing, plus Python SDK 0.2 support.
  • Added provider-neutral durable session goals and metadata-gated Ultra
    reasoning with bounded V2 task delegation.
  • Added isolated child sessions with private team storage and provenance
    records.
  • Updated Codex discovery and Responses Lite handling to use advertised
    capabilities rather than model-name or subscription-plan inference.
  • Made full host access the default and made --safe-mode the canonical
    approval-required mode. The hidden --safe alias remains accepted.
  • Reworked controlled Bash classification with tree-sitter parsing and retained
    strict bounded execution semantics.
  • Reworked compaction around bounded Pi-style recent-token retention and
    improved TUI liveness, completion rendering, and reasoning labels.
  • Improved large-session discovery and long-session rendering performance.
  • Added ygg update with install-method detection and version-pinned updates.

Compatibility and limitations

  • The 0.2 extension contract is new; API 0.1 remains accepted as a
    backward-compatible text-oriented contract.
  • Ultra and V2 delegation require matching capabilities in live provider
    metadata and are disabled conservatively when metadata is unavailable.
  • The default full-access mode grants commands and workspace mutations the
    launching user's authority. Use --safe-mode or OS isolation for untrusted
    work.
  • First-party MCP, browser, web-search, computer-use, memory, LSP, and
    subagent-orchestration packages are not included. The coding product does not
    yet configure an approval UI adapter or secret provider.
  • Serve remains loopback-only and does not provide LAN pairing or native client
    applications.

Release acceptance

The deterministic configured-provider matrix is required by CI. Credentialed
OpenAI, Anthropic, OpenAI Chat, and native-audio checks are separately approved
and may be waived when release credentials are unavailable. See the
configured-provider acceptance record
for the exact policy and evidence.

See the changelog,
extension documentation, and
security policy
for the complete behavior and boundaries.

Ygg v0.4.0

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 10 Aug 18:27

Ygg v0.4.0

Ygg v0.4.0 is a stable native-integration, session-performance, navigation,
and presentation release. It includes the terminal application, the versioned
ygg-host process protocol, and the separately packaged, loopback-only Ygg
Serve web interface.

Ygg and its extensions are not operating-system sandboxes. They run with the
authority of the user who launches them; use OS isolation for untrusted
workspaces, models, or extension packages.

Install Ygg

Ygg requires rg (ripgrep). The version-pinned installer selects and verifies a
prebuilt binary for GNU/Linux x86-64, macOS x86-64, or macOS Apple silicon:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.4.0/install-ygg-v0.4.0.sh | sh

The version-named installer supersedes the initial unversioned installer for
macOS compatibility. It installs the same immutable, signed v0.4.0 archives;
its own Sigstore bundle is published beside it.

The default installation does not require Rust. To compile the pinned release
instead, install Rust 1.86 or newer and run:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.4.0/install-ygg-v0.4.0.sh \
  | sh -s -- --from-source

Or use Cargo directly without changing a shell profile:

cargo install --locked \
  --git https://github.com/skaft-software/ygg \
  --tag v0.4.0 \
  --bins \
  ygg-coding-agent

Verify the installation with ygg --version and ygg --help. The installer
and Cargo command also install ygg-host; see the native host protocol
for embedding Ygg from another application.

Install Ygg Serve

The graphical interface is an optional application extension. The normal Ygg
binary does not contain its web server or embedded frontend.

ygg extension install ygg-serve
ygg serve

The official package must exactly match Ygg 0.4.0. Supported artifacts
are provided for GNU/Linux x86-64 (x86_64-unknown-linux-gnu), macOS x86-64,
and macOS Apple silicon. Linux musl targets are not supported by this release. To
install a package downloaded separately:

ygg extension install --path ./ygg-serve-0.4.0-TARGET.tar.gz

Lifecycle commands are:

ygg extension list
ygg extension update ygg-serve
ygg extension remove ygg-serve

Serve binds IPv4 loopback only. ygg serve --no-open --port 0 starts it without
opening a browser and asks the operating system for a free port. Removing the
package preserves sessions and other user data.

Highlights

  • The new ygg-host binary exposes protocol v1 over bounded NDJSON for native
    application integrations, with streaming events, ordered typed image/audio
    input, inline and
    configured providers, durable session creation/resume, and seeded history.
  • Headless tool confirmations are denied, typed input requests are cancelled,
    and consumers can cancel a run by terminating the dedicated process group
    they created for the host. Release archives and installers ship both Ygg
    binaries.
  • Existing Codex credentials can be copied on first use from the owner-only
    Codex or Hamr stores into Ygg's owner-only store without changing the source.
  • Serve session inventory now uses bounded, targeted catalog scans, and resume
    hands the already authorized transcript descriptor directly to the worker.
    On the isolated 891-transcript fixture, startup improved from 43.01 seconds to
    19.41 seconds; large-session resume completed in 2.39 seconds.
  • Catalog and resume regressions cover corrupt, symlinked, and trashed sessions,
    unsafe metadata, active-branch model selection, and pathname replacement after
    descriptor authorization.
  • /overview now loads session inventory without creating or opening a
    provisional task, including reconnects and navigation races.
  • The Fleet command center prioritizes sessions needing attention and supports
    task and project search, while sidebar activity indicators make running work
    visible.
  • Prompts submitted during an active graphical run steer by default, failed
    selection no longer moves to a broken focused surface, and retries preserve
    the intended route mode.
  • The graphical source viewer shows line numbers.
  • Configured-provider acceptance now exercises bearer auth/model selection,
    streamed text and tool replay, 429/408 retries, explicit compaction,
    restart/resume, cancellation, and secret-safe provider/phase failures against
    a disposable loopback fixture. Credentialed checks remain separately protected
    and optional.
  • Release dependency gates audit both lockfiles. Serve remains on audited
    lopdf 0.42.0, and a hostile-input regression verifies that a 4,096-level PDF
    is rejected by Ygg's bounded preflight before parser entry.
  • Plain no-color terminal output no longer acquires an ANSI reset when a line is
    truncated, and compact footer costs use three significant figures.
  • Redundant interactive /tool, /docs, /sessions, and /cycle-model
    commands were removed; top-level ygg sessions remains available.
  • /help and the source-checkout system prompt now expose local
    self-documentation paths when Ygg is run from its own repository.

Release acceptance

The deterministic configured-provider matrix passed on the local release
worktree on 2026-08-10. Credentialed OpenAI Responses, Anthropic Messages,
OpenAI Chat, and native-audio representatives were not run because no live
release credentials were available. That optional check is explicitly waived
for v0.4.0; release packaging records the waiver and does not require provider
secrets. See the
configured-provider acceptance record.

See the changelog,
extension documentation, and
security policy
for the complete behavior and boundaries.

Ygg v0.3.2-alpha

Ygg v0.3.2-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 01 Aug 04:03

Ygg v0.3.2-alpha

Ygg v0.3.2-alpha is a reliability release built from the canonical terminal
application. It also introduces the minimum installer and launcher needed for
the separately packaged, loopback-only Ygg Serve web interface.

Ygg and its extensions are not operating-system sandboxes. They run with the
authority of the user who launches them; use OS isolation for untrusted
workspaces, models, or extension packages.

Install Ygg

Ygg requires rg (ripgrep). The version-pinned installer selects and verifies a
prebuilt binary for GNU/Linux x86-64, macOS x86-64, or macOS Apple silicon:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.3.2-alpha/install-ygg.sh | sh

The default installation does not require Rust. To compile the pinned release
instead, install Rust 1.86 or newer and run:

curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/skaft-software/ygg/releases/download/v0.3.2-alpha/install-ygg.sh \
  | sh -s -- --from-source

Or use Cargo directly without changing a shell profile:

cargo install --locked \
  --git https://github.com/skaft-software/ygg \
  --tag v0.3.2-alpha \
  --bin ygg \
  ygg-coding-agent

Verify the installation with ygg --version and ygg --help.

Install Ygg Serve

The graphical interface is an optional application extension. The normal Ygg
binary does not contain its web server or embedded frontend.

ygg extension install ygg-serve
ygg serve

The official package must exactly match Ygg 0.3.2-alpha. Supported artifacts
are provided for GNU/Linux x86-64 (x86_64-unknown-linux-gnu), macOS x86-64,
and macOS Apple silicon. Linux musl targets are not supported in this alpha. To
install a package downloaded separately:

ygg extension install --path ./ygg-serve-0.3.2-alpha-TARGET.tar.gz

Lifecycle commands are:

ygg extension list
ygg extension update ygg-serve
ygg extension remove ygg-serve

Serve binds IPv4 loopback only. ygg serve --no-open --port 0 starts it without
opening a browser and asks the operating system for a free port. Removing the
package preserves sessions and other user data.

Other changes

  • Model and reasoning persistence now edits TOML structurally without destroying
    comments, multiline values, similarly prefixed keys, or table sections.
  • Unknown configuration keys report their source location and likely spelling;
    --strict-config, strict_config = true, or YGG_STRICT_CONFIG=true turns
    those diagnostics into startup failures.
  • Provider requests are not replayed after ambiguous send or response-header
    failures.
  • Native terminal streaming and resize behavior includes the renderer fixes
    described in the changelog.

See the changelog,
extension documentation, and
security policy
for the complete behavior and boundaries.

Ygg v0.3.1-alpha

Ygg v0.3.1-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 26 Jul 06:28

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.

Ygg v0.3.0-alpha

Ygg v0.3.0-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 25 Jul 21:47

Ygg v0.3.0-alpha

Ygg v0.3.0-alpha is a focused terminal-quality and trust-boundary release. It makes
the default interface quieter and easier to copy, turns opaque failed runs into
actionable diagnostics, and carries recent security hardening into a focused
pre-1.0 alpha.

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.0-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.0-alpha \
  --bin ygg \
  ygg-coding-agent

Verify the installation with ygg --version and ygg --help.

Highlights

  • Copy-safe code, quiet composer. Fenced Markdown code uses borderless,
    terminal-adaptive light/dark shading. The default prompt composer stays
    unfilled and restrained at rest, adding a model-colored perimeter shimmer only
    while work is active. Explicit themes retain their authored chrome.
  • Actionable failed runs. The familiar failed · <duration> lifecycle row is
    preserved and now followed by a bounded, terminal-safe reason that is included
    in semantic copy. Provider diagnostics redact the credentials used for that
    request before reaching the frontend.
  • Hardened trust boundaries. Request diagnostics, OAuth and update responses,
    command output, session exports, credential refresh, atomic file publication,
    and extension JSON-RPC framing received focused adversarial coverage and tighter
    failure behavior.
  • Small by design. The release remains a four-crate Rust workspace with direct
    provider traffic, local inspectable sessions, and no hosted Ygg control plane.

Failure-observability note

Earlier interactive releases retained the underlying AgentError in memory but
rendered only a generic failure row. That made historical provider failures
impossible to diagnose from the transcript. v0.3.0-alpha exposes the already
credential-redacted reason safely. It does not guess at, or silently extend, the
existing 120-second stream-idle and 30-minute per-request deadlines.

Compatibility and limitations

  • Existing Ygg sessions and historical exec tool records remain supported.
  • The compiled default theme changes fenced-code chrome while retaining the
    bordered composer; named and custom themes preserve their explicit settings.
  • 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.

Ygg v0.2.0-alpha

Ygg v0.2.0-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 25 Jul 05:31

Ygg v0.2.0-alpha

Ygg v0.2.0-alpha is a local-first terminal coding agent release focused on
multimodal input, durable Responses sessions, native compaction, labeled custom
providers, and a calmer, more accountable terminal experience.

This is an alpha: configuration, session, extension, and public APIs may change
before 1.0. Ygg is not an operating-system sandbox. An enabled bash tool runs
with the authority of the user who launched Ygg.

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.2.0-alpha/scripts/install.sh | sh

For a manual install without changing a shell profile:

cargo install --locked \
  --git https://github.com/skaft-software/ygg \
  --tag v0.2.0-alpha \
  --bin ygg \
  ygg-coding-agent

Verify the installed version:

ygg --version
ygg --help

Highlights

  • Durable OpenAI Responses replay, authoritative raw-output persistence, and
    native compaction transport.
  • Multimodal image/audio reads with capability-aware ingestion and explicit PDF
    path handling for file tools.
  • Labeled custom OpenAI-compatible providers, including Apple Foundation Models
    support.
  • More focused reasoning and activity presentation with bounded, sanitized
    tool-output projections and edit/write diffs.
  • A corrected animated startup identity that reports the running package version,
    selected model, reasoning configuration, and workspace.
  • Terminal lifecycle, media, and transcript rendering fixes.

Compatibility and limitations

  • This release remains alpha software; configuration and public APIs may change.
  • Ygg sends model traffic directly from your machine to the endpoint you select;
    it does not provide a hosted control plane.
  • Command execution, when enabled, can read credentials, access the network, and
    start child processes with the launching user's authority. Use an isolated
    account, container, or VM for untrusted repositories or model endpoints.
  • Existing sessions containing historical exec calls remain renderable; new
    provider schemas use bash.

See the changelog
and security policy
for the complete changes and security boundary.

Ygg v0.1.1-alpha

Ygg v0.1.1-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 24 Jul 06:08

Ygg v0.1.1-alpha

Ygg v0.1.1-alpha is a terminal-product and execution-semantics release. It
restores the animated startup identity, makes the transcript calmer and easier
to scan, improves long-session behavior, adds entitlement-gated GPT-5.6 Pro
reasoning mode, and replaces the model-facing exec tool with a truthful
always-shell bash tool.

This is an alpha: configuration and session APIs may change before 1.0. Ygg is
not an operating-system sandbox, and enabled command execution has the full
authority of the user running it.

Install

Install Rust 1.86 or newer and rg (ripgrep), then run:

curl --proto '=https' --tlsv1.2 -LsSf https://raw.githubusercontent.com/skaft-software/ygg/v0.1.1-alpha/scripts/install.sh | sh

Manual installation without changing a shell profile:

cargo install --locked --git https://github.com/skaft-software/ygg --tag v0.1.1-alpha --bin ygg ygg-coding-agent
export PATH="${CARGO_HOME:-$HOME/.cargo}/bin:$PATH"

Verify the installed binary:

ygg --version
ygg --help

Highlights

  • Animated, model-tinted braille-tree startup card with the current release
    version and active model context.
  • One live reasoning indicator and one in-place activity state; completed
    reasoning is removed in normal mode and retained in verbose mode.
  • Quieter transcript metadata, syntax-colored Bash commands, restrained
    lifecycle dots, consistent indentation, and model-provenance prompt styling.
  • Pi-compatible input, paste, selection, overlay, and native-scrollback
    behavior, with bounded tail hydration for long sessions.
  • Entitlement-gated GPT-5.6 Pro reasoning mode for ChatGPT OAuth Pro routes,
    selectable independently from reasoning effort.
  • The model tool is now named bash and always runs the complete command
    through a selected Bash-compatible shell with -c.

Compatibility notes

  • Explicit tool allowlists must use bash instead of exec.
  • Historical sessions containing exec calls still render correctly.
  • bash_timeout_secs, --bash-timeout-secs, and
    YGG_BASH_TIMEOUT_SECS are the preferred execution-limit names. Previous
    spellings remain accepted as compatibility aliases.
  • Shell selection order on Unix is explicit shell_path, /bin/bash, bash
    on PATH, then sh. $SHELL is not consulted.
  • Pro reasoning mode is rejected unless the exact resolved GPT-5.6 ChatGPT OAuth
    route reports an eligible Pro subscription.

See the changelog
and security guidance
for the complete contract and limitations.

Project overview and documentation: http://skaft.org/ygg

Ygg v0.1.0-alpha

Ygg v0.1.0-alpha Pre-release
Pre-release

Choose a tag to compare

@achuthanmukundan00 achuthanmukundan00 released this 23 Jul 03:15

Ygg v0.1.0-alpha

Ygg is a local-first coding agent for macOS and Linux. This first alpha ships
the interactive terminal UI, chronological plain and response-only print
modes, persistent branchable sessions, bounded tools, automatic context
compaction, local OpenAI-compatible endpoints, and first-class OpenAI,
Anthropic, and OpenRouter-family provider support.

This is an alpha: configuration and session APIs may change before 1.0. Ygg is
not an operating-system sandbox, and enabled command execution has the full
authority of the user running it.

Install

Install Rust 1.86 or newer and rg (ripgrep), then run:

curl --proto '=https' --tlsv1.2 -LsSf https://raw.githubusercontent.com/skaft-software/ygg/v0.1.0-alpha/scripts/install.sh | sh

The installer builds the pinned tag and adds Cargo's bin directory to the
startup file for zsh, bash, or POSIX sh when needed. Restart the shell, then
verify it:

ygg --version
ygg --help

Manual installation without changing a shell profile:

cargo install --locked --git https://github.com/skaft-software/ygg --tag v0.1.0-alpha --bin ygg ygg-coding-agent
export PATH="${CARGO_HOME:-$HOME/.cargo}/bin:$PATH"

Highlights

  • OpenAI Chat Completions, OpenAI Responses, and Anthropic Messages behind one
    provider-independent conversation model.
  • Durable append-only sessions with resume, branching, usage records,
    checkpoints, and bounded compaction.
  • Workspace-trusted local configuration and inspectable filesystem resources.
  • Bounded read, search, edit, write, and command tools with explicit allow and
    deny controls.
  • Local-first model configuration plus cloud catalog discovery and ChatGPT
    subscription authentication.
  • Native terminal scrollback, semantic rendering, visible retries, and
    cancellation that terminates complete process groups.

See the changelog
and security guidance
for the full contract and limitations.