haskell-devcontainerlisted
Install: claude install-skill ivelten/claude-haskell-skills
# Haskell Dev Container
The pre-built image `ivelten/haskell-devcontainer` (Docker Hub) provides a complete, zero-setup Haskell environment: GHC 9.10.3, Cabal 3.12.1.0, HLS, Hoogle, fast-tags, cabal-gild, ormolu, direnv, and Claude Code CLI — all pre-installed.
## Detection — check before asking
When starting any Haskell project task, check whether the devcontainer is already configured:
```bash
grep -q "ivelten/haskell-devcontainer" .devcontainer/docker-compose.yml 2>/dev/null \
&& echo "devcontainer in use" || echo "not configured"
```
If `.devcontainer/docker-compose.yml` references the image → the environment is already set up. Acknowledge it and proceed. The toolchain versions match the defaults in `haskell-project-setup`; no local GHCup, `mise.toml` or `.tool-versions` is required for development (though a pin is still recommended for CI reproducibility).
## When the devcontainer is not configured
The environment choice itself belongs to the `haskell` router skill, which weighs the container against the native `mise` + GHCup path (`haskell-toolchain-mise`). Load this skill once the container has been chosen.
What the container buys: zero setup, a disposable environment, parity with a Linux CI, and Docker services (Postgres) alongside the app. What it costs: on macOS every container is a Linux VM, so CPU and bind-mount I/O are slower than native.
Once chosen, create the files below. The user then opens VS Code and selects **"Reopen in Container"**; the image i