autotune includes optional, anonymous usage telemetry that is disabled by default. No data is sent to any external service until you explicitly opt in:
autotune telemetry --enable # opt in
autotune telemetry --disable # opt out at any time
autotune telemetry --status # check current status| Collected | NOT Collected |
|---|---|
CPU architecture (e.g. arm64) |
Hostnames |
RAM size (e.g. 16 GB) |
Usernames |
GPU backend (e.g. Metal) |
IP addresses |
Model names (e.g. qwen3:8b) |
File paths |
| Inference speed (tok/s, TTFT) | Conversation content |
| Context window sizes | Prompt or response text |
| Quantization labels | Any personally identifiable information |
You may notice a Supabase API key embedded in autotune/telemetry/client.py. This is the Supabase anon (public) key — the same type of JWT token that Supabase officially recommends for client applications.
Why this is safe:
-
It is NOT a service_role key, database password, or admin credential. It is a public client token designed to be embedded in applications.
-
Row Level Security (RLS) restricts access. The anon key can only:
INSERTrows into the three telemetry tables- It cannot
SELECT,UPDATE, orDELETEany data
-
The consent gate is enforced in code. Even though the key exists, no data flows unless
is_opted_in()returnsTrue. This check is enforced at every call site. -
You can override it. Set these environment variables to point at your own Supabase project:
export AUTOTUNE_SUPABASE_URL="https://your-project.supabase.co" export AUTOTUNE_SUPABASE_KEY="your-anon-key"
All local data is stored in standard platform-specific directories:
| Platform | Path | Contents |
|---|---|---|
| macOS | ~/Library/Application Support/autotune/ |
Performance telemetry DB, consent file |
| Linux | ~/.local/share/autotune/ |
Same |
| All | ~/.autotune/recall.db |
Conversation memory (local only, never sent externally) |
Conversation content in recall.db is never transmitted to any external service, regardless of telemetry opt-in status.
If you discover a security vulnerability, please report it responsibly:
- Do NOT open a public GitHub issue.
- Email: autotunellm@gmail.com
- Include a description of the vulnerability and steps to reproduce.
We will acknowledge receipt within 48 hours and provide a fix timeline.
autotune's dependencies are standard, well-maintained packages:
- FastAPI / Uvicorn — ASGI web framework (local server only, binds to
localhost) - psutil — System monitoring (read-only)
- httpx — HTTP client for Ollama / Supabase communication
- click — CLI framework
- numpy — Vector similarity for conversation memory
The inference server binds to 127.0.0.1 by default and is not exposed to the network.