Skip to main content

A minimal Python agent framework built on tau-ai.

Project description

Tauon

A minimal Python agent framework built on tau. Think of it like flue of tau instead of pi.

Beta software. Tauon is a thin layer over tau-ai, which has not yet published a stable public SDK. Until that SDK is released, internal APIs may change without notice. Not recommended for production use.

Quick start

from tauon import define_agent, define_tool, use_model, use_tool


@define_tool
def get_weather(city: str) -> str:
    """Get the current weather for a city."""
    return f"Sunny and 22°C in {city}."


@define_agent
def WeatherAgent() -> str:
    use_model("gpt-4.1-mini")
    use_tool(get_weather)
    return "You are a weather assistant."
export OPENAI_API_KEY=...
uv run tauon run examples/weather.py --message "What's the weather in Paris?"

Models and environment variables

Tauon resolves models from Tau's built-in provider catalog. API keys are read from environment variables only; Tauon does not load saved credentials from ~/.tau/credentials.json or provider preferences from ~/.tau/providers.json.

use_model() patterns

# Bare model name: resolved against the default provider (openai).
use_model("gpt-4.1-mini")  # needs OPENAI_API_KEY

# provider/model syntax: required when the model ID contains "/" or when you
# want to force a specific provider.
use_model("openai-codex/gpt-5.6-luna")  # needs OPENAI_CODEX_ACCESS_TOKEN
use_model("openrouter/qwen/qwen3-14b")  # needs OPENROUTER_API_KEY
use_model("anthropic/claude-sonnet-4-6")  # needs ANTHROPIC_API_KEY

Provider environment variables

Provider Env var Example use_model()
openai OPENAI_API_KEY use_model("gpt-4.1-mini")
openai-codex OPENAI_CODEX_ACCESS_TOKEN use_model("openai-codex/gpt-5.6-luna")
anthropic ANTHROPIC_API_KEY use_model("anthropic/claude-sonnet-4-6")
google GEMINI_API_KEY use_model("google/gemini-2.5-pro")
deepseek DEEPSEEK_API_KEY use_model("deepseek/deepseek-v4-pro")
xai XAI_API_KEY use_model("xai/grok-3")
groq GROQ_API_KEY use_model("groq/llama-3.1-8b-instant")
cerebras CEREBRAS_API_KEY use_model("cerebras/gpt-oss-120b")
nvidia NVIDIA_API_KEY use_model("nvidia/llama-3.3-nemotron-super-49b-v1.5")
openrouter OPENROUTER_API_KEY use_model("openrouter/qwen/qwen3-14b")
huggingface HF_TOKEN use_model("huggingface/Qwen/Qwen3-235B-A22B")
fireworks FIREWORKS_API_KEY use_model("fireworks/accounts/fireworks/models/glm-5p1")
together TOGETHER_API_KEY use_model("together/Qwen/Qwen3-235B-A22B-Instruct-2507-tput")
mistral MISTRAL_API_KEY use_model("mistral/codestral-latest")
minimax MINIMAX_API_KEY use_model("minimax/MiniMax-M3")
minimax-cn MINIMAX_CN_API_KEY use_model("minimax-cn/MiniMax-M3")
moonshotai MOONSHOT_API_KEY use_model("moonshotai/kimi-k2-0711-preview")
moonshotai-cn MOONSHOT_API_KEY use_model("moonshotai-cn/kimi-k2-0711-preview")
kimi-code KIMI_CODE_API_KEY use_model("kimi-code/kimi-for-coding")
zai ZAI_API_KEY use_model("zai/glm-5.1")
xiaomi XIAOMI_API_KEY use_model("xiaomi/mimo-v2-pro")
xiaomi-token-plan-cn XIAOMI_TOKEN_PLAN_CN_API_KEY use_model("xiaomi-token-plan-cn/mimo-v2-pro")
xiaomi-token-plan-ams XIAOMI_TOKEN_PLAN_AMS_API_KEY use_model("xiaomi-token-plan-ams/mimo-v2-pro")
xiaomi-token-plan-sgp XIAOMI_TOKEN_PLAN_SGP_API_KEY use_model("xiaomi-token-plan-sgp/mimo-v2-pro")
vercel-ai-gateway AI_GATEWAY_API_KEY use_model("vercel-ai-gateway/alibaba/qwen-3-235b")
opencode OPENCODE_API_KEY use_model("opencode/deepseek-v4-pro")
opencode-go OPENCODE_API_KEY use_model("opencode-go/kimi-k2.7-code")
github-copilot COPILOT_GITHUB_TOKEN use_model("github-copilot/claude-opus-4.5")

Bare model names (e.g. use_model("gpt-4.1-mini")) resolve against the default provider, which is openai. Use the provider/model syntax for every other provider. For OpenRouter the prefix is required because model IDs contain /, e.g. use_model("openrouter/qwen/qwen3-14b").

Model names not yet in Tau's built-in catalog fall back to a plain OpenAI-compatible provider using OPENAI_API_KEY (a warning is logged). This keeps newly-released models usable immediately, but it also means a typo'd model name is sent to OpenAI rather than failing at startup — use the provider/model syntax to force a specific provider.

For a provider not in the catalog, or to override the endpoint explicitly, pass api_key and base_url directly to run_agent() as shown in examples/custom_provider.py.

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

tauon-0.1.3.tar.gz (39.8 kB view details)

Uploaded Source

Built Distribution

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

tauon-0.1.3-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file tauon-0.1.3.tar.gz.

File metadata

  • Download URL: tauon-0.1.3.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tauon-0.1.3.tar.gz
Algorithm Hash digest
SHA256 3d26644717cc271df749f8f2479c9b2361d5d5dc8d61344e5572cdfd490498e0
MD5 6e17acee022b2c0af0635048b0a00f1d
BLAKE2b-256 c891c099977e76dc5bd2e4658dc50a87f427326551494e559da4735f20051a1a

See more details on using hashes here.

File details

Details for the file tauon-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: tauon-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tauon-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 35c49fef6366a17fc4fde899eb3b5ea0607c647618c32d34aa7a709e485415a0
MD5 0fb50381b4e49467b87958230b92fcc6
BLAKE2b-256 a03a3959cb88b2f03b03e7163c9e0ae9afc88870d1d5f5ab6fe62a8410e9f572

See more details on using hashes here.

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