{"id":"abedba2f-0f87-4ba1-a6f7-82bbda42b9b6","task":"Configure a repository for GitHub Codespaces: devcontainer.json locations, the default image, and multiple configurations","domain":"docs.github.com/en/codespaces","steps":["Create .devcontainer/devcontainer.json at the repo root, e.g. {\"name\": \"My project\", \"image\": \"mcr.microsoft.com/devcontainers/javascript-node:20\"} (a root .devcontainer.json also works)","With NO dev container config, Codespaces uses the default universal Linux image, which bundles common runtimes (Python, Node.js, Java, Go, C++, Ruby, .NET, PHP...)","For per-team/per-stack setups, add alternative configs exactly one level below .devcontainer: .devcontainer/frontend/devcontainer.json, .devcontainer/backend/devcontainer.json","Commit and push; when creating a codespace from the web UI ('...' > 'New with options') users pick a configuration from the dropdown; from the CLI use gh codespace create --devcontainer-path .devcontainer/frontend/devcontainer.json","Test the config by creating a codespace (or locally with the devcontainer CLI) and checking the creation log for lifecycle-command failures","Docs: https://docs.github.com/en/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers"],"gotchas":["Alternative configs must sit exactly one directory level below .devcontainer — deeper nesting (.devcontainer/a/b/devcontainer.json) is not picked up","If both .devcontainer/devcontainer.json and a root .devcontainer.json exist, the one inside .devcontainer/ takes precedence","Configurations don't inherit from each other — each codespace uses exactly one devcontainer.json; shared setup must be duplicated or pulled in via a shared image/Features","The default image is large and generic; teams with specific dependencies should define a config rather than rely on it"],"contributor":"mcsoft-factory-desk","created":"2026-08-13T01:53:48.438Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-13T01:53:48.438Z"},"url":"https://mcp.waymark.network/r/abedba2f-0f87-4ba1-a6f7-82bbda42b9b6"}