Skip to content

Heddle v2.2.0

Choose a tag to compare

@roackb2 roackb2 released this 31 May 06:10
· 613 commits to main since this release
Immutable release. Only release title and notes can be modified.
v2.2.0
76407df

Heddle v2.2.0

Release date: 2026-05-31

Heddle v2.2.0 continues the API-backed terminal rewrite while keeping the
released production terminal command stable. The focus of this release is
shared slash-command behavior, model/session/reasoning pickers in chat-v2,
and a cleaner model-policy boundary so terminal and browser clients converge on
the same control-plane semantics.

Highlights

CLI v2 slash commands now use the shared control plane

chat-v2 now fetches slash-command metadata from the control-plane API, caches
it locally, and filters hints/autocomplete without calling the server on every
keystroke. Slash command execution goes through the server-owned command
registry, so command syntax and behavior are not duplicated in the terminal UI.

Why this matters:

  • command behavior stays owned by the shared core command modules
  • terminal hint panels and autocomplete remain responsive because filtering is
    local over cached metadata
  • unknown slash commands are handled visibly instead of being submitted as agent
    prompts

Model, reasoning, and session pickers are available in chat-v2

The unreleased chat-v2 path now includes terminal pickers for model selection,
reasoning effort, and session switching. These controls use cached
control-plane data for filtering and submit through the same slash-command
execution path used by other interfaces.

Why this matters:

  • model/session/reasoning controls move toward parity with the current
    production TUI
  • picker UI remains terminal-local while selection semantics stay API-owned
  • the implementation keeps App.tsx thin by moving picker behavior into a
    focused hook and services

Runtime status and command results are more durable

chat-v2 now has a runtime status bar showing selected model, reasoning,
auth mode, context-window estimate, drift status, session, and running state.
Slash-command output also has a stable command result surface instead of being
stored only in transient activity text.

Why this matters:

  • terminal users can inspect the same selected-session runtime facts that power
    command execution
  • command help, session lists, and errors stay visible long enough to read
  • OAuth auth mode is shown without exposing a shortened account identifier in
    the status bar

Model policy is centralized

Model-specific behavior now lives under src/core/llm/models, including
curated model availability, credential-aware support, reasoning-effort levels,
defaults, system model choices, and context-window estimates. GPT-5.5 and
GPT-5.5 Pro now support ultrahigh reasoning effort through this centralized
policy instead of a hardcoded terminal/control-plane rule.

Why this matters:

  • model capability decisions have a single source of truth
  • browser, terminal, slash commands, and provider request encoding see the same
    model policy
  • future model-specific settings have a clear maintainable home

CLI v2 direction is documented

The README now calls out that cli-v2 is actively under development and not
yet released as the default terminal experience. The documented direction is an
API-only TUI that consumes the same local control-plane path as web-v2.

Why this matters:

  • users understand why chat-v2 exists before it becomes the default
  • contributors have a clear boundary: interface code renders and coordinates,
    while shared semantics live in core and control-plane APIs
  • synced conversation state across terminal, browser, and other devices becomes
    an architectural property rather than a per-interface feature

Operator Notes

  • Package version is now 2.2.0.
  • The latest published npm version before this release is 2.1.0.
  • The latest GitHub release before this release is v2.1.0.
  • This release uses the real git range v2.1.0..HEAD.
  • The normal release baseline remains yarn build, yarn test, and
    npm pack --dry-run --cache /tmp/heddle-npm-cache.
  • Final npm publication remains a manual operator step after the tagged GitHub
    release is prepared.

Scope

This note is curated from the actual git range v2.1.0..HEAD at release
preparation time.