@lobu/cli 3.0.12 → 3.0.19

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 (38) hide show
  1. package/dist/commands/connections/add.d.ts +2 -0
  2. package/dist/commands/connections/add.d.ts.map +1 -0
  3. package/dist/commands/connections/add.js +46 -0
  4. package/dist/commands/connections/add.js.map +1 -0
  5. package/dist/commands/connections/list.d.ts +2 -0
  6. package/dist/commands/connections/list.d.ts.map +1 -0
  7. package/dist/commands/connections/list.js +25 -0
  8. package/dist/commands/connections/list.js.map +1 -0
  9. package/dist/commands/connections/platforms.d.ts +18 -0
  10. package/dist/commands/connections/platforms.d.ts.map +1 -0
  11. package/dist/commands/connections/platforms.js +160 -0
  12. package/dist/commands/connections/platforms.js.map +1 -0
  13. package/dist/commands/init.d.ts.map +1 -1
  14. package/dist/commands/init.js +4 -141
  15. package/dist/commands/init.js.map +1 -1
  16. package/dist/commands/providers/add.d.ts.map +1 -1
  17. package/dist/commands/providers/add.js +8 -29
  18. package/dist/commands/providers/add.js.map +1 -1
  19. package/dist/commands/skills/add.d.ts.map +1 -1
  20. package/dist/commands/skills/add.js +15 -29
  21. package/dist/commands/skills/add.js.map +1 -1
  22. package/dist/config/agent-helpers.d.ts +37 -0
  23. package/dist/config/agent-helpers.d.ts.map +1 -0
  24. package/dist/config/agent-helpers.js +58 -0
  25. package/dist/config/agent-helpers.js.map +1 -0
  26. package/dist/config/schema.d.ts +5 -713
  27. package/dist/config/schema.d.ts.map +1 -1
  28. package/dist/config/schema.js +5 -58
  29. package/dist/config/schema.js.map +1 -1
  30. package/dist/eval/types.d.ts +26 -154
  31. package/dist/eval/types.d.ts.map +1 -1
  32. package/dist/eval/types.js +1 -1
  33. package/dist/eval/types.js.map +1 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +18 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/system-skills.json +7 -1
  38. package/package.json +9 -4
@@ -0,0 +1,2 @@
1
+ export declare function connectionsAddCommand(cwd: string, platform: string): Promise<void>;
2
+ //# sourceMappingURL=add.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/connections/add.ts"],"names":[],"mappings":"AAkBA,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CA2Df"}
@@ -0,0 +1,46 @@
1
+ import chalk from "chalk";
2
+ import { appendTomlBlock, loadAgentContext, setSecrets, } from "../../config/agent-helpers.js";
3
+ import { CONFIG_FILENAME } from "../../config/loader.js";
4
+ import { PLATFORM_LABELS, promptPlatformConfig } from "./platforms.js";
5
+ const SUPPORTED = [
6
+ "telegram",
7
+ "slack",
8
+ "discord",
9
+ "whatsapp",
10
+ "teams",
11
+ "gchat",
12
+ ];
13
+ export async function connectionsAddCommand(cwd, platform) {
14
+ if (!SUPPORTED.includes(platform)) {
15
+ console.log(chalk.red(`\n Platform "${platform}" is not supported.`));
16
+ console.log(chalk.dim(` Supported: ${SUPPORTED.join(", ")}\n`));
17
+ return;
18
+ }
19
+ const ctx = await loadAgentContext(cwd);
20
+ if (!ctx)
21
+ return;
22
+ const existing = (ctx.agent.connections ?? []);
23
+ if (existing.some((c) => c.type === platform)) {
24
+ console.log(chalk.yellow(`\n Connection "${platform}" is already configured for agent "${ctx.agentId}".\n`));
25
+ return;
26
+ }
27
+ console.log(chalk.dim(`\n Adding ${PLATFORM_LABELS[platform]} connection to agent "${ctx.agentId}".\n`));
28
+ const { connectionConfig, connectionSecrets } = await promptPlatformConfig(platform);
29
+ if (Object.keys(connectionConfig).length === 0) {
30
+ console.log(chalk.yellow("\n No credentials provided. Aborting.\n"));
31
+ return;
32
+ }
33
+ const lines = [
34
+ "",
35
+ `[[agents.${ctx.agentId}.connections]]`,
36
+ `type = "${platform}"`,
37
+ "",
38
+ `[agents.${ctx.agentId}.connections.config]`,
39
+ ...Object.entries(connectionConfig).map(([key, value]) => `${key} = "${value}"`),
40
+ ];
41
+ await appendTomlBlock(ctx, lines);
42
+ await setSecrets(cwd, connectionSecrets);
43
+ console.log(chalk.green(`\n Added ${PLATFORM_LABELS[platform]} connection to ${CONFIG_FILENAME}`));
44
+ console.log(chalk.dim(" Run `lobu run -d` to start the stack with the new connection.\n"));
45
+ }
46
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/connections/add.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,UAAU,GACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEvE,MAAM,SAAS,GAAG;IAChB,UAAU;IACV,OAAO;IACP,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;CACR,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAW,EACX,QAAgB;IAEhB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,QAAQ,qBAAqB,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAE5C,CAAC;IACF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,mBAAmB,QAAQ,sCAAsC,GAAG,CAAC,OAAO,MAAM,CACnF,CACF,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,cAAc,eAAe,CAAC,QAAQ,CAAC,yBAAyB,GAAG,CAAC,OAAO,MAAM,CAClF,CACF,CAAC;IAEF,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GAC3C,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,EAAE;QACF,YAAY,GAAG,CAAC,OAAO,gBAAgB;QACvC,WAAW,QAAQ,GAAG;QACtB,EAAE;QACF,WAAW,GAAG,CAAC,OAAO,sBAAsB;QAC5C,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,CACrC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,KAAK,GAAG,CACxC;KACF,CAAC;IACF,MAAM,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClC,MAAM,UAAU,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,aAAa,eAAe,CAAC,QAAQ,CAAC,kBAAkB,eAAe,EAAE,CAC1E,CACF,CAAC;IACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,mEAAmE,CACpE,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function connectionsListCommand(cwd: string): Promise<void>;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/connections/list.ts"],"names":[],"mappings":"AAIA,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBvE"}
@@ -0,0 +1,25 @@
1
+ import chalk from "chalk";
2
+ import { loadAgentContext } from "../../config/agent-helpers.js";
3
+ import { PLATFORM_LABELS } from "./platforms.js";
4
+ export async function connectionsListCommand(cwd) {
5
+ const ctx = await loadAgentContext(cwd);
6
+ if (!ctx)
7
+ return;
8
+ console.log();
9
+ for (const [agentId, agent] of Object.entries(ctx.agents)) {
10
+ const connections = (agent.connections ?? []);
11
+ console.log(chalk.bold(` ${agentId}`));
12
+ if (connections.length === 0) {
13
+ console.log(chalk.dim(" (no connections configured)"));
14
+ }
15
+ else {
16
+ for (const c of connections) {
17
+ const type = c.type;
18
+ const label = PLATFORM_LABELS[type] ?? type;
19
+ console.log(` ${chalk.cyan("●")} ${label} ${chalk.dim(`(${type})`)}`);
20
+ }
21
+ }
22
+ console.log();
23
+ }
24
+ }
25
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/connections/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,GAAW;IACtD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAE3C,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;QACxC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAc,CAAC;gBAC9B,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;gBAC5C,OAAO,CAAC,GAAG,CACT,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAC5D,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Shared platform connection prompt/config logic.
3
+ * Used by both `lobu init` and `lobu connections add <platform>`.
4
+ */
5
+ export interface PlatformPromptResult {
6
+ connectionConfig: Record<string, string>;
7
+ connectionSecrets: Array<{
8
+ envVar: string;
9
+ value: string;
10
+ }>;
11
+ }
12
+ export declare const PLATFORM_CHOICES: Array<{
13
+ name: string;
14
+ value: string;
15
+ }>;
16
+ export declare const PLATFORM_LABELS: Record<string, string>;
17
+ export declare function promptPlatformConfig(platform: string): Promise<PlatformPromptResult>;
18
+ //# sourceMappingURL=platforms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platforms.d.ts","sourceRoot":"","sources":["../../../src/commands/connections/platforms.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,iBAAiB,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7D;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAOnE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOlD,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAsI/B"}
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Shared platform connection prompt/config logic.
3
+ * Used by both `lobu init` and `lobu connections add <platform>`.
4
+ */
5
+ import inquirer from "inquirer";
6
+ export const PLATFORM_CHOICES = [
7
+ { name: "Telegram", value: "telegram" },
8
+ { name: "Slack", value: "slack" },
9
+ { name: "Discord", value: "discord" },
10
+ { name: "WhatsApp", value: "whatsapp" },
11
+ { name: "Microsoft Teams", value: "teams" },
12
+ { name: "Google Chat", value: "gchat" },
13
+ ];
14
+ export const PLATFORM_LABELS = {
15
+ telegram: "Telegram",
16
+ slack: "Slack",
17
+ discord: "Discord",
18
+ whatsapp: "WhatsApp",
19
+ teams: "Microsoft Teams",
20
+ gchat: "Google Chat",
21
+ };
22
+ export async function promptPlatformConfig(platform) {
23
+ const connectionConfig = {};
24
+ const connectionSecrets = [];
25
+ if (platform === "telegram") {
26
+ const { botToken } = await inquirer.prompt([
27
+ {
28
+ type: "password",
29
+ name: "botToken",
30
+ message: "Telegram bot token (from @BotFather):",
31
+ mask: "*",
32
+ },
33
+ ]);
34
+ if (botToken) {
35
+ connectionConfig.botToken = "$TELEGRAM_BOT_TOKEN";
36
+ connectionSecrets.push({ envVar: "TELEGRAM_BOT_TOKEN", value: botToken });
37
+ }
38
+ }
39
+ else if (platform === "slack") {
40
+ const slackAnswers = await inquirer.prompt([
41
+ {
42
+ type: "password",
43
+ name: "botToken",
44
+ message: "Slack bot token (xoxb-...):",
45
+ mask: "*",
46
+ },
47
+ {
48
+ type: "password",
49
+ name: "signingSecret",
50
+ message: "Slack signing secret:",
51
+ mask: "*",
52
+ },
53
+ ]);
54
+ if (slackAnswers.botToken) {
55
+ connectionConfig.botToken = "$SLACK_BOT_TOKEN";
56
+ connectionSecrets.push({
57
+ envVar: "SLACK_BOT_TOKEN",
58
+ value: slackAnswers.botToken,
59
+ });
60
+ }
61
+ if (slackAnswers.signingSecret) {
62
+ connectionConfig.signingSecret = "$SLACK_SIGNING_SECRET";
63
+ connectionSecrets.push({
64
+ envVar: "SLACK_SIGNING_SECRET",
65
+ value: slackAnswers.signingSecret,
66
+ });
67
+ }
68
+ }
69
+ else if (platform === "discord") {
70
+ const { botToken } = await inquirer.prompt([
71
+ {
72
+ type: "password",
73
+ name: "botToken",
74
+ message: "Discord bot token:",
75
+ mask: "*",
76
+ },
77
+ ]);
78
+ if (botToken) {
79
+ connectionConfig.botToken = "$DISCORD_BOT_TOKEN";
80
+ connectionSecrets.push({ envVar: "DISCORD_BOT_TOKEN", value: botToken });
81
+ }
82
+ }
83
+ else if (platform === "whatsapp") {
84
+ const whatsappAnswers = await inquirer.prompt([
85
+ {
86
+ type: "password",
87
+ name: "accessToken",
88
+ message: "WhatsApp Business access token:",
89
+ mask: "*",
90
+ },
91
+ {
92
+ type: "input",
93
+ name: "phoneNumberId",
94
+ message: "WhatsApp phone number ID:",
95
+ },
96
+ ]);
97
+ if (whatsappAnswers.accessToken) {
98
+ connectionConfig.accessToken = "$WHATSAPP_ACCESS_TOKEN";
99
+ connectionSecrets.push({
100
+ envVar: "WHATSAPP_ACCESS_TOKEN",
101
+ value: whatsappAnswers.accessToken,
102
+ });
103
+ }
104
+ if (whatsappAnswers.phoneNumberId) {
105
+ connectionConfig.phoneNumberId = "$WHATSAPP_PHONE_NUMBER_ID";
106
+ connectionSecrets.push({
107
+ envVar: "WHATSAPP_PHONE_NUMBER_ID",
108
+ value: whatsappAnswers.phoneNumberId,
109
+ });
110
+ }
111
+ }
112
+ else if (platform === "teams") {
113
+ const teamsAnswers = await inquirer.prompt([
114
+ {
115
+ type: "input",
116
+ name: "appId",
117
+ message: "Teams App ID (from Azure Bot):",
118
+ },
119
+ {
120
+ type: "password",
121
+ name: "appPassword",
122
+ message: "Teams App Password (client secret):",
123
+ mask: "*",
124
+ },
125
+ ]);
126
+ if (teamsAnswers.appId) {
127
+ connectionConfig.appId = "$TEAMS_APP_ID";
128
+ connectionSecrets.push({
129
+ envVar: "TEAMS_APP_ID",
130
+ value: teamsAnswers.appId,
131
+ });
132
+ }
133
+ if (teamsAnswers.appPassword) {
134
+ connectionConfig.appPassword = "$TEAMS_APP_PASSWORD";
135
+ connectionSecrets.push({
136
+ envVar: "TEAMS_APP_PASSWORD",
137
+ value: teamsAnswers.appPassword,
138
+ });
139
+ }
140
+ }
141
+ else if (platform === "gchat") {
142
+ const { credentials } = await inquirer.prompt([
143
+ {
144
+ type: "password",
145
+ name: "credentials",
146
+ message: "Google Chat service account JSON:",
147
+ mask: "*",
148
+ },
149
+ ]);
150
+ if (credentials) {
151
+ connectionConfig.credentials = "$GOOGLE_CHAT_CREDENTIALS";
152
+ connectionSecrets.push({
153
+ envVar: "GOOGLE_CHAT_CREDENTIALS",
154
+ value: credentials,
155
+ });
156
+ }
157
+ }
158
+ return { connectionConfig, connectionSecrets };
159
+ }
160
+ //# sourceMappingURL=platforms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platforms.js","sourceRoot":"","sources":["../../../src/commands/connections/platforms.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAeA,wBAAsB,WAAW,CAC/B,GAAG,GAAE,MAAsB,EAC3B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAgsBf"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAgBA,wBAAsB,WAAW,CAC/B,GAAG,GAAE,MAAsB,EAC3B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CA0jBf"}
@@ -5,6 +5,7 @@ import { join } from "node:path";
5
5
  import chalk from "chalk";
6
6
  import inquirer from "inquirer";
7
7
  import ora from "ora";
8
+ import { promptPlatformConfig } from "../commands/connections/platforms.js";
8
9
  import { secretsSetCommand } from "../commands/secrets.js";
9
10
  import { isProviderSkill, loadSkillsRegistry, } from "../commands/skills/registry.js";
10
11
  import { renderTemplate } from "../utils/template.js";
@@ -198,147 +199,9 @@ export async function initCommand(cwd = process.cwd(), projectNameArg) {
198
199
  default: "",
199
200
  },
200
201
  ]);
201
- const connectionConfig = {};
202
- const connectionSecrets = [];
203
- if (platformType === "telegram") {
204
- const { botToken } = await inquirer.prompt([
205
- {
206
- type: "password",
207
- name: "botToken",
208
- message: "Telegram bot token (from @BotFather):",
209
- mask: "*",
210
- },
211
- ]);
212
- if (botToken) {
213
- connectionConfig.botToken = "$TELEGRAM_BOT_TOKEN";
214
- connectionSecrets.push({
215
- envVar: "TELEGRAM_BOT_TOKEN",
216
- value: botToken,
217
- });
218
- }
219
- }
220
- else if (platformType === "slack") {
221
- const slackAnswers = await inquirer.prompt([
222
- {
223
- type: "password",
224
- name: "botToken",
225
- message: "Slack bot token (xoxb-...):",
226
- mask: "*",
227
- },
228
- {
229
- type: "password",
230
- name: "signingSecret",
231
- message: "Slack signing secret:",
232
- mask: "*",
233
- },
234
- ]);
235
- if (slackAnswers.botToken) {
236
- connectionConfig.botToken = "$SLACK_BOT_TOKEN";
237
- connectionSecrets.push({
238
- envVar: "SLACK_BOT_TOKEN",
239
- value: slackAnswers.botToken,
240
- });
241
- }
242
- if (slackAnswers.signingSecret) {
243
- connectionConfig.signingSecret = "$SLACK_SIGNING_SECRET";
244
- connectionSecrets.push({
245
- envVar: "SLACK_SIGNING_SECRET",
246
- value: slackAnswers.signingSecret,
247
- });
248
- }
249
- }
250
- else if (platformType === "discord") {
251
- const { botToken } = await inquirer.prompt([
252
- {
253
- type: "password",
254
- name: "botToken",
255
- message: "Discord bot token:",
256
- mask: "*",
257
- },
258
- ]);
259
- if (botToken) {
260
- connectionConfig.botToken = "$DISCORD_BOT_TOKEN";
261
- connectionSecrets.push({
262
- envVar: "DISCORD_BOT_TOKEN",
263
- value: botToken,
264
- });
265
- }
266
- }
267
- else if (platformType === "whatsapp") {
268
- const whatsappAnswers = await inquirer.prompt([
269
- {
270
- type: "password",
271
- name: "accessToken",
272
- message: "WhatsApp Business access token:",
273
- mask: "*",
274
- },
275
- {
276
- type: "input",
277
- name: "phoneNumberId",
278
- message: "WhatsApp phone number ID:",
279
- },
280
- ]);
281
- if (whatsappAnswers.accessToken) {
282
- connectionConfig.accessToken = "$WHATSAPP_ACCESS_TOKEN";
283
- connectionSecrets.push({
284
- envVar: "WHATSAPP_ACCESS_TOKEN",
285
- value: whatsappAnswers.accessToken,
286
- });
287
- }
288
- if (whatsappAnswers.phoneNumberId) {
289
- connectionConfig.phoneNumberId = "$WHATSAPP_PHONE_NUMBER_ID";
290
- connectionSecrets.push({
291
- envVar: "WHATSAPP_PHONE_NUMBER_ID",
292
- value: whatsappAnswers.phoneNumberId,
293
- });
294
- }
295
- }
296
- else if (platformType === "teams") {
297
- const teamsAnswers = await inquirer.prompt([
298
- {
299
- type: "input",
300
- name: "appId",
301
- message: "Teams App ID (from Azure Bot):",
302
- },
303
- {
304
- type: "password",
305
- name: "appPassword",
306
- message: "Teams App Password (client secret):",
307
- mask: "*",
308
- },
309
- ]);
310
- if (teamsAnswers.appId) {
311
- connectionConfig.appId = "$TEAMS_APP_ID";
312
- connectionSecrets.push({
313
- envVar: "TEAMS_APP_ID",
314
- value: teamsAnswers.appId,
315
- });
316
- }
317
- if (teamsAnswers.appPassword) {
318
- connectionConfig.appPassword = "$TEAMS_APP_PASSWORD";
319
- connectionSecrets.push({
320
- envVar: "TEAMS_APP_PASSWORD",
321
- value: teamsAnswers.appPassword,
322
- });
323
- }
324
- }
325
- else if (platformType === "gchat") {
326
- const { credentials } = await inquirer.prompt([
327
- {
328
- type: "password",
329
- name: "credentials",
330
- message: "Google Chat service account JSON:",
331
- mask: "*",
332
- },
333
- ]);
334
- if (credentials) {
335
- connectionConfig.credentials = "$GOOGLE_CHAT_CREDENTIALS";
336
- connectionSecrets.push({
337
- envVar: "GOOGLE_CHAT_CREDENTIALS",
338
- value: credentials,
339
- });
340
- }
341
- }
202
+ const { connectionConfig, connectionSecrets } = platformType
203
+ ? await promptPlatformConfig(platformType)
204
+ : { connectionConfig: {}, connectionSecrets: [] };
342
205
  // Memory
343
206
  const { memoryChoice } = await inquirer.prompt([
344
207
  {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/providers/add.ts"],"names":[],"mappings":"AASA,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAyFf"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/providers/add.ts"],"names":[],"mappings":"AAUA,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAiEf"}
@@ -1,10 +1,7 @@
1
- import { readFile, writeFile } from "node:fs/promises";
2
- import { join } from "node:path";
3
1
  import chalk from "chalk";
4
2
  import inquirer from "inquirer";
5
- import { parse as parseToml } from "smol-toml";
3
+ import { appendTomlBlock, loadAgentContext, setSecrets, } from "../../config/agent-helpers.js";
6
4
  import { CONFIG_FILENAME } from "../../config/loader.js";
7
- import { secretsSetCommand } from "../secrets.js";
8
5
  import { getSkillById, isProviderSkill } from "../skills/registry.js";
9
6
  export async function providersAddCommand(cwd, providerId) {
10
7
  const skill = getSkillById(providerId);
@@ -13,24 +10,10 @@ export async function providersAddCommand(cwd, providerId) {
13
10
  console.log(chalk.dim(" Run `npx @lobu/cli providers list` to see available providers.\n"));
14
11
  return;
15
12
  }
16
- const configPath = join(cwd, CONFIG_FILENAME);
17
- let raw;
18
- try {
19
- raw = await readFile(configPath, "utf-8");
20
- }
21
- catch {
22
- console.log(chalk.red(`\n No ${CONFIG_FILENAME} found. Run \`lobu init\` first.\n`));
23
- return;
24
- }
25
- const parsed = parseToml(raw);
26
- const agents = parsed.agents;
27
- if (!agents || Object.keys(agents).length === 0) {
28
- console.log(chalk.red("\n No agents found in lobu.toml.\n"));
13
+ const ctx = await loadAgentContext(cwd);
14
+ if (!ctx)
29
15
  return;
30
- }
31
- const agentId = Object.keys(agents)[0];
32
- const agent = agents[agentId];
33
- const providers = (agent.providers ?? []);
16
+ const providers = (ctx.agent.providers ?? []);
34
17
  if (providers.some((p) => p.id === providerId)) {
35
18
  console.log(chalk.yellow(`\n Provider "${providerId}" is already configured.\n`));
36
19
  return;
@@ -40,7 +23,6 @@ export async function providersAddCommand(cwd, providerId) {
40
23
  return;
41
24
  const defaultModel = provider.defaultModel;
42
25
  const envVar = provider.envVarName;
43
- // Prompt for API key
44
26
  const { apiKey } = await inquirer.prompt([
45
27
  {
46
28
  type: "password",
@@ -49,18 +31,15 @@ export async function providersAddCommand(cwd, providerId) {
49
31
  mask: "*",
50
32
  },
51
33
  ]);
52
- // Append provider entry to the TOML file (preserves comments/formatting)
53
- const tomlBlock = [
34
+ await appendTomlBlock(ctx, [
54
35
  "",
55
- `[[agents.${agentId}.providers]]`,
36
+ `[[agents.${ctx.agentId}.providers]]`,
56
37
  `id = "${providerId}"`,
57
38
  ...(defaultModel ? [`model = "${defaultModel}"`] : []),
58
39
  `key = "$${envVar}"`,
59
- ].join("\n");
60
- await writeFile(configPath, `${raw.trimEnd()}\n${tomlBlock}\n`);
61
- // Save API key to .env if provided
40
+ ]);
62
41
  if (apiKey) {
63
- await secretsSetCommand(cwd, envVar, apiKey);
42
+ await setSecrets(cwd, [{ envVar, value: apiKey }]);
64
43
  }
65
44
  console.log(chalk.green(`\n Added provider "${providerId}" to ${CONFIG_FILENAME}`));
66
45
  if (defaultModel) {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/providers/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/providers/add.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/add.ts"],"names":[],"mappings":"AAOA,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA2Ef"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/add.ts"],"names":[],"mappings":"AASA,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA0Df"}