{ "name": "TDD Guard Development", "build": { "dockerfile": "Dockerfile", "args": { "TZ": "${localEnv:TZ:Europe/Stockholm}", "CLAUDE_CODE_VERSION": "latest", "COMPOSER_VERSION": "2.8.10", "GIT_DELTA_VERSION": "0.18.2", "ZSH_IN_DOCKER_VERSION": "1.2.1", "GO_VERSION": "1.24.0", "RUST_VERSION": "1.89.0" } }, "runArgs": ["--cap-add=NET_ADMIN", "--cap-add=NET_RAW"], "customizations": { "vscode": { "extensions": [ "dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "eamodio.gitlens", "vitest.explorer", "ms-python.python", "Anthropic.claude-code", "bmewburn.vscode-intelephense-client", "golang.go", "Shopify.ruby-lsp", "rust-lang.rust-analyzer" ], "settings": { "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" }, "terminal.integrated.defaultProfile.linux": "zsh", "terminal.integrated.profiles.linux": { "bash": { "path": "bash", "icon": "terminal-bash" }, "zsh": { "path": "zsh" } } } } }, "remoteUser": "node", "mounts": [ "source=claude-code-bashhistory-${devcontainerId},target=/commandhistory,type=volume", "source=claude-code-config-${devcontainerId},target=/home/node/.claude,type=volume" ], "containerEnv": { "NODE_OPTIONS": "--max-old-space-size=4096", "CLAUDE_CONFIG_DIR": "/home/node/.claude", "POWERLEVEL9K_DISABLE_GITSTATUS": "true" }, "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=delegated", "workspaceFolder": "/workspace", "postCreateCommand": "/usr/local/bin/setup-dev-environment.sh", "postStartCommand": "npx playwright install chromium --only-shell 2>/dev/null || echo 'Playwright already installed'" }