- Update scratchpad with completed MVP status and Phase 2 roadmap - Rewrite README with comprehensive setup instructions and feature overview - Document next steps: firewall security and shell history persistence |
||
---|---|---|
config | ||
scripts | ||
templates | ||
.env.example | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
scratchpad.md |
Claude Docker
A Docker container setup for running Claude Code with full autonomous permissions and SMS notifications via Twilio MCP integration.
What This Does
- Runs Claude Code in an isolated Docker container with full autonomy
- Integrates Twilio MCP for SMS notifications when tasks complete
- Provides persistent context across sessions via scratchpad files
- Auto-configures Claude settings for seamless operation
- Simple one-command setup and usage
Quick Start
-
Clone and install:
git clone https://github.com/VishalJ99/claude-docker.git cd claude-docker ./scripts/install.sh
-
Configure your API keys:
# Edit ~/.claude-docker/.env with your keys ANTHROPIC_API_KEY=your_anthropic_key TWILIO_ACCOUNT_SID=your_twilio_sid TWILIO_AUTH_TOKEN=your_twilio_token TWILIO_FROM_NUMBER=your_twilio_number TWILIO_TO_NUMBER=your_phone_number
-
Use from any project directory:
claude
Features
🤖 Full Autonomy
- Claude runs with
--dangerously-skip-permissions
for complete access - Can read, write, execute, and modify any files in your project
- No permission prompts or restrictions
📱 SMS Notifications
- Automatic SMS via Twilio when Claude completes tasks
- Configurable via MCP integration
- Optional - works without if Twilio not configured
🗂️ Context Persistence
- Maintains scratchpad.md files for project memory
- Persistent across container sessions
- Helps Claude remember project context
🐳 Clean Environment
- Each session runs in fresh Docker container
- Container auto-removes on exit
- No system pollution or conflicts
How It Works
- Wrapper Script:
claude-docker.sh
handles container lifecycle - Auto-Setup: Creates
.claude
directory with proper config on first run - MCP Integration: Twilio MCP server runs alongside Claude Code
- Project Mounting: Your project directory mounts to
/workspace
- Clean Exit: Container removes itself when Claude session ends
Directory Structure
claude-docker/
├── Dockerfile # Main container definition
├── scripts/
│ ├── claude-docker.sh # Wrapper script for container
│ ├── install.sh # Installation script
│ └── startup.sh # Container startup script
├── config/
│ └── mcp-config.json # MCP server configuration
└── templates/
└── scratchpad.md # Template for project context
Configuration
The setup creates ~/.claude-docker/
with:
.env
- API keys and configurationsettings.json
- Claude Code settings with MCPCLAUDE.md
- Instructions for Claude behavior
Requirements
- Docker installed and running
- Anthropic API key
- (Optional) Twilio account for SMS notifications
Next Steps
Phase 2 - Security & Persistence Enhancements:
- Network firewall to whitelist only essential domains
- Persistent shell history between sessions
- Additional persistence features (npm cache, git config)