Skip to main content

Security built into every layer

Autonomous development is only useful if it’s safe. CrewWork is designed with security as a core principle, and every feature includes safeguards to keep you in control.

gates in order, before your default branch
  • Plan approval available before execution when selected
  • Isolated execution untrusted paths run in gVisor
  • Validation before publication the quality gate posts its own status
  • Human review a person decides what merges

Four gates stand between AI and your code

A change passes these in order before it can reach your default branch.

  • Plan approval Choose Plan first to review and approve the plan before execution, or Start now to begin without a separate approval step.
  • Isolated execution Every untrusted execution path, including platform self-repair candidates, runs inside gVisor (runsc) kernel-isolated containers with hard resource ceilings, and a failed candidate is discarded with its sandbox. See Runtime Isolation.
  • Validation before publication A five-part quality gate (tests, coverage, security, code health, and live preview quality) posts as its own commit status on the change, and self-repair candidates are additionally scored against their exact trusted parent. Thresholds and scoring are on Testing & Quality Gates; the self-repair model is on Platform Self-Repair.
  • Human review A person decides whether to merge. Project changes use delivery branches; publication follows project settings and permissions. Platform self-repair is review-first. External source-control and model connections are explicit operator choices.

Every feature includes its own safeguards

  • Repair automation is opt-in and tightly bounded Automatic repair triggers are opt-in and bounded by project policy, cooldowns, and daily budgets. You can also start work from an individual error.
  • Writes stay inside declared paths Every change must fall inside the planner-declared allowed paths, and out-of-scope writes are refused before they apply. Platform authority files are protected, and high-risk paths escalate to the strictest validation tier.
  • Model context is bounded Model context is scoped to the work, with controls to reduce exposure of sensitive data. Review the endpoints and integrations you configure.
  • Every action is traceable Audit events record key actions such as project/task changes and file modifications for traceability.
  • Concurrent writes are coordinated Workspace locks guard concurrent write operations and expose lock metadata in the API.
  • Recommendations are filtered before review Suggestion and recommendation candidates are quality-filtered before reaching review channels, helping teams avoid noisy or duplicative changes.
  • Secrets stay encrypted, with audited rotation Secrets are encrypted at rest with rotation policies and dedicated audit logs.
  • Abuse and runaway requests are blocked by default Layered per-endpoint rate limits (Redis-backed API quotas, per-IP ingress limits) and authenticated, rate-limited WebSockets protect critical automation endpoints.
  • Untrusted input is fenced away from AI instructions A trust-tiered prompt compiler assembles every prompt from role-tagged blocks (system, developer, trusted context, untrusted user and context) fenced by reserved delimiters, with delimiter escaping, injection-pattern neutralization in untrusted blocks, a per-block source map, and an immutable guardrail epilogue appended to every compiled prompt.

More protections sit behind the approval gates

CrewWork runs selectable scanner profiles against your repository as resource-bounded jobs: static analysis, dependency and secret scanning, plus three opt-in dynamic scan modes.

Scanner lineup
FamilyCoverageTools
Static analysisPython, JavaScript/TypeScript, Go, Ruby, C/C++, JavaBandit, Semgrep, njsscan, Gosec, Brakeman, Cppcheck, SpotBugs
Dependencies and SCAnpm, Python, Go, and Cargo dependencies, with license policy enforcementnpm audit, npm lifecycle-script check, npm, PyPI, Go and Cargo outdated checks, pip-audit, OSV
SecretsThe repositoryGitleaks
Infrastructure as codeIaC filesTrivy
Dynamic analysis modes
ModeTargetAuthorization
Passive baseline (ZAP)The exact running preview buildNone needed
Active webUnauthenticated preview, bounded and rate-limited on an ephemeral scanner networkExplicit, per project
Active APIUnauthenticated preview, bounded and rate-limited on an ephemeral scanner networkExplicit, per project

Findings land in a filterable triage queue, faceted by severity and family, where each one is marked action needed, reviewed, or scanner diagnostics. A single finding inspector shows each finding’s fix eligibility, its active remediation attempt, and evidence inline.

push gate
CrewWork blocks secrets before they ever reach a remote, rather than flagging them after the fact. Every push path is gated by a fail-closed Gitleaks scan of the exact revision range: your initial repository push, ordinary delivery-branch pushes, and platform self-repair promotion. A detected secret blocks the push outright.
access
Every project is owned by an organization and a team under layered role-based access control. Membership changes revoke active sessions in real time. Any project member with read access can pull a non-certifying compliance evidence report spanning scans, SBOM/VEX records, quality-gate results, release provenance, and the audit trail. See Organizations & Teams for the full model.

Isolation runs at the network layer too

CrewWork’s single-host deployment is locked down by default, at the network layer as well as the application layer.

  • Single Public Entry Point Only the reverse proxy is exposed to the network. Every internal service binds to localhost by default.
  • Isolated Container Control Plane The container orchestrator is the only service with Docker socket access, authenticated by its own dedicated token.
  • Credential-Free Validation Containers Validation containers that run repository code never receive internal platform credentials.
  • Fail-Closed Session Security Token revocation fails closed in production, and CSRF double-submit protection guards every state-changing request.
  • Monitoring Behind the Same Ingress The built-in Grafana, Prometheus, and Alertmanager dashboards are reached through the same authenticated reverse proxy as the rest of the platform. Their direct ports stay loopback-only by default, and browser credentials are never forwarded to the monitoring containers.
  • Locked-Down Direct API Responses Any HTML the API service serves directly fails closed to a default-src none content security policy. The one narrow exception is the interactive API reference, scoped to exact, hash-pinned assets with no unsafe-inline or unsafe-eval.

Your Code, Your Control

repository
When you connect a repository, CrewWork clones it to work with. Nothing goes straight to your default branch.
artifacts
Large logs, diffs, and tool outputs are stored outside your repo with redaction and size limits, so context stays tight without bloating your codebase.
model traffic
Local-only by default: CrewWork refuses to send model traffic to any endpoint not on localhost or your private network unless you explicitly opt out, and per-lane endpoint allowlists reject unapproved model hosts.

Signing in and connecting a repository stay separate

removed: signing in grants access to your repositories
added: sign in with GitHub, GitLab.com, or Bitbucket Cloud OAuth; link several identities
added: choose which repositories to connect, separately
added: revoke CrewWork’s access any time from the provider
credentials
OAuth tokens are stored encrypted, and branch protection rules and required reviews remain in effect for every change that reaches your default branch.
webhooks
Signatures are verified, and runtime repair validates repository permissions before any push.
error intake
Project-scoped ingest keys identify the project and environment receiving application error events.

See whether CrewWork fits your work.

CrewWork is built and running, and not yet generally available.

worth discussing
The errors and backlog you would hand off
Where your source has to stay
The evidence you would need to trust a change