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.2.tar.gz (32.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.2-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tauon-0.1.2.tar.gz
  • Upload date:
  • Size: 32.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.2.tar.gz
Algorithm Hash digest
SHA256 33f9191572260d6e9eb938529222cb19748a2e20678a84d34803c3446d8aebaf
MD5 be4db0737e2a1b1422697561f0f12574
BLAKE2b-256 d28ca7e562a2aead13aad6d3634deb5a40fce40c72a81bb985fb22d3deecf23e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tauon-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3ad8ceaa902793c1d3871142615479d5338866dc497d5ef7721fbc987ceb2a2f
MD5 eb55f5f22f1dcf8082c3f485dd4c4d72
BLAKE2b-256 31392599dd177d570ca3a34c2e6d7e66c90af9d68702130ed7f06b5dbb02f4e7

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