Skip to main content

A self-extensible agent CLI with terminal UI, multi-provider LLM support, session management with branching, and a plugin system for tools and commands

Project description

Tau (τ)

Tau is a Python agent framework and terminal coding assistant. It combines an interactive terminal UI, multiple model providers, persistent sessions, tool execution, and an extension system in one package.

Tau interactive terminal interface

Quick start

Tau requires Python 3.12 or later.

pip install tau-coding-agent

Set a provider API key and start Tau:

export ANTHROPIC_API_KEY=sk-ant-...
tau

Google AI Studio works through the google provider:

export GOOGLE_API_KEY=...
tau --model google/gemini-2.5-flash

You can also run /login inside Tau to save provider credentials.

Then ask Tau to work in the current directory:

Explain this repository, run its tests, and fix any failures.

Common workflows

tau                                      # Start an interactive session
tau --resume                             # Resume the latest session
tau --model claude-sonnet-4-6            # Start with a specific model
tau --print "Summarize this repository"  # Run once and print the result
tau --mode json "Summarize this repo"    # Emit structured JSON events
tau --mode rpc                           # Start JSON-RPC mode for IDE clients

Inside an interactive session:

/model       Choose a model
/resume      Resume another session
/tree        Navigate session branches
/compact     Compact a long conversation
/theme       Change the terminal theme
/login       Save provider credentials
/help        Show commands and shortcuts

See the CLI reference for every option and command.

What Tau provides

  • Interactive terminal UI with multiline editing, searchable pickers, syntax highlighting, Markdown, and terminal-readable LaTeX math.
  • Multiple model providers, including Anthropic, OpenAI, Google Gemini, Mistral, Ollama, Groq, xAI, Bedrock, OpenRouter, and others.
  • Persistent session trees with resume, fork, clone, branch navigation, summarization, and automatic context compaction.
  • Built-in tools for terminal commands, file operations, globbing, and search. Long-running terminal commands stream into one persistent output block.
  • Media support for images, audio, video, and text files through file references, clipboard input, and the Python API.
  • Speech APIs for text-to-speech and speech-to-text, including word or segment timestamps when supported by the selected provider.
  • Extensibility through custom tools, slash commands, hooks, themes, skills, prompts, and in-memory Python extensions.
  • Embedding and integration through the Python API, JSON event mode, and bidirectional JSON-RPC.

Referencing files

Type @ in the interactive editor to search for a project file:

Review @src/service.py and add tests for its error handling.

For one-shot execution, attach a file explicitly:

tau --print --prompt "Explain this file" --file src/service.py

Tau also discovers project instructions from AGENTS.md and CLAUDE.md. See Project Context Files for trust and discovery behavior.

Authentication and configuration

Tau resolves provider credentials in this order:

  1. A programmatic runtime override
  2. A credential saved in ~/.tau/auth.json (including keys saved by /login)
  3. A provider environment variable such as ANTHROPIC_API_KEY, OPENAI_API_KEY, and GOOGLE_API_KEY

Settings are merged in this order:

  1. Built-in defaults
  2. ~/.tau/settings.json
  3. .tau/settings.json
  4. Environment variables
  5. Command-line options

See Authentication, Installation, and Inference Providers for provider-specific setup.

Documentation

The complete documentation index is available at docs/index.md.

Install from source

git clone https://github.com/Jeomon/Tau.git
cd Tau
pip install -e .
tau

Security

Tau executes enabled tools with the operating-system permissions of the process that launched it. Review project instructions and commands before approving work in untrusted repositories. Use a container or external sandbox when stronger isolation is required.

Dependency versions are pinned and recorded in uv.lock. See SECURITY.md for vulnerability reporting and supply-chain practices.

Development

mypy tau/
pyright tau/
ruff check tau/
ruff format tau/
python -m pytest

See Development Setup and Contributing.

License

Tau is licensed under the MIT License.

Project details


Download files

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

Source Distribution

tau_coding_agent-0.6.1.tar.gz (764.9 kB view details)

Uploaded Source

Built Distribution

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

tau_coding_agent-0.6.1-py3-none-any.whl (688.9 kB view details)

Uploaded Python 3

File details

Details for the file tau_coding_agent-0.6.1.tar.gz.

File metadata

  • Download URL: tau_coding_agent-0.6.1.tar.gz
  • Upload date:
  • Size: 764.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tau_coding_agent-0.6.1.tar.gz
Algorithm Hash digest
SHA256 8db89812f4b13795d4db7cb6bd51acfbc3f2937ee8a078af391d29d9e672e99a
MD5 cdb121025c4fa8bc13c34559df7f8bbf
BLAKE2b-256 9852773d3473bf4d7a8075f9695f8e8237c4b50fd623e287945e2a0b799bda5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for tau_coding_agent-0.6.1.tar.gz:

Publisher: cd.yml on Jeomon/Tau

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

File details

Details for the file tau_coding_agent-0.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for tau_coding_agent-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d0e9f376497da30772bf4b0b3d3ebda2e2a864d0b5d152b6364a9b22b2ddf40c
MD5 3d9ad013b7bb943c31561ae91f5c68db
BLAKE2b-256 299bbf2eaebc698524f0e7e7928a065d152cafb3bdc8a2da3cf51d47186635d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tau_coding_agent-0.6.1-py3-none-any.whl:

Publisher: cd.yml on Jeomon/Tau

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page