Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

T3 Code

Minimal web GUI for AI coding agents by Ping.gg. Currently supports Claude and Codex agents, with more planned. Open source (MIT).

T3 Code is a frontend — the actual AI work happens through the underlying agents (Claude Code, Codex CLI). Privacy for those agents is configured separately via the claude-code/ and codex-cli/ sections of this repo.

What's Here

Recommended Config

T3 Code has no traditional settings file. App preferences live in browser localStorage and the only privacy-relevant setting is a server-side environment variable.

Set the env var before launching T3 Code:

# Bash / Zsh
export T3CODE_TELEMETRY_ENABLED=false

# Or copy the env-example and source it
cp t3-code/env-example ~/.t3/.env

For the desktop app (Electron), set the env var in your shell profile (~/.bashrc, ~/.zshrc, etc.) so it applies on launch.

Recommended Defaults

Setting Value Status Why
T3CODE_TELEMETRY_ENABLED false Verified Disables PostHog analytics (platform, arch, version, client type)

That's it — T3 Code only has one privacy-relevant setting. Everything else in the GUI (theme, streaming, workspace mode, keybindings) has no telemetry or data-sharing impact.

What T3 Code Collects (When Telemetry Is On)

With telemetry enabled (the default), T3 Code sends to PostHog:

  • Platform (process.platform), architecture (process.arch)
  • WSL distro name (if applicable)
  • App version, client type (desktop-app or cli-web-client)
  • A hashed user identifier (SHA-256 of Codex account ID, Claude user ID, or a random anonymous ID)

Setting T3CODE_TELEMETRY_ENABLED=false stops all of this.

GUI Settings (Not Privacy-Relevant)

These are configured in the app's settings panel and stored in browser localStorage. None affect telemetry or data sharing:

Section Settings
General Theme, time format, diff wrapping, streaming, workspace mode, archive/delete confirmation, text generation model
Providers Codex/Claude binary paths, enable/disable per provider, custom models
Advanced Keybindings (~/.t3/keybindings.json)
About Version info, diagnostics (OTEL endpoints, logs folder)

There is no telemetry toggle in the GUI — the env var is the only opt-out mechanism.

Privacy Tiers

Tier What to do
Recommended Set T3CODE_TELEMETRY_ENABLED=false, configure the underlying agents separately via claude-code/ and codex-cli/
Strict Same as recommended — there are no additional settings to tighten beyond the telemetry toggle
Feature-max Leave telemetry on if you want to support the project, but configure the underlying agents for privacy

Underlying Agent Privacy

T3 Code is a GUI wrapper. The privacy profile of your actual AI interactions depends on the agent:

Agent Config location Repo section
Claude Code ~/.claude/settings.json claude-code/
Codex CLI ~/.codex/config.toml codex-cli/

Configure both the T3 Code telemetry AND the underlying agent telemetry for full coverage.

Config File Locations

File Location Purpose
App settings Browser localStorage (t3code:app-settings:v1) Theme, streaming, workspace mode, etc.
Keybindings ~/.t3/keybindings.json Custom keyboard shortcuts
Server state ~/.t3/userdata/ (or T3CODE_HOME) Session data, SQLite
Telemetry ID ~/.t3/telemetry/anonymous-id Random anonymous ID (created on first run)

What This Does Not Guarantee

  • Disabling T3 Code telemetry does not disable telemetry in the underlying agents (Claude Code, Codex CLI) — configure those separately.
  • It does not stop model inference requests from reaching the configured provider.
  • It does not guarantee zero data retention beyond what each provider documents for your account type.
  • Local session data is stored in ~/.t3/userdata/ — this is a local retention choice, not a vendor training concern.

Official Documentation


See the full disclaimer in the project README.