cluttry 1.0.3 → 1.5.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 (91) hide show
  1. package/CHANGELOG.md +77 -0
  2. package/README.md +203 -300
  3. package/dist/commands/completions.d.ts +16 -0
  4. package/dist/commands/completions.d.ts.map +1 -0
  5. package/dist/commands/completions.js +46 -0
  6. package/dist/commands/completions.js.map +1 -0
  7. package/dist/commands/explain-copy.d.ts +11 -0
  8. package/dist/commands/explain-copy.d.ts.map +1 -0
  9. package/dist/commands/explain-copy.js +34 -0
  10. package/dist/commands/explain-copy.js.map +1 -0
  11. package/dist/commands/finish.d.ts +20 -0
  12. package/dist/commands/finish.d.ts.map +1 -0
  13. package/dist/commands/finish.js +817 -0
  14. package/dist/commands/finish.js.map +1 -0
  15. package/dist/commands/gc.d.ts +22 -0
  16. package/dist/commands/gc.d.ts.map +1 -0
  17. package/dist/commands/gc.js +163 -0
  18. package/dist/commands/gc.js.map +1 -0
  19. package/dist/commands/init.d.ts.map +1 -1
  20. package/dist/commands/init.js +1 -0
  21. package/dist/commands/init.js.map +1 -1
  22. package/dist/commands/open.d.ts +15 -1
  23. package/dist/commands/open.d.ts.map +1 -1
  24. package/dist/commands/open.js +99 -17
  25. package/dist/commands/open.js.map +1 -1
  26. package/dist/commands/resume.d.ts +21 -0
  27. package/dist/commands/resume.d.ts.map +1 -0
  28. package/dist/commands/resume.js +106 -0
  29. package/dist/commands/resume.js.map +1 -0
  30. package/dist/commands/rm.d.ts.map +1 -1
  31. package/dist/commands/rm.js +6 -14
  32. package/dist/commands/rm.js.map +1 -1
  33. package/dist/commands/spawn.d.ts +3 -0
  34. package/dist/commands/spawn.d.ts.map +1 -1
  35. package/dist/commands/spawn.js +182 -19
  36. package/dist/commands/spawn.js.map +1 -1
  37. package/dist/index.d.ts +4 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +198 -9
  40. package/dist/index.js.map +1 -1
  41. package/dist/lib/completions.d.ts +35 -0
  42. package/dist/lib/completions.d.ts.map +1 -0
  43. package/dist/lib/completions.js +368 -0
  44. package/dist/lib/completions.js.map +1 -0
  45. package/dist/lib/config.d.ts.map +1 -1
  46. package/dist/lib/config.js +2 -0
  47. package/dist/lib/config.js.map +1 -1
  48. package/dist/lib/errors.d.ts +43 -0
  49. package/dist/lib/errors.d.ts.map +1 -0
  50. package/dist/lib/errors.js +251 -0
  51. package/dist/lib/errors.js.map +1 -0
  52. package/dist/lib/git.d.ts +17 -0
  53. package/dist/lib/git.d.ts.map +1 -1
  54. package/dist/lib/git.js +78 -10
  55. package/dist/lib/git.js.map +1 -1
  56. package/dist/lib/safety.d.ts +79 -0
  57. package/dist/lib/safety.d.ts.map +1 -0
  58. package/dist/lib/safety.js +133 -0
  59. package/dist/lib/safety.js.map +1 -0
  60. package/dist/lib/secrets.d.ts +29 -0
  61. package/dist/lib/secrets.d.ts.map +1 -1
  62. package/dist/lib/secrets.js +115 -0
  63. package/dist/lib/secrets.js.map +1 -1
  64. package/dist/lib/session.d.ts +93 -0
  65. package/dist/lib/session.d.ts.map +1 -0
  66. package/dist/lib/session.js +254 -0
  67. package/dist/lib/session.js.map +1 -0
  68. package/dist/lib/types.d.ts +6 -1
  69. package/dist/lib/types.d.ts.map +1 -1
  70. package/package.json +1 -1
  71. package/.claude/settings.local.json +0 -7
  72. package/src/commands/doctor.ts +0 -222
  73. package/src/commands/init.ts +0 -120
  74. package/src/commands/list.ts +0 -133
  75. package/src/commands/open.ts +0 -78
  76. package/src/commands/prune.ts +0 -36
  77. package/src/commands/rm.ts +0 -125
  78. package/src/commands/shell.ts +0 -99
  79. package/src/commands/spawn.ts +0 -169
  80. package/src/index.ts +0 -123
  81. package/src/lib/config.ts +0 -120
  82. package/src/lib/git.ts +0 -243
  83. package/src/lib/output.ts +0 -102
  84. package/src/lib/paths.ts +0 -108
  85. package/src/lib/secrets.ts +0 -193
  86. package/src/lib/types.ts +0 -69
  87. package/tests/config.test.ts +0 -102
  88. package/tests/paths.test.ts +0 -155
  89. package/tests/secrets.test.ts +0 -150
  90. package/tsconfig.json +0 -20
  91. package/vitest.config.ts +0 -15
package/CHANGELOG.md ADDED
@@ -0,0 +1,77 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [1.5.1] - 2025-01-10
9
+
10
+ ### Fixed
11
+
12
+ - **`cry open`** no longer passes path as argument to agents (like Claude) — agents use cwd instead, preventing path from appearing in the prompt
13
+
14
+ ## [1.5.0] - 2025-01-09
15
+
16
+ ### Added
17
+
18
+ - **Shell completions** for bash, zsh, and fish (`cry completions <shell>`)
19
+ - **`cry gc`** command to clean up stale session manifests
20
+ - **`cry resume`** command to resume sessions by branch name or ID
21
+ - **`cry finish`** command with full commit wizard and PR creation
22
+ - **`--finish-on-exit`** flag for spawn to show finish menu when agent exits
23
+ - **`--base-branch`** option for spawn to specify PR target branch
24
+ - **`cry explain-copy`** command to preview which files will be copied
25
+ - **`--dry-run`** flag for spawn to preview without creating worktree
26
+ - **Session manifests** stored in `.cry/sessions/` for tracking
27
+ - **Structured error messages** with What/Why/Fix format for all failures
28
+ - **`cry shell`** command for shell integration (`crycd` function)
29
+
30
+ ### Changed
31
+
32
+ - **README rewritten** with AI session lifecycle positioning
33
+ - **Improved `cry open`** with agent/editor fallback support
34
+ - **Hardened base branch detection** using current branch or origin/HEAD
35
+ - **Better CLI help** with examples, finish flow, and safety notes
36
+
37
+ ### Fixed
38
+
39
+ - Proper handling of detached HEAD state
40
+ - Commander.js `--no-cleanup` flag parsing
41
+ - Git commit messages with spaces
42
+
43
+ ## [1.0.3] - 2024-12-XX
44
+
45
+ ### Added
46
+
47
+ - Initial release
48
+ - `cry spawn` - Create worktrees with secrets handling
49
+ - `cry list` - List all worktrees
50
+ - `cry rm` - Remove worktrees safely
51
+ - `cry open` - Open worktrees in editor
52
+ - `cry init` - Initialize configuration
53
+ - `cry doctor` - Check configuration health
54
+ - `cry prune` - Clean up git worktree references
55
+ - Automatic secrets copying (gitignored files only)
56
+ - Post-create hooks support
57
+ - Agent launch integration (Claude, Cursor)
58
+
59
+ ---
60
+
61
+ ## Version Bump Instructions
62
+
63
+ ### For maintainers
64
+
65
+ 1. Update version in `package.json`
66
+ 2. Update version in `src/index.ts` (`.version('X.Y.Z')`)
67
+ 3. Add entry to this CHANGELOG
68
+ 4. Commit: `git commit -am "chore: bump version to X.Y.Z"`
69
+ 5. Tag: `git tag vX.Y.Z`
70
+ 6. Push: `git push && git push --tags`
71
+ 7. Publish: `npm publish`
72
+
73
+ ### Versioning guidelines
74
+
75
+ - **MAJOR** (X.0.0): Breaking changes to CLI interface or config format
76
+ - **MINOR** (0.X.0): New commands, flags, or features
77
+ - **PATCH** (0.0.X): Bug fixes, documentation, internal improvements