Skip to main content

rio

Four packages:

  • rio_ai -- a multi-provider LLM streaming SDK (Anthropic, Google Gemini, Mistral, OpenAI Codex, OpenAI-compatible), ported from huggingface/tau's tau_ai module. The message/tool/type vocabulary tau_ai depends on (tau_agent.messages, tau_agent.tools, tau_agent.types, tau_agent.provider, tau_agent.provider_events upstream) is folded in here too, so rio_ai is self-contained. See NOTICE for the upstream MIT license.
  • rio_agent -- a from-scratch runtime implementing SKILL.state: Scalable Long-Horizon Agent Skills (Badhe, Tiwari & Chung; EMNLP), built on rio_ai.
  • rio_coding -- the coding backend (CLI, tools, skills, extensions), built on rio_agent.
  • rio_tui -- the terminal application, wired to rio_coding. It owns session tabs, the prompt editor, shell, file navigation, diffs, and settings.

Coding agent

uv sync
uv run rio setup --provider local --base-url http://localhost:8080/v1 --model my-model
uv run rio                         # interactive terminal interface
uv run rio -p "Inspect this project and explain its entry point"
uv run rio -p --mode json "Add a regression test for the parser"
uv run rio --mode rpc              # JSONL commands on stdin
uv run rio sessions
uv run rio --session SESSION_ID
uv run rio export SESSION_ID --format html

Choose an existing provider with --provider NAME --model MODEL; rio providers lists the configured catalog. Credentials may come from the provider's environment variable or Rio's credential store (rio login PROVIDER; use --method api-key for an API key). A successful login remembers the provider for future launches. API keys and OAuth tokens are stored in ~/.rio/credentials.json with owner-only permissions; the file is unencrypted. OAuth tokens refresh automatically. Use rio logout PROVIDER to remove saved credentials. Configuration and journals live under ~/.rio. Use --approve to allow ambient project instructions and extensions for a run; project trust controls resource loading, not what shell commands can access.

The coding tools are read, write, edit, bash, and respond. Each step updates structured state and executes one action. Sessions store snapshots for resume and checkpoint restoration; they never replay a transcript into the model. HTML exports show steps, final state, and estimated token footprints.

See the installed documentation for providers, skills, extensions, RPC, and the state-based runtime. The offline example runs a complete session with a fake provider and requires no credentials.

Development

uv sync
uv run pytest
uv run ruff check .

Tests use scripted providers (rio_ai.FakeProvider) and mocked HTTP; no live provider credentials are required. Headless Textual tests exercise terminal interaction, and tool integration tests work in temporary directories. See in particular tests/test_rio_agent_loop.py::test_prompt_footprint_is_bounded_across_steps, which asserts that per-step prompt size stays constant across many steps rather than growing -- a direct runtime check of the paper's core claim.

Release files for rio 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rio 0.4.2
File Size Uploaded
rio-0.4.2.tar.gz 501.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rio 0.4.2
File Interpreter ABI Platform
rio-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 927.1 kB

Release files / rio-0.4.2.tar.gz

Download URL rio-0.4.2.tar.gz
Size 501.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2d6a28fa1185567eab699c0eb2da079f19e1751ce57e9437e79294a943fd5520
BLAKE2b-256 checksum
How to use checksums
5e5049747b6fe333e636b034ee7018e0badbe1dc5b10ef08827cd3b83e07f100
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release files / rio-0.4.2-py3-none-any.whl

Download URL rio-0.4.2-py3-none-any.whl
Size 425.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
39cbe5bfab971f19fcb0e8a3b30e5ae648aa0d114e7f969bc5646cbf5190ea12
BLAKE2b-256 checksum
How to use checksums
f2f1b98adfb39b7be625adea7ad678f63911744431020f6fc6bcdce59074db85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release history Release notifications | RSS feed

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

This release

0.4.2 This release

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

0.1.0

2 release 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