# Instance name — used to generate resource names (devcontainer-{name}, userhome-{name}) name: "" image: repository: ghcr.io/cpfarhood/devcontainer tag: latest pullPolicy: Always # GitHub repository to clone into /workspace githubRepo: "" # IDE to launch inside the container. # Options: # vscode — VSCode via VNC browser UI on port 5800 (default) # antigravity — Google Antigravity (VSCode fork) via VNC on port 5800 # none — no IDE; useful when ssh: true is the sole access method ide: vscode # Start an OpenSSH server on port 22 in addition to the IDE. # Set SSH_AUTHORIZED_KEYS in the env secret to allow key-based login. ssh: false # Happy Coder endpoints happyServerUrl: "https://happy.farh.net" happyWebappUrl: "https://happy-coder.farh.net" happyHomeDir: "/config/userdata/.happy" happyExperimental: "true" # VNC display display: width: "1920" height: "1080" # Set to "0" when TLS is terminated at the gateway layer secureConnection: "0" userId: "1000" groupId: "1000" storage: size: 32Gi className: ceph-filesystem # Shared memory size — mounted at /dev/shm as a memory-backed emptyDir. # Electron apps (Antigravity, Chrome) use /dev/shm for GPU/IPC buffers. shm: sizeLimit: 2Gi resources: requests: memory: "2Gi" cpu: "1000m" limits: memory: "8Gi" cpu: "4000m" # Kubernetes cluster access granted to the devcontainer pod via RBAC. # Options: # none — no cluster access (default) # readonlyns — get/list/watch all resources in the release namespace # readwritens — full access to all resources in the release namespace # readonly — get/list/watch all resources cluster-wide # readwrite — full access to all resources cluster-wide clusterAccess: none # Name of existing Secret containing env vars (GITHUB_TOKEN, VNC_PASSWORD, etc.) # Defaults to: devcontainer-{name}-secrets-env envSecretName: "" # MCP server sidecars — run alongside the devcontainer to inherit pod RBAC. mcpSidecars: kubernetes: enabled: true image: repository: quay.io/containers/kubernetes_mcp_server tag: v0.0.57 # Pinned version (Jan 27, 2025) with token exchange and field selector support port: 8080 resources: requests: memory: "64Mi" cpu: "50m" limits: memory: "256Mi" cpu: "500m" flux: enabled: true image: repository: ghcr.io/controlplaneio-fluxcd/flux-operator-mcp tag: v0.41.1 port: 8081 resources: requests: memory: "64Mi" cpu: "50m" limits: memory: "256Mi" cpu: "500m" homeassistant: enabled: false # Disabled by default, requires HOMEASSISTANT_URL and HOMEASSISTANT_TOKEN image: repository: ghcr.io/homeassistant-ai/ha-mcp tag: 6.7.1 # Pinned version (Feb 20, 2026) - latest stable release port: 8087 resources: requests: memory: "64Mi" cpu: "50m" limits: memory: "256Mi" cpu: "500m" github: enabled: true # Enabled by default, uses GITHUB_TOKEN from env image: repository: ghcr.io/modelcontextprotocol/servers/github tag: latest # Update to specific version once available port: 8088 resources: requests: memory: "64Mi" cpu: "50m" limits: memory: "256Mi" cpu: "500m"