groove-dev 0.26.3 → 0.26.4
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/daemon/src/providers/ollama.js +1 -1
- package/node_modules/@groove-dev/gui/dist/assets/{index-BgKM8VOT.js → index-CXBK_GNM.js} +24 -24
- package/node_modules/@groove-dev/gui/dist/index.html +1 -1
- package/node_modules/@groove-dev/gui/src/views/settings.jsx +26 -30
- package/package.json +1 -1
- package/packages/daemon/src/providers/ollama.js +1 -1
- package/packages/gui/dist/assets/{index-BgKM8VOT.js → index-CXBK_GNM.js} +24 -24
- package/packages/gui/dist/index.html +1 -1
- package/packages/gui/src/views/settings.jsx +26 -30
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
|
7
7
|
<title>Groove GUI</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-CXBK_GNM.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/vendor-C0HXlhrU.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/reactflow-BQPfi37R.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/codemirror-BBL3i_JW.js">
|
|
@@ -109,7 +109,7 @@ function ProviderCard({ provider, onKeyChange }) {
|
|
|
109
109
|
return (
|
|
110
110
|
<div className="flex flex-col rounded-lg border border-border-subtle bg-surface-1 overflow-hidden min-w-[220px]">
|
|
111
111
|
<div className="flex items-center gap-2.5 px-4 py-3 border-b border-border-subtle">
|
|
112
|
-
<StatusDot status={isReady ? 'running' : 'crashed'} size="sm" />
|
|
112
|
+
<StatusDot status={isReady && installedCount > 0 ? 'running' : 'crashed'} size="sm" />
|
|
113
113
|
<span className="text-[13px] font-semibold text-text-0 font-sans">{provider.name}</span>
|
|
114
114
|
<div className="flex-1" />
|
|
115
115
|
{isReady && installedCount > 0 ? (
|
|
@@ -117,49 +117,45 @@ function ProviderCard({ provider, onKeyChange }) {
|
|
|
117
117
|
) : isReady ? (
|
|
118
118
|
<Badge variant="warning" className="text-2xs">No models pulled</Badge>
|
|
119
119
|
) : (
|
|
120
|
-
<Badge variant="default" className="text-2xs">
|
|
120
|
+
<Badge variant="default" className="text-2xs">Not set up</Badge>
|
|
121
121
|
)}
|
|
122
122
|
</div>
|
|
123
123
|
<div className="flex-1">
|
|
124
124
|
{ollamaOpen ? (
|
|
125
|
-
|
|
125
|
+
<>
|
|
126
|
+
<OllamaSetup isInstalled={isReady} onModelChange={onKeyChange} />
|
|
127
|
+
<div className="px-4 py-2 border-t border-border-subtle flex gap-2">
|
|
128
|
+
<Button variant="ghost" size="sm" onClick={() => setOllamaOpen(false)} className="flex-1 h-7 text-2xs">
|
|
129
|
+
Back
|
|
130
|
+
</Button>
|
|
131
|
+
<Button variant="secondary" size="sm" onClick={() => { setOllamaOpen(false); goToModels(); }} className="flex-1 h-7 text-2xs gap-1">
|
|
132
|
+
Models Tab
|
|
133
|
+
</Button>
|
|
134
|
+
</div>
|
|
135
|
+
</>
|
|
126
136
|
) : (
|
|
127
137
|
<div className="px-4 py-3 flex flex-col h-full">
|
|
128
138
|
<div className="text-xs text-text-3 font-sans flex-1">
|
|
129
139
|
{isReady && installedCount > 0
|
|
130
140
|
? 'Full agentic runtime — tool calling, context rotation, zero cloud cost'
|
|
131
141
|
: isReady
|
|
132
|
-
? 'Ollama is running
|
|
133
|
-
: 'Run any open-source model
|
|
142
|
+
? 'Ollama is running. Pull a model to start using local agents.'
|
|
143
|
+
: 'Run any open-source model locally — free, private, fully offline. Requires Ollama.'}
|
|
134
144
|
</div>
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
variant="primary"
|
|
138
|
-
size="sm"
|
|
139
|
-
onClick={() => setOllamaOpen(true)}
|
|
140
|
-
className="w-full h-7 text-2xs gap-1.5 mt-3"
|
|
141
|
-
>
|
|
142
|
-
<Cpu size={11} /> Set Up Ollama
|
|
143
|
-
</Button>
|
|
144
|
-
) : installedCount === 0 ? (
|
|
145
|
-
<div className="flex gap-2 mt-3">
|
|
145
|
+
<div className="flex gap-2 mt-3">
|
|
146
|
+
{!isReady ? (
|
|
146
147
|
<Button variant="primary" size="sm" onClick={() => setOllamaOpen(true)} className="flex-1 h-7 text-2xs gap-1.5">
|
|
147
|
-
<Cpu size={11} />
|
|
148
|
-
</Button>
|
|
149
|
-
<Button variant="secondary" size="sm" onClick={goToModels} className="flex-1 h-7 text-2xs gap-1.5">
|
|
150
|
-
Browse HuggingFace
|
|
151
|
-
</Button>
|
|
152
|
-
</div>
|
|
153
|
-
) : (
|
|
154
|
-
<div className="flex gap-2 mt-3">
|
|
155
|
-
<Button variant="secondary" size="sm" onClick={() => setOllamaOpen(true)} className="flex-1 h-7 text-2xs gap-1.5">
|
|
156
|
-
<Cpu size={11} /> Manage
|
|
148
|
+
<Cpu size={11} /> Set Up Ollama
|
|
157
149
|
</Button>
|
|
158
|
-
|
|
159
|
-
|
|
150
|
+
) : (
|
|
151
|
+
<Button variant="primary" size="sm" onClick={() => setOllamaOpen(true)} className="flex-1 h-7 text-2xs gap-1.5">
|
|
152
|
+
<Cpu size={11} /> {installedCount > 0 ? 'Manage' : 'Pull Models'}
|
|
160
153
|
</Button>
|
|
161
|
-
|
|
162
|
-
|
|
154
|
+
)}
|
|
155
|
+
<Button variant="secondary" size="sm" onClick={goToModels} className="flex-1 h-7 text-2xs gap-1.5">
|
|
156
|
+
Models Tab
|
|
157
|
+
</Button>
|
|
158
|
+
</div>
|
|
163
159
|
</div>
|
|
164
160
|
)}
|
|
165
161
|
</div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "groove-dev",
|
|
3
|
-
"version": "0.26.
|
|
3
|
+
"version": "0.26.4",
|
|
4
4
|
"description": "Open-source agent orchestration layer — the AI company OS. Local model agent engine (GGUF/Ollama/llama-server), HuggingFace model browser, MCP integrations (Slack, Gmail, Stripe, 15+), agent scheduling (cron), business roles (CMO, CFO, EA). GUI dashboard, multi-agent coordination, zero cold-start, infinite sessions. Works with Claude Code, Codex, Gemini CLI, Ollama, any local model.",
|
|
5
5
|
"license": "FSL-1.1-Apache-2.0",
|
|
6
6
|
"author": "Groove Dev <hello@groovedev.ai> (https://groovedev.ai)",
|
|
@@ -184,7 +184,7 @@ export class OllamaProvider extends Provider {
|
|
|
184
184
|
|
|
185
185
|
static getInstalledModels() {
|
|
186
186
|
try {
|
|
187
|
-
const output = execSync('ollama list', { encoding: 'utf8', timeout: 10000 });
|
|
187
|
+
const output = execSync('ollama list', { encoding: 'utf8', timeout: 10000, stdio: ['pipe', 'pipe', 'pipe'] });
|
|
188
188
|
const lines = output.split('\n').slice(1).filter(Boolean);
|
|
189
189
|
return lines.map((line) => {
|
|
190
190
|
const parts = line.split(/\s+/);
|