groove-dev 0.25.3 → 0.25.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.
@@ -264,7 +264,12 @@ export class SkillStore {
264
264
  * Downloads content from live API, falls back to contentUrl, then local plugins.
265
265
  */
266
266
  async install(skillId) {
267
- const entry = this.registry.find((s) => s.id === skillId);
267
+ let entry = this.registry.find((s) => s.id === skillId);
268
+ // Registry may be stale — refresh and retry lookup
269
+ if (!entry) {
270
+ await this._refreshRegistry();
271
+ entry = this.registry.find((s) => s.id === skillId);
272
+ }
268
273
  if (!entry) throw new Error(`Skill not found: ${skillId}`);
269
274
  if (this._isInstalled(skillId)) throw new Error(`Skill already installed: ${skillId}`);
270
275
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "groove-dev",
3
- "version": "0.25.3",
3
+ "version": "0.25.4",
4
4
  "description": "Open-source agent orchestration layer — the AI company OS. 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.",
5
5
  "license": "FSL-1.1-Apache-2.0",
6
6
  "author": "Groove Dev <hello@groovedev.ai> (https://groovedev.ai)",
@@ -264,7 +264,12 @@ export class SkillStore {
264
264
  * Downloads content from live API, falls back to contentUrl, then local plugins.
265
265
  */
266
266
  async install(skillId) {
267
- const entry = this.registry.find((s) => s.id === skillId);
267
+ let entry = this.registry.find((s) => s.id === skillId);
268
+ // Registry may be stale — refresh and retry lookup
269
+ if (!entry) {
270
+ await this._refreshRegistry();
271
+ entry = this.registry.find((s) => s.id === skillId);
272
+ }
268
273
  if (!entry) throw new Error(`Skill not found: ${skillId}`);
269
274
  if (this._isInstalled(skillId)) throw new Error(`Skill already installed: ${skillId}`);
270
275