@commandable/mcp 0.1.3 → 0.2.1
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/{dist/app → .output}/nitro.json +1 -1
- package/{dist/app/public/_nuxt/-tOYwuj2.js → .output/public/_nuxt/B04gGCnx.js} +3 -3
- package/{dist/app/public/_nuxt/D-43HurL.js → .output/public/_nuxt/B2dAlp_u.js} +8 -8
- package/.output/public/_nuxt/Ba0BY0O0.js +1 -0
- package/.output/public/_nuxt/BvFUCPqA.js +1 -0
- package/{dist/app/public/_nuxt/BdctKXor.js → .output/public/_nuxt/Dm_hd4at.js} +1 -1
- package/{dist/app/public/_nuxt/BlP7Uu-5.js → .output/public/_nuxt/S2P9sd4n.js} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -0
- package/.output/public/_nuxt/builds/meta/87720575-dfd4-475f-92c1-554fcd8b22f1.json +1 -0
- package/{dist/app/public/_nuxt/CsbkV5Bd.js → .output/public/_nuxt/d2XTSFt9.js} +1 -1
- package/{dist/app/server/chunks/build/_id_-DBwSV4AY.mjs → .output/server/chunks/build/_id_-Bnxenh08.mjs} +7 -7
- package/{dist/app/server/chunks/build/_id_-DBwSV4AY.mjs.map → .output/server/chunks/build/_id_-Bnxenh08.mjs.map} +1 -1
- package/{dist/app → .output}/server/chunks/build/client.precomputed.mjs +1 -1
- package/{dist/app/server/chunks/build/fetch-ZbqIFhDG.mjs → .output/server/chunks/build/fetch-BmYZnj75.mjs} +58 -6
- package/.output/server/chunks/build/fetch-BmYZnj75.mjs.map +1 -0
- package/{dist/app/server/chunks/build/index-C8flTcKI.mjs → .output/server/chunks/build/index-CL-Gkd-Y.mjs} +4 -4
- package/.output/server/chunks/build/index-CL-Gkd-Y.mjs.map +1 -0
- package/{dist/app → .output}/server/chunks/build/server.mjs +3 -3
- package/{dist/app → .output}/server/chunks/nitro/nitro.mjs +419 -206
- package/.output/server/chunks/nitro/nitro.mjs.map +1 -0
- package/{dist/app → .output}/server/chunks/routes/api/index.get.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/index.post.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials-config.get.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials-status.get.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials.delete.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials.post.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/permissions.post.mjs +1 -1
- package/.output/server/chunks/routes/api/integrations/_id/tools.delete.mjs +51 -0
- package/.output/server/chunks/routes/api/integrations/_id/tools.delete.mjs.map +1 -0
- package/.output/server/chunks/routes/api/integrations/_id/tools.get.mjs +57 -0
- package/.output/server/chunks/routes/api/integrations/_id/tools.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/integrations/_id/toolsets.get.mjs +53 -0
- package/.output/server/chunks/routes/api/integrations/_id/toolsets.get.mjs.map +1 -0
- package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/toolsets.post.mjs +1 -1
- package/.output/server/chunks/routes/api/integrations/_id_.delete.mjs +55 -0
- package/.output/server/chunks/routes/api/integrations/_id_.delete.mjs.map +1 -0
- package/{dist/app → .output}/server/chunks/routes/mcp/create.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/mcp.mjs +1 -1
- package/{dist/app → .output}/server/chunks/routes/renderer.mjs +1 -1
- package/{dist/app → .output}/server/index.mjs +1 -1
- package/{dist/app → .output}/server/package.json +2 -2
- package/LICENSE +17 -6
- package/README.md +32 -32
- package/bin/cli.mjs +552 -0
- package/bin/commandable-mcp.mjs +8 -0
- package/package.json +30 -40
- package/dist/app/public/_nuxt/DU1mG77A.js +0 -1
- package/dist/app/public/_nuxt/builds/latest.json +0 -1
- package/dist/app/public/_nuxt/builds/meta/669e3b7a-802b-4f02-b218-3c758cac3ab7.json +0 -1
- package/dist/app/public/_nuxt/uS7FY2am.js +0 -1
- package/dist/app/server/chunks/build/fetch-ZbqIFhDG.mjs.map +0 -1
- package/dist/app/server/chunks/build/index-C8flTcKI.mjs.map +0 -1
- package/dist/app/server/chunks/nitro/nitro.mjs.map +0 -1
- package/dist/app/server/chunks/routes/api/integrations/_id_.delete.mjs +0 -44
- package/dist/app/server/chunks/routes/api/integrations/_id_.delete.mjs.map +0 -1
- package/dist/app/server/migrations/pg/0000_initial.sql +0 -74
- package/dist/app/server/migrations/pg/meta/_journal.json +0 -13
- package/dist/app/server/migrations/sqlite/0000_initial.sql +0 -74
- package/dist/app/server/migrations/sqlite/meta/_journal.json +0 -13
- package/dist/cli/bin.d.ts +0 -3
- package/dist/cli/bin.d.ts.map +0 -1
- package/dist/cli/bin.js +0 -7
- package/dist/cli/bin.js.map +0 -1
- package/dist/cli/credentialManager.d.ts +0 -19
- package/dist/cli/credentialManager.d.ts.map +0 -1
- package/dist/cli/credentialManager.js +0 -82
- package/dist/cli/credentialManager.js.map +0 -1
- package/dist/cli/index.d.ts +0 -17
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -832
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/setup.d.ts +0 -3
- package/dist/cli/setup.d.ts.map +0 -1
- package/dist/cli/setup.js +0 -353
- package/dist/cli/setup.js.map +0 -1
- package/dist/config/configApply.d.ts +0 -16
- package/dist/config/configApply.d.ts.map +0 -1
- package/dist/config/configApply.js +0 -77
- package/dist/config/configApply.js.map +0 -1
- package/dist/config/configLoader.d.ts +0 -9
- package/dist/config/configLoader.d.ts.map +0 -1
- package/dist/config/configLoader.js +0 -75
- package/dist/config/configLoader.js.map +0 -1
- package/dist/config/configSchema.d.ts +0 -45
- package/dist/config/configSchema.d.ts.map +0 -1
- package/dist/config/configSchema.js +0 -23
- package/dist/config/configSchema.js.map +0 -1
- package/dist/crypto/encryption.d.ts +0 -3
- package/dist/crypto/encryption.d.ts.map +0 -1
- package/dist/crypto/encryption.js +0 -29
- package/dist/crypto/encryption.js.map +0 -1
- package/dist/db/client.d.ts +0 -24
- package/dist/db/client.d.ts.map +0 -1
- package/dist/db/client.js +0 -50
- package/dist/db/client.js.map +0 -1
- package/dist/db/credentialStore.d.ts +0 -15
- package/dist/db/credentialStore.d.ts.map +0 -1
- package/dist/db/credentialStore.js +0 -56
- package/dist/db/credentialStore.js.map +0 -1
- package/dist/db/integrationStore.d.ts +0 -12
- package/dist/db/integrationStore.d.ts.map +0 -1
- package/dist/db/integrationStore.js +0 -111
- package/dist/db/integrationStore.js.map +0 -1
- package/dist/db/integrationTypeConfigStore.d.ts +0 -6
- package/dist/db/integrationTypeConfigStore.d.ts.map +0 -1
- package/dist/db/integrationTypeConfigStore.js +0 -94
- package/dist/db/integrationTypeConfigStore.js.map +0 -1
- package/dist/db/migrate.d.ts +0 -3
- package/dist/db/migrate.d.ts.map +0 -1
- package/dist/db/migrate.js +0 -11
- package/dist/db/migrate.js.map +0 -1
- package/dist/db/migrations/pg/0000_initial.sql +0 -74
- package/dist/db/migrations/pg/meta/_journal.json +0 -13
- package/dist/db/migrations/sqlite/0000_initial.sql +0 -74
- package/dist/db/migrations/sqlite/meta/_journal.json +0 -13
- package/dist/db/schema.d.ts +0 -1863
- package/dist/db/schema.d.ts.map +0 -1
- package/dist/db/schema.js +0 -133
- package/dist/db/schema.js.map +0 -1
- package/dist/db/toolDefinitionStore.d.ts +0 -6
- package/dist/db/toolDefinitionStore.d.ts.map +0 -1
- package/dist/db/toolDefinitionStore.js +0 -95
- package/dist/db/toolDefinitionStore.js.map +0 -1
- package/dist/errors/httpError.d.ts +0 -6
- package/dist/errors/httpError.d.ts.map +0 -1
- package/dist/errors/httpError.js +0 -11
- package/dist/errors/httpError.js.map +0 -1
- package/dist/index.d.ts +0 -32
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -32
- package/dist/index.js.map +0 -1
- package/dist/integrations/actionsFactory.d.ts +0 -16
- package/dist/integrations/actionsFactory.d.ts.map +0 -1
- package/dist/integrations/actionsFactory.js +0 -98
- package/dist/integrations/actionsFactory.js.map +0 -1
- package/dist/integrations/catalog.d.ts +0 -8
- package/dist/integrations/catalog.d.ts.map +0 -1
- package/dist/integrations/catalog.js +0 -45
- package/dist/integrations/catalog.js.map +0 -1
- package/dist/integrations/customToolFactory.d.ts +0 -13
- package/dist/integrations/customToolFactory.d.ts.map +0 -1
- package/dist/integrations/customToolFactory.js +0 -31
- package/dist/integrations/customToolFactory.js.map +0 -1
- package/dist/integrations/dataLoader.d.ts +0 -3
- package/dist/integrations/dataLoader.d.ts.map +0 -1
- package/dist/integrations/dataLoader.js +0 -2
- package/dist/integrations/dataLoader.js.map +0 -1
- package/dist/integrations/fileIntegrationTypeConfigStore.d.ts +0 -7
- package/dist/integrations/fileIntegrationTypeConfigStore.d.ts.map +0 -1
- package/dist/integrations/fileIntegrationTypeConfigStore.js +0 -34
- package/dist/integrations/fileIntegrationTypeConfigStore.js.map +0 -1
- package/dist/integrations/getIntegration.d.ts +0 -14
- package/dist/integrations/getIntegration.d.ts.map +0 -1
- package/dist/integrations/getIntegration.js +0 -30
- package/dist/integrations/getIntegration.js.map +0 -1
- package/dist/integrations/googleServiceAccount.d.ts +0 -6
- package/dist/integrations/googleServiceAccount.d.ts.map +0 -1
- package/dist/integrations/googleServiceAccount.js +0 -54
- package/dist/integrations/googleServiceAccount.js.map +0 -1
- package/dist/integrations/health.d.ts +0 -20
- package/dist/integrations/health.d.ts.map +0 -1
- package/dist/integrations/health.js +0 -43
- package/dist/integrations/health.js.map +0 -1
- package/dist/integrations/integrationTypeConfigLookup.d.ts +0 -12
- package/dist/integrations/integrationTypeConfigLookup.d.ts.map +0 -1
- package/dist/integrations/integrationTypeConfigLookup.js +0 -11
- package/dist/integrations/integrationTypeConfigLookup.js.map +0 -1
- package/dist/integrations/providerRegistry.d.ts +0 -2
- package/dist/integrations/providerRegistry.d.ts.map +0 -1
- package/dist/integrations/providerRegistry.js +0 -72
- package/dist/integrations/providerRegistry.js.map +0 -1
- package/dist/integrations/proxy.d.ts +0 -19
- package/dist/integrations/proxy.d.ts.map +0 -1
- package/dist/integrations/proxy.js +0 -377
- package/dist/integrations/proxy.js.map +0 -1
- package/dist/integrations/sandbox.d.ts +0 -8
- package/dist/integrations/sandbox.d.ts.map +0 -1
- package/dist/integrations/sandbox.js +0 -221
- package/dist/integrations/sandbox.js.map +0 -1
- package/dist/integrations/sandboxUtils.d.ts +0 -15
- package/dist/integrations/sandboxUtils.d.ts.map +0 -1
- package/dist/integrations/sandboxUtils.js +0 -489
- package/dist/integrations/sandboxUtils.js.map +0 -1
- package/dist/integrations/tools.d.ts +0 -3
- package/dist/integrations/tools.d.ts.map +0 -1
- package/dist/integrations/tools.js +0 -70
- package/dist/integrations/tools.js.map +0 -1
- package/dist/mcp/abilityCatalog.d.ts +0 -46
- package/dist/mcp/abilityCatalog.d.ts.map +0 -1
- package/dist/mcp/abilityCatalog.js +0 -275
- package/dist/mcp/abilityCatalog.js.map +0 -1
- package/dist/mcp/auth.d.ts +0 -18
- package/dist/mcp/auth.d.ts.map +0 -1
- package/dist/mcp/auth.js +0 -45
- package/dist/mcp/auth.js.map +0 -1
- package/dist/mcp/builder_guide.md +0 -441
- package/dist/mcp/commandable_readme.md +0 -29
- package/dist/mcp/handlers.d.ts +0 -21
- package/dist/mcp/handlers.d.ts.map +0 -1
- package/dist/mcp/handlers.js +0 -86
- package/dist/mcp/handlers.js.map +0 -1
- package/dist/mcp/metaTools.d.ts +0 -77
- package/dist/mcp/metaTools.d.ts.map +0 -1
- package/dist/mcp/metaTools.js +0 -753
- package/dist/mcp/metaTools.js.map +0 -1
- package/dist/mcp/server.d.ts +0 -25
- package/dist/mcp/server.d.ts.map +0 -1
- package/dist/mcp/server.js +0 -14
- package/dist/mcp/server.js.map +0 -1
- package/dist/mcp/sessionState.d.ts +0 -18
- package/dist/mcp/sessionState.d.ts.map +0 -1
- package/dist/mcp/sessionState.js +0 -65
- package/dist/mcp/sessionState.js.map +0 -1
- package/dist/mcp/toolAdapter.d.ts +0 -34
- package/dist/mcp/toolAdapter.d.ts.map +0 -1
- package/dist/mcp/toolAdapter.js +0 -24
- package/dist/mcp/toolAdapter.js.map +0 -1
- package/dist/types.d.ts +0 -92
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/dist/version.d.ts +0 -2
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -7
- package/dist/version.js.map +0 -1
- /package/{dist/app → .output}/public/_fonts/57NSSoFy1VLVs2gqly8Ls9awBnZMFyXGrefpmqvdqmc-zJfbBtpgM4cDmcXBsqZNW79_kFnlpPd62b48glgdydA.woff2 +0 -0
- /package/{dist/app → .output}/public/_fonts/8VR2wSMN-3U4NbWAVYXlkRV6hA0jFBXP-0RtL3X7fko-x2gYI4qfmkRdxyQQUPaBZdZdgl1TeVrquF_TxHeM4lM.woff2 +0 -0
- /package/{dist/app → .output}/public/_fonts/GsKUclqeNLJ96g5AU593ug6yanivOiwjW_7zESNPChw-jHA4tBeM1bjF7LATGUpfBuSTyomIFrWBTzjF7txVYfg.woff2 +0 -0
- /package/{dist/app → .output}/public/_fonts/Ld1FnTo3yTIwDyGfTQ5-Fws9AWsCbKfMvgxduXr7JcY-W25bL8NF1fjpLRSOgJb7RoZPHqGQNwMTM7S9tHVoxx8.woff2 +0 -0
- /package/{dist/app → .output}/public/_fonts/NdzqRASp2bovDUhQT1IRE_EMqKJ2KYQdTCfFcBvL8yw-KhwZiS86o3fErOe5GGMExHUemmI_dBfaEFxjISZrBd0.woff2 +0 -0
- /package/{dist/app → .output}/public/_fonts/iTkrULNFJJkTvihIg1Vqi5IODRH_9btXCioVF5l98I8-AndUyau2HR2felA_ra8V2mutQgschhasE5FD1dXGJX8.woff2 +0 -0
- /package/{dist/app → .output}/public/_nuxt/_id_.BKAjWkoP.css +0 -0
- /package/{dist/app → .output}/public/_nuxt/entry.Y3mA4bzA.css +0 -0
- /package/{dist/app → .output}/public/_nuxt/error-404.C7fg894-.css +0 -0
- /package/{dist/app → .output}/public/_nuxt/error-500.DjUK_N2Y.css +0 -0
- /package/{dist/app → .output}/public/favicon.ico +0 -0
- /package/{dist/app → .output}/server/chunks/_/error-500.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/_/error-500.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/_/icons.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/_/icons.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/_/icons2.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/_/icons2.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/IntegrationCredentials-styles.CULcCK6_.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/IntegrationCredentials-styles.CULcCK6_.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/client.precomputed.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-404-D2QibUBT.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-404-D2QibUBT.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-404-styles.Bvxdxqjk.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-404-styles.Bvxdxqjk.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-500-DYvawybF.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-500-DYvawybF.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-500-styles.BnYAAXSg.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/error-500-styles.BnYAAXSg.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/index-5H-nmhph.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/index-5H-nmhph.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/server.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/build/styles.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/build/styles.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/_commandable/status.get.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/_commandable/status.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog/_type/tools.get.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog/_type/tools.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog/_type/toolsets.get.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog/_type/toolsets.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog.get.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/catalog.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/index.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/index.post.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials-config.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials-status.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials.delete.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/credentials.post.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/permissions.post.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/api/integrations/_id/toolsets.post.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/health.get.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/routes/health.get.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/mcp/create.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/mcp.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/routes/renderer.mjs.map +0 -0
- /package/{dist/app → .output}/server/chunks/virtual/_virtual_spa-template.mjs +0 -0
- /package/{dist/app → .output}/server/chunks/virtual/_virtual_spa-template.mjs.map +0 -0
- /package/{dist/app → .output}/server/index.mjs.map +0 -0
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
-
import { resolve } from 'node:path';
|
|
3
|
-
import { cwd } from 'node:process';
|
|
4
|
-
import YAML from 'js-yaml';
|
|
5
|
-
import { CommandableConfigSchema } from './configSchema.js';
|
|
6
|
-
export class ConfigError extends Error {
|
|
7
|
-
name = 'ConfigError';
|
|
8
|
-
}
|
|
9
|
-
function parseConfigFile(raw, filePath) {
|
|
10
|
-
if (filePath.endsWith('.json')) {
|
|
11
|
-
try {
|
|
12
|
-
return JSON.parse(raw);
|
|
13
|
-
}
|
|
14
|
-
catch (err) {
|
|
15
|
-
throw new ConfigError(`Invalid JSON in config file: ${filePath}${err?.message ? ` (${err.message})` : ''}`);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
try {
|
|
19
|
-
return YAML.load(raw);
|
|
20
|
-
}
|
|
21
|
-
catch (err) {
|
|
22
|
-
throw new ConfigError(`Invalid YAML in config file: ${filePath}${err?.message ? ` (${err.message})` : ''}`);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
function resolveEnvRefs(value, filePath) {
|
|
26
|
-
if (typeof value === 'string') {
|
|
27
|
-
return value.replace(/\$\{([A-Z0-9_]+)\}/g, (_m, name) => {
|
|
28
|
-
const v = process.env[name];
|
|
29
|
-
if (v == null || v === '')
|
|
30
|
-
throw new ConfigError(`Missing environment variable ${name} referenced in ${filePath}`);
|
|
31
|
-
return v;
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
if (Array.isArray(value))
|
|
35
|
-
return value.map(v => resolveEnvRefs(v, filePath));
|
|
36
|
-
if (value && typeof value === 'object') {
|
|
37
|
-
const out = {};
|
|
38
|
-
for (const [k, v] of Object.entries(value))
|
|
39
|
-
out[k] = resolveEnvRefs(v, filePath);
|
|
40
|
-
return out;
|
|
41
|
-
}
|
|
42
|
-
return value;
|
|
43
|
-
}
|
|
44
|
-
function findConfigPath() {
|
|
45
|
-
const explicit = process.env.COMMANDABLE_CONFIG_FILE;
|
|
46
|
-
if (explicit && explicit.trim().length)
|
|
47
|
-
return resolve(explicit.trim());
|
|
48
|
-
const base = resolve(cwd());
|
|
49
|
-
const candidates = [
|
|
50
|
-
'commandable.config.yaml',
|
|
51
|
-
'commandable.config.yml',
|
|
52
|
-
'commandable.config.json',
|
|
53
|
-
].map(f => resolve(base, f));
|
|
54
|
-
for (const p of candidates) {
|
|
55
|
-
if (existsSync(p))
|
|
56
|
-
return p;
|
|
57
|
-
}
|
|
58
|
-
return null;
|
|
59
|
-
}
|
|
60
|
-
export function loadConfig(configPath) {
|
|
61
|
-
const path = configPath?.trim().length ? resolve(configPath) : findConfigPath();
|
|
62
|
-
if (!path)
|
|
63
|
-
throw new ConfigError('No config file found. Provide --config <path> or set COMMANDABLE_CONFIG_FILE.');
|
|
64
|
-
if (!existsSync(path))
|
|
65
|
-
throw new ConfigError(`Config file not found: ${path}`);
|
|
66
|
-
const raw = readFileSync(path, 'utf8');
|
|
67
|
-
const parsed = parseConfigFile(raw, path);
|
|
68
|
-
const resolved = resolveEnvRefs(parsed, path);
|
|
69
|
-
const result = CommandableConfigSchema.safeParse(resolved);
|
|
70
|
-
if (!result.success) {
|
|
71
|
-
throw new ConfigError(`Invalid config file: ${path}\n${result.error.toString()}`);
|
|
72
|
-
}
|
|
73
|
-
return { path, config: result.data };
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=configLoader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configLoader.js","sourceRoot":"","sources":["../../src/config/configLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAClC,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,uBAAuB,EAA0B,MAAM,mBAAmB,CAAA;AAEnF,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,GAAG,aAAa,CAAA;CAC9B;AAED,SAAS,eAAe,CAAC,GAAW,EAAE,QAAgB;IACpD,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,GAAQ,EAAE,CAAC;YAChB,MAAM,IAAI,WAAW,CAAC,gCAAgC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC7G,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,OAAO,GAAQ,EAAE,CAAC;QAChB,MAAM,IAAI,WAAW,CAAC,gCAAgC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC7G,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAU,EAAE,QAAgB;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,EAAE,EAAE,IAAY,EAAE,EAAE;YAC/D,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;gBACvB,MAAM,IAAI,WAAW,CAAC,gCAAgC,IAAI,kBAAkB,QAAQ,EAAE,CAAC,CAAA;YACzF,OAAO,CAAC,CAAA;QACV,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;IACpD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,GAAG,GAAQ,EAAE,CAAA;QACnB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YACxC,GAAG,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;QACtC,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,cAAc;IACrB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAA;IACpD,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM;QACpC,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAEjC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAC3B,MAAM,UAAU,GAAG;QACjB,yBAAyB;QACzB,wBAAwB;QACxB,yBAAyB;KAC1B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAE5B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC,CAAC,CAAC;YACf,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,UAAmB;IAC5C,MAAM,IAAI,GAAG,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAA;IAC/E,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,WAAW,CAAC,+EAA+E,CAAC,CAAA;IAExG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,MAAM,IAAI,WAAW,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAA;IAEzD,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACzC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAE7C,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,WAAW,CAAC,wBAAwB,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IACnF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;AACtC,CAAC"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const IntegrationConfigSchema: z.ZodObject<{
|
|
3
|
-
id: z.ZodOptional<z.ZodString>;
|
|
4
|
-
type: z.ZodString;
|
|
5
|
-
label: z.ZodOptional<z.ZodString>;
|
|
6
|
-
referenceId: z.ZodOptional<z.ZodString>;
|
|
7
|
-
spaceId: z.ZodOptional<z.ZodString>;
|
|
8
|
-
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
9
|
-
credentialId: z.ZodOptional<z.ZodString>;
|
|
10
|
-
credentialVariant: z.ZodOptional<z.ZodString>;
|
|
11
|
-
toolsets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
12
|
-
maxScope: z.ZodOptional<z.ZodEnum<{
|
|
13
|
-
read: "read";
|
|
14
|
-
write: "write";
|
|
15
|
-
}>>;
|
|
16
|
-
disabledTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
17
|
-
credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
18
|
-
}, z.core.$strip>;
|
|
19
|
-
export declare const CommandableConfigSchema: z.ZodObject<{
|
|
20
|
-
spaceId: z.ZodOptional<z.ZodString>;
|
|
21
|
-
mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
22
|
-
static: "static";
|
|
23
|
-
create: "create";
|
|
24
|
-
}>>>;
|
|
25
|
-
integrations: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
26
|
-
id: z.ZodOptional<z.ZodString>;
|
|
27
|
-
type: z.ZodString;
|
|
28
|
-
label: z.ZodOptional<z.ZodString>;
|
|
29
|
-
referenceId: z.ZodOptional<z.ZodString>;
|
|
30
|
-
spaceId: z.ZodOptional<z.ZodString>;
|
|
31
|
-
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
-
credentialId: z.ZodOptional<z.ZodString>;
|
|
33
|
-
credentialVariant: z.ZodOptional<z.ZodString>;
|
|
34
|
-
toolsets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
35
|
-
maxScope: z.ZodOptional<z.ZodEnum<{
|
|
36
|
-
read: "read";
|
|
37
|
-
write: "write";
|
|
38
|
-
}>>;
|
|
39
|
-
disabledTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
40
|
-
credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
41
|
-
}, z.core.$strip>>>;
|
|
42
|
-
}, z.core.$strip>;
|
|
43
|
-
export type CommandableConfig = z.infer<typeof CommandableConfigSchema>;
|
|
44
|
-
export type IntegrationConfig = z.infer<typeof IntegrationConfigSchema>;
|
|
45
|
-
//# sourceMappingURL=configSchema.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configSchema.d.ts","sourceRoot":"","sources":["../../src/config/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;iBAelC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;iBAIlC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export const IntegrationConfigSchema = z.object({
|
|
3
|
-
id: z.string().min(1).optional(),
|
|
4
|
-
type: z.string().min(1),
|
|
5
|
-
label: z.string().min(1).optional(),
|
|
6
|
-
referenceId: z.string().min(1).optional(),
|
|
7
|
-
spaceId: z.string().min(1).optional(),
|
|
8
|
-
enabled: z.boolean().optional(),
|
|
9
|
-
credentialId: z.string().min(1).optional(),
|
|
10
|
-
credentialVariant: z.string().min(1).optional(),
|
|
11
|
-
toolsets: z.array(z.string()).optional(),
|
|
12
|
-
/** Cap the maximum scope tier. 'read' means only read tools; 'write' means read+write. */
|
|
13
|
-
maxScope: z.enum(['read', 'write']).optional(),
|
|
14
|
-
/** Individual tool names to block regardless of toolset or scope. */
|
|
15
|
-
disabledTools: z.array(z.string()).optional(),
|
|
16
|
-
credentials: z.record(z.string(), z.string()).optional(),
|
|
17
|
-
});
|
|
18
|
-
export const CommandableConfigSchema = z.object({
|
|
19
|
-
spaceId: z.string().min(1).optional(),
|
|
20
|
-
mode: z.enum(['static', 'create']).optional().default('static'),
|
|
21
|
-
integrations: z.array(IntegrationConfigSchema).default([]),
|
|
22
|
-
});
|
|
23
|
-
//# sourceMappingURL=configSchema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/config/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC1C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxC,0FAA0F;IAC1F,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC9C,qEAAqE;IACrE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACzD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC/D,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC3D,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/crypto/encryption.ts"],"names":[],"mappings":"AAQA,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED,wBAAgB,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAcrE"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import crypto from 'node:crypto';
|
|
2
|
-
const algorithm = 'aes-256-cbc';
|
|
3
|
-
function getKey(secret) {
|
|
4
|
-
return crypto.createHash('sha256').update(secret).digest();
|
|
5
|
-
}
|
|
6
|
-
export function encrypt(text, secret) {
|
|
7
|
-
const key = getKey(secret);
|
|
8
|
-
const iv = crypto.randomBytes(16);
|
|
9
|
-
const cipher = crypto.createCipheriv(algorithm, key, iv);
|
|
10
|
-
let encrypted = cipher.update(text, 'utf8', 'hex');
|
|
11
|
-
encrypted += cipher.final('hex');
|
|
12
|
-
return `${iv.toString('hex')}:${encrypted}`;
|
|
13
|
-
}
|
|
14
|
-
export function decrypt(encryptedText, secret) {
|
|
15
|
-
const key = getKey(secret);
|
|
16
|
-
const parts = encryptedText.split(':');
|
|
17
|
-
if (parts.length !== 2)
|
|
18
|
-
throw new Error('Invalid encrypted text format');
|
|
19
|
-
const ivHex = parts[0];
|
|
20
|
-
const encrypted = parts[1];
|
|
21
|
-
if (!ivHex || !encrypted)
|
|
22
|
-
throw new Error('Invalid encrypted text format');
|
|
23
|
-
const iv = Buffer.from(ivHex, 'hex');
|
|
24
|
-
const decipher = crypto.createDecipheriv(algorithm, key, iv);
|
|
25
|
-
let decrypted = decipher.update(encrypted, 'hex', 'utf8');
|
|
26
|
-
decrypted += decipher.final('utf8');
|
|
27
|
-
return decrypted;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=encryption.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/crypto/encryption.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAEhC,MAAM,SAAS,GAAG,aAAa,CAAA;AAE/B,SAAS,MAAM,CAAC,MAAc;IAC5B,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,MAAc;IAClD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;IAExD,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAClD,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAChC,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,aAAqB,EAAE,MAAc;IAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1B,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS;QACtB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;IAC5D,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACzD,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACnC,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
package/dist/db/client.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import Database from 'better-sqlite3';
|
|
2
|
-
import { drizzle as drizzleSqlite } from 'drizzle-orm/better-sqlite3';
|
|
3
|
-
import { drizzle as drizzlePg } from 'drizzle-orm/node-postgres';
|
|
4
|
-
import { Pool } from 'pg';
|
|
5
|
-
export type DbDialect = 'sqlite' | 'postgres';
|
|
6
|
-
export type AnyDrizzle = ReturnType<typeof drizzleSqlite> | ReturnType<typeof drizzlePg>;
|
|
7
|
-
export type DbClient = {
|
|
8
|
-
dialect: 'sqlite';
|
|
9
|
-
db: ReturnType<typeof drizzleSqlite>;
|
|
10
|
-
raw: InstanceType<typeof Database>;
|
|
11
|
-
close: () => void;
|
|
12
|
-
} | {
|
|
13
|
-
dialect: 'postgres';
|
|
14
|
-
db: ReturnType<typeof drizzlePg>;
|
|
15
|
-
raw: Pool;
|
|
16
|
-
close: () => Promise<void>;
|
|
17
|
-
};
|
|
18
|
-
export interface CreateDbOptions {
|
|
19
|
-
sqlitePath?: string;
|
|
20
|
-
databaseUrl?: string;
|
|
21
|
-
}
|
|
22
|
-
export declare function createDbFromEnv(): DbClient;
|
|
23
|
-
export declare function createDb(opts?: CreateDbOptions): DbClient;
|
|
24
|
-
//# sourceMappingURL=client.d.ts.map
|
package/dist/db/client.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/db/client.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAA;AAEzB,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAA;AAE7C,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAA;AAExF,MAAM,MAAM,QAAQ,GAChB;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IAAC,GAAG,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CAAE,GAClH;IAAE,OAAO,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;IAAC,GAAG,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAA;AAEpG,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,eAAe,IAAI,QAAQ,CAS1C;AAED,wBAAgB,QAAQ,CAAC,IAAI,GAAE,eAAoB,GAAG,QAAQ,CAkC7D"}
|
package/dist/db/client.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { dirname, resolve } from 'node:path';
|
|
2
|
-
import { mkdirSync } from 'node:fs';
|
|
3
|
-
import { homedir } from 'node:os';
|
|
4
|
-
import Database from 'better-sqlite3';
|
|
5
|
-
import { drizzle as drizzleSqlite } from 'drizzle-orm/better-sqlite3';
|
|
6
|
-
import { drizzle as drizzlePg } from 'drizzle-orm/node-postgres';
|
|
7
|
-
import { Pool } from 'pg';
|
|
8
|
-
export function createDbFromEnv() {
|
|
9
|
-
const dataDir = process.env.COMMANDABLE_DATA_DIR;
|
|
10
|
-
const sqliteFromDataDir = dataDir && dataDir.trim().length
|
|
11
|
-
? resolve(dataDir, 'credentials.sqlite')
|
|
12
|
-
: undefined;
|
|
13
|
-
return createDb({
|
|
14
|
-
databaseUrl: process.env.DATABASE_URL,
|
|
15
|
-
sqlitePath: process.env.COMMANDABLE_MCP_SQLITE_PATH || sqliteFromDataDir,
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
export function createDb(opts = {}) {
|
|
19
|
-
const databaseUrl = opts.databaseUrl || process.env.DATABASE_URL;
|
|
20
|
-
if (databaseUrl) {
|
|
21
|
-
const pool = new Pool({ connectionString: databaseUrl });
|
|
22
|
-
const db = drizzlePg(pool);
|
|
23
|
-
return {
|
|
24
|
-
dialect: 'postgres',
|
|
25
|
-
db,
|
|
26
|
-
raw: pool,
|
|
27
|
-
close: async () => {
|
|
28
|
-
await pool.end();
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
const sqlitePath = opts.sqlitePath
|
|
33
|
-
? resolve(opts.sqlitePath)
|
|
34
|
-
: resolve(homedir(), '.commandable', 'credentials.sqlite');
|
|
35
|
-
// Ensure parent directory exists so SQLite can create the file.
|
|
36
|
-
// (better-sqlite3 does not create directories automatically)
|
|
37
|
-
try {
|
|
38
|
-
mkdirSync(dirname(sqlitePath), { recursive: true, mode: 0o700 });
|
|
39
|
-
}
|
|
40
|
-
catch { }
|
|
41
|
-
const sqlite = new Database(sqlitePath);
|
|
42
|
-
const db = drizzleSqlite(sqlite);
|
|
43
|
-
return {
|
|
44
|
-
dialect: 'sqlite',
|
|
45
|
-
db,
|
|
46
|
-
raw: sqlite,
|
|
47
|
-
close: () => sqlite.close(),
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=client.js.map
|
package/dist/db/client.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/db/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAA;AAezB,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAA;IAChD,MAAM,iBAAiB,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM;QACxD,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC;QACxC,CAAC,CAAC,SAAS,CAAA;IACb,OAAO,QAAQ,CAAC;QACd,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;QACrC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,iBAAiB;KACzE,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,OAAwB,EAAE;IACjD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAA;IAChE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAA;QACxD,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC1B,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,EAAE;YACF,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,KAAK,IAAI,EAAE;gBAChB,MAAM,IAAI,CAAC,GAAG,EAAE,CAAA;YAClB,CAAC;SACF,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;QAChC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QAC1B,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,oBAAoB,CAAC,CAAA;IAE5D,gEAAgE;IAChE,6DAA6D;IAC7D,IAAI,CAAC;QACH,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAClE,CAAC;IACD,MAAM,CAAC,CAAA,CAAC;IAER,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAA;IACvC,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IAChC,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,EAAE;QACF,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE;KAC5B,CAAA;AACH,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { CredentialStore } from '../integrations/proxy.js';
|
|
2
|
-
import type { DbClient } from './client.js';
|
|
3
|
-
export declare class SqlCredentialStore implements CredentialStore {
|
|
4
|
-
private readonly client;
|
|
5
|
-
private readonly encryptionSecret;
|
|
6
|
-
constructor(client: DbClient, encryptionSecret: string);
|
|
7
|
-
hasCredentials(spaceId: string, credentialId: string): Promise<boolean>;
|
|
8
|
-
saveCredentials(spaceId: string, credentialId: string, credentials: Record<string, string>): Promise<void>;
|
|
9
|
-
getCredentials(spaceId: string, credentialId: string): Promise<Record<string, string> | null>;
|
|
10
|
-
deleteCredentials(spaceId: string, credentialId: string): Promise<void>;
|
|
11
|
-
private _table;
|
|
12
|
-
private _db;
|
|
13
|
-
private _getRow;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=credentialStore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"credentialStore.d.ts","sourceRoot":"","sources":["../../src/db/credentialStore.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,qBAAa,kBAAmB,YAAW,eAAe;IAEtD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBADhB,MAAM,EAAE,QAAQ,EAChB,gBAAgB,EAAE,MAAM;IAGrC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc1G,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAS7F,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7E,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,GAAG;YAIG,OAAO;CAStB"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { and, eq } from 'drizzle-orm';
|
|
2
|
-
import { decrypt, encrypt } from '../crypto/encryption.js';
|
|
3
|
-
import { pgCredentials, sqliteCredentials } from './schema.js';
|
|
4
|
-
export class SqlCredentialStore {
|
|
5
|
-
client;
|
|
6
|
-
encryptionSecret;
|
|
7
|
-
constructor(client, encryptionSecret) {
|
|
8
|
-
this.client = client;
|
|
9
|
-
this.encryptionSecret = encryptionSecret;
|
|
10
|
-
}
|
|
11
|
-
async hasCredentials(spaceId, credentialId) {
|
|
12
|
-
return !!(await this._getRow(spaceId, credentialId));
|
|
13
|
-
}
|
|
14
|
-
async saveCredentials(spaceId, credentialId, credentials) {
|
|
15
|
-
const ciphertext = encrypt(JSON.stringify(credentials ?? {}), this.encryptionSecret);
|
|
16
|
-
const now = new Date();
|
|
17
|
-
const table = this._table();
|
|
18
|
-
await this._db()
|
|
19
|
-
.insert(table)
|
|
20
|
-
.values({ spaceId, id: credentialId, ciphertext, createdAt: now, updatedAt: now })
|
|
21
|
-
.onConflictDoUpdate({
|
|
22
|
-
target: [table.spaceId, table.id],
|
|
23
|
-
set: { ciphertext, updatedAt: now },
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
async getCredentials(spaceId, credentialId) {
|
|
27
|
-
const row = await this._getRow(spaceId, credentialId);
|
|
28
|
-
if (!row?.ciphertext)
|
|
29
|
-
return null;
|
|
30
|
-
const plaintext = decrypt(row.ciphertext, this.encryptionSecret);
|
|
31
|
-
const parsed = JSON.parse(plaintext);
|
|
32
|
-
return (parsed && typeof parsed === 'object') ? parsed : null;
|
|
33
|
-
}
|
|
34
|
-
async deleteCredentials(spaceId, credentialId) {
|
|
35
|
-
const table = this._table();
|
|
36
|
-
await this._db()
|
|
37
|
-
.delete(table)
|
|
38
|
-
.where(and(eq(table.spaceId, spaceId), eq(table.id, credentialId)));
|
|
39
|
-
}
|
|
40
|
-
_table() {
|
|
41
|
-
return this.client.dialect === 'sqlite' ? sqliteCredentials : pgCredentials;
|
|
42
|
-
}
|
|
43
|
-
_db() {
|
|
44
|
-
return this.client.db;
|
|
45
|
-
}
|
|
46
|
-
async _getRow(spaceId, credentialId) {
|
|
47
|
-
const table = this._table();
|
|
48
|
-
const rows = await this._db()
|
|
49
|
-
.select()
|
|
50
|
-
.from(table)
|
|
51
|
-
.where(and(eq(table.spaceId, spaceId), eq(table.id, credentialId)))
|
|
52
|
-
.limit(1);
|
|
53
|
-
return rows[0] ?? null;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=credentialStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"credentialStore.js","sourceRoot":"","sources":["../../src/db/credentialStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { IntegrationData } from '../types.js';
|
|
2
|
-
import type { DbClient } from './client.js';
|
|
3
|
-
export declare function listIntegrations(client: DbClient, spaceId?: string): Promise<IntegrationData[]>;
|
|
4
|
-
export declare function upsertIntegration(client: DbClient, integration: IntegrationData): Promise<void>;
|
|
5
|
-
/** Update only credential linkage fields — does not clobber toolsets/permissions. */
|
|
6
|
-
export declare function updateIntegrationCredentials(client: DbClient, integrationId: string, fields: {
|
|
7
|
-
connectionMethod: 'credentials' | null;
|
|
8
|
-
credentialId: string | null;
|
|
9
|
-
credentialVariant: string | null;
|
|
10
|
-
}): Promise<void>;
|
|
11
|
-
export declare function updateIntegrationHealth(client: DbClient, integrationId: string, healthStatus: 'disconnected' | 'connected' | 'invalid_credentials', checkedAt?: Date): Promise<void>;
|
|
12
|
-
//# sourceMappingURL=integrationStore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integrationStore.d.ts","sourceRoot":"","sources":["../../src/db/integrationStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAqB3C,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CA8BrG;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwCrG;AAED,qFAAqF;AACrF,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,QAAQ,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE;IACN,gBAAgB,EAAE,aAAa,GAAG,IAAI,CAAA;IACtC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC,GACA,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,QAAQ,EAChB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,cAAc,GAAG,WAAW,GAAG,qBAAqB,EAClE,SAAS,CAAC,EAAE,IAAI,GACf,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import { and, eq } from 'drizzle-orm';
|
|
2
|
-
import { pgIntegrations, sqliteIntegrations } from './schema.js';
|
|
3
|
-
function t(client) {
|
|
4
|
-
return client.dialect === 'sqlite' ? sqliteIntegrations : pgIntegrations;
|
|
5
|
-
}
|
|
6
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
7
|
-
function db(client) {
|
|
8
|
-
return client.db;
|
|
9
|
-
}
|
|
10
|
-
function parseJson(raw) {
|
|
11
|
-
if (!raw)
|
|
12
|
-
return undefined;
|
|
13
|
-
if (typeof raw === 'string') {
|
|
14
|
-
try {
|
|
15
|
-
return JSON.parse(raw);
|
|
16
|
-
}
|
|
17
|
-
catch {
|
|
18
|
-
return undefined;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
return raw;
|
|
22
|
-
}
|
|
23
|
-
export async function listIntegrations(client, spaceId) {
|
|
24
|
-
const table = t(client);
|
|
25
|
-
let query = db(client).select().from(table);
|
|
26
|
-
if (spaceId)
|
|
27
|
-
query = query.where(eq(table.spaceId, spaceId));
|
|
28
|
-
const rows = await query;
|
|
29
|
-
return rows.map((r) => {
|
|
30
|
-
const healthCheckedAt = r.healthCheckedAt
|
|
31
|
-
? (r.healthCheckedAt instanceof Date ? r.healthCheckedAt : new Date(r.healthCheckedAt))
|
|
32
|
-
: null;
|
|
33
|
-
return {
|
|
34
|
-
id: r.id,
|
|
35
|
-
spaceId: r.spaceId ?? undefined,
|
|
36
|
-
type: r.type,
|
|
37
|
-
referenceId: r.referenceId,
|
|
38
|
-
label: r.label,
|
|
39
|
-
enabled: r.enabled === 0 ? false : true,
|
|
40
|
-
connectionMethod: r.connectionMethod ?? undefined,
|
|
41
|
-
connectionId: r.connectionId ?? undefined,
|
|
42
|
-
credentialId: r.credentialId ?? undefined,
|
|
43
|
-
credentialVariant: r.credentialVariant ?? undefined,
|
|
44
|
-
enabledToolsets: parseJson(r.enabledToolsets),
|
|
45
|
-
maxScope: r.maxScope ?? undefined,
|
|
46
|
-
disabledTools: parseJson(r.disabledTools),
|
|
47
|
-
healthStatus: r.healthStatus ?? null,
|
|
48
|
-
healthCheckedAt,
|
|
49
|
-
};
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
export async function upsertIntegration(client, integration) {
|
|
53
|
-
const table = t(client);
|
|
54
|
-
const now = new Date();
|
|
55
|
-
const enabled = integration.enabled === false ? 0 : 1;
|
|
56
|
-
await db(client)
|
|
57
|
-
.insert(table)
|
|
58
|
-
.values({
|
|
59
|
-
id: integration.id,
|
|
60
|
-
spaceId: integration.spaceId ?? null,
|
|
61
|
-
type: integration.type,
|
|
62
|
-
referenceId: integration.referenceId,
|
|
63
|
-
label: integration.label,
|
|
64
|
-
enabled,
|
|
65
|
-
connectionMethod: integration.connectionMethod ?? null,
|
|
66
|
-
connectionId: integration.connectionId ?? null,
|
|
67
|
-
credentialId: integration.credentialId ?? null,
|
|
68
|
-
credentialVariant: integration.credentialVariant ?? null,
|
|
69
|
-
enabledToolsets: integration.enabledToolsets ? JSON.stringify(integration.enabledToolsets) : null,
|
|
70
|
-
maxScope: integration.maxScope ?? null,
|
|
71
|
-
disabledTools: integration.disabledTools?.length ? JSON.stringify(integration.disabledTools) : null,
|
|
72
|
-
createdAt: now,
|
|
73
|
-
})
|
|
74
|
-
.onConflictDoUpdate({
|
|
75
|
-
target: table.id,
|
|
76
|
-
set: {
|
|
77
|
-
spaceId: integration.spaceId ?? null,
|
|
78
|
-
type: integration.type,
|
|
79
|
-
referenceId: integration.referenceId,
|
|
80
|
-
label: integration.label,
|
|
81
|
-
enabled,
|
|
82
|
-
connectionMethod: integration.connectionMethod ?? null,
|
|
83
|
-
connectionId: integration.connectionId ?? null,
|
|
84
|
-
credentialId: integration.credentialId ?? null,
|
|
85
|
-
credentialVariant: integration.credentialVariant ?? null,
|
|
86
|
-
enabledToolsets: integration.enabledToolsets ? JSON.stringify(integration.enabledToolsets) : null,
|
|
87
|
-
maxScope: integration.maxScope ?? null,
|
|
88
|
-
disabledTools: integration.disabledTools?.length ? JSON.stringify(integration.disabledTools) : null,
|
|
89
|
-
},
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
/** Update only credential linkage fields — does not clobber toolsets/permissions. */
|
|
93
|
-
export async function updateIntegrationCredentials(client, integrationId, fields) {
|
|
94
|
-
const table = t(client);
|
|
95
|
-
await db(client)
|
|
96
|
-
.update(table)
|
|
97
|
-
.set({
|
|
98
|
-
connectionMethod: fields.connectionMethod ?? null,
|
|
99
|
-
credentialId: fields.credentialId ?? null,
|
|
100
|
-
credentialVariant: fields.credentialVariant ?? null,
|
|
101
|
-
})
|
|
102
|
-
.where(eq(table.id, integrationId));
|
|
103
|
-
}
|
|
104
|
-
export async function updateIntegrationHealth(client, integrationId, healthStatus, checkedAt) {
|
|
105
|
-
const table = t(client);
|
|
106
|
-
await db(client)
|
|
107
|
-
.update(table)
|
|
108
|
-
.set({ healthStatus, healthCheckedAt: checkedAt ?? new Date() })
|
|
109
|
-
.where(and(eq(table.id, integrationId)));
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=integrationStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integrationStore.js","sourceRoot":"","sources":["../../src/db/integrationStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { DbClient } from './client.js';
|
|
2
|
-
import type { IntegrationTypeConfig } from '../types.js';
|
|
3
|
-
export declare function listIntegrationTypeConfigs(client: DbClient, spaceId: string): Promise<IntegrationTypeConfig[]>;
|
|
4
|
-
export declare function getIntegrationTypeConfig(client: DbClient, spaceId: string, typeSlug: string): Promise<IntegrationTypeConfig | null>;
|
|
5
|
-
export declare function upsertIntegrationTypeConfig(client: DbClient, cfg: Required<Pick<IntegrationTypeConfig, 'id' | 'spaceId'>> & Omit<IntegrationTypeConfig, 'createdAt' | 'updatedAt'>): Promise<void>;
|
|
6
|
-
//# sourceMappingURL=integrationTypeConfigStore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integrationTypeConfigStore.d.ts","sourceRoot":"","sources":["../../src/db/integrationTypeConfigStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,KAAK,EAAgC,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAwDtF,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAGpH;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAQvC;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,QAAQ,EAChB,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,qBAAqB,EAAE,WAAW,GAAG,WAAW,CAAC,GACpH,OAAO,CAAC,IAAI,CAAC,CA6Bf"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { and, eq } from 'drizzle-orm';
|
|
2
|
-
import { pgIntegrationTypeConfigs, sqliteIntegrationTypeConfigs } from './schema.js';
|
|
3
|
-
function t(client) {
|
|
4
|
-
return client.dialect === 'sqlite' ? sqliteIntegrationTypeConfigs : pgIntegrationTypeConfigs;
|
|
5
|
-
}
|
|
6
|
-
function db(client) {
|
|
7
|
-
return client.db;
|
|
8
|
-
}
|
|
9
|
-
function parseJson(raw) {
|
|
10
|
-
if (raw == null)
|
|
11
|
-
return null;
|
|
12
|
-
if (typeof raw === 'string') {
|
|
13
|
-
try {
|
|
14
|
-
return JSON.parse(raw);
|
|
15
|
-
}
|
|
16
|
-
catch {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return raw;
|
|
21
|
-
}
|
|
22
|
-
function normalizeHintMarkdown(value) {
|
|
23
|
-
return value
|
|
24
|
-
.replace(/\r\n/g, '\n')
|
|
25
|
-
.replace(/\\r\\n/g, '\n')
|
|
26
|
-
.replace(/\\n/g, '\n');
|
|
27
|
-
}
|
|
28
|
-
function normalizeVariants(variants) {
|
|
29
|
-
return Object.fromEntries(Object.entries(variants).map(([key, variant]) => [
|
|
30
|
-
key,
|
|
31
|
-
{
|
|
32
|
-
...variant,
|
|
33
|
-
hintMarkdown: typeof variant.hintMarkdown === 'string'
|
|
34
|
-
? normalizeHintMarkdown(variant.hintMarkdown)
|
|
35
|
-
: variant.hintMarkdown,
|
|
36
|
-
},
|
|
37
|
-
]));
|
|
38
|
-
}
|
|
39
|
-
function rowToIntegrationTypeConfig(r) {
|
|
40
|
-
const variants = parseJson(r.variantsJson) || {};
|
|
41
|
-
return {
|
|
42
|
-
id: r.id,
|
|
43
|
-
spaceId: r.spaceId,
|
|
44
|
-
typeSlug: r.typeSlug,
|
|
45
|
-
label: r.label,
|
|
46
|
-
defaultVariant: r.defaultVariant,
|
|
47
|
-
variants: normalizeVariants(variants),
|
|
48
|
-
createdAt: r.createdAt instanceof Date ? r.createdAt : (r.createdAt ? new Date(r.createdAt) : undefined),
|
|
49
|
-
updatedAt: r.updatedAt instanceof Date ? r.updatedAt : (r.updatedAt ? new Date(r.updatedAt) : undefined),
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
export async function listIntegrationTypeConfigs(client, spaceId) {
|
|
53
|
-
const rows = await db(client).select().from(t(client)).where(eq(t(client).spaceId, spaceId));
|
|
54
|
-
return rows.map(rowToIntegrationTypeConfig);
|
|
55
|
-
}
|
|
56
|
-
export async function getIntegrationTypeConfig(client, spaceId, typeSlug) {
|
|
57
|
-
const table = t(client);
|
|
58
|
-
const rows = await db(client)
|
|
59
|
-
.select()
|
|
60
|
-
.from(table)
|
|
61
|
-
.where(and(eq(table.spaceId, spaceId), eq(table.typeSlug, typeSlug)))
|
|
62
|
-
.limit(1);
|
|
63
|
-
return rows[0] ? rowToIntegrationTypeConfig(rows[0]) : null;
|
|
64
|
-
}
|
|
65
|
-
export async function upsertIntegrationTypeConfig(client, cfg) {
|
|
66
|
-
const table = t(client);
|
|
67
|
-
const now = new Date();
|
|
68
|
-
const variantsValue = client.dialect === 'sqlite'
|
|
69
|
-
? JSON.stringify(cfg.variants ?? {})
|
|
70
|
-
: (cfg.variants ?? {});
|
|
71
|
-
await db(client)
|
|
72
|
-
.insert(table)
|
|
73
|
-
.values({
|
|
74
|
-
id: cfg.id,
|
|
75
|
-
spaceId: cfg.spaceId,
|
|
76
|
-
typeSlug: cfg.typeSlug,
|
|
77
|
-
label: cfg.label,
|
|
78
|
-
defaultVariant: cfg.defaultVariant,
|
|
79
|
-
variantsJson: variantsValue,
|
|
80
|
-
createdAt: now,
|
|
81
|
-
updatedAt: now,
|
|
82
|
-
})
|
|
83
|
-
.onConflictDoUpdate({
|
|
84
|
-
target: table.id,
|
|
85
|
-
set: {
|
|
86
|
-
typeSlug: cfg.typeSlug,
|
|
87
|
-
label: cfg.label,
|
|
88
|
-
defaultVariant: cfg.defaultVariant,
|
|
89
|
-
variantsJson: variantsValue,
|
|
90
|
-
updatedAt: now,
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=integrationTypeConfigStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integrationTypeConfigStore.js","sourceRoot":"","sources":["../../src/db/integrationTypeConfigStore.ts"],"names":[],"mappings":"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"}
|
package/dist/db/migrate.d.ts
DELETED
package/dist/db/migrate.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/db/migrate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C,wBAAsB,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAOlE"}
|