beecork 1.3.3 → 1.3.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/README.md +1 -1
- package/dist/capabilities/packs.js +0 -59
- package/dist/cli/setup.js +5 -33
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -80,7 +80,7 @@ beecork knowledge # View stored knowledge
|
|
|
80
80
|
beecork discord # Set up Discord bot
|
|
81
81
|
beecork whatsapp # Set up WhatsApp
|
|
82
82
|
beecork webhook # Set up webhook endpoint
|
|
83
|
-
beecork enable <cap> # Enable a capability (
|
|
83
|
+
beecork enable <cap> # Enable a capability (github, notion, database)
|
|
84
84
|
beecork disable <cap> # Disable a capability
|
|
85
85
|
beecork capabilities # List available capabilities
|
|
86
86
|
|
|
@@ -1,35 +1,5 @@
|
|
|
1
1
|
export const CAPABILITY_PACKS = [
|
|
2
2
|
// Productivity
|
|
3
|
-
{
|
|
4
|
-
id: 'email',
|
|
5
|
-
name: 'Email (Gmail)',
|
|
6
|
-
description: 'Read, send, and manage emails via Gmail',
|
|
7
|
-
category: 'productivity',
|
|
8
|
-
mcpServer: {
|
|
9
|
-
package: '@anthropic/gmail-mcp',
|
|
10
|
-
command: 'npx',
|
|
11
|
-
args: ['-y', '@anthropic/gmail-mcp'],
|
|
12
|
-
},
|
|
13
|
-
requiresApiKey: true,
|
|
14
|
-
apiKeyHint: 'Google OAuth credentials (follow the setup guide)',
|
|
15
|
-
apiKeyEnvVar: 'GOOGLE_OAUTH_CREDENTIALS',
|
|
16
|
-
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
id: 'calendar',
|
|
20
|
-
name: 'Calendar (Google)',
|
|
21
|
-
description: 'Schedule meetings, check availability, manage events',
|
|
22
|
-
category: 'productivity',
|
|
23
|
-
mcpServer: {
|
|
24
|
-
package: '@anthropic/google-calendar-mcp',
|
|
25
|
-
command: 'npx',
|
|
26
|
-
args: ['-y', '@anthropic/google-calendar-mcp'],
|
|
27
|
-
},
|
|
28
|
-
requiresApiKey: true,
|
|
29
|
-
apiKeyHint: 'Google OAuth credentials (same as email if already set up)',
|
|
30
|
-
apiKeyEnvVar: 'GOOGLE_OAUTH_CREDENTIALS',
|
|
31
|
-
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
32
|
-
},
|
|
33
3
|
{
|
|
34
4
|
id: 'notion',
|
|
35
5
|
name: 'Notion',
|
|
@@ -46,21 +16,6 @@ export const CAPABILITY_PACKS = [
|
|
|
46
16
|
apiKeyEnvVar: 'NOTION_API_KEY',
|
|
47
17
|
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
48
18
|
},
|
|
49
|
-
{
|
|
50
|
-
id: 'drive',
|
|
51
|
-
name: 'Google Drive',
|
|
52
|
-
description: 'Search, read, and organize files in Google Drive',
|
|
53
|
-
category: 'productivity',
|
|
54
|
-
mcpServer: {
|
|
55
|
-
package: '@anthropic/gdrive-mcp',
|
|
56
|
-
command: 'npx',
|
|
57
|
-
args: ['-y', '@anthropic/gdrive-mcp'],
|
|
58
|
-
},
|
|
59
|
-
requiresApiKey: true,
|
|
60
|
-
apiKeyHint: 'Google OAuth credentials',
|
|
61
|
-
apiKeyEnvVar: 'GOOGLE_OAUTH_CREDENTIALS',
|
|
62
|
-
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
63
|
-
},
|
|
64
19
|
// Development
|
|
65
20
|
{
|
|
66
21
|
id: 'github',
|
|
@@ -94,18 +49,4 @@ export const CAPABILITY_PACKS = [
|
|
|
94
49
|
apiKeyEnvVar: 'DATABASE_URL',
|
|
95
50
|
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
96
51
|
},
|
|
97
|
-
// Web
|
|
98
|
-
{
|
|
99
|
-
id: 'web',
|
|
100
|
-
name: 'Web Browsing',
|
|
101
|
-
description: 'Search the web, fetch and read web pages',
|
|
102
|
-
category: 'web',
|
|
103
|
-
mcpServer: {
|
|
104
|
-
package: '@anthropic/web-search-mcp',
|
|
105
|
-
command: 'npx',
|
|
106
|
-
args: ['-y', '@anthropic/web-search-mcp'],
|
|
107
|
-
},
|
|
108
|
-
requiresApiKey: false,
|
|
109
|
-
setupUrl: 'https://github.com/beecork/beecork/blob/main/docs/use-cases.md',
|
|
110
|
-
},
|
|
111
52
|
];
|
package/dist/cli/setup.js
CHANGED
|
@@ -8,7 +8,6 @@ import { saveConfig, getConfig } from '../config.js';
|
|
|
8
8
|
import { ensureBeecorkDirs, getMcpConfigPath, getBeecorkHome } from '../util/paths.js';
|
|
9
9
|
import { installService } from '../service/install.js';
|
|
10
10
|
import { getDb, closeDb } from '../db/index.js';
|
|
11
|
-
import { CAPABILITY_PACKS } from '../capabilities/packs.js';
|
|
12
11
|
function ask(rl, question, defaultValue) {
|
|
13
12
|
const prompt = defaultValue ? `${question} [${defaultValue}]: ` : `${question}: `;
|
|
14
13
|
return new Promise((resolve) => {
|
|
@@ -231,7 +230,9 @@ export async function setupWizard(mode = 'quick') {
|
|
|
231
230
|
sessionPath: `${getBeecorkHome()}/whatsapp-session`,
|
|
232
231
|
allowedNumbers: [waNumber],
|
|
233
232
|
};
|
|
234
|
-
console.log(' ✓ WhatsApp configured
|
|
233
|
+
console.log(' ✓ WhatsApp configured');
|
|
234
|
+
console.log(' ⚠ After starting the daemon, run: beecork logs');
|
|
235
|
+
console.log(' The QR code will appear in the logs — scan it with your phone.\n');
|
|
235
236
|
}
|
|
236
237
|
}
|
|
237
238
|
const addWebhook = await ask(rl, 'Enable Webhook API? (y/n)', 'n');
|
|
@@ -316,38 +317,10 @@ export async function setupWizard(mode = 'quick') {
|
|
|
316
317
|
console.log(`\n ✓ ${mediaGenerators.length} media provider(s) configured`);
|
|
317
318
|
}
|
|
318
319
|
}
|
|
319
|
-
// Capabilities
|
|
320
|
-
console.log('\nOptional: Capabilities\n');
|
|
321
|
-
console.log('Pre-configured integrations for common tasks.');
|
|
322
|
-
console.log('You can add these later with: beecork enable <name>\n');
|
|
323
|
-
const capPacks = ['email', 'calendar', 'github', 'notion', 'drive', 'web', 'database'];
|
|
324
|
-
const capNames = {
|
|
325
|
-
email: 'Email (Gmail)',
|
|
326
|
-
calendar: 'Calendar (Google)',
|
|
327
|
-
github: 'GitHub',
|
|
328
|
-
notion: 'Notion',
|
|
329
|
-
drive: 'Google Drive',
|
|
330
|
-
web: 'Web Browsing',
|
|
331
|
-
database: 'Database (PostgreSQL)',
|
|
332
|
-
};
|
|
333
|
-
for (const packId of capPacks) {
|
|
334
|
-
const pack = CAPABILITY_PACKS.find(p => p.id === packId);
|
|
335
|
-
if (!pack)
|
|
336
|
-
continue;
|
|
337
|
-
const answer = await ask(rl, `Enable ${capNames[packId]}? (y/n)`, 'n');
|
|
338
|
-
if (answer.toLowerCase() === 'y' && pack.requiresApiKey) {
|
|
339
|
-
const key = await ask(rl, ` ${pack.apiKeyHint}`);
|
|
340
|
-
if (key) {
|
|
341
|
-
enabledCaps.push({ packId, apiKey: key });
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
else if (answer.toLowerCase() === 'y') {
|
|
345
|
-
enabledCaps.push({ packId });
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
320
|
console.log('You can add or change channels later with:');
|
|
349
321
|
console.log(' beecork discord — add/reconfigure Discord');
|
|
350
322
|
console.log(' beecork whatsapp — add/reconfigure WhatsApp');
|
|
323
|
+
console.log(' beecork enable — add integrations (GitHub, Notion, PostgreSQL)');
|
|
351
324
|
console.log(' beecork dashboard — manage everything from the web UI\n');
|
|
352
325
|
}
|
|
353
326
|
// Write everything
|
|
@@ -423,9 +396,8 @@ export async function setupWizard(mode = 'quick') {
|
|
|
423
396
|
console.log('');
|
|
424
397
|
if (!showExtras) {
|
|
425
398
|
console.log(' Add more features anytime:');
|
|
426
|
-
console.log(' beecork enable email — manage your inbox');
|
|
427
399
|
console.log(' beecork enable github — repos, PRs, issues');
|
|
428
|
-
console.log(' beecork enable
|
|
400
|
+
console.log(' beecork enable notion — pages, databases, notes');
|
|
429
401
|
console.log(' beecork capabilities — see all options');
|
|
430
402
|
console.log(' beecork setup --full — full guided setup');
|
|
431
403
|
console.log('');
|
package/dist/index.js
CHANGED
|
@@ -436,7 +436,7 @@ mediaCmd.action(async () => {
|
|
|
436
436
|
});
|
|
437
437
|
program
|
|
438
438
|
.command('enable <capability>')
|
|
439
|
-
.description('Enable a capability (
|
|
439
|
+
.description('Enable a capability (github, notion, database)')
|
|
440
440
|
.action(async (capability) => {
|
|
441
441
|
const { enableCapability } = await import('./cli/capabilities.js');
|
|
442
442
|
await enableCapability(capability);
|