huggingface

tau: Python Terminal Coding Agent Inspired by Pi

Tau is a small, readable terminal coding agent and teaching project: a Python port of Pi’s minimalist coding agent. It can inspect and edit project files, run commands, and preserve sessions, with a reusable event-driven core for custom frontends.

Stars
3k
Forks
387
Stars, last 17 days
+62
Last commit
4 days ago
Contributors
25

Our take

Newless than six months old and changing fast

Health score

69/100

How it is scored
Activity
83
Community
38
Issues
75
Pull requests
80

+62 stars in the last 17 days

  • Merges more pull requests than 88% of the projects we track
  • Releases more often than 82% of the projects we track

Tau is a promising, actively developed Python coding-agent project, but its rapid pace and concentrated contribution history make it worth evaluating before relying on it for critical workflows.

Good fit if

  • You want a terminal coding agent with file and shell tools, and can use Python 3.12 or newer.
  • You value an inspectable teaching example or want an event-driven harness for a custom frontend.
  • You are comfortable with an MIT-licensed project whose recent releases and changes are frequent.

Look elsewhere if

  • Your environment cannot run Python 3.12 or newer.
  • Your team needs a mature project with contributions broadly distributed across maintainers. Most code contributions are concentrated with one person.
  • You need a coding-agent workflow other than the terminal, print mode, or a frontend you build around its event stream.
All health signals
Last commit2026-10-14 (4 days ago)
Commits, last 90 days100+
Releases, last 12 months34 (latest v0.4.8, 2026-10-14)
Contributors25 (top contributor: 91% of commits)
Issues closed, last 90 days13+ (typically closed in 1 day)
Pull requests merged, last 90 days82 (typically merged in 0 days)
Project age4 months

Checked on 2026-10-19 with the GitHub API.

Overview

Tau is a small, readable terminal coding agent, built as a Python port of Pi’s minimalist coding agent. It helps developers ask for work in a project directory, such as explaining a codebase or fixing an error, then lets the agent read and edit files and run shell commands. Tau is also designed as a teaching project for people who want to understand how coding agents are assembled.

Its Python packages separate provider streaming, a reusable agent harness, and the coding environment. A terminal UI and print mode are included, while the harness emits events so other frontends can consume the same agent behavior. Tau supports Python 3.12 and newer; its README describes provider integrations and custom OpenAI-compatible endpoints, rather than requiring one particular model provider.

Key Features

  • Interactive terminal UI and non-interactive print mode.
  • Built-in read, write, edit, and bash tools for working in a project.
  • Append-only JSONL session history with resume and branching.
  • Project instructions and resources loaded from AGENTS.md, .tau/, and .agents/.
  • User skills, prompt templates, slash commands, and custom TUI themes.
  • Manual and optional automatic context compaction.
  • Provider-neutral events that can drive the included UI, text output, JSON, transcripts, or custom frontends.

Use Cases

  • Developers who want a terminal agent to inspect a repository, explain its structure, or make code changes.
  • Programmers who want to experiment with agent tools, event streams, sessions, and harness design in a relatively small codebase.
  • Teams building a custom frontend that want to reuse an agent harness without coupling it to Tau’s Textual UI.
  • Users who need resumable coding sessions and project-specific instructions while working across coding tasks.

What you need

Detected in the repository

  • Python >=3.12 (from pyproject.toml)
  • A test suite and automated checks on GitHub Actions

License in plain words

MITpermissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the copyright and license notice
  • Share your changes: no

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Install with uv tool install tau-ai, then run tau from the project directory. Tau needs a model provider; connect one with /login. See the README for installer options, provider configuration, and development instructions.

Alternatives

  • qwen-code: Unlike tau’s small, teaching-oriented Python core, qwen-code offers multiple interfaces, model APIs, and SDK and scripting options.
  • fx: fx is a native Zig agent with an interactive shell and embedding options, while tau is a Python teaching project with a reusable event-driven core.
  • zero: Zero is a Go terminal agent emphasizing model choice, scripting, and explicit side-effect controls; tau focuses on a readable Python implementation.
  • openinterpreter: Open Interpreter is a Rust agent built around low-cost models and multiple harnesses, while tau is a minimal Python port of Pi.
ProjectLanguageLicenseStarsStatus
tauPythonMIT3kNew
qwen-codeTypeScriptApache-2.028.6kActive
fxZigApache-2.03.3kNew
zeroGoMIT1.7kNew
openinterpreterRustApache-2.068.5kActive

Considerations

The project is new and changing quickly, with frequent commits and releases. Although it has multiple contributors, contribution activity is highly concentrated with one person. Recent issue closures and pull request merges have moved quickly, but that does not remove the adoption risk of a young codebase. Tau requires Python 3.12 or newer and a configured model provider. The README identifies it as under active development and tracks its roadmap in GitHub issue #1. It is released under the MIT License.

Found this useful?

Share it with someone who would like tau.

Comparisons