{ "name": "Home Assistant Dev", "context": "..", "dockerFile": "../Dockerfile.dev", "postCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder} && script/setup", "postStartCommand": "script/bootstrap", "containerEnv": { "PYTHONASYNCIODEBUG": "1" }, "features": { "ghcr.io/devcontainers/features/github-cli:1": {} }, // Port 5683 udp is used by Shelly integration "appPort": ["8123:8123", "5683:5683/udp"], "runArgs": [ "-e", "GIT_EDITOR=code --wait", "--security-opt", "label=disable" ], "customizations": { "vscode": { "extensions": [ "charliermarsh.ruff", "ms-python.pylint", "ms-python.vscode-pylance", "visualstudioexptteam.vscodeintellicode", "redhat.vscode-yaml", "esbenp.prettier-vscode", "GitHub.vscode-pull-request-github", "GitHub.copilot" ], // Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json "settings": { "python.experiments.optOutFrom": ["pythonTestAdapter"], "python.defaultInterpreterPath": "/home/vscode/.local/ha-venv/bin/python", "python.pythonPath": "/home/vscode/.local/ha-venv/bin/python", "python.terminal.activateEnvInCurrentTerminal": true, "python.testing.pytestArgs": ["--no-cov"], "pylint.importStrategy": "fromEnvironment", "editor.formatOnPaste": false, "editor.formatOnSave": true, "editor.formatOnType": true, "files.trimTrailingWhitespace": true, "terminal.integrated.profiles.linux": { "zsh": { "path": "/usr/bin/zsh" } }, "terminal.integrated.defaultProfile.linux": "zsh", "yaml.customTags": [ "!input scalar", "!secret scalar", "!include_dir_named scalar", "!include_dir_list scalar", "!include_dir_merge_list scalar", "!include_dir_merge_named scalar" ], "[python]": { "editor.defaultFormatter": "charliermarsh.ruff" }, "json.schemas": [ { "fileMatch": ["homeassistant/components/*/manifest.json"], "url": "${containerWorkspaceFolder}/script/json_schemas/manifest_schema.json" } ] } } } }