Skip to content

Commit 92e2d11

Browse files
davila7claude
andcommitted
feat: Add Docker Sandbox Provider for local Claude Code execution
🐳 New Docker Sandbox Provider - Execute Claude Code in isolated local containers ## Features - ✅ Fully local execution with complete isolation - ✅ Claude Agent SDK integration with async generator pattern - ✅ Multi-directory file detection (/app and /tmp) - ✅ Support for specialized agents - ✅ Automated execution with --yes flag - ✅ Custom Docker environments ## Files Added - cli-tool/components/sandbox/docker/Dockerfile - Node.js 22 Alpine image - cli-tool/components/sandbox/docker/docker-launcher.js - Container orchestration - cli-tool/components/sandbox/docker/execute.js - Claude SDK execution script - cli-tool/components/sandbox/docker/package.json - Dependencies - cli-tool/components/sandbox/docker/README.md - Complete documentation ## Changes - cli-tool/package.json: Bump version to 1.27.0, add docker files to npm package - cli-tool/src/index.js: Add Docker sandbox execution logic and --yes flag support - docs/component.html: Add Docker provider documentation and comparison table - docs/css/component-page.css: Docker provider styling - docs/js/component-page.js: Docker provider tab functionality ## Usage npx claude-code-templates@latest --sandbox docker --agent example --prompt "task" --yes ## Requirements - Docker Desktop installed and running - Anthropic API key configured 🎉 Version 1.27.0 published to npm 🤖 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent 7cb214e commit 92e2d11

File tree

10 files changed

+1671
-62
lines changed

10 files changed

+1671
-62
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# syntax=docker/dockerfile:1
2+
FROM node:22-alpine
3+
4+
# Install runtime dependencies
5+
RUN apk --no-cache add \
6+
git \
7+
bash \
8+
python3 \
9+
py3-pip \
10+
curl \
11+
&& npm install -g @anthropic-ai/claude-agent-sdk
12+
13+
# Create non-root user for security
14+
RUN adduser -u 10001 -D -s /bin/bash sandboxuser
15+
16+
# Set working directory
17+
WORKDIR /app
18+
19+
# Create output directory
20+
RUN mkdir -p /output && chown sandboxuser:sandboxuser /output
21+
22+
# Copy execution script
23+
COPY execute.js /app/execute.js
24+
COPY package.json /app/package.json
25+
26+
# Install dependencies
27+
RUN npm install --production && \
28+
chown -R sandboxuser:sandboxuser /app
29+
30+
# Switch to non-root user
31+
USER sandboxuser
32+
33+
# Set environment
34+
ENV HOME=/home/sandboxuser
35+
ENV NODE_ENV=production
36+
37+
# Default command (overridden by launcher)
38+
CMD ["node", "/app/execute.js"]

0 commit comments

Comments
 (0)