1
+ {
2
+ "name" : " Home Assistant Dev" ,
3
+ "context" : " .." ,
4
+ "dockerFile" : " ../Dockerfile.dev" ,
5
+ "postCreateCommand" : " git config --global --add safe.directory ${containerWorkspaceFolder} && script/setup" ,
6
+ "postStartCommand" : " script/bootstrap" ,
7
+ "containerEnv" : {
8
+ "PYTHONASYNCIODEBUG" : " 1"
9
+ },
10
+ "features" : {
11
+ "ghcr.io/anthropics/devcontainer-features/claude-code:1.0" : {},
12
+ "ghcr.io/devcontainers/features/github-cli:1" : {}
13
+ },
14
+ // Port 5683 udp is used by Shelly integration
15
+ "appPort" : [
16
+ " 8123:8123" ,
17
+ " 5683:5683/udp"
18
+ ],
19
+ "runArgs" : [
20
+ " -e" ,
21
+ " GIT_EDITOR=code --wait" ,
22
+ " --security-opt" ,
23
+ " label=disable"
24
+ ],
25
+ "customizations" : {
26
+ "vscode" : {
27
+ "extensions" : [
28
+ " charliermarsh.ruff" ,
29
+ " ms-python.pylint" ,
30
+ " ms-python.vscode-pylance" ,
31
+ " visualstudioexptteam.vscodeintellicode" ,
32
+ " redhat.vscode-yaml" ,
33
+ " esbenp.prettier-vscode" ,
34
+ " GitHub.vscode-pull-request-github" ,
35
+ " GitHub.copilot"
36
+ ],
37
+ // Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json
38
+ "settings" : {
39
+ "python.experiments.optOutFrom" : [
40
+ " pythonTestAdapter"
41
+ ],
42
+ "python.defaultInterpreterPath" : " /home/vscode/.local/ha-venv/bin/python" ,
43
+ "python.pythonPath" : " /home/vscode/.local/ha-venv/bin/python" ,
44
+ "python.terminal.activateEnvInCurrentTerminal" : true ,
45
+ "python.testing.pytestArgs" : [
46
+ " --no-cov"
47
+ ],
48
+ "pylint.importStrategy" : " fromEnvironment" ,
49
+ "editor.formatOnPaste" : false ,
50
+ "editor.formatOnSave" : true ,
51
+ "editor.formatOnType" : true ,
52
+ "files.trimTrailingWhitespace" : true ,
53
+ "terminal.integrated.profiles.linux" : {
54
+ "zsh" : {
55
+ "path" : " /usr/bin/zsh"
56
+ }
57
+ },
58
+ "terminal.integrated.defaultProfile.linux" : " zsh" ,
59
+ "yaml.customTags" : [
60
+ " !input scalar" ,
61
+ " !secret scalar" ,
62
+ " !include_dir_named scalar" ,
63
+ " !include_dir_list scalar" ,
64
+ " !include_dir_merge_list scalar" ,
65
+ " !include_dir_merge_named scalar"
66
+ ],
67
+ "[python]" : {
68
+ "editor.defaultFormatter" : " charliermarsh.ruff"
69
+ },
70
+ "json.schemas" : [
71
+ {
72
+ "fileMatch" : [
73
+ " homeassistant/components/*/manifest.json"
74
+ ],
75
+ "url" : " ${containerWorkspaceFolder}/script/json_schemas/manifest_schema.json"
76
+ }
77
+ ]
78
+ }
79
+ }
80
+ }
81
+ }
0 commit comments