Loading...
Loading...
Expert reference for the Dev Container ecosystem. Consult this skill whenever the user is setting up a dev container, configuring or debugging devcontainer.json, working in a Docker-based development environment, or asking about dev containers, GitHub Codespaces, DevPod, or Zed — even if they don't say "devcontainer" explicitly. Covers the full Dev Container spec, schema validation, tool-specific behaviors and limitations (VS Code, Cursor, Zed, Codespaces, CodeSandbox, Podman), Features and Templates (choosing, authoring, publishing), lifecycle scripts, environment variables, port forwarding, multi-container setups, and official best practices from containers.dev and devcontainers.github.io. Also use when the user is confused by container behavior that differs between tools, wants to write or publish a custom Feature, or needs to validate or debug a devcontainer.json.
npx skill4agent add afonsograca/devcontainers-best-practices devcontainers-best-practicesdevcontainer.jsondevcontainer.json"image": "mcr.microsoft.com/devcontainers/base:ubuntu""features": { "ghcr.io/devcontainers/features/git:1": {} }devcontainer.jsonreferences/| Need | File |
|---|---|
| When to use the full spec, key concepts, merge logic, lifecycle | references/spec.md |
| JSON reference vs schema, canonical URLs, how to validate | references/schema.md |
| Supporting tools, tool-specific properties, limitations | references/tools.md |
| VS Code workflows, requirements, prebuild, ports, extensions, limitations, dotfiles, managing containers | references/vscode-containers.md |
| Tips and tricks (OS, Git, performance, troubleshooting, profile persistence, reporting) | references/tips-and-tricks.md |
| Official Features, OCI refs, versioning, options, install order, authoring Features | references/features.md |
| Official Templates, when to use template vs Feature vs Dockerfile | references/templates.md |
customizations.*customizations.vscodecustomizations.codespacesghcr.io/devcontainers/features/<name>:<version>containerEnvremoteEnvremoteEnvforwardPortsappPortappPortportsdevcontainer.json:latestonCreateCommandupdateContentCommandpostCreateCommanddevcontainer.json