groove-dev 0.27.190 → 0.27.192
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/node_modules/@groove-dev/cli/package.json +1 -1
- package/node_modules/@groove-dev/daemon/package.json +1 -1
- package/node_modules/@groove-dev/daemon/src/process.js +9 -2
- package/node_modules/@groove-dev/daemon/src/providers/claude-code.js +10 -6
- package/node_modules/@groove-dev/gui/dist/assets/{index-DXup-n8w.js → index-L8xSnvHj.js} +1 -1
- package/node_modules/@groove-dev/gui/dist/index.html +1 -1
- package/node_modules/@groove-dev/gui/package.json +1 -1
- package/node_modules/@groove-dev/gui/src/components/onboarding/setup-wizard.jsx +1 -1
- package/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/daemon/package.json +1 -1
- package/packages/daemon/src/process.js +9 -2
- package/packages/daemon/src/providers/claude-code.js +10 -6
- package/packages/gui/dist/assets/{index-DXup-n8w.js → index-L8xSnvHj.js} +1 -1
- package/packages/gui/dist/index.html +1 -1
- package/packages/gui/package.json +1 -1
- package/packages/gui/src/components/onboarding/setup-wizard.jsx +1 -1
|
@@ -2687,7 +2687,7 @@ After fixing all issues, run tests (npm test) and build (npm run build) to verif
|
|
|
2687
2687
|
locks.release(agentId);
|
|
2688
2688
|
|
|
2689
2689
|
// Build resume command
|
|
2690
|
-
const { command: rawCommand, args, env } = provider.buildResumeCommand(sessionId, message, config.model, { fast: config.fast });
|
|
2690
|
+
const { command: rawCommand, args, env, stdin: stdinData } = provider.buildResumeCommand(sessionId, message, config.model, { fast: config.fast });
|
|
2691
2691
|
const command = resolveProviderCommand(config.provider || 'claude-code') || rawCommand;
|
|
2692
2692
|
|
|
2693
2693
|
// Set up log capture
|
|
@@ -2752,10 +2752,17 @@ After fixing all issues, run tests (npm test) and build (npm run build) to verif
|
|
|
2752
2752
|
const proc = cpSpawn(command, args, {
|
|
2753
2753
|
cwd: resumeCwd,
|
|
2754
2754
|
env: resumeEnv,
|
|
2755
|
-
stdio: ['ignore', 'pipe', 'pipe'],
|
|
2755
|
+
stdio: [stdinData ? 'pipe' : 'ignore', 'pipe', 'pipe'],
|
|
2756
2756
|
detached: false,
|
|
2757
2757
|
});
|
|
2758
2758
|
|
|
2759
|
+
// The resume message goes via stdin (not argv) to avoid ARG_MAX/E2BIG on
|
|
2760
|
+
// large messages — mirror the spawn path.
|
|
2761
|
+
if (stdinData && proc.stdin) {
|
|
2762
|
+
proc.stdin.write(stdinData);
|
|
2763
|
+
proc.stdin.end();
|
|
2764
|
+
}
|
|
2765
|
+
|
|
2759
2766
|
proc.on('error', (err) => {
|
|
2760
2767
|
if (!logStream.destroyed) logStream.write(`[${new Date().toISOString()}] Resume spawn error: ${err.message}\n`);
|
|
2761
2768
|
if (!logStream.destroyed) logStream.end();
|
|
@@ -39,6 +39,7 @@ export class ClaudeCodeProvider extends Provider {
|
|
|
39
39
|
static authType = 'subscription';
|
|
40
40
|
static managesOwnContext = true; // Claude Code compacts context internally (~25-37% → 2-8%)
|
|
41
41
|
static models = [
|
|
42
|
+
{ id: 'claude-opus-5', name: 'Claude Opus 5', tier: 'heavy', contextWindow: 1_000_000 },
|
|
42
43
|
{ id: 'claude-fable-5', name: 'Claude Fable 5', tier: 'heavy', contextWindow: 1_000_000 },
|
|
43
44
|
{ id: 'claude-opus-4-8', name: 'Claude Opus 4.8', tier: 'heavy', contextWindow: 1_000_000 },
|
|
44
45
|
{ id: 'claude-opus-4-6', name: 'Claude Opus 4.6', tier: 'heavy', contextWindow: 1_000_000 },
|
|
@@ -110,16 +111,19 @@ export class ClaudeCodeProvider extends Provider {
|
|
|
110
111
|
args.push('--fast');
|
|
111
112
|
}
|
|
112
113
|
|
|
113
|
-
// Pass the initial prompt as positional
|
|
114
|
+
// Pass the initial prompt via STDIN, not as a positional argument. A
|
|
115
|
+
// long-running agent's handoff brief accumulates over days and easily
|
|
116
|
+
// exceeds the OS argv limit — on Linux a single arg is capped at 128KB
|
|
117
|
+
// (MAX_ARG_STRLEN) regardless of ARG_MAX — which surfaced as `spawn E2BIG`
|
|
118
|
+
// on rotation. stdin has no such limit. (interactive stream-json mode reads
|
|
119
|
+
// its prompt from stdin, same as headless -p.)
|
|
114
120
|
const fullPrompt = this.buildFullPrompt(agent);
|
|
115
|
-
if (fullPrompt) {
|
|
116
|
-
args.push(fullPrompt);
|
|
117
|
-
}
|
|
118
121
|
|
|
119
122
|
return {
|
|
120
123
|
command: 'claude',
|
|
121
124
|
args,
|
|
122
125
|
env: {},
|
|
126
|
+
stdin: fullPrompt || undefined,
|
|
123
127
|
};
|
|
124
128
|
}
|
|
125
129
|
|
|
@@ -131,8 +135,8 @@ export class ClaudeCodeProvider extends Provider {
|
|
|
131
135
|
if (knockSettings) args.push('--settings', knockSettings);
|
|
132
136
|
if (model) args.push('--model', model);
|
|
133
137
|
if (options.fast) args.push('--fast');
|
|
134
|
-
|
|
135
|
-
return { command: 'claude', args, env: {} };
|
|
138
|
+
// Via stdin, not argv — the resume message can be large (see buildSpawnCommand).
|
|
139
|
+
return { command: 'claude', args, env: {}, stdin: prompt || undefined };
|
|
136
140
|
}
|
|
137
141
|
|
|
138
142
|
/**
|