Security isn't a feature we added. It's the foundation we built on. From JWT token architecture to row-level security, every layer is designed to be secure by default.
Agents cannot merge to main. Ever. This is architectural — not a configuration option.
Agents create branches, write code, open PRs, and run tests. But only a human can approve and merge to main. There's no configuration flag to disable this — it's how the system is built.
Five auth methods. All converge to RS256 JWTs. Short-lived access tokens, rotating refresh families, httpOnly cookies.
Two-token system. Short-lived access tokens. Long-lived, rotation-protected refresh tokens stored in httpOnly cookies inaccessible to JavaScript.
Each use rotates to a new token. Reuse of old token invalidates the entire family — active session theft detection.
RS256 uses asymmetric cryptography. The private key signs tokens — it never leaves the server. The public key verifies tokens — it can be distributed freely to any downstream service. No shared secrets to rotate, leak, or misconfigure.
Every account supports TOTP MFA. Enforce it org-wide with a single toggle.
Standard TOTP compatible with any authenticator app: Google Authenticator, Authy, 1Password.
TOTP shared secrets are encrypted at rest using Fernet symmetric encryption before storage.
Admins can mandate MFA across the entire organization. New members must enroll before accessing any resource.
4 roles, 30 permissions, enforced at the database level with PostgreSQL Row-Level Security.
| Permission | Viewer | Member | Admin | Provider Admin |
|---|---|---|---|---|
| View canvas | ✓ | ✓ | ✓ | ✓ |
| Create tasks | — | ✓ | ✓ | ✓ |
| Manage agents | — | ✓ | ✓ | ✓ |
| Manage team | — | — | ✓ | ✓ |
| Configure LLM providers | — | — | ✓ | ✓ |
| Cross-org provider admin | — | — | — | ✓ |
| Approve skill installs | — | — | ✓ | ✓ |
| View audit logs | — | — | ✓ | ✓ |
| Manage billing | — | — | ✓ | — |
| Row-Level Security enforced | ✓ | ✓ | ✓ | ✓ |
All data access is enforced at the database level via PostgreSQL Row-Level Security. Even if a bug bypasses application-level checks, the database enforces permissions.
Every action, every agent move, every login — logged, immutable, exportable.
Append-only. No log entry can be modified or deleted.
Export full audit trail for compliance, SOC 2, and internal review.
Agent moves, auth events, permission changes, LLM calls, merges.
Enterprise teams can supply their own KMS key for envelope encryption. Your data, encrypted with your keys.
Data is encrypted with a data encryption key (DEK). The DEK itself is encrypted with your KMS key. If you revoke the KMS key, data becomes inaccessible immediately.
Integrate your own Google Cloud KMS key ring. Enterprise orgs configure the KMS key reference at the organization level — no EnGenAI staff can access your encrypted data.
AI agents can escalate to human agents for tasks requiring judgement — contract review, compliance checks, architecture decisions. Every escalation is tracked, SLA-enforced, and auditable. Learn more about human agent integration →
See the complete technology stack: every tool, every layer, every data store that powers EnGenAI.