claude-dev-kit 2.1.0 → 2.1.1

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/scripts/install.sh +18 -10
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-dev-kit",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "Transform Claude Code into a fully autonomous development team — orchestrated sub-agents for planning, implementation, testing, and review.",
5
5
  "bin": {
6
6
  "claude-dev-kit": "./bin/claude-dev-kit.js"
@@ -126,20 +126,27 @@ if [[ "$MCP_ONLY" == "false" ]]; then
126
126
  ask_yn "Install .claude/ into $TARGET?" || { echo "Aborted."; exit 0; }
127
127
  fi
128
128
 
129
- # Backup existing .claude
129
+ # Merge CDK files into existing .claude/ (or create fresh if none)
130
+ # - CDK-owned dirs (agents, commands, hooks, skills, templates) are always updated
131
+ # - User-owned files (settings.json, CLAUDE.md) are never overwritten
130
132
  if [[ -d "$TARGET/.claude" ]]; then
131
- BACKUP="$TARGET/.claude.bak.$(date +%Y%m%d_%H%M%S)"
132
- warn "Existing .claude/ found — backing up to $(basename "$BACKUP")"
133
- mv "$TARGET/.claude" "$BACKUP"
133
+ info "Existing .claude/ found — merging CDK files (settings.json and CLAUDE.md preserved)"
134
134
  fi
135
-
136
- # Copy files
137
- info "Copying .claude/ ..."
135
+ mkdir -p "$TARGET/.claude"
138
136
  if command -v rsync &>/dev/null; then
139
- rsync -a --exclude='node_modules' --exclude='*.jsonl' \
137
+ rsync -a \
138
+ --exclude='settings.json' \
139
+ --exclude='CLAUDE.md' \
140
+ --exclude='node_modules' \
141
+ --exclude='*.jsonl' \
140
142
  "$KIT_ROOT/.claude/" "$TARGET/.claude/"
141
143
  else
142
- cp -r "$KIT_ROOT/.claude" "$TARGET/.claude"
144
+ for dir in agents commands hooks skills templates; do
145
+ if [[ -d "$KIT_ROOT/.claude/$dir" ]]; then
146
+ mkdir -p "$TARGET/.claude/$dir"
147
+ cp -r "$KIT_ROOT/.claude/$dir/." "$TARGET/.claude/$dir/"
148
+ fi
149
+ done
143
150
  rm -rf "$TARGET/.claude/hooks/skill-activation-prompt/node_modules"
144
151
  fi
145
152
  success ".claude/ installed"
@@ -415,9 +422,10 @@ header "Installation Complete 🎉"
415
422
  echo ""
416
423
 
417
424
  if [[ "$MCP_ONLY" == "false" ]]; then
418
- echo -e " ${GREEN}✓${NC} .claude/ installed at $TARGET/.claude"
425
+ echo -e " ${GREEN}✓${NC} .claude/ merged into $TARGET/.claude"
419
426
  echo -e " ${GREEN}✓${NC} Hook dependencies installed"
420
427
  echo -e " ${GREEN}✓${NC} .gitignore updated (settings.json excluded)"
428
+ echo -e " ${DIM} settings.json and CLAUDE.md were preserved if they existed${NC}"
421
429
  fi
422
430
 
423
431
  echo ""