groove-dev 0.27.27 → 0.27.29

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.
Files changed (34) hide show
  1. package/CLAUDE.md +7 -0
  2. package/README.md +28 -0
  3. package/node_modules/@groove-dev/cli/package.json +1 -1
  4. package/node_modules/@groove-dev/daemon/package.json +1 -1
  5. package/node_modules/@groove-dev/daemon/src/api.js +99 -0
  6. package/node_modules/@groove-dev/daemon/src/journalist.js +103 -45
  7. package/node_modules/@groove-dev/daemon/src/process.js +12 -0
  8. package/node_modules/@groove-dev/daemon/src/providers/claude-code.js +26 -1
  9. package/node_modules/@groove-dev/daemon/test/journalist.test.js +1 -1
  10. package/node_modules/@groove-dev/gui/dist/assets/{index-DieCV-v1.js → index-CNsQ3n1t.js} +1730 -1730
  11. package/node_modules/@groove-dev/gui/dist/index.html +1 -1
  12. package/node_modules/@groove-dev/gui/package.json +1 -1
  13. package/node_modules/@groove-dev/gui/src/components/agents/agent-config.jsx +149 -23
  14. package/node_modules/@groove-dev/gui/src/components/agents/spawn-wizard.jsx +206 -44
  15. package/node_modules/@groove-dev/gui/src/components/marketplace/integration-wizard.jsx +11 -24
  16. package/node_modules/@groove-dev/gui/src/components/marketplace/marketplace-card.jsx +1 -36
  17. package/node_modules/@groove-dev/gui/src/lib/integration-logos.js +39 -0
  18. package/node_modules/@groove-dev/gui/src/views/settings.jsx +2 -2
  19. package/package.json +1 -1
  20. package/packages/cli/package.json +1 -1
  21. package/packages/daemon/package.json +1 -1
  22. package/packages/daemon/src/api.js +99 -0
  23. package/packages/daemon/src/journalist.js +103 -45
  24. package/packages/daemon/src/process.js +12 -0
  25. package/packages/daemon/src/providers/claude-code.js +26 -1
  26. package/packages/gui/dist/assets/{index-DieCV-v1.js → index-CNsQ3n1t.js} +1730 -1730
  27. package/packages/gui/dist/index.html +1 -1
  28. package/packages/gui/package.json +1 -1
  29. package/packages/gui/src/components/agents/agent-config.jsx +149 -23
  30. package/packages/gui/src/components/agents/spawn-wizard.jsx +206 -44
  31. package/packages/gui/src/components/marketplace/integration-wizard.jsx +11 -24
  32. package/packages/gui/src/components/marketplace/marketplace-card.jsx +1 -36
  33. package/packages/gui/src/lib/integration-logos.js +39 -0
  34. package/packages/gui/src/views/settings.jsx +2 -2
@@ -4,42 +4,7 @@ import { cn } from '../../lib/cn';
4
4
  import { Badge } from '../ui/badge';
5
5
  import { fmtNum } from '../../lib/format';
6
6
 
7
- // Well-known integration logos via CDN (simple-icons on cdn.simpleicons.org)
8
- export const INTEGRATION_LOGOS = {
9
- 'google-workspace': 'https://cdn.simpleicons.org/google/white',
10
- github: 'https://cdn.simpleicons.org/github/white',
11
- stripe: 'https://cdn.simpleicons.org/stripe/635BFF',
12
- gmail: 'https://cdn.simpleicons.org/gmail/EA4335',
13
- 'google-calendar': 'https://cdn.simpleicons.org/googlecalendar/4285F4',
14
- 'google-drive': 'https://cdn.simpleicons.org/googledrive/4285F4',
15
- 'google-docs': 'https://cdn.simpleicons.org/googledocs/4285F4',
16
- 'google-sheets': 'https://cdn.simpleicons.org/googlesheets/34A853',
17
- 'google-slides': 'https://cdn.simpleicons.org/googleslides/FBBC04',
18
- 'google-maps': 'https://cdn.simpleicons.org/googlemaps/4285F4',
19
- postgres: 'https://cdn.simpleicons.org/postgresql/4169E1',
20
- notion: 'https://cdn.simpleicons.org/notion/white',
21
- linear: 'https://cdn.simpleicons.org/linear/5E6AD2',
22
- 'brave-search': 'https://cdn.simpleicons.org/brave/FB542B',
23
- 'home-assistant': 'https://cdn.simpleicons.org/homeassistant/18BCF2',
24
- sentry: 'https://cdn.simpleicons.org/sentry/362D59',
25
- elevenlabs: 'https://cdn.simpleicons.org/elevenlabs/white',
26
- hubspot: 'https://cdn.simpleicons.org/hubspot/FF7A59',
27
- jira: 'https://cdn.simpleicons.org/jira/0052CC',
28
- sendgrid: 'https://cdn.simpleicons.org/sendgrid/1A82E2',
29
- resend: 'https://cdn.simpleicons.org/resend/white',
30
- replicate: 'https://cdn.simpleicons.org/replicate/white',
31
- vercel: 'https://cdn.simpleicons.org/vercel/white',
32
- supabase: 'https://cdn.simpleicons.org/supabase/3FCF8E',
33
- mixpanel: 'https://cdn.simpleicons.org/mixpanel/7856FF',
34
- datadog: 'https://cdn.simpleicons.org/datadog/632CA6',
35
- airtable: 'https://cdn.simpleicons.org/airtable/18BFFF',
36
- zendesk: 'https://cdn.simpleicons.org/zendesk/03363D',
37
- intercom: 'https://cdn.simpleicons.org/intercom/6AFDEF',
38
- twilio: 'https://cdn.simpleicons.org/twilio/F22F46',
39
- telnyx: 'https://cdn.simpleicons.org/telnyx/00C08B',
40
- aws: 'https://cdn.simpleicons.org/amazonaws/FF9900',
41
- plaid: 'https://cdn.simpleicons.org/plaid/white',
42
- };
7
+ import { INTEGRATION_LOGOS } from '../../lib/integration-logos';
43
8
 
44
9
  function ItemIcon({ item, size = 40 }) {
45
10
  const logoUrl = INTEGRATION_LOGOS[item.id];
@@ -0,0 +1,39 @@
1
+ // FSL-1.1-Apache-2.0 — see LICENSE
2
+
3
+ export const INTEGRATION_LOGOS = {
4
+ 'google-workspace': 'https://cdn.simpleicons.org/google/white',
5
+ slack: 'https://cdn.simpleicons.org/slack/E01E5A',
6
+ discord: 'https://cdn.simpleicons.org/discord/5865F2',
7
+ github: 'https://cdn.simpleicons.org/github/white',
8
+ stripe: 'https://cdn.simpleicons.org/stripe/635BFF',
9
+ gmail: 'https://cdn.simpleicons.org/gmail/EA4335',
10
+ 'google-calendar': 'https://cdn.simpleicons.org/googlecalendar/4285F4',
11
+ 'google-drive': 'https://cdn.simpleicons.org/googledrive/4285F4',
12
+ 'google-docs': 'https://cdn.simpleicons.org/googledocs/4285F4',
13
+ 'google-sheets': 'https://cdn.simpleicons.org/googlesheets/34A853',
14
+ 'google-slides': 'https://cdn.simpleicons.org/googleslides/FBBC04',
15
+ 'google-maps': 'https://cdn.simpleicons.org/googlemaps/4285F4',
16
+ postgres: 'https://cdn.simpleicons.org/postgresql/4169E1',
17
+ notion: 'https://cdn.simpleicons.org/notion/white',
18
+ linear: 'https://cdn.simpleicons.org/linear/5E6AD2',
19
+ 'brave-search': 'https://cdn.simpleicons.org/brave/FB542B',
20
+ 'home-assistant': 'https://cdn.simpleicons.org/homeassistant/18BCF2',
21
+ sentry: 'https://cdn.simpleicons.org/sentry/362D59',
22
+ elevenlabs: 'https://cdn.simpleicons.org/elevenlabs/white',
23
+ hubspot: 'https://cdn.simpleicons.org/hubspot/FF7A59',
24
+ jira: 'https://cdn.simpleicons.org/jira/0052CC',
25
+ sendgrid: 'https://cdn.simpleicons.org/sendgrid/1A82E2',
26
+ resend: 'https://cdn.simpleicons.org/resend/white',
27
+ replicate: 'https://cdn.simpleicons.org/replicate/white',
28
+ vercel: 'https://cdn.simpleicons.org/vercel/white',
29
+ supabase: 'https://cdn.simpleicons.org/supabase/3FCF8E',
30
+ mixpanel: 'https://cdn.simpleicons.org/mixpanel/7856FF',
31
+ datadog: 'https://cdn.simpleicons.org/datadog/632CA6',
32
+ airtable: 'https://cdn.simpleicons.org/airtable/18BFFF',
33
+ zendesk: 'https://cdn.simpleicons.org/zendesk/03363D',
34
+ intercom: 'https://cdn.simpleicons.org/intercom/6AFDEF',
35
+ twilio: 'https://cdn.simpleicons.org/twilio/F22F46',
36
+ telnyx: 'https://cdn.simpleicons.org/telnyx/00C08B',
37
+ aws: 'https://cdn.simpleicons.org/amazonaws/FF9900',
38
+ plaid: 'https://cdn.simpleicons.org/plaid/white',
39
+ };
@@ -52,7 +52,7 @@ function ProviderCard({ provider, onKeyChange }) {
52
52
  const isSubscription = provider.authType === 'subscription';
53
53
  const isReady = isLocal ? provider.installed
54
54
  : isSubscription ? (provider.installed || provider.authStatus?.authenticated)
55
- : provider.hasKey;
55
+ : (provider.installed && provider.hasKey);
56
56
 
57
57
  async function handleSetKey() {
58
58
  if (!keyInput.trim()) return;
@@ -149,7 +149,7 @@ function ProviderCard({ provider, onKeyChange }) {
149
149
  {isReady ? (
150
150
  <Badge variant="success" className="text-2xs gap-1"><Check size={8} /> Ready</Badge>
151
151
  ) : (
152
- <Badge variant="default" className="text-2xs">{isSubscription ? 'Not installed' : 'No key'}</Badge>
152
+ <Badge variant="default" className="text-2xs">{!provider.installed ? 'Not installed' : isSubscription ? 'Not authenticated' : 'No key'}</Badge>
153
153
  )}
154
154
  </div>
155
155