groove-dev 0.27.73 → 0.27.74
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/CLAUDE.md +7 -0
- 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/providers/claude-code.js +2 -1
- package/node_modules/@groove-dev/daemon/src/providers/codex.js +3 -1
- package/node_modules/@groove-dev/daemon/src/providers/gemini.js +2 -1
- package/node_modules/@groove-dev/daemon/src/providers/index.js +21 -8
- package/node_modules/@groove-dev/gui/dist/assets/{index-Deza1S0i.js → index-DFP3r2yE.js} +31 -31
- package/node_modules/@groove-dev/gui/dist/assets/{index-BFc7Ov6v.css → index-QR7lyguO.css} +1 -1
- package/node_modules/@groove-dev/gui/dist/index.html +2 -2
- package/node_modules/@groove-dev/gui/package.json +1 -1
- package/node_modules/@groove-dev/gui/src/views/settings.jsx +79 -9
- package/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/daemon/package.json +1 -1
- package/packages/daemon/src/providers/claude-code.js +2 -1
- package/packages/daemon/src/providers/codex.js +3 -1
- package/packages/daemon/src/providers/gemini.js +2 -1
- package/packages/daemon/src/providers/index.js +21 -8
- package/packages/gui/dist/assets/{index-Deza1S0i.js → index-DFP3r2yE.js} +31 -31
- package/packages/gui/dist/assets/{index-BFc7Ov6v.css → index-QR7lyguO.css} +1 -1
- package/packages/gui/dist/index.html +2 -2
- package/packages/gui/package.json +1 -1
- package/packages/gui/src/views/settings.jsx +79 -9
package/CLAUDE.md
CHANGED
|
@@ -263,3 +263,10 @@ Audit-driven release. Multi-agent orchestration system with 7 coordination layer
|
|
|
263
263
|
- Dashboard: routing donut, cache panel, context health gauges
|
|
264
264
|
- Monitor/QC agent mode (stay active, loop)
|
|
265
265
|
- Distribution: demo video, HN launch, Twitter content
|
|
266
|
+
|
|
267
|
+
<!-- GROOVE:START -->
|
|
268
|
+
## GROOVE Orchestration (auto-injected)
|
|
269
|
+
Active agents: 0
|
|
270
|
+
See AGENTS_REGISTRY.md for full agent state.
|
|
271
|
+
**Memory policy:** GROOVE manages project memory automatically. Do not read or write MEMORY.md or .groove/memory/ files directly.
|
|
272
|
+
<!-- GROOVE:END -->
|
|
@@ -46,7 +46,8 @@ export class ClaudeCodeProvider extends Provider {
|
|
|
46
46
|
|
|
47
47
|
static isInstalled() {
|
|
48
48
|
try {
|
|
49
|
-
|
|
49
|
+
const cmd = process.platform === 'win32' ? 'where claude' : 'which claude';
|
|
50
|
+
execSync(cmd, { stdio: 'ignore' });
|
|
50
51
|
return true;
|
|
51
52
|
} catch {
|
|
52
53
|
return false;
|
|
@@ -36,6 +36,7 @@ export class CodexProvider extends Provider {
|
|
|
36
36
|
// Auth hint — Codex uses its own auth system, not just env vars
|
|
37
37
|
static authHint = 'Codex requires `codex login` — run: echo "YOUR_KEY" | codex login --with-api-key';
|
|
38
38
|
static models = [
|
|
39
|
+
{ id: 'gpt-5.5', name: 'GPT-5.5', tier: 'heavy', maxContext: 200000, pricing: { input: 0.03, output: 0.12 } },
|
|
39
40
|
{ id: 'gpt-5.4-pro', name: 'GPT-5.4 Pro', tier: 'heavy', maxContext: 200000, pricing: { input: 0.015, output: 0.06 } },
|
|
40
41
|
{ id: 'gpt-5.4', name: 'GPT-5.4', tier: 'heavy', maxContext: 200000, pricing: { input: 0.005, output: 0.02 } },
|
|
41
42
|
{ id: 'gpt-5.4-mini', name: 'GPT-5.4 Mini', tier: 'medium', maxContext: 200000, pricing: { input: 0.001, output: 0.004 } },
|
|
@@ -46,7 +47,8 @@ export class CodexProvider extends Provider {
|
|
|
46
47
|
|
|
47
48
|
static isInstalled() {
|
|
48
49
|
try {
|
|
49
|
-
|
|
50
|
+
const cmd = process.platform === 'win32' ? 'where codex' : 'which codex';
|
|
51
|
+
execSync(cmd, { stdio: 'ignore' });
|
|
50
52
|
return true;
|
|
51
53
|
} catch {
|
|
52
54
|
return false;
|
|
@@ -40,7 +40,8 @@ export class GeminiProvider extends Provider {
|
|
|
40
40
|
|
|
41
41
|
static isInstalled() {
|
|
42
42
|
try {
|
|
43
|
-
|
|
43
|
+
const cmd = process.platform === 'win32' ? 'where gemini' : 'which gemini';
|
|
44
|
+
execSync(cmd, { stdio: 'ignore' });
|
|
44
45
|
return true;
|
|
45
46
|
} catch {
|
|
46
47
|
return false;
|
|
@@ -37,17 +37,30 @@ export function getProviderPath(id) {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
(function augmentPath() {
|
|
40
|
-
const
|
|
40
|
+
const isWin = process.platform === 'win32';
|
|
41
|
+
const extra = isWin ? [] : ['/usr/local/bin', '/opt/homebrew/bin'];
|
|
41
42
|
try {
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
if (
|
|
43
|
+
const suppressErr = isWin ? '2>NUL' : '2>/dev/null';
|
|
44
|
+
const npmPrefix = execSync(`npm config get prefix ${suppressErr}`, { encoding: 'utf8', timeout: 5000 }).trim();
|
|
45
|
+
if (npmPrefix) {
|
|
46
|
+
extra.push(isWin ? npmPrefix : `${npmPrefix}/bin`);
|
|
47
|
+
}
|
|
45
48
|
} catch { /* npm itself may not be in PATH yet */ }
|
|
46
|
-
const home = process.env.HOME || '';
|
|
47
|
-
if (home)
|
|
49
|
+
const home = process.env.HOME || process.env.USERPROFILE || '';
|
|
50
|
+
if (home) {
|
|
51
|
+
if (isWin) {
|
|
52
|
+
extra.push(`${home}\\AppData\\Roaming\\npm`);
|
|
53
|
+
} else {
|
|
54
|
+
extra.push(`${home}/.npm-global/bin`);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if (isWin) {
|
|
58
|
+
const pf = process.env.ProgramFiles || 'C:\\Program Files';
|
|
59
|
+
extra.push(`${pf}\\nodejs`);
|
|
60
|
+
}
|
|
48
61
|
const cur = process.env.PATH || '';
|
|
49
|
-
const toAdd = extra.filter(p => p && !cur.split(
|
|
50
|
-
if (toAdd.length) process.env.PATH = [...toAdd, cur].join(
|
|
62
|
+
const toAdd = extra.filter(p => p && !cur.split(pathDelimiter).includes(p));
|
|
63
|
+
if (toAdd.length) process.env.PATH = [...toAdd, cur].join(pathDelimiter);
|
|
51
64
|
})();
|
|
52
65
|
|
|
53
66
|
const providers = {
|