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.

See also the TUI keys and install.

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