Skip to content

Security Model

Sandbox Isolation

Every agent runs in a disposable Docker container created fresh for each task:

  • No network access to your infrastructure — the container can only reach GitHub (for cloning) and the AI provider API
  • No persistent storage — the container and all its contents are destroyed after task completion
  • Resource limits — CPU, memory, and execution time are capped to prevent abuse
  • No container reuse — each task gets a clean container, preventing cross-task contamination

Code Handling

Your repository code follows a strict lifecycle:

  1. Clone — Code is cloned into the sandbox via GitHub App Installation Access Token
  2. Analyze — The agent reads and modifies files within the sandbox
  3. Patch — Changes are extracted as a git diff patch
  4. Push — The patch is pushed as a new branch to your repo
  5. Destroy — The container and all code copies are deleted

Eiryx never stores your source code persistently. Code exists only in ephemeral containers.

Credential Security

API Keys (BYOK)

  • Encrypted with AES-256 (Fernet symmetric encryption) before storage
  • Encryption key stored as server environment variable, never in the database
  • Decrypted only at the moment of API call, then discarded from memory
  • Never logged, printed, or exposed in any output — sanitized to [***HIDDEN***]

GitHub Authentication

  • Eiryx uses a GitHub App (not personal access tokens)
  • Installation Access Tokens are generated from a cryptographic .pem key
  • Tokens are valid for 60 minutes maximum
  • The .pem file is mounted into the container, never stored in the database
  • Clone URLs use x-access-token:<token>@github.com format

Database Security

  • Supabase PostgreSQL with Row Level Security (RLS) on every table
  • RLS policies filter by user_id — a user can only see their own data
  • No table is publicly accessible — all access goes through the authenticated API
  • Service role key (for backend operations) is never exposed to clients

Infrastructure

  • Hetzner VPS in EU (Frankfurt) — GDPR-compliant jurisdiction
  • Let’s Encrypt SSL on all endpoints
  • nginx reverse proxy with security headers
  • CORS restricted to known origins (eiryx.com, app.eiryx.com)