┌─────────────────────────────────────────────────────────────────┐
│ HOST MACHINE │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ .devcontainer/ │ │
│ │ ├── .env ← Your secrets (gitignored) │ │
│ │ ├── docker-compose.yml ← Reads .env for substitution │ │
│ │ └── devcontainer.json │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │ │
│ Docker Compose │
│ substitutes ${VARS} │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ CONTAINER │ │
│ │ Environment variables set via docker-compose.yml │ │
│ │ ├── GITHUB_PAT=<from .env> │ │
│ │ ├── AWS_ACCESS_KEY_ID=<from .env> │ │
│ │ └── LANGSMITH_API_KEY=<from .env> │ │
│ │ │ │
│ │ /workspace ← Named Docker volume (code lives here) │ │
│ └─────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘