diff --git a/README.md b/README.md index 8c3946b..eebe2b1 100644 --- a/README.md +++ b/README.md @@ -94,8 +94,8 @@ docker compose up ### VS Code Devcontainer Open the project in VS Code and use the "Reopen in Container" command for a fully configured development environment. -Devcontainer will automatically install uv, Claude Code, and git hooks. The image build installs the latest -Codex release, so rebuilding the image updates Codex. +Devcontainer will automatically install uv, Claude Code, Codex, and git hooks. The image build installs the +latest Claude Code and Codex releases with their official installers, so rebuilding the image updates both. The container mounts the host `${HOME}/.claude` and `${HOME}/.codex` directories at `/home/vscode/.claude` and `/home/vscode/.codex` for authentication. These bind mounts are read-write, so changes made in the container can diff --git a/template/.devcontainer/Dockerfile b/template/.devcontainer/Dockerfile index 7a2e6c3..38f99d2 100644 --- a/template/.devcontainer/Dockerfile +++ b/template/.devcontainer/Dockerfile @@ -26,3 +26,10 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ CODEX_NON_INTERACTIVE=1 \ sh /tmp/install-codex.sh \ && rm -f /tmp/install-codex.sh + +# Claude Code's native installer installs under $HOME, so run it as the container user +USER vscode +RUN curl -fsSL https://claude.ai/install.sh | bash \ + && rm -rf /home/vscode/.claude/downloads +USER root +RUN ln -s /home/vscode/.local/bin/claude /usr/local/bin/claude diff --git a/template/.devcontainer/devcontainer.json b/template/.devcontainer/devcontainer.json index ac41402..d6b8899 100644 --- a/template/.devcontainer/devcontainer.json +++ b/template/.devcontainer/devcontainer.json @@ -19,9 +19,7 @@ "ghcr.io/devcontainers/features/github-cli:1": {}, "ghcr.io/devcontainers/features/common-utils:2": { "configureZshAsDefaultShell": true - }, - "ghcr.io/devcontainers/features/node:1": {}, - "ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {} + } }, "runArgs": [ "--init", diff --git a/template/README.md b/template/README.md index 15519d3..bdba108 100644 --- a/template/README.md +++ b/template/README.md @@ -47,8 +47,8 @@ docker compose up ### VS Code Devcontainer Open the project in VS Code and use the "Reopen in Container" command for a fully configured development environment. -Devcontainer automatically installs uv and Claude Code, and installs the latest Codex release when the image is built. -Rebuild the image to update Codex. +Devcontainer automatically installs uv, Claude Code, and Codex. The latest Claude Code and Codex releases are +installed with their official installers when the image is built, so rebuild the image to update them. The container mounts the host `${HOME}/.claude` and `${HOME}/.codex` directories at `/home/vscode/.claude` and `/home/vscode/.codex` for authentication. These bind mounts are read-write, so changes made in the container can