@damper/cli 0.5.2 → 0.5.3
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.
- package/dist/index.js +1 -1
- package/dist/services/claude.js +22 -26
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { statusCommand } from './commands/status.js';
|
|
|
5
5
|
import { cleanupCommand } from './commands/cleanup.js';
|
|
6
6
|
import { setupCommand } from './commands/setup.js';
|
|
7
7
|
import { releaseCommand } from './commands/release.js';
|
|
8
|
-
const VERSION = '0.5.
|
|
8
|
+
const VERSION = '0.5.3';
|
|
9
9
|
function showHelp() {
|
|
10
10
|
console.log(`
|
|
11
11
|
${pc.bold('@damper/cli')} - Agent orchestration for Damper tasks
|
package/dist/services/claude.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as fs from 'node:fs';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
3
|
import * as os from 'node:os';
|
|
4
|
-
import { spawn } from 'node:child_process';
|
|
5
4
|
import { execa } from 'execa';
|
|
6
5
|
import pc from 'picocolors';
|
|
7
6
|
const CLAUDE_SETTINGS_DIR = path.join(os.homedir(), '.claude');
|
|
@@ -134,33 +133,30 @@ export async function launchClaude(options) {
|
|
|
134
133
|
}
|
|
135
134
|
// Launch Claude Code in interactive mode
|
|
136
135
|
try {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
});
|
|
153
|
-
child.on('error', (err) => {
|
|
154
|
-
if (err.code === 'ENOENT') {
|
|
155
|
-
console.log(pc.red('\nError: Claude Code CLI not found.'));
|
|
156
|
-
console.log(pc.dim('Install it with: npm install -g @anthropic-ai/claude-code\n'));
|
|
157
|
-
process.exit(1);
|
|
158
|
-
}
|
|
159
|
-
reject(err);
|
|
160
|
-
});
|
|
136
|
+
// Use execSync for simpler, more reliable TTY passthrough
|
|
137
|
+
const { execSync } = await import('node:child_process');
|
|
138
|
+
// Build command with proper quoting
|
|
139
|
+
const quotedPrompt = initialPrompt.replace(/'/g, "'\\''");
|
|
140
|
+
const cmd = `claude --mcp-config '${mcpConfigPath}' '${quotedPrompt}'`;
|
|
141
|
+
if (process.env.DEBUG) {
|
|
142
|
+
console.log(pc.dim(`Debug: Running: ${cmd}`));
|
|
143
|
+
}
|
|
144
|
+
execSync(cmd, {
|
|
145
|
+
cwd,
|
|
146
|
+
stdio: 'inherit',
|
|
147
|
+
env: {
|
|
148
|
+
...process.env,
|
|
149
|
+
DAMPER_API_KEY: apiKey,
|
|
150
|
+
},
|
|
161
151
|
});
|
|
162
152
|
}
|
|
163
|
-
catch {
|
|
153
|
+
catch (err) {
|
|
154
|
+
const error = err;
|
|
155
|
+
if (error.code === 'ENOENT') {
|
|
156
|
+
console.log(pc.red('\nError: Claude Code CLI not found.'));
|
|
157
|
+
console.log(pc.dim('Install it with: npm install -g @anthropic-ai/claude-code\n'));
|
|
158
|
+
process.exit(1);
|
|
159
|
+
}
|
|
164
160
|
// Claude exited with error - still continue to post-task flow
|
|
165
161
|
}
|
|
166
162
|
finally {
|