Data Isolation & Privacy

How CtxSync keeps your code, keys, and data secure

Data Isolation & Privacy

CtxSync is designed around a simple principle: your code and data stay yours. Here’s how we keep things secure at every layer.

Security Architecture

Your keys, your conversations

CtxSync uses a bring-your-own-key (BYOK) model. When you chat with an AI, your container connects directly to the LLM provider (OpenAI, Anthropic, or Kimi) using your API key. CtxSync never proxies, reads, or stores your AI conversations beyond the chat history you see in the app.

This means:

  • Your prompts and responses go directly between your container and the LLM provider.
  • CtxSync has no access to the content of your AI conversations.
  • You control your usage and costs through your own provider account.

Isolated containers

Every project runs in its own Docker container, completely isolated from other users and projects.

  • No shared resources — Your container has its own filesystem, processes, and network. No other user can access it.
  • Project-scoped data — Source code and files are mounted in volumes tied to your specific project.
  • User-scoped containers — Even across your own projects, each project gets a separate container.

Encryption at rest

Sensitive data is encrypted before it’s stored in the database:

  • API keys are encrypted using Vault-backed encryption. Even if the database were compromised, your keys would be unreadable.
  • OAuth tokens for integrations (GitHub, GitLab, Notion) are stored with the same encryption.
  • Standard security practices are applied across all data storage.

Ephemeral by design

Containers don’t run forever. They’re designed to be temporary:

  • Containers spin down automatically after a period of inactivity.
  • When you delete a project, all associated containers, Docker volumes, and synced source data are permanently removed.
  • There is no residual data left behind after deletion.

Access control

Strict ownership is enforced at every level:

  • You can only access your own projects, sources, chats, and API keys.
  • Every request is checked against ownership policies — there are no admin backdoors or shared access paths.
  • OAuth tokens for integrations are scoped per user and cannot be accessed by other accounts.

What we don’t do

  • We don’t train models on your data. Your code and conversations are never used for model training.
  • We don’t share data between users. There is no cross-user data access, even anonymized.
  • We don’t log your source code. Synced files exist only in your project’s container volume.