Skip to main content
A threat model worth writing names actors, what they want, what they can do, what stops them, and what doesn’t. This page is that for Studio.

Actors and what they want

What we defend, where the defense lives

What we explicitly do not defend against

Honesty here matters more than completeness. The list below is the set of attacks Studio’s current architecture cannot stop. Some are by design; some are roadmap items.

Trust boundaries

Studio has four crossings worth naming:
  1. User ↔ Studio desktop app. Established by OS sign-in and Clerk authentication. The app trusts the user once authenticated.
  2. Desktop app ↔ Go agent. Local loopback; the agent is part of the same package and receives signed-in scope and capability calls from the desktop. Loopback is not isolation from a compromised local account.
  3. Desktop app ↔ AWS backend. Authenticated via short-term Cognito-issued AWS credentials, derived from a Clerk JWT. Every AWS API call is signed.
  4. Studio ↔ external systems (devices, connectors, MCP, AI provider). The most variable boundary. Each system has its own credential and external audit behavior; Studio’s tool history does not replace the target system’s logs.
  5. Studio desktop ↔ paired phone or collaborator. The desktop lends a bounded control and visibility path to another device or participant. Revocation, role, and approval scope matter.
  6. Generated app or worker ↔ granted capabilities. Sandboxing or cloud execution is useful only if the grant, channel, credential, and target boundaries are narrow.
The vault, the approval gate, and the audit trail sit on these boundaries. The pages that follow walk through each in detail.

Assumptions our controls rely on

If any of these assumptions don’t hold for you, our controls are weaker than advertised. They’re worth verifying:
  • The user’s workstation is not compromised at the OS level.
  • The user’s Clerk account uses MFA.
  • The user keeps secrets in Key Chain and does not copy resolved values into prompts, commands, recordings, or less protected files.
  • The user reviews approval prompts rather than reflexively clicking “approve.”
  • The user’s organization is configured so that not every operator has admin or autonomous-trust capability.
  • The user’s connectors and MCP servers are sourced from trusted parties.
  • Paired phones, generated apps, and early-access workers are reviewed and revoked or paused when their purpose ends.
The controls described in the rest of this section are designed to make these assumptions easy to keep, not to make them unnecessary.

Vault and keys

The crown jewel: per-org KMS, AES-256-GCM, 30-day rotation, cryptographic shredding.

Known limits

The honest list of what isn’t built yet and what we’re working on.