Skip to main content

tato_code

CLI coding agent that runs against a hosted proxy (see tato-code-backend/). The CLI only needs the proxy URL and a shared token — real LLM and Tavily API keys live on the server.

Setup

# 1. Install
pip install -e .

# 2. Configure (one-time)
cp .env.example .env
# Edit .env and set:
#   TATO_PROXY_URL   = https://your-service.onrender.com
#   TATO_PROXY_TOKEN = the same PROXY_TOKEN you set on the server

# 3. Run
tato

Architecture

┌────────────┐   bearer (TATO_PROXY_TOKEN)   ┌──────────────────────┐
│  tato CLI  │ ───────────────────────────▶ │ tato-code-backend    │
│  (user)    │                               │  (Render, secrets)   │
└────────────┘                               │   ├─ /v1/chat/...    │ ─▶ OpenRouter
                                             │   ├─ /tools/web_...  │ ─▶ Tavily
                                             │   └─ /tools/fetch_.. │ ─▶ Tavily
                                             └──────────────────────┘

The CLI uses langchain_openai.ChatOpenAI pointed at the proxy's /v1 base URL, and the @tool wrappers in src/tato_code/tools/tools.py POST to /tools/web_search and /tools/fetch_url. From the CLI's perspective, OpenRouter and Tavily are just an OpenAI-compatible endpoint and a couple of HTTP routes.

Why a proxy?

Distributing the CLI as a package would otherwise mean shipping the real OPENROUTER_API_KEY and TAVILY_API_KEY to every user. The proxy keeps both keys on the server and gives the CLI a single, token-gated endpoint to talk to.

Configuration reference

Env var Required Notes
TATO_PROXY_URL yes Base URL of the backend, no trailing slash.
TATO_PROXY_TOKEN yes Shared bearer token. Must match the server.

See tato-code-backend/README.md for the server-side setup and Render deployment steps.

Metadata

Release files for tato-code 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tato-code 0.3.0
File Size Uploaded
tato_code-0.3.0.tar.gz 13.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tato-code 0.3.0
File Interpreter ABI Platform
tato_code-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.6 kB

Release files / tato_code-0.3.0.tar.gz

Download URL tato_code-0.3.0.tar.gz
Size 13.9 kB
Tags Source
SHA-256 checksum
How to use checksums
7cc8955681b1986a7febfe34e9264731e7c79760df3dd2d010f11a2b5f821332
BLAKE2b-256 checksum
How to use checksums
05d40f8dfeddf1c0ff38df0147df8c502cfa8a126e2ddb627209767a906ee593
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tato_code-0.3.0-py3-none-any.whl

Download URL tato_code-0.3.0-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
853227dd3ce80b03cf3fc18a4a61fb5d0fcbffaeca81ab9e8776cac33cd0bbff
BLAKE2b-256 checksum
How to use checksums
907750ab8bb97e94e37e564ad1e0861f65c38c6d9a25787b189ddbdbc0edf878
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page