claudepod 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,12 +4,39 @@
4
4
 
5
5
  set -euo pipefail
6
6
 
7
+ # Clear npm prefix environment variables that conflict with NVM
8
+ unset npm_config_prefix 2>/dev/null || true
9
+ unset NPM_CONFIG_PREFIX 2>/dev/null || true
10
+
7
11
  echo "🐚 Setting up enhanced ZSH configuration..."
8
12
 
13
+ # State tracking directory
14
+ STATE_DIR="/workspace/.devcontainer/state"
15
+
16
+ # Function to create state marker
17
+ create_state_marker() {
18
+ local component="$1"
19
+ local method="${2:-unknown}"
20
+
21
+ mkdir -p "$STATE_DIR"
22
+ echo "$(date '+%Y-%m-%d %H:%M:%S') - $method" > "$STATE_DIR/${component}.installed"
23
+ chown -R node:node "$STATE_DIR"
24
+ }
25
+
26
+ # Function to check if component is already installed
27
+ is_component_installed() {
28
+ local component="$1"
29
+
30
+ [ -f "$STATE_DIR/${component}.installed" ]
31
+ }
32
+
9
33
  # Variables
10
34
  ZSH_CUSTOM="${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}"
11
35
  NODE_USER="node"
12
36
 
37
+ # Source shell configuration modules
38
+ source "/workspace/.devcontainer/scripts/shell/zsh-config.sh"
39
+
13
40
  # Function to install ZSH plugin
14
41
  install_zsh_plugin() {
15
42
  local plugin_name="$1"
@@ -42,206 +69,15 @@ install_powerlevel10k() {
42
69
  fi
43
70
  }
44
71
 
45
- # Function to create enhanced .zshrc
46
- create_zshrc() {
47
- echo "📝 Creating enhanced .zshrc configuration..."
48
-
49
- # Backup existing .zshrc if it exists
50
- if [ -f "$HOME/.zshrc" ]; then
51
- cp "$HOME/.zshrc" "$HOME/.zshrc.backup.$(date +%s)" 2>/dev/null || true
52
- fi
53
-
54
- cat > "$HOME/.zshrc" << 'EOF'
55
- # ClaudePod ZSH Configuration
56
- # Path to your oh-my-zsh installation
57
- export ZSH="$HOME/.oh-my-zsh"
58
-
59
- # Set name of the theme to load
60
- ZSH_THEME="powerlevel10k/powerlevel10k"
61
-
62
- # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
63
- if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
64
- source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
65
- fi
66
-
67
- # Disable P10k configuration wizard
68
- export POWERLEVEL9K_DISABLE_CONFIGURATION_WIZARD=true
69
-
70
- # ZSH Configuration
71
- CASE_SENSITIVE="false"
72
- HYPHEN_INSENSITIVE="true"
73
- DISABLE_AUTO_UPDATE="false"
74
- DISABLE_UPDATE_PROMPT="true"
75
- export UPDATE_ZSH_DAYS=7
76
- DISABLE_MAGIC_FUNCTIONS="false"
77
- DISABLE_LS_COLORS="false"
78
- DISABLE_AUTO_TITLE="false"
79
- ENABLE_CORRECTION="true"
80
- COMPLETION_WAITING_DOTS="true"
81
- DISABLE_UNTRACKED_FILES_DIRTY="false"
82
- HIST_STAMPS="yyyy-mm-dd"
83
-
84
- # ZSH Plugins
85
- plugins=(
86
- git
87
- docker
88
- docker-compose
89
- node
90
- npm
91
- python
92
- pip
93
- vscode
94
- zsh-syntax-highlighting
95
- zsh-autosuggestions
96
- zsh-completions
97
- fast-syntax-highlighting
98
- history-substring-search
99
- colored-man-pages
100
- command-not-found
101
- extract
102
- z
103
- )
104
-
105
- # Load Oh My Zsh
106
- source $ZSH/oh-my-zsh.sh
107
-
108
- # User configuration
109
- export LANG=en_US.UTF-8
110
- export EDITOR='code'
111
- export ARCHFLAGS="-arch x86_64"
112
-
113
- # History configuration
114
- HISTSIZE=50000
115
- SAVEHIST=50000
116
- setopt HIST_EXPIRE_DUPS_FIRST
117
- setopt HIST_IGNORE_DUPS
118
- setopt HIST_IGNORE_ALL_DUPS
119
- setopt HIST_IGNORE_SPACE
120
- setopt HIST_FIND_NO_DUPS
121
- setopt HIST_SAVE_NO_DUPS
122
- setopt HIST_BEEP
123
- setopt SHARE_HISTORY
124
-
125
- # Path configuration
126
- export PATH="$HOME/.local/bin:$PATH"
127
- export PATH="/usr/local/share/npm-global/bin:$PATH"
128
-
129
- # Node.js/NVM configuration
130
- export NVM_DIR="/usr/local/share/nvm"
131
- [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
132
- [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
133
-
134
- # Python configuration
135
- if command -v python3 &> /dev/null; then
136
- alias python=python3
137
- alias pip=pip3
138
- fi
72
+ # ZSH configuration is now handled by focused generator functions:
73
+ # - generate_zsh_basic_config(): Basic ZSH settings, plugins, history
74
+ # - generate_zsh_aliases(): All alias definitions
75
+ # - generate_zsh_functions(): Shell utility functions
76
+ # - generate_zsh_welcome(): Welcome message and final configuration
77
+ # - create_zshrc(): Main orchestrator function
78
+ # See: /workspace/.devcontainer/scripts/shell/zsh-config.sh
139
79
 
140
- # ClaudePod aliases
141
- alias ll='ls -alF'
142
- alias la='ls -A'
143
- alias l='ls -CF'
144
- alias gs='git status'
145
- alias gd='git diff'
146
- alias gc='git commit'
147
- alias gco='git checkout'
148
- alias gp='git push'
149
- alias gl='git log --oneline --graph --decorate'
150
- alias ga='git add'
151
- alias gb='git branch'
152
- alias gm='git merge'
153
- alias gr='git rebase'
154
- alias gf='git fetch'
155
- alias gpl='git pull'
156
-
157
- # Development aliases
158
- alias c='code .'
159
- alias cls='clear'
160
- alias h='history'
161
- alias ..='cd ..'
162
- alias ...='cd ../..'
163
- alias ....='cd ../../..'
164
- alias ~='cd ~'
165
-
166
- # Claude Code aliases
167
- alias claude='claude --model sonnet --dangerously-skip-permissions'
168
- alias claude-help='claude --help'
169
- alias claude-mcp='claude mcp list'
170
- alias claude-version='claude --version'
171
-
172
- # Docker aliases (if docker is available)
173
- if command -v docker &> /dev/null; then
174
- alias d='docker'
175
- alias dc='docker-compose'
176
- alias dps='docker ps'
177
- alias dpsa='docker ps -a'
178
- alias di='docker images'
179
- alias drm='docker rm'
180
- alias drmi='docker rmi'
181
- fi
182
-
183
- # Useful functions
184
- # Extract various archive formats
185
- extract() {
186
- if [ -f $1 ]; then
187
- case $1 in
188
- *.tar.bz2) tar xjf $1 ;;
189
- *.tar.gz) tar xzf $1 ;;
190
- *.bz2) bunzip2 $1 ;;
191
- *.rar) unrar e $1 ;;
192
- *.gz) gunzip $1 ;;
193
- *.tar) tar xf $1 ;;
194
- *.tbz2) tar xjf $1 ;;
195
- *.tgz) tar xzf $1 ;;
196
- *.zip) unzip $1 ;;
197
- *.Z) uncompress $1 ;;
198
- *.7z) 7z x $1 ;;
199
- *) echo "'$1' cannot be extracted via extract()" ;;
200
- esac
201
- else
202
- echo "'$1' is not a valid file"
203
- fi
204
- }
205
-
206
- # Create directory and cd into it
207
- mkcd() {
208
- mkdir -p "$1" && cd "$1"
209
- }
210
-
211
- # Find process by name
212
- findp() {
213
- ps aux | grep -v grep | grep "$1"
214
- }
215
-
216
- # Quick HTTP server
217
- serve() {
218
- local port="${1:-8000}"
219
- python3 -m http.server "$port"
220
- }
221
-
222
- # Load Powerlevel10k configuration
223
- if [[ -r ~/.p10k.zsh ]]; then
224
- source ~/.p10k.zsh
225
- fi
226
-
227
- # Auto-suggestions configuration
228
- ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#666666"
229
- ZSH_AUTOSUGGEST_STRATEGY=(history completion)
230
- ZSH_AUTOSUGGEST_USE_ASYNC=true
231
-
232
- # Syntax highlighting configuration
233
- ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern)
234
-
235
- # Welcome message
236
- if [[ -n "$ZSH_VERSION" && -z "$VSCODE_RESOLVING_ENVIRONMENT" ]]; then
237
- echo "🚀 Welcome to ClaudePod!"
238
- echo "💡 Type 'claude' to start using Claude Code"
239
- echo "📋 Run 'claude mcp list' to see available MCP servers"
240
- fi
241
- EOF
242
-
243
- echo "✅ Enhanced .zshrc created"
244
- }
80
+ # Note: The actual create_zshrc() function is now imported from the module above
245
81
 
246
82
  # Function to create Powerlevel10k configuration
247
83
  create_p10k_config() {
@@ -336,6 +172,18 @@ EOF
336
172
 
337
173
  # Main setup function
338
174
  main() {
175
+ # Check if ZSH setup is already complete
176
+ if is_component_installed "zsh-setup"; then
177
+ echo "✅ ZSH enhancement already complete (marker found)"
178
+ if [ -f "$HOME/.zshrc" ] && [ -d "$HOME/.oh-my-zsh/custom/themes/powerlevel10k" ]; then
179
+ echo "✓ .zshrc and Powerlevel10k theme verified"
180
+ return 0
181
+ else
182
+ echo "⚠️ Marker exists but files missing, re-running setup..."
183
+ rm -f "$STATE_DIR/zsh-setup.installed"
184
+ fi
185
+ fi
186
+
339
187
  echo "🐚 Starting ZSH enhancement setup..."
340
188
 
341
189
  # Ensure we're running as the correct user
@@ -350,9 +198,9 @@ main() {
350
198
  exit 1
351
199
  fi
352
200
 
353
- # Suppress NVM errors during this process
201
+ # Source NVM for this process
354
202
  export NVM_DIR="/usr/local/share/nvm"
355
- [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" 2>/dev/null || true
203
+ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
356
204
 
357
205
  # Install Powerlevel10k theme
358
206
  install_powerlevel10k
@@ -377,9 +225,10 @@ main() {
377
225
  sudo chsh -s /usr/bin/zsh "$NODE_USER" || echo "⚠️ Could not change default shell"
378
226
  fi
379
227
 
228
+ create_state_marker "zsh-setup" "plugins+theme+config"
380
229
  echo "✅ ZSH enhancement setup complete!"
381
230
  echo "💡 Restart your terminal or run 'source ~/.zshrc' to apply changes"
382
231
  }
383
232
 
384
233
  # Execute main function
385
- main
234
+ main
package/README.md CHANGED
@@ -1,140 +1,151 @@
1
- # ClaudePod DevContainer Package
1
+ # ClaudePod
2
2
 
3
- A fully configured DevContainer optimized for Claude Code development with MCP servers, modern development tools, and persistent configuration. Easily add this development environment to any project with one command.
3
+ A complete development container that sets up Claude Code with 8 powerful MCP servers, modern dev tools, and persistent configurations. Drop it into any project and get a production-ready AI development environment in minutes.
4
4
 
5
- ## 🚀 Quick Setup
5
+ ## What's Inside
6
+
7
+ **Claude Code CLI** with native binary installation and optimized configuration
8
+ **8 MCP Servers** providing 100+ specialized tools for code analysis, documentation search, task management, and more
9
+ **Modern Stack** - Node.js 20, Python 3.13, Git with delta, GitHub CLI
10
+ **Smart Persistence** - Your Claude config, shell history, and npm cache survive container rebuilds
11
+ **Enhanced Terminal** - Powerlevel10k with quiet mode and useful git aliases
12
+
13
+ ## Quick Start
14
+
15
+ ### Using NPM Package
16
+
17
+ ClaudePod is available as an npm package at [npmjs.com/package/claudepod](https://www.npmjs.com/package/claudepod):
6
18
 
7
19
  ```bash
8
- # Install in any project directory
20
+ # Drop into any project
21
+ cd your-project
9
22
  npx claudepod-devcontainer
10
23
 
11
- # Start the container
24
+ # Fire it up
12
25
  devpod up .
26
+ devpod ssh <workspace-name> --ide vscode # <workspace-name> is usually your project folder name
13
27
 
14
- # Connect with VS Code
15
- devpod ssh <workspace-name> --ide vscode
28
+ # Start coding with Claude
29
+ claude
30
+ ```
31
+
32
+ ### Cloning from Repository
33
+
34
+ ```bash
35
+ # Clone the repository
36
+ git clone https://github.com/AnExiledDev/ClaudePod.git
37
+ cd ClaudePod
38
+
39
+ # Copy .devcontainer to your project
40
+ cp -r .devcontainer /path/to/your-project/
41
+ cd /path/to/your-project
42
+
43
+ # Fire it up
44
+ devpod up .
45
+ devpod ssh <workspace-name> --ide vscode # <workspace-name> is usually your project folder name
16
46
 
17
47
  # Start coding with Claude
18
48
  claude
19
49
  ```
20
50
 
21
- ## What You Get
51
+ That's it. No configuration files to edit, no API keys to hunt down. Everything works out of the box.
22
52
 
23
- ### 🛠️ Development Stack
24
- - **Node.js 20** (via NVM) + npm/npx
25
- - **Python 3.13** with pipx, uv/uvx, and common tools
26
- - **Git** with git-delta for beautiful diffs
27
- - **GitHub CLI** for repository operations
28
- - **Claude Code CLI** with optimized tool configuration
53
+ ## The MCP Servers
54
+
55
+ ClaudePod ships with 8 MCP servers that turn Claude into a powerhouse:
29
56
 
30
- ### 🔌 MCP Servers (Pre-configured)
31
57
  - **Serena** - Advanced code analysis and semantic search
32
58
  - **DeepWiki** - GitHub repository documentation search
33
59
  - **TaskMaster AI** - AI-powered project management
34
- - **Sequential Thinking** - Structured problem-solving
35
- - **GitHub MCP** - Complete GitHub API integration (requires API key)
36
- - **Tavily Search** - Web search capabilities (requires API key)
37
- - **Ref.Tools** - Documentation tools (requires API key)
38
-
39
- ### ⚡ Productivity Features
40
- - **Optimized tool configuration** - 79 essential tools pre-allowed (51% reduction from 161 total)
41
- - **Zero permission prompts** for common development workflows
42
- - **Intelligent tool selection** - Prioritizes powerful MCP tools over basic built-ins
43
- - **Shell aliases** - `gs`, `gd`, `gc`, `gp`, `gl` for git operations
44
- - **Persistent storage** - Claude config and shell history survive rebuilds
45
- - **VS Code extensions** - Pre-configured for remote development
46
-
47
- ## 📋 Requirements
48
-
49
- 1. **DevPod** installed and configured
50
- 2. **VS Code** with Remote Development Extension Pack:
51
- ```bash
52
- code --install-extension ms-vscode-remote.vscode-remote-extensionpack
53
- ```
54
-
55
- ## 🔧 Usage
56
-
57
- ### Install in Existing Project
58
- ```bash
59
- cd my-existing-project
60
- npx claudepod-devcontainer
61
- devpod up .
62
- ```
60
+ - **Sequential Thinking** - Structured problem-solving workflows
61
+ - **ccusage** - Claude Code usage analytics and cost tracking
62
+ - **SearXNG Enhanced** - Web search with content scraping
63
+ - **GitHub MCP** - Complete GitHub API integration (API key optional)
64
+ - **Tavily + Ref.Tools** - Web search and documentation tools (API keys optional)
63
65
 
64
- ### New Project Setup
65
- ```bash
66
- mkdir new-project && cd new-project
67
- npx claudepod-devcontainer
68
- devpod up .
69
- ```
66
+ **Tool Permissions**: When Claude first starts, it will ask permission to use these MCP tools. You can deny or allow specific tools based on your needs - this helps manage the large number of available tools (100+). Future versions will make this easier to configure.
70
67
 
71
- ### First-Time Container Setup
72
- ```bash
73
- # Inside the container
74
- ./scripts/setup-env.sh # Optional environment setup
75
- claude login # Authenticate with Claude
76
- claude # Start development
77
- ```
68
+ ## Requirements
69
+
70
+ - **[DevPod](https://devpod.sh/)** installed and configured - the container development platform
71
+ - **VS Code** with Remote Development extensions
72
+ - That's literally it
78
73
 
79
- ## 🎯 Quick Commands
74
+ ## Container Details
75
+
76
+ **Base**: Ubuntu 22.04
77
+ **User**: node (1000:1000)
78
+ **Workspace**: `/workspace` (your project files)
79
+ **Persistent**: Claude config, shell history, npm cache
80
+
81
+ Your files stay exactly where they are. ClaudePod only adds a `.devcontainer/` directory.
82
+
83
+ ## Handy Commands
80
84
 
81
85
  ```bash
82
- # Claude Code (with MCP servers, no permission prompts)
83
- claude # Start Claude
84
- claude mcp list # List available MCP servers
85
-
86
- # Git (with aliases and delta highlighting)
87
- gs # git status
88
- gd # git diff
89
- gc -m "message" # git commit
90
- gp # git push
91
- gl # git log --oneline --graph
92
-
93
- # Python development
94
- uvx <package> # Run packages without installing
95
- uv add <package> # Add dependencies
96
-
97
- # Health check
98
- ./scripts/health-check.sh # Verify everything works
86
+ # Claude with statusline and MCP servers
87
+ claude
88
+
89
+ # Git shortcuts (with beautiful diffs)
90
+ gs # git status
91
+ gd # git diff
92
+ gc # git commit
93
+ gp # git push
94
+ gl # git log --oneline --graph
95
+
96
+ # Python without the pain
97
+ uvx <package> # Run packages without installing
98
+ uv add <package> # Add dependencies
99
+
100
+ # Quick info
101
+ claudepod_info # Show status and commands
99
102
  ```
100
103
 
101
- ## 🔑 Optional API Keys
104
+ ## Optional Upgrades
105
+
106
+ **Web search is already included** via the built-in SearXNG server - no limits, no API keys required. But you can add more integrations:
102
107
 
103
- Add these to your environment for enhanced features:
108
+ ```bash
109
+ cp .devcontainer/.env.example .devcontainer/.env
110
+ # Edit .devcontainer/.env with your keys
111
+ ```
104
112
 
105
113
  ```bash
106
114
  # GitHub integration (recommended)
107
- export GITHUB_PERSONAL_ACCESS_TOKEN="ghp_your_token"
115
+ GITHUB_PERSONAL_ACCESS_TOKEN=ghp_your_token
108
116
 
109
- # Web search capabilities
110
- export TAVILY_API_KEY="tvly-your-key"
117
+ # Additional web search via Tavily (optional - SearXNG already provides unlimited search)
118
+ TAVILY_API_KEY=tvly-your-key
111
119
 
112
120
  # Documentation tools
113
- export REF_TOOLS_API_KEY="your-key"
121
+ REF_TOOLS_API_KEY=your-key
114
122
  ```
115
123
 
116
- ## 📁 What Gets Installed
124
+ ## Customization & Pitfalls
117
125
 
118
- ```
119
- your-project/
120
- ├── .devcontainer/
121
- │ ├── devcontainer.json # Container configuration
122
- │ ├── post-create.sh # Development tools setup
123
- │ └── post-start.sh # MCP server installation
124
- └── (your existing files remain unchanged)
125
- ```
126
+ ### The Good News
127
+ ClaudePod is designed to be unbreakable. It uses smart configuration templates that preserve your customizations across container rebuilds.
126
128
 
127
- ## 🏗️ Container Architecture
129
+ ### Common Gotchas
128
130
 
129
- - **Base**: Ubuntu 22.04
130
- - **User**: `node` (uid: 1000, gid: 1000)
131
- - **Workspace**: `/workspace` (your project files)
132
- - **Persistent Data**: Claude config, shell history, npm cache
133
- - **Network**: Host network for optimal development server performance
131
+ **Override Flags** - ClaudePod has environment variables like `OVERRIDE_CLAUDE_SETTINGS=true` that can overwrite your customizations. Only use these if you want to reset to defaults.
134
132
 
135
- ## 🔧 Customization
133
+ **Port Conflicts** - If you run services on ports 8080, 3000, or 5000 locally, add port forwarding rules to avoid conflicts:
136
134
 
137
- After installation, you can modify `.devcontainer/devcontainer.json`:
135
+ ```json
136
+ {
137
+ "forwardPorts": [3001, 8081, 5001],
138
+ "portsAttributes": {
139
+ "3001": { "label": "Your App" }
140
+ }
141
+ }
142
+ ```
143
+
144
+ **Configuration Complexity** - ClaudePod has many layers (devcontainer.json, .env, MCP templates, tool configs). Stick to editing `.devcontainer/.env` for most customizations.
145
+
146
+ ### Safe Customization
147
+
148
+ Edit `.devcontainer/devcontainer.json` after installation:
138
149
 
139
150
  ```json
140
151
  {
@@ -145,45 +156,83 @@ After installation, you can modify `.devcontainer/devcontainer.json`:
145
156
  "vscode": {
146
157
  "extensions": ["your.extension.id"]
147
158
  }
159
+ },
160
+ "features": {
161
+ "ghcr.io/devcontainers/features/aws-cli:1": {}
148
162
  }
149
163
  }
150
164
  ```
151
165
 
152
- ## 🩺 Troubleshooting
166
+ ## Troubleshooting
153
167
 
168
+ **Container won't start?**
154
169
  ```bash
155
- # Container not starting?
156
- devpod delete <workspace> && devpod up .
170
+ devpod delete <workspace> && devpod up . # <workspace> is your project folder name
171
+ # Don't worry - this preserves your ClaudePod configuration and project files
172
+ ```
157
173
 
158
- # Claude not authenticated?
174
+ **Claude authentication issues?**
175
+ ```bash
159
176
  claude login
177
+ ```
160
178
 
161
- # MCP servers not working?
179
+ **MCP servers missing?**
180
+ ```bash
162
181
  claude mcp list
163
- claude mcp remove <server> && claude mcp add <server>
182
+ # If empty, restart the container
183
+ ```
164
184
 
165
- # Check container health
166
- ./scripts/health-check.sh
185
+ **npm permission errors?**
186
+ ```bash
187
+ # Inside container - fix npm permissions
188
+ sudo chown -R node:node /home/node/.npm
189
+ sudo chown -R node:node /home/node/.local
167
190
  ```
168
191
 
169
- ## 📚 Documentation
192
+ **Configuration got overwritten?**
193
+ Look in `.devcontainer/config/backups/` - ClaudePod automatically backs up your configs before making changes.
170
194
 
171
- After installation, see:
172
- - `CLAUDE.md` - Complete container documentation
173
- - `examples/` - Configuration examples
174
- - `scripts/` - Helper scripts and utilities
195
+ ## Architecture
175
196
 
176
- ## 🤝 Team Usage
197
+ ClaudePod uses a two-phase setup:
198
+ 1. **post-create.sh** - Installs Claude Code, dev tools, and creates base configurations
199
+ 2. **post-start.sh** - Installs MCP servers and validates everything works
200
+
201
+ The setup is idempotent - you can rebuild containers without losing your customizations (unless you use override flags).
202
+
203
+ ## Team Usage
204
+
205
+ Perfect for teams who want consistent environments:
177
206
 
178
- Each team member runs:
179
207
  ```bash
208
+ # Team member 1 sets up the project
180
209
  cd shared-project
181
- npx claudepod-devcontainer # Installs .devcontainer
182
- devpod up . # Starts identical environment
210
+ npx claudepod-devcontainer
211
+ git add .devcontainer/ && git commit -m "Add ClaudePod"
212
+
213
+ # Everyone else just runs
214
+ devpod up .
183
215
  ```
184
216
 
185
- Perfect for ensuring consistent development environments across your team!
217
+ Each developer gets an identical environment with the same Claude configuration, MCP servers, and tools.
218
+
219
+ ## What Gets Added
220
+
221
+ ```
222
+ your-project/
223
+ ├── .devcontainer/
224
+ │ ├── devcontainer.json # Main container config
225
+ │ ├── post-create.sh # Tool installation
226
+ │ ├── post-start.sh # MCP server setup
227
+ │ ├── .env.example # API key template
228
+ │ ├── config/
229
+ │ │ ├── claude/ # Claude Code templates
230
+ │ │ ├── serena/ # Serena config
231
+ │ │ └── taskmaster/ # TaskMaster config
232
+ │ └── scripts/ # Modular setup scripts
233
+ └── (your files stay exactly the same)
234
+ ```
186
235
 
187
236
  ---
188
237
 
189
- **Ready to supercharge your development with AI!** 🚀
238
+ **Ready to code with AI superpowers?** ClaudePod turns any project into an AI-native development environment.