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.1

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.1
File Size Uploaded
rio-0.4.1.tar.gz 489.5 kB Details

Built distribution (wheel)

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

Total release size: 908.6 kB

Release files / rio-0.4.1.tar.gz

Download URL rio-0.4.1.tar.gz
Size 489.5 kB
Tags Source
SHA-256 checksum
How to use checksums
1d13ea82cacf50a88004053f04ef4bd8e649c12572c89797b7ef98a32b515214
BLAKE2b-256 checksum
How to use checksums
1ece35b2e00569d5030ac65d950fac677e191f3a262f6db8388cee888806beaa
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 8, 2026.

Transparency log

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

Download URL rio-0.4.1-py3-none-any.whl
Size 419.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8af68b78c7d9c6eda3cb67c09cbd66fa22b9a6f9dc79aa9c07fcb57ea474108a
BLAKE2b-256 checksum
How to use checksums
1012b4a0c1de605b3e490f618075cf942f0fed8bc8d5d1429134be73b1647507
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 8, 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

0.4.2

2 release files

This release

0.4.1 This release

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