View as markdown

Security & Privacy

Padu is designed as a 100% local-first control plane for AI coding agents. Your source code, conversation transcripts, prompts, and credentials never leave your hardware.

Core Security Principles

1. Zero Cloud Intermediary & Zero Telemetry

  • The Padu application and background daemon contain no analytics trackers, telemetry beacons, advertising SDKs, or crash uploaders.
  • All session databases, Git worktrees, and checkpoint logs are stored strictly on your local disk in .padu/ and OS-specific user data directories.

2. OS Keychain Credential Storage

  • Provider API keys and authentication tokens are kept in your operating system's native secure store (macOS Keychain, Linux Secret Service / Keyutils, Windows Credential Manager).
  • Padu never uploads, proxies, or transmits your API keys to central servers.

3. Direct Subprocess & Provider Communication

  • Agent CLIs (like claude, codex, and opencode) run as local child subprocesses supervised via standard streams (stdio and PTY).
  • When agents call LLM endpoints, the HTTP/WebSocket requests originate directly from your computer to the AI provider's API (e.g. api.anthropic.com or api.openai.com) using your own credentials.

Daemon Access Controls

Loopback by Default

By default, the daemon binds exclusively to 127.0.0.1:4789, accepting connections only from processes on the same machine.

DNS Rebinding Protection

When listening on a network interface, Padu inspects incoming Host headers against a configured hostname allowlist (daemon.hostnames) to prevent DNS rebinding attacks from malicious websites:

{
  "daemon": {
    "hostnames": ["localhost", ".internal.mycompany.com"]
  }
}

Password Authentication

When exposing the daemon over a local network or VPN, enable bcrypt-hashed password authentication in ~/.padu/config.json:

padu daemon set-password

Vulnerability Reporting

If you discover a potential security vulnerability in Padu, please review SECURITY.md on GitHub or contact the maintainers confidentially at support@padu.dev.