Configuration

On this page

A DevCapsule configuration describes what a project needs and how you want to work on it. That configuration lives in three places:

  1. The project, in Git: .devcapsule/devcapsule.toml (the manifest) declares required and offered capabilities, environment inputs, and recommendations. A capability names something the environment supplies, such as a Java runtime or browser automation, and a component supplies it. The platform lock, .devcapsule/devcapsule.<platform>.lock, pins the base image and resolved component versions. Both files travel in Git.
  2. Your checkout, on your computer: your checkout record stores your IDE choice, added and omitted capabilities, provider choices, values, directory and secret bindings, host-access answers, and local component pins. A second checkout of the same repository keeps its own record.
  3. Your configuration home: settings.toml holds default resource limits and the vendor channels you trust across every project launched from that home. Channel trust permits verified downloads; it grants no host access.

devcapsule project run derives the launch plan from all three records every time. Checkout choices override recommendations, while required capabilities must stay present and satisfy their minimum versions. The explicit exception is replacing a required IDE for one launch. If a required choice or consent is missing, the launcher asks before starting a container. Without a terminal, it exits with status 3 instead. The selected IDE opens the project, owns the container's lifetime, and uses the capsule's display.

Guides in this section

Read the source on GitHub Back to top ↑