@lobu/cli 3.0.0

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 (116) hide show
  1. package/README.md +276 -0
  2. package/bin/create-lobu.js +5 -0
  3. package/bin/lobu.js +5 -0
  4. package/dist/api/client.d.ts +11 -0
  5. package/dist/api/client.d.ts.map +1 -0
  6. package/dist/api/client.js +35 -0
  7. package/dist/api/client.js.map +1 -0
  8. package/dist/api/credentials.d.ts +13 -0
  9. package/dist/api/credentials.d.ts.map +1 -0
  10. package/dist/api/credentials.js +39 -0
  11. package/dist/api/credentials.js.map +1 -0
  12. package/dist/commands/dev.d.ts +13 -0
  13. package/dist/commands/dev.d.ts.map +1 -0
  14. package/dist/commands/dev.js +128 -0
  15. package/dist/commands/dev.js.map +1 -0
  16. package/dist/commands/init.d.ts +2 -0
  17. package/dist/commands/init.d.ts.map +1 -0
  18. package/dist/commands/init.js +905 -0
  19. package/dist/commands/init.js.map +1 -0
  20. package/dist/commands/launch.d.ts +6 -0
  21. package/dist/commands/launch.d.ts.map +1 -0
  22. package/dist/commands/launch.js +32 -0
  23. package/dist/commands/launch.js.map +1 -0
  24. package/dist/commands/login.d.ts +4 -0
  25. package/dist/commands/login.d.ts.map +1 -0
  26. package/dist/commands/login.js +29 -0
  27. package/dist/commands/login.js.map +1 -0
  28. package/dist/commands/logout.d.ts +2 -0
  29. package/dist/commands/logout.d.ts.map +1 -0
  30. package/dist/commands/logout.js +7 -0
  31. package/dist/commands/logout.js.map +1 -0
  32. package/dist/commands/providers/add.d.ts +2 -0
  33. package/dist/commands/providers/add.d.ts.map +1 -0
  34. package/dist/commands/providers/add.js +51 -0
  35. package/dist/commands/providers/add.js.map +1 -0
  36. package/dist/commands/providers/list.d.ts +2 -0
  37. package/dist/commands/providers/list.d.ts.map +1 -0
  38. package/dist/commands/providers/list.js +21 -0
  39. package/dist/commands/providers/list.js.map +1 -0
  40. package/dist/commands/secrets.d.ts +8 -0
  41. package/dist/commands/secrets.d.ts.map +1 -0
  42. package/dist/commands/secrets.js +98 -0
  43. package/dist/commands/secrets.js.map +1 -0
  44. package/dist/commands/skills/add.d.ts +2 -0
  45. package/dist/commands/skills/add.d.ts.map +1 -0
  46. package/dist/commands/skills/add.js +47 -0
  47. package/dist/commands/skills/add.js.map +1 -0
  48. package/dist/commands/skills/info.d.ts +2 -0
  49. package/dist/commands/skills/info.d.ts.map +1 -0
  50. package/dist/commands/skills/info.js +45 -0
  51. package/dist/commands/skills/info.js.map +1 -0
  52. package/dist/commands/skills/list.d.ts +2 -0
  53. package/dist/commands/skills/list.d.ts.map +1 -0
  54. package/dist/commands/skills/list.js +30 -0
  55. package/dist/commands/skills/list.js.map +1 -0
  56. package/dist/commands/skills/registry.d.ts +34 -0
  57. package/dist/commands/skills/registry.d.ts.map +1 -0
  58. package/dist/commands/skills/registry.js +38 -0
  59. package/dist/commands/skills/registry.js.map +1 -0
  60. package/dist/commands/skills/search.d.ts +2 -0
  61. package/dist/commands/skills/search.d.ts.map +1 -0
  62. package/dist/commands/skills/search.js +21 -0
  63. package/dist/commands/skills/search.js.map +1 -0
  64. package/dist/commands/status.d.ts +2 -0
  65. package/dist/commands/status.d.ts.map +1 -0
  66. package/dist/commands/status.js +7 -0
  67. package/dist/commands/status.js.map +1 -0
  68. package/dist/commands/validate.d.ts +2 -0
  69. package/dist/commands/validate.d.ts.map +1 -0
  70. package/dist/commands/validate.js +73 -0
  71. package/dist/commands/validate.js.map +1 -0
  72. package/dist/commands/whoami.d.ts +2 -0
  73. package/dist/commands/whoami.d.ts.map +1 -0
  74. package/dist/commands/whoami.js +25 -0
  75. package/dist/commands/whoami.js.map +1 -0
  76. package/dist/config/loader.d.ts +16 -0
  77. package/dist/config/loader.d.ts.map +1 -0
  78. package/dist/config/loader.js +41 -0
  79. package/dist/config/loader.js.map +1 -0
  80. package/dist/config/schema.d.ts +279 -0
  81. package/dist/config/schema.d.ts.map +1 -0
  82. package/dist/config/schema.js +52 -0
  83. package/dist/config/schema.js.map +1 -0
  84. package/dist/config/transformer.d.ts +11 -0
  85. package/dist/config/transformer.d.ts.map +1 -0
  86. package/dist/config/transformer.js +49 -0
  87. package/dist/config/transformer.js.map +1 -0
  88. package/dist/index.d.ts +6 -0
  89. package/dist/index.d.ts.map +1 -0
  90. package/dist/index.js +183 -0
  91. package/dist/index.js.map +1 -0
  92. package/dist/mcp-servers.d.ts +11 -0
  93. package/dist/mcp-servers.d.ts.map +1 -0
  94. package/dist/mcp-servers.js +27 -0
  95. package/dist/mcp-servers.js.map +1 -0
  96. package/dist/mcp-servers.json +216 -0
  97. package/dist/templates/.env.tmpl +29 -0
  98. package/dist/templates/.gitignore.tmpl +32 -0
  99. package/dist/templates/AGENTS.md.tmpl +1 -0
  100. package/dist/templates/Dockerfile.worker.tmpl +29 -0
  101. package/dist/templates/README.md.tmpl +95 -0
  102. package/dist/templates/TESTING.md.tmpl +225 -0
  103. package/dist/templates/lobu.toml.tmpl +44 -0
  104. package/dist/types.d.ts +76 -0
  105. package/dist/types.d.ts.map +1 -0
  106. package/dist/types.js +2 -0
  107. package/dist/types.js.map +1 -0
  108. package/dist/utils/config.d.ts +2 -0
  109. package/dist/utils/config.d.ts.map +1 -0
  110. package/dist/utils/config.js +13 -0
  111. package/dist/utils/config.js.map +1 -0
  112. package/dist/utils/template.d.ts +2 -0
  113. package/dist/utils/template.d.ts.map +1 -0
  114. package/dist/utils/template.js +19 -0
  115. package/dist/utils/template.js.map +1 -0
  116. package/package.json +48 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare function launchCommand(cwd: string, options: {
2
+ dryRun?: boolean;
3
+ env?: string;
4
+ message?: string;
5
+ }): Promise<void>;
6
+ //# sourceMappingURL=launch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"AAIA,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5D,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -0,0 +1,32 @@
1
+ import chalk from "chalk";
2
+ import { isLoadError, loadConfig } from "../config/loader.js";
3
+ import { validateCommand } from "./validate.js";
4
+ export async function launchCommand(cwd, options) {
5
+ // Validate first
6
+ const valid = await validateCommand(cwd);
7
+ if (!valid) {
8
+ process.exit(1);
9
+ }
10
+ const result = await loadConfig(cwd);
11
+ if (isLoadError(result)) {
12
+ process.exit(1);
13
+ }
14
+ const { config } = result;
15
+ const skillCount = config.skills.enabled.length;
16
+ const mcpCount = config.skills.mcp
17
+ ? Object.keys(config.skills.mcp).length
18
+ : 0;
19
+ const totalSkills = skillCount + mcpCount;
20
+ console.log(chalk.dim(` Agent: ${config.agent.name} (${config.providers.length} providers, ${totalSkills} skills)`));
21
+ if (options.dryRun) {
22
+ console.log(chalk.dim("\n Dry run — no changes applied.\n"));
23
+ return;
24
+ }
25
+ console.log(chalk.bold.cyan("\n Lobu Cloud is in early access.\n"));
26
+ console.log(chalk.bold(" Get started:"));
27
+ console.log(` Schedule a call ${chalk.cyan("https://cal.com/burakemre/lobu")}`);
28
+ console.log(` Self-host now ${chalk.cyan("https://lobu.ai/docs/deployment")}`);
29
+ console.log(` REST API docs ${chalk.cyan("https://community.lobu.ai/api/docs")}`);
30
+ console.log(chalk.dim(`\n Run locally with: ${chalk.white("lobu dev")}\n`));
31
+ }
32
+ //# sourceMappingURL=launch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAW,EACX,OAA6D;IAE7D,iBAAiB;IACjB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAE1B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG;QAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM;QACvC,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IAE1C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,YAAY,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,eAAe,WAAW,UAAU,CAC9F,CACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC9D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CACT,0BAA0B,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,EAAE,CACzE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,0BAA0B,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,EAAE,CAC1E,CAAC;IACF,OAAO,CAAC,GAAG,CACT,0BAA0B,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,EAAE,CAC7E,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function loginCommand(options: {
2
+ token?: string;
3
+ }): Promise<void>;
4
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAMA,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BhB"}
@@ -0,0 +1,29 @@
1
+ import chalk from "chalk";
2
+ import open from "open";
3
+ import { loadCredentials } from "../api/credentials.js";
4
+ const LOGIN_URL = "https://community.lobu.ai/cli/login";
5
+ export async function loginCommand(options) {
6
+ if (options.token) {
7
+ // TODO: validate token against API and store
8
+ console.log(chalk.yellow("\n Token-based auth is not yet available. Lobu Cloud is in early access.\n"));
9
+ return;
10
+ }
11
+ const existing = await loadCredentials();
12
+ if (existing) {
13
+ console.log(chalk.dim(`\n Already logged in as ${existing.email ?? "user"}.`));
14
+ console.log(chalk.dim(" Run `lobu logout` first to switch accounts.\n"));
15
+ return;
16
+ }
17
+ console.log(chalk.bold.cyan("\n Lobu Cloud is in early access.\n"));
18
+ console.log(chalk.dim(" Opening browser to request access...\n"));
19
+ try {
20
+ await open(LOGIN_URL);
21
+ console.log(chalk.dim(` If the browser didn't open, visit:`));
22
+ console.log(chalk.cyan(` ${LOGIN_URL}\n`));
23
+ }
24
+ catch {
25
+ console.log(chalk.dim(` Open this URL in your browser:`));
26
+ console.log(chalk.cyan(` ${LOGIN_URL}\n`));
27
+ }
28
+ }
29
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,SAAS,GAAG,qCAAqC,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAElC;IACC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,6CAA6C;QAC7C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,6EAA6E,CAC9E,CACF,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;IACzC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,QAAQ,CAAC,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CACtD,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function logoutCommand(): Promise<void>;
2
+ //# sourceMappingURL=logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAGA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAGnD"}
@@ -0,0 +1,7 @@
1
+ import chalk from "chalk";
2
+ import { clearCredentials } from "../api/credentials.js";
3
+ export async function logoutCommand() {
4
+ await clearCredentials();
5
+ console.log(chalk.dim("\n Logged out.\n"));
6
+ }
7
+ //# sourceMappingURL=logout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,gBAAgB,EAAE,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function providersAddCommand(cwd: string, providerId: string): Promise<void>;
2
+ //# sourceMappingURL=add.d.ts.map
@@ -0,0 +1 @@
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,CA0Df"}
@@ -0,0 +1,51 @@
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import chalk from "chalk";
4
+ import { parse as parseToml, stringify as stringifyToml } from "smol-toml";
5
+ import { getSkillById, isProviderSkill, } from "../skills/registry.js";
6
+ import { CONFIG_FILENAME } from "../../config/loader.js";
7
+ export async function providersAddCommand(cwd, providerId) {
8
+ const skill = getSkillById(providerId);
9
+ if (!skill || !isProviderSkill(skill)) {
10
+ console.log(chalk.red(`\n Provider "${providerId}" not found.`));
11
+ console.log(chalk.dim(" Run `lobu providers list` to see available providers.\n"));
12
+ return;
13
+ }
14
+ const configPath = join(cwd, CONFIG_FILENAME);
15
+ let raw;
16
+ try {
17
+ raw = await readFile(configPath, "utf-8");
18
+ }
19
+ catch {
20
+ console.log(chalk.red(`\n No ${CONFIG_FILENAME} found. Run \`lobu init\` first.\n`));
21
+ return;
22
+ }
23
+ const parsed = parseToml(raw);
24
+ const providers = (parsed.providers ?? []);
25
+ // Check if already added
26
+ if (providers.some((p) => p.id === providerId)) {
27
+ console.log(chalk.yellow(`\n Provider "${providerId}" is already configured.\n`));
28
+ return;
29
+ }
30
+ const provider = skill.providers?.[0];
31
+ if (!provider)
32
+ return;
33
+ const defaultModel = provider.defaultModel;
34
+ const entry = { id: providerId };
35
+ if (defaultModel) {
36
+ entry.model = defaultModel;
37
+ }
38
+ providers.push(entry);
39
+ parsed.providers = providers;
40
+ await writeFile(configPath, stringifyToml(parsed));
41
+ console.log(chalk.green(`\n Added provider "${providerId}" to ${CONFIG_FILENAME}`));
42
+ if (defaultModel) {
43
+ console.log(chalk.dim(` Default model: ${defaultModel}`));
44
+ }
45
+ // Show required secret
46
+ const envVar = provider.envVarName;
47
+ console.log(chalk.dim("\n Set the API key:"));
48
+ console.log(chalk.cyan(` lobu secrets set ${envVar} <your-key>`));
49
+ console.log();
50
+ }
51
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/providers/add.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function providersListCommand(): Promise<void>;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/providers/list.ts"],"names":[],"mappings":"AAMA,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2B1D"}
@@ -0,0 +1,21 @@
1
+ import chalk from "chalk";
2
+ import { isProviderSkill, loadSkillsRegistry, } from "../skills/registry.js";
3
+ export async function providersListCommand() {
4
+ const skills = loadSkillsRegistry();
5
+ const providerSkills = skills.filter(isProviderSkill);
6
+ if (providerSkills.length === 0) {
7
+ console.log(chalk.yellow("\n No providers found in registry.\n"));
8
+ return;
9
+ }
10
+ console.log(chalk.bold("\n Available LLM Providers:\n"));
11
+ const maxIdLen = Math.max(...providerSkills.map((s) => s.id.length));
12
+ for (const skill of providerSkills) {
13
+ const p = skill.providers?.[0];
14
+ if (!p)
15
+ continue;
16
+ const model = p.defaultModel ? chalk.dim(` default: ${p.defaultModel}`) : "";
17
+ console.log(` ${chalk.cyan(skill.id.padEnd(maxIdLen))} ${p.displayName}${model}`);
18
+ }
19
+ console.log(chalk.dim("\n Use `lobu providers add <id>` to add a provider to lobu.toml.\n"));
20
+ }
21
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/providers/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EACf,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAEtD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACnE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAErE,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,KAAK,EAAE,CACvE,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,qEAAqE,CACtE,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Local .env file management for dev mode secrets.
3
+ * Cloud secrets will use the API when available.
4
+ */
5
+ export declare function secretsSetCommand(cwd: string, key: string, value: string): Promise<void>;
6
+ export declare function secretsListCommand(cwd: string): Promise<void>;
7
+ export declare function secretsDeleteCommand(cwd: string, key: string): Promise<void>;
8
+ //# sourceMappingURL=secrets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/commands/secrets.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDnE;AAED,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAuBf"}
@@ -0,0 +1,98 @@
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import chalk from "chalk";
4
+ /**
5
+ * Local .env file management for dev mode secrets.
6
+ * Cloud secrets will use the API when available.
7
+ */
8
+ export async function secretsSetCommand(cwd, key, value) {
9
+ const envPath = join(cwd, ".env");
10
+ let content = "";
11
+ try {
12
+ content = await readFile(envPath, "utf-8");
13
+ }
14
+ catch {
15
+ // No .env yet
16
+ }
17
+ const lines = content.split("\n");
18
+ let found = false;
19
+ const updated = lines.map((line) => {
20
+ const trimmed = line.trim();
21
+ if (trimmed.startsWith(`${key}=`)) {
22
+ found = true;
23
+ return `${key}=${value}`;
24
+ }
25
+ return line;
26
+ });
27
+ if (!found) {
28
+ updated.push(`${key}=${value}`);
29
+ }
30
+ await writeFile(envPath, updated.join("\n"));
31
+ console.log(chalk.green(`\n Set ${key} in .env\n`));
32
+ }
33
+ export async function secretsListCommand(cwd) {
34
+ const envPath = join(cwd, ".env");
35
+ let content = "";
36
+ try {
37
+ content = await readFile(envPath, "utf-8");
38
+ }
39
+ catch {
40
+ console.log(chalk.dim("\n No .env file found.\n"));
41
+ return;
42
+ }
43
+ const secrets = [];
44
+ for (const line of content.split("\n")) {
45
+ const trimmed = line.trim();
46
+ if (!trimmed || trimmed.startsWith("#"))
47
+ continue;
48
+ const eqIdx = trimmed.indexOf("=");
49
+ if (eqIdx === -1)
50
+ continue;
51
+ const key = trimmed.slice(0, eqIdx);
52
+ const value = trimmed.slice(eqIdx + 1);
53
+ // Redact values that look like secrets
54
+ const isSecret = key.includes("KEY") ||
55
+ key.includes("SECRET") ||
56
+ key.includes("TOKEN") ||
57
+ key.includes("PASSWORD");
58
+ const preview = isSecret
59
+ ? value.length > 4
60
+ ? `${value.slice(0, 4)}${"*".repeat(Math.min(value.length - 4, 20))}`
61
+ : "****"
62
+ : value;
63
+ secrets.push({ key, preview });
64
+ }
65
+ if (secrets.length === 0) {
66
+ console.log(chalk.dim("\n No secrets found in .env\n"));
67
+ return;
68
+ }
69
+ console.log(chalk.bold("\n Secrets (.env):"));
70
+ const maxKeyLen = Math.max(...secrets.map((s) => s.key.length));
71
+ for (const { key, preview } of secrets) {
72
+ console.log(` ${chalk.cyan(key.padEnd(maxKeyLen))} ${chalk.dim(preview)}`);
73
+ }
74
+ console.log();
75
+ }
76
+ export async function secretsDeleteCommand(cwd, key) {
77
+ const envPath = join(cwd, ".env");
78
+ let content = "";
79
+ try {
80
+ content = await readFile(envPath, "utf-8");
81
+ }
82
+ catch {
83
+ console.log(chalk.dim("\n No .env file found.\n"));
84
+ return;
85
+ }
86
+ const lines = content.split("\n");
87
+ const filtered = lines.filter((line) => {
88
+ const trimmed = line.trim();
89
+ return !trimmed.startsWith(`${key}=`);
90
+ });
91
+ if (lines.length === filtered.length) {
92
+ console.log(chalk.yellow(`\n Key "${key}" not found in .env\n`));
93
+ return;
94
+ }
95
+ await writeFile(envPath, filtered.join("\n"));
96
+ console.log(chalk.green(`\n Removed ${key} from .env\n`));
97
+ }
98
+ //# sourceMappingURL=secrets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/commands/secrets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function skillsAddCommand(cwd: string, skillId: string): Promise<void>;
2
+ //# sourceMappingURL=add.d.ts.map
@@ -0,0 +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,CA4Cf"}
@@ -0,0 +1,47 @@
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import chalk from "chalk";
4
+ import { parse as parseToml, stringify as stringifyToml } from "smol-toml";
5
+ import { getSkillById } from "./registry.js";
6
+ import { CONFIG_FILENAME } from "../../config/loader.js";
7
+ export async function skillsAddCommand(cwd, skillId) {
8
+ const skill = getSkillById(skillId);
9
+ if (!skill) {
10
+ console.log(chalk.red(`\n Skill "${skillId}" not found.`));
11
+ console.log(chalk.dim(" Run `lobu skills list` to see available skills.\n"));
12
+ return;
13
+ }
14
+ const configPath = join(cwd, CONFIG_FILENAME);
15
+ let raw;
16
+ try {
17
+ raw = await readFile(configPath, "utf-8");
18
+ }
19
+ catch {
20
+ console.log(chalk.red(`\n No ${CONFIG_FILENAME} found. Run \`lobu init\` first.\n`));
21
+ return;
22
+ }
23
+ const parsed = parseToml(raw);
24
+ const skills = (parsed.skills ?? {});
25
+ const enabled = (skills.enabled ?? []);
26
+ if (enabled.includes(skillId)) {
27
+ console.log(chalk.yellow(`\n Skill "${skillId}" is already enabled.\n`));
28
+ return;
29
+ }
30
+ enabled.push(skillId);
31
+ skills.enabled = enabled;
32
+ parsed.skills = skills;
33
+ await writeFile(configPath, stringifyToml(parsed));
34
+ console.log(chalk.green(`\n Added "${skillId}" to ${CONFIG_FILENAME}`));
35
+ // Show required secrets if provider
36
+ if (skill.providers) {
37
+ const envVars = skill.providers.map((p) => p.envVarName);
38
+ if (envVars.length > 0) {
39
+ console.log(chalk.dim("\n Required secrets:"));
40
+ for (const v of envVars) {
41
+ console.log(chalk.cyan(` lobu secrets set ${v} <your-key>`));
42
+ }
43
+ }
44
+ }
45
+ console.log();
46
+ }
47
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/skills/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,OAAe;IAEf,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,OAAO,cAAc,CAAC,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAC9C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,eAAe,oCAAoC,CAAC,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAA4B,CAAC;IACzD,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC;IAChE,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAa,CAAC;IAEnD,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,OAAO,yBAAyB,CAAC,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IAEvB,MAAM,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,OAAO,QAAQ,eAAe,EAAE,CAAC,CAAC,CAAC;IAEzE,oCAAoC;IACpC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function skillsInfoCommand(skillId: string): Promise<void>;
2
+ //# sourceMappingURL=info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/info.ts"],"names":[],"mappings":"AAGA,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDtE"}
@@ -0,0 +1,45 @@
1
+ import chalk from "chalk";
2
+ import { getSkillById, isProviderSkill } from "./registry.js";
3
+ export async function skillsInfoCommand(skillId) {
4
+ const skill = getSkillById(skillId);
5
+ if (!skill) {
6
+ console.log(chalk.red(`\n Skill "${skillId}" not found.`));
7
+ console.log(chalk.dim(" Run `lobu skills list` to see available skills.\n"));
8
+ return;
9
+ }
10
+ console.log(chalk.bold(`\n ${skill.name}`));
11
+ console.log(chalk.dim(` ${skill.description}`));
12
+ console.log(chalk.dim(` ID: ${skill.id}`));
13
+ if (isProviderSkill(skill) && skill.providers) {
14
+ console.log(chalk.bold("\n Provider Details:"));
15
+ for (const p of skill.providers) {
16
+ console.log(chalk.dim(` Name: ${p.displayName}`));
17
+ console.log(chalk.dim(` Env var: ${p.envVarName}`));
18
+ console.log(chalk.dim(` Base URL: ${p.upstreamBaseUrl}`));
19
+ if (p.defaultModel) {
20
+ console.log(chalk.dim(` Default model: ${p.defaultModel}`));
21
+ }
22
+ }
23
+ console.log(chalk.bold("\n Required secrets:"));
24
+ for (const p of skill.providers) {
25
+ console.log(chalk.cyan(` ${p.envVarName}`));
26
+ }
27
+ }
28
+ if (skill.integrations) {
29
+ console.log(chalk.bold("\n Integrations:"));
30
+ for (const integ of skill.integrations) {
31
+ console.log(chalk.dim(` ${integ.label ?? integ.id} (${integ.authType ?? "unknown"})`));
32
+ if (integ.apiDomains) {
33
+ console.log(chalk.dim(` Domains: ${integ.apiDomains.join(", ")}`));
34
+ }
35
+ }
36
+ }
37
+ if (skill.mcpServers) {
38
+ console.log(chalk.bold("\n MCP Servers:"));
39
+ for (const mcp of skill.mcpServers) {
40
+ console.log(chalk.dim(` ${mcp.name ?? mcp.id}: ${mcp.url ?? mcp.type ?? "stdio"}`));
41
+ }
42
+ }
43
+ console.log();
44
+ }
45
+ //# sourceMappingURL=info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/commands/skills/info.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function skillsListCommand(): Promise<void>;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/list.ts"],"names":[],"mappings":"AAGA,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqCvD"}
@@ -0,0 +1,30 @@
1
+ import chalk from "chalk";
2
+ import { isProviderSkill, loadSkillsRegistry } from "./registry.js";
3
+ export async function skillsListCommand() {
4
+ const skills = loadSkillsRegistry();
5
+ if (skills.length === 0) {
6
+ console.log(chalk.yellow("\n No skills found in registry.\n"));
7
+ return;
8
+ }
9
+ // Separate integrations from providers
10
+ const integrations = skills.filter((s) => !isProviderSkill(s));
11
+ const providers = skills.filter(isProviderSkill);
12
+ if (integrations.length > 0) {
13
+ console.log(chalk.bold("\n Integrations:\n"));
14
+ const maxIdLen = Math.max(...integrations.map((s) => s.id.length));
15
+ for (const skill of integrations) {
16
+ console.log(` ${chalk.cyan(skill.id.padEnd(maxIdLen))} ${chalk.dim(skill.description)}`);
17
+ }
18
+ }
19
+ if (providers.length > 0) {
20
+ console.log(chalk.bold("\n LLM Providers:\n"));
21
+ const maxIdLen = Math.max(...providers.map((s) => s.id.length));
22
+ for (const skill of providers) {
23
+ const defaultModel = skill.providers?.[0]?.defaultModel;
24
+ const modelHint = defaultModel ? chalk.dim(` (${defaultModel})`) : "";
25
+ console.log(` ${chalk.cyan(skill.id.padEnd(maxIdLen))} ${chalk.dim(skill.description)}${modelHint}`);
26
+ }
27
+ }
28
+ console.log(chalk.dim("\n Use `lobu skills info <id>` for details on a specific skill.\n"));
29
+ }
30
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/skills/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEpE,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IAEpC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IAED,uCAAuC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAEjD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAC9E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC;YACxD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,SAAS,EAAE,CAC1F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAChF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,34 @@
1
+ export interface RegistrySkill {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ integrations?: Array<{
6
+ id: string;
7
+ label?: string;
8
+ authType?: string;
9
+ scopesConfig?: {
10
+ default: string[];
11
+ available: string[];
12
+ };
13
+ apiDomains?: string[];
14
+ }>;
15
+ mcpServers?: Array<{
16
+ id: string;
17
+ name?: string;
18
+ url?: string;
19
+ type?: string;
20
+ }>;
21
+ providers?: Array<{
22
+ displayName: string;
23
+ envVarName: string;
24
+ upstreamBaseUrl: string;
25
+ defaultModel?: string;
26
+ apiKeyInstructions?: string;
27
+ modelsEndpoint?: string;
28
+ }>;
29
+ }
30
+ export declare function loadSkillsRegistry(): RegistrySkill[];
31
+ export declare function getSkillById(id: string): RegistrySkill | undefined;
32
+ export declare function isProviderSkill(skill: RegistrySkill): boolean;
33
+ export declare function isIntegrationSkill(skill: RegistrySkill): boolean;
34
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/registry.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE;YAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAAC,SAAS,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;QAC1D,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;CACJ;AAID,wBAAgB,kBAAkB,IAAI,aAAa,EAAE,CAmCpD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAElE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAE7D;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEhE"}