guide / kind· 2026-08-20
This folder decides. You type the same verbs.
kind is this-folder identity. It is not a Docker UI.
| This folder | kind | Start | Exec |
|---|---|---|---|
.devcontainer present |
devcontainer |
official CLI, then dc-forward |
official devcontainer exec |
| else root compose file | compose |
Compose -p NAME -f FILES up -d (docker compose or docker-compose) |
Compose exec (1 / app / web / refuse) |
| else | none | dc try sandbox + localhost ports; TTY dc up offers it |
after try, labeled dc-exec |
cd /path/to/your/project
dc-doctor --json . # workspace.kind
dc # u start e shell s stop
Agents: prefer dc inspect --json for workspace.kind (plus host, next, stack). dc-doctor --json remains the check list.
Same board. Same keys. Compose-kind does not invent VS Code attach and does not auto-publish ports.
FAQ
- Do I pick a mode?
- No. .devcontainer present → kind=devcontainer even if compose files exist. Else a root compose file → kind=compose.
- What if none?
- dc try is the start path (sandbox + default localhost ports); on a TTY dc up offers that sandbox. Agents use dc-try --yes.
- Does compose-kind publish Colima ports?
- Not automatically. dc-forward stays opt-in and still wants a labeled app or --id. Folder attach (a) is N/A. dc-files Enter still opens VS Code on that running box. Cursor needs kind=devcontainer (dev-container+); compose-kind falls back to a bind-mount host path.
- What if two folders share a compose project name?
- Fail closed. We do not hash-rename. working_dir or config_files must prove this folder. project and project/.devcontainer are the same workspace. /Users vs /Volumes of the same dir too.
- Why did dc-down --all refuse claimants?
- It used to count the labeled app folder and a sibling working_dir under .devcontainer as two owners. That is one stack now. Retry dc-down --all --yes.
- Can fleet start a compose-only project?
- No. dc-ls --all and the fleet picker stay labeled Dev Container workspaces.
Broke something?report it