@damper/cli 0.9.0 → 0.9.2

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.
@@ -307,7 +307,18 @@ export async function postTaskFlow(options) {
307
307
  console.log(pc.dim('Merging feature into main...'));
308
308
  await execa('git', ['checkout', 'main'], { cwd: projectRoot, stdio: 'pipe' });
309
309
  await execa('git', ['merge', currentBranch, '--no-edit'], { cwd: projectRoot, stdio: 'inherit' });
310
- console.log(pc.green('✓ Merged to main locally\n'));
310
+ console.log(pc.green('✓ Merged to main locally'));
311
+ const shouldPush = await confirm({
312
+ message: 'Push main to origin?',
313
+ default: false,
314
+ });
315
+ if (shouldPush) {
316
+ await execa('git', ['push', 'origin', 'main'], { cwd: projectRoot, stdio: 'inherit' });
317
+ console.log(pc.green('✓ Pushed main to origin\n'));
318
+ }
319
+ else {
320
+ console.log(pc.dim('Skipped push. Run `git push origin main` when ready.\n'));
321
+ }
311
322
  }
312
323
  }
313
324
  catch (err) {
@@ -24,10 +24,11 @@ ${planSection}
24
24
  - \`.claude/settings.local.json\`
25
25
 
26
26
  **Your responsibilities (via Damper MCP):**
27
- 1. Use \`add_commit\` after each git commit
28
- 2. Use \`add_note\` ONLY for non-obvious approach decisions (e.g. "Decision: chose X because Y")
29
- 3. When done: call \`complete_task\` with a one-line summary
30
- 4. If stopping early: call \`abandon_task\` with what remains and blockers
27
+ 1. **Do NOT commit or complete tasks without explicit user confirmation** - Always ask the user before running \`git commit\` or calling \`complete_task\`
28
+ 2. Use \`add_commit\` after each git commit
29
+ 3. Use \`add_note\` ONLY for non-obvious approach decisions (e.g. "Decision: chose X because Y")
30
+ 4. When user confirms: call \`complete_task\` with a one-line summary
31
+ 5. If stopping early: call \`abandon_task\` with what remains and blockers
31
32
 
32
33
  The CLI just bootstrapped this environment - YOU handle the task lifecycle.
33
34
  `.trim();
@@ -44,7 +44,8 @@ export function generateTaskContext(options) {
44
44
  lines.push('- Generated this TASK_CONTEXT.md from Damper API');
45
45
  lines.push('- Configured Damper MCP tools for task lifecycle');
46
46
  lines.push('');
47
- lines.push('**Cleanup:** When done, call `complete_task` or `abandon_task`. The user will run');
47
+ lines.push('**Cleanup:** Ask the user for confirmation before committing or completing the task.');
48
+ lines.push('Once confirmed, call `complete_task` or `abandon_task`. The user will run');
48
49
  lines.push('`npx @damper/cli cleanup` to remove the worktree and branch - you don\'t need to');
49
50
  lines.push('provide manual cleanup instructions.');
50
51
  lines.push('');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@damper/cli",
3
- "version": "0.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "CLI tool for orchestrating Damper task workflows with Claude Code",
5
5
  "author": "Damper <hello@usedamper.com>",
6
6
  "repository": {