claude-dev-kit 2.1.8 → 2.1.10

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/migrate.sh +38 -19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-dev-kit",
3
- "version": "2.1.8",
3
+ "version": "2.1.10",
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"
@@ -48,6 +48,19 @@ make_temp_file() {
48
48
  mktemp "${TMPDIR:-/tmp}/cdk-temp.XXXXXX"
49
49
  }
50
50
 
51
+ extract_cdk_block() {
52
+ local source_file="$1"
53
+ local output_file="$2"
54
+ local start_marker="$3"
55
+ local end_marker="$4"
56
+
57
+ awk -v start="<!-- ${start_marker}" -v end="<!-- ${end_marker} -->" '
58
+ index($0, start) > 0 { in_block=1 }
59
+ in_block { print }
60
+ index($0, end) > 0 { in_block=0 }
61
+ ' "$source_file" > "$output_file"
62
+ }
63
+
51
64
  CI_MODE="${CI:-false}"
52
65
 
53
66
  # ─── Section 1: Load existing manifest ────────────────────────────────────────
@@ -381,38 +394,44 @@ merge_claude_md() {
381
394
  if grep -qF "$START_MARKER" "$tgt_md" 2>/dev/null; then
382
395
  # Has CDK markers — replace only the block between markers (inclusive)
383
396
  local tmp
397
+ local cdk_block
398
+ local before_block
399
+ local after_block
384
400
  tmp=$(make_temp_file)
401
+ cdk_block=$(make_temp_file)
402
+ before_block=$(make_temp_file)
403
+ after_block=$(make_temp_file)
385
404
  # shellcheck disable=SC2064
386
- trap "rm -f '$tmp'" RETURN
405
+ trap "rm -f '$tmp' '$cdk_block' '$before_block' '$after_block'" RETURN
387
406
 
388
- # Extract CDK block from template
389
- local cdk_block
390
- cdk_block=$(awk "/<!-- ${START_MARKER}/,/<!-- ${END_MARKER} -->/" "$cdk_template")
391
-
392
- # Build merged file: content before START + cdk block + content after END
393
- awk -v block="$cdk_block" \
394
- -v start="$START_MARKER" \
395
- -v end="$END_MARKER" \
396
- 'BEGIN { in_block=0; printed=0 }
397
- index($0, start) > 0 {
398
- if (!printed) { print block; printed=1 }
399
- in_block=1; next
400
- }
401
- in_block && index($0, end) > 0 { in_block=0; next }
402
- !in_block { print }
403
- ' "$tgt_md" > "$tmp"
407
+ extract_cdk_block "$cdk_template" "$cdk_block" "$START_MARKER" "$END_MARKER"
408
+
409
+ awk -v start="$START_MARKER" '
410
+ index($0, start) > 0 { exit }
411
+ { print }
412
+ ' "$tgt_md" > "$before_block"
413
+
414
+ awk -v end="$END_MARKER" '
415
+ found_end { print; next }
416
+ index($0, end) > 0 { found_end=1 }
417
+ ' "$tgt_md" > "$after_block"
418
+
419
+ cat "$before_block" "$cdk_block" "$after_block" > "$tmp"
404
420
 
405
421
  cp "$tmp" "$tgt_md"
406
422
  success "CLAUDE.md: CDK block updated (your custom content preserved)"
407
423
  else
408
424
  # No CDK markers — append the CDK block at the end
409
425
  local cdk_block
410
- cdk_block=$(awk "/<!-- ${START_MARKER}/,/<!-- ${END_MARKER} -->/" "$cdk_template")
426
+ cdk_block=$(make_temp_file)
427
+ # shellcheck disable=SC2064
428
+ trap "rm -f '$cdk_block'" RETURN
429
+ extract_cdk_block "$cdk_template" "$cdk_block" "$START_MARKER" "$END_MARKER"
411
430
  {
412
431
  echo ""
413
432
  echo "---"
414
433
  echo ""
415
- printf '%s\n' "$cdk_block"
434
+ cat "$cdk_block"
416
435
  } >> "$tgt_md"
417
436
  success "CLAUDE.md: CDK block appended (your existing content preserved)"
418
437
  info "Tip: you can move the appended block anywhere in the file — the markers let future migrations update it in place"