Skip to main content

Changelog

0.5.0 (2026-09-10)

  • feat(tui): collapse reasoning blocks by default, stream deltas as one block (#755) (#956)
  • ci: publish to PyPI, and add jaato-eval to the release set (#923)
  • feat(media): deliver binary media chunks, and know when a spoken turn ended (#824)
  • chore: normalise line endings to LF, once, in one commit (#794) (#807)
  • fix(tui,permission): make a permission prompt readable, and answerable only as chosen (#796)
  • fix(tui,clarification): answer a batched clarification instead of hanging (#704) (#783)
  • fix(providers): one prompt-token convention, converted at the seam (#758) (#763)
  • fix(security): close the symlink escapes in file tools and search (#669) (#746)
  • fix(daemon): refuse a relative path at the process boundary (#742) (#744)
  • test(guards): a guard that cannot detect its own reversion now fails the build (#665)
  • fix(memory): list_memory_tags reported an empty store while holding a raw queue (#664)

Rich Client

Interactive TUI client for jaato with multi-agent support, streaming output, and rich formatting.

Installation

pip install jaato-tui

Overview

The rich client provides:

  • Multi-agent conversation view with agent cycling
  • Streaming output with real-time rendering
  • Permission prompts for tool execution
  • Plan panel for tracking agent plans
  • Customizable keybindings and themes

Running

# Start server daemon first
.venv/bin/python -m server --ipc-socket /tmp/jaato.sock --daemon

# Connect TUI to running server
.venv/bin/python jaato-tui/rich_client.py --connect /tmp/jaato.sock

Commands

General

Command Description
help Show help message and available commands
reset Clear conversation history
history Show full conversation history
context Show context window usage
export [file] Export session to YAML
clear Clear output panel
quit / exit Exit the client

Model

Command Description
model <name> Switch to a different model

Tools

Command Description
tools Manage tools available to the model
tools list List all tools with enabled/disabled status
tools enable <name> Enable a tool (or all)
tools disable <name> Disable a tool (or all)

Plugins

Command Description
plugins List available plugins with status

Sessions

Command Description
save [name] Save current session
resume [name] Resume a saved session
sessions List saved sessions

Plan

Command Description
plan Show current plan status

Screenshot

Capture TUI state as images. The command is intercepted client-side. By default, a system hint is sent to the model with the capture path.

Command Description
screenshot Capture and send hint to model
screenshot nosend Capture only, no hint to model
screenshot format F Set output format (svg, png, html)
screenshot auto Toggle auto-capture on turn end
screenshot interval N Capture every N ms during streaming (0=off)
screenshot help Show help

Captures are saved to /tmp/jaato_vision/ by default. SVG is the default format. PNG requires cairosvg package.

Keybindings

Command Description
keybindings Manage keyboard shortcuts
keybindings list Show current keybinding configuration
keybindings set <action> <key> Set a keybinding
keybindings profile Show/switch terminal-specific profiles
keybindings reload Reload keybindings from config files

Authentication

Anthropic Claude:

Command Description
anthropic-auth login Open browser for OAuth authentication
anthropic-auth code <code> Complete login with authorization code
anthropic-auth logout Clear stored OAuth tokens
anthropic-auth status Show current authentication status

Antigravity (Google IDE Backend):

Command Description
antigravity-auth login Open browser for Google OAuth
antigravity-auth code <code> Complete login with authorization code
antigravity-auth logout Clear stored accounts
antigravity-auth status Show current authentication status
antigravity-auth accounts List all authenticated accounts

Theme

Command Description
theme Show current theme info
theme <name> Switch theme (dark, light, high-contrast, dracula, or custom)
theme reload Reload from config files

Default Keybindings

Action Key Description
Submit Enter Send message
Newline Escape Enter Insert newline
Clear input Escape Escape Clear input buffer
Cancel Ctrl-C Cancel current operation
Exit Ctrl-D Exit the client
Scroll up PageUp Scroll output up
Scroll down PageDown Scroll output down
Scroll top Home Scroll to top
Scroll bottom End Scroll to bottom
Toggle plan Ctrl-P Show/hide plan panel
Toggle tools Ctrl-T Show/hide tools panel
Cycle agents Ctrl-A Cycle through agents
Yank/copy Ctrl-Y Copy to clipboard
View full V View full content in pager

Configuration

Keybindings

Keybindings can be configured via:

  1. Project config: .jaato/keybindings.json
  2. User config: ~/.jaato/keybindings.json
  3. Environment variables: JAATO_KEY_<ACTION>=<key>

Priority: Environment variables > Project config > User config > Defaults

Themes

The rich client supports customizable themes with automatic persistence.

Built-in Themes:

Theme Description
dark Dark background with cyan/green accents (default)
light Light background for bright terminals
high-contrast High contrast for accessibility

Custom themes can be defined in:

  • Project: .jaato/theme.json
  • User: ~/.jaato/theme.json

Theme selection is persisted to ~/.jaato/preferences.json.

Custom Theme Example:

{
  "name": "my-theme",
  "version": "1.0",
  "colors": {
    "primary": "#5fd7ff",
    "secondary": "#87d787",
    "success": "#5fd75f",
    "warning": "#ffff5f",
    "error": "#ff5f5f",
    "muted": "#808080",
    "background": "#1a1a1a",
    "surface": "#333333",
    "text": "#ffffff",
    "text_muted": "#aaaaaa"
  }
}

Environment Variables

Variable Purpose
JAATO_THEME Override theme (temporary)
JAATO_VISION_DIR Screenshot output directory (default: /tmp/jaato_vision)
JAATO_VISION_FORMAT Screenshot format: svg (default), png, html
JAATO_COPY_MECHANISM Clipboard provider: osc52 (default)
JAATO_COPY_SOURCES Sources to copy: model (default), or model&user&tool

File References

Reference files in prompts with @ prefix:

What's in @screenshot.png?
Review @src/main.py

Related

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jaato_tui-0.5.0.tar.gz (363.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jaato_tui-0.5.0-py3-none-any.whl (361.2 kB view details)

Uploaded Python 3

File details

Details for the file jaato_tui-0.5.0.tar.gz.

File metadata

  • Download URL: jaato_tui-0.5.0.tar.gz
  • Upload date:
  • Size: 363.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for jaato_tui-0.5.0.tar.gz
Algorithm Hash digest
SHA256 2b9bb736fc4c6798c6c81197cb1371e6b9fcaf6864bf747b45a744a78357ccb0
MD5 78f8179cfbc27340a21566020e4293b5
BLAKE2b-256 2903dc36497f5103ed46e20c38300792410f339cc32a3a0c1cd6aa5db5ca1880

See more details on using hashes here.

Provenance

The following attestation bundles were made for jaato_tui-0.5.0.tar.gz:

Publisher: publish-pypi-tui.yml on Jaato-framework-and-examples/jaato

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jaato_tui-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: jaato_tui-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 361.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for jaato_tui-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b10d8fec7b005eb0c1e1b2b8aed3e038793d35f4dbc885b3ada94abcd431d31c
MD5 b7f54410c92c3726401d28bb6aa29647
BLAKE2b-256 810c555314b42a7ceb1e4e9011de3a3f39d51be01e3ecf6180d00facb516b19e

See more details on using hashes here.

Provenance

The following attestation bundles were made for jaato_tui-0.5.0-py3-none-any.whl:

Publisher: publish-pypi-tui.yml on Jaato-framework-and-examples/jaato

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.4.3

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page