Commit Graph

10 Commits

Author SHA1 Message Date
Vishal Jain
93d58eca27 Remove redundant settings.local.json template
The MCP configuration is already handled by the Dockerfile using
claude mcp add-json command. The template file was unnecessary and
could cause confusion.
2025-06-18 11:48:23 +01:00
Vishal Jain
70040a7444 Fix Docker build command variable expansion
Fixed shell variable expansion issue in docker build command.
System packages now install correctly during build process.
2025-06-18 01:20:29 +01:00
Vishal Jain
67f2692aad Add conda package directories support
Added CONDA_PKGS_DIRS environment variable setting to ensure conda
looks in the correct package cache directories inside the container.
This matches the pattern used for CONDA_ENVS_DIRS.
2025-06-18 01:05:33 +01:00
Vishal Jain
1d1d6bcbaf Improve conda environment directory detection
Changed pattern to *env* to match both envs and conda_envs directories.
This ensures all environment directories are added to CONDA_ENVS_DIRS.
2025-06-18 01:01:35 +01:00
Vishal Jain
51edcfc2bb Fix conda_envs directory detection
Changed pattern from */envs* to *envs* to match conda_envs directories.
Now both .conda/envs and conda_envs directories are added to CONDA_ENVS_DIRS.
2025-06-18 01:00:56 +01:00
Vishal Jain
a53d28bf2f Add comprehensive conda integration for academic environments
Enhanced conda support to handle custom environment and package directories:

Key Changes:
- Mount conda installation at original path (not /opt/miniconda3)
- Add CONDA_EXTRA_DIRS for mounting additional search paths
- Mount all conda-configured directories to preserve existing setup
- Update CLAUDE.md to use ${CONDA_EXE} environment variable

Technical Details:
- Preserves original conda paths so existing configuration works
- Handles multiple envs_dirs and pkgs_dirs automatically
- Provides feedback about which directories are mounted
- Falls back gracefully for missing directories

Example usage: CONDA_EXTRA_DIRS="/vol/path/.conda/envs /vol/path/conda_envs /vol/path/.conda/pkgs"
Result: All conda environments and packages accessible in container.
2025-06-18 00:21:01 +01:00
Vishal Jain
7cd765b756 Implement zero-friction authentication persistence with MCP user scope
Major breakthrough solving the authentication chicken-and-egg problem:

Key Changes:
- Copy ~/.claude.json and ~/.claude/ during Docker build for baked-in auth
- Add -s user flag to claude mcp add-json for persistent MCP servers
- Simplify rebuild logic to prevent unnecessary rebuilds
- Update documentation with rebuild instructions

Technical Details:
- Authentication files placed before USER switch in Dockerfile
- MCP configuration now persists across all sessions
- Rebuild only occurs when image doesn't exist
- Clean separation of build vs runtime concerns

Result: Users authenticate once on host, then zero login prompts forever.
SMS notifications ready immediately on container start.
2025-06-17 22:27:11 +01:00
Vishal Jain
6cb57c9dc6 Fix Twilio MCP integration with baked-in credentials
- Add proper type and env sections to mcp-config.json
- Remove dynamic MCP add command, use pre-configured MCP
- Bake .env credentials into Docker image at build time
- Remove runtime .env volume mount - true one-time setup
- Auto-rebuild image when .env file changes
- Export Twilio env vars for MCP server subprocess
- Remove conflicting .mcp.json file
2025-06-13 09:53:43 +01:00
Vishal Jain
dcc936dc10 Implement authentication persistence for Claude Docker
- Add persistent volume mount for Claude home directory (~/.claude)
- Create non-root user in Docker container for better security
- Mount host ~/.claude-docker/claude-home to container ~/.claude
- Update install script to create claude-home directory
- Check for existing credentials on startup
- Authentication tokens now persist across container restarts
2025-06-12 14:09:10 +01:00
Vishal Jain
23524659e8 Initial commit: Claude Docker setup
- Dockerfile with Claude Code and Twilio MCP integration
- Wrapper script for easy invocation from anywhere
- Auto-setup of .claude directory in projects
- SMS notifications via Twilio when tasks complete
- Installation script for zshrc alias
- Full autonomous permissions with --dangerously-skip-permissions
- Context persistence via scratchpad.md
2025-06-11 10:29:15 +01:00