Build the application.
compos runs the system behind it.

Push to Git and get a live application without assembling the infrastructure around it by hand.

One click, whatever you bring.

Go, Python, Rust, a static site, or your own container. It builds, it starts on an instance of its own, and it comes back with an endpoint and a log stream attached to the release.

acme / storefront

Deploy is where you start, not where it ends.

Everything the system behind the application needs lives in the same project, under the same identity and on the same bill. Add each one as you need it.

Application

The web service itself. Built from a repository, started on an instance of its own, with a log stream that stays attached to the release.

node · go · python · rust · static · docker

PostgreSQL

Relational data with automated backups and point-in-time recovery, on the same private network as the code that talks to it.

4 GB · 20 GB disk

Redis

Cache and session state. Keys resolve over the internal network rather than a public endpoint, so the round trip is short.

256 MB · internal only

Workers and queues

Work that outlives the request that started it. Jobs are pulled off the lane, run to completion, and stay inspectable afterwards.

scale to zero when idle

Storage

Files, media, and build artefacts. Retention is explicit and tiered, so an old object does not quietly cost what a hot one does.

S3 compatible · versioned

An agent is a workload too.

A coding agent needs somewhere to clone a repository, install dependencies, run tests, and throw the whole thing away. Repeatedly, on untrusted code, without a human watching each step. That is an isolated runtime with a lifecycle, and it runs on the same primitive as the application.

Today

  1. Human
  2. Dashboard
  3. Infrastructure

Also

  1. Agent
  2. compos API / CLI
  3. Infrastructure

Same project, same permissions, same log stream either way. The caller changes; the control plane does not.

Sandbox

An environment with a filesystem, a set of credentials you choose, and a network boundary you set. It is not a smaller application; it is the same runtime asked to stop when you stop caring.

Requested

with the credentials and the network access it needs, and nothing more

Used

for as long as the work takes, at whatever size the work needs

Released

when you discard it, or kept when you want the environment back

The same project, from either side of the split.

The dashboard and the terminal are two clients of one model. Moving between them does not change what is true.

Organization

Aacme

Project

  • storefront
  • ledger-api
  • ingest-worker

Resources

  • Applications
  • Databases
  • Storage

storefront

running
  • webapia1f93c2
  • jobworker7bd40e8
  • webapi2c885f1
› live log stream
health 200 · storefront-4k2m
Open the dashboard
compos

$ curl -fsSL compos.com/install.sh | sh

compos 0.4.1 installed

$ compos login

authenticated as acme

$ compos deploy

cloning github.com/acme/ledger-api

detect go 1.25 · static binary

build go build -o bin/server ./cmd/api

live ledger-9x71q.apps.compos.online

$ compos logs --follow

API

Every dashboard action is an API call, and every API call is one of them.

API reference

Config

Declare the build, the regions and the limits next to the code they apply to.

Configuration docs

Policy belongs to the project.

A project carries its own rules: where it may run, what isolation it requires, how long it keeps records, which changes need a second pair of eyes. The control plane holds them, so they apply the same way whether a person is in the dashboard, in a terminal, or an agent calling the API.

Project policy

enforced

Permitted regions

ng-1, eu-west-1

A resource cannot be placed outside these.

Required isolation

dedicated kernel

Held on create, not on request.

Retention

logs 30d · builds 7d

Old records are pruned, never hand deleted.

Deployment approvals

production · 2 reviewers

One approval cannot cut over.

Network egress

declared allow list

Outbound traffic has to match something.

Recovery window

24h backups · 30d PITR

Recovery points are tested, not assumed.

Rules hold without being remembered

A policy is evaluated where the resource is created and where it is changed. A declaration that conflicts with the policy is rejected at that point, which is different from failing a review afterwards.

The platform provides isolation, auditability, access control and policy enforcement. What that means for a given company is a question for that company and its auditors.

Core

Included with every project

  • Identity and roles
  • Scoped secrets
  • Encryption in transit and at rest
  • Audit logging
  • Workload isolation
  • Resource limits

Governance

What the control plane adds

  • Residency and placement policy
  • Retention policy
  • Approval requirements
  • Environment restrictions
  • Policy enforcement
  • Durable audit evidence

Enterprise

Where dedicated infrastructure enters

  • Dedicated regions
  • Private networking
  • Single sign-on
  • Stronger isolation options
  • Disaster recovery configuration
  • Contractual commitments

Bring the app.
We'll run what's behind it.

Private beta is rolling out weekly. Join the waitlist to receive priority access for your repository and workloads.

Request Access

Join hundreds of engineers waiting for the next deployment slot.