axio-tui
Textual TUI application for axio.
A full-featured terminal chat interface with session management, a plugin system for transports and tools, and a built-in SQLite context store. Pick your LLM backend, load your tools, and start chatting - all from the terminal.
Features
- Plugin system - transports, tools, and guards discovered automatically via entry points
- Session management - persistent SQLite-backed conversations; fork, switch, and resume sessions
- Streaming UI - text and tool calls rendered incrementally as they arrive
- Multi-transport - switch between Anthropic, OpenAI, Nebius, Codex, or any registered backend at runtime
- Sub-agent support - the
subagenttool lets the agent spin up nested agent sessions - Vision -
visiontool for image analysis (with compatible models) - Serveable -
textual-servesupport for browser-based access
Installation
Minimal (core TUI only, bring your own transport):
pip install axio-tui
With everything:
pip install "axio-tui[all]"
Pick what you need:
pip install "axio-tui[openai,local,mcp]"
| Extra | Installs |
|---|---|
anthropic |
axio-transport-anthropic |
openai |
axio-transport-openai |
codex |
axio-transport-codex |
local |
axio-tools-local |
mcp |
axio-tools-mcp |
guards |
axio-tui-guards |
all |
Everything above |
Quick start
pip install "axio-tui[openai,local]"
axio
On first launch, open Settings (s) to configure your API key and model. Sessions are stored in ~/.local/share/axio/.
Architecture
axio-tui
├── App (Textual)
│ ├── ChatScreen - message list, input, streaming
│ ├── SessionScreen - session list and management
│ └── SettingsScreen - per-plugin configuration
├── SQLiteContextStore - persistent conversation history
├── TransportRegistry - discovers axio.transport entry points
└── Plugin system
├── ToolsPlugin - wraps axio.tools.settings providers
└── PermissionGuard - wraps axio.guards providers
Built-in tools
These tools are always available regardless of installed plugins:
| Tool | Description |
|---|---|
confirm |
Ask the user a yes/no question (for guard prompts) |
status_line |
Update the TUI status bar from within the agent |
subagent |
Spawn a nested agent with its own tools and context |
vision |
Analyse an image file (requires a vision-capable model) |
Plugin entry points
axio-tui discovers plugins automatically when installed packages declare:
# Transport backend
[project.entry-points."axio.transport"]
openai = "axio_transport_openai:OpenAITransport"
# Tool group with settings screen
[project.entry-points."axio.tools.settings"]
docker = "axio_tools_docker.plugin:DockerPlugin"
# Simple tools (no settings)
[project.entry-points."axio.tools"]
shell = "axio_tools_local.shell:Shell"
# Permission guards
[project.entry-points."axio.guards"]
path = "axio_tui_guards.guards:PathGuard"
Serve over HTTP
textual-serve axio_tui.__main__:app
# Open http://localhost:8000 in your browser
Part of the axio ecosystem
axio · axio-transport-anthropic · axio-tui-guards · axio-tools-local · axio-tools-mcp · axio-tools-docker
License
MIT
Metadata
Release files for axio-tui 0.11.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| axio_tui-0.11.3.tar.gz | 55.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| axio_tui-0.11.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 101.0 kB
Release files / axio_tui-0.11.3.tar.gz
| Download URL | axio_tui-0.11.3.tar.gz |
|---|---|
| Size | 55.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d1719c722a0dbc530b464409ef6a4d757b06f19e5e25318ce3c80af4fd83841f
|
|
BLAKE2b-256 checksum How to use checksums |
26e8fba13b8170e261d9217568ab3e872ab402cc0d589a70bfa69993e612b3b6
|
| 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 17, 2026.
Transparency logRelease files / axio_tui-0.11.3-py3-none-any.whl
| Download URL | axio_tui-0.11.3-py3-none-any.whl |
|---|---|
| Size | 45.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0968ca77d4f1d33a6ebd43c7d43a99d9e8d599ff76b4f255cdac0cd8469ea1d7
|
|
BLAKE2b-256 checksum How to use checksums |
75818f6a2a4771c00d0f769de7b41d781bf7576f61e905e1d21767a407cab164
|
| 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 17, 2026.
Transparency log