@askdb/config 0.3.0-beta.5 → 1.0.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -53,7 +53,7 @@ export default defineConfig({
53
53
  } satisfies AskDbConfig);
54
54
  ```
55
55
 
56
- Your `.env` can use friendly names (`MY_OPENAI_API_KEY`, …). `defineConfig` runs `flattenAskDbConfig`, which maps the nested object onto the canonical environment variable names used in the **runtime flat map** (and in `aiEnv` for `@askdb/core`). **Unset optional fields get defaults inside `flattenAskDbConfig`** (chat model, introspection output dir, database URL fallbacks, RAG embedding dimensions, file-store base path, pgvector index strategy, etc. — see `packages/config/src/defaults.ts`).
56
+ Your `.env` can use friendly names (`MY_OPENAI_API_KEY`, …). `defineConfig` runs `flattenAskDbConfig`, which maps the nested object onto the canonical environment variable names used in the **runtime flat map** (and in `aiEnv` for `@askdb/ai`). **Unset optional fields get defaults inside `flattenAskDbConfig`** (chat model, introspection output dir, database URL fallbacks, RAG embedding dimensions, file-store base path, pgvector index strategy, etc. — see `packages/config/src/defaults.ts`).
57
57
 
58
58
  ## Architectural rule — `@askdb/config` is the sole `process.env` reader
59
59
 
@@ -66,13 +66,13 @@ import { getAskDbRuntimeConfig } from "@askdb/config";
66
66
  const config = getAskDbRuntimeConfig();
67
67
  const apiKey = opts.apiKey ?? config.rag.embedder.apiKey;
68
68
  const level = config.logging.level;
69
- // For @askdb/core functions that accept an env-map argument:
70
- const model = await createAskDbLanguageModelFromEnv(config.ai.aiEnv, { ... });
69
+ // For @askdb/ai registry methods that accept an env-map argument:
70
+ const model = await aiRegistry.createLanguageModelFromEnv(config.ai.aiEnv, { ... });
71
71
  ```
72
72
 
73
73
  **Rules:**
74
74
 
75
- - Library packages (`@askdb/rag`, `@askdb/tui`, …) must call `getAskDbRuntimeConfig()` and use the returned typed fields. They must **not** call `env()`, `requiredEnv()`, or access `process.env` directly.
75
+ - Library packages (`@askdb/rag`, `@askdb/enrich`, …) must call `getAskDbRuntimeConfig()` and use the returned typed fields. They must **not** call `env()`, `requiredEnv()`, or access `process.env` directly.
76
76
  - `env(name)` is only for use inside `askdb.config.*` files authored by end users — it maps friendly `.env` names onto values that become part of the structured config and flat map.
77
77
  - First-party app entry points call `bootstrapAskDbEnv()` at start-up. That loads dotenv, evaluates `askdb.config.*`, and installs an **in-memory runtime snapshot** (structured config + flat map + derived `aiEnv`). It does **not** copy AskDB settings into `process.env`.
78
78
 
@@ -94,4 +94,4 @@ const model = await createAskDbLanguageModelFromEnv(config.ai.aiEnv, { ... });
94
94
 
95
95
  ## License
96
96
 
97
- Apache-2.0. See [LICENSE](./LICENSE) and [NOTICE](./NOTICE).
97
+ Apache-2.0 © [Yahya Gilany](https://yahyagilany.io). See [LICENSE](./LICENSE) and [NOTICE](./NOTICE).
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,wBAAwB,GAAG;IACrC,mGAAmG;IACnG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAeF;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAkDA;AAED,6DAA6D;AAC7D,eAAO,MAAM,qBAAqB,0BAAoB,CAAC"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,wBAAwB,GAAG;IACrC,mGAAmG;IACnG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAeF;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAkDA;AAED,6DAA6D;AAC7D,eAAO,MAAM,qBAAqB,0BAAoB,CAAC"}
package/dist/bootstrap.js CHANGED
@@ -3,6 +3,8 @@ import { existsSync } from "node:fs";
3
3
  import { join } from "node:path";
4
4
  import { loadAskDbConfigProjectionSync } from "./load-merge.js";
5
5
  import { setAskDbRuntime } from "./runtime-store.js";
6
+ /** dotenv v17 logs injected keys by default; keep bootstrap silent like v16. */
7
+ const DOTENV_LOAD_OPTIONS = { quiet: true };
6
8
  function handleDotenvError(error, nonFatal) {
7
9
  const err = error;
8
10
  const code = typeof err.code === "string" ? err.code : undefined;
@@ -34,7 +36,7 @@ export function bootstrapAskDbEnv(options = {}) {
34
36
  for (const path of options.dotenvCandidatePaths) {
35
37
  if (!existsSync(path))
36
38
  continue;
37
- const { error } = dotenv.config({ path });
39
+ const { error } = dotenv.config({ ...DOTENV_LOAD_OPTIONS, path });
38
40
  if (!error) {
39
41
  loaded = true;
40
42
  dotenvPath = path;
@@ -42,14 +44,14 @@ export function bootstrapAskDbEnv(options = {}) {
42
44
  }
43
45
  }
44
46
  if (!loaded) {
45
- const { error } = dotenv.config();
47
+ const { error } = dotenv.config(DOTENV_LOAD_OPTIONS);
46
48
  if (error)
47
49
  handleDotenvError(error, nonFatal);
48
50
  }
49
51
  }
50
52
  else {
51
53
  const path = join(cwd, ".env");
52
- const { error } = dotenv.config({ path });
54
+ const { error } = dotenv.config({ ...DOTENV_LOAD_OPTIONS, path });
53
55
  if (error) {
54
56
  const err = error;
55
57
  const code = typeof err.code === "string" ? err.code : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,14 @@ export declare const ASKDB_RAG_STORES: readonly ["file", "memory", "pgvector"];
15
15
  export type AskDbRagStore = (typeof ASKDB_RAG_STORES)[number];
16
16
  export declare const ASKDB_AI_PROVIDERS: readonly ["openai", "azure", "foundry", "google"];
17
17
  export type AskDbAiProviderId = (typeof ASKDB_AI_PROVIDERS)[number];
18
+ /**
19
+ * Provider-portable reasoning/latency effort for AskDB model calls. Maps to
20
+ * each provider's native knob by the `@askdb/ai-*` adapter (see `@askdb/ai`'s
21
+ * `resolveProviderOptions`). Keep aligned with `REASONING_EFFORTS` in
22
+ * `@askdb/ai` (`packages/ai/src/reasoning.ts`).
23
+ */
24
+ export declare const ASKDB_REASONING_EFFORTS: readonly ["minimal", "low", "medium", "high"];
25
+ export type AskDbReasoningEffort = (typeof ASKDB_REASONING_EFFORTS)[number];
18
26
  export declare const ASKDB_INTROSPECTION_PROVIDERS: readonly ["postgres", "prisma", "mysql", "sqlite", "sqlserver"];
19
27
  export type AskDbIntrospectionProvider = (typeof ASKDB_INTROSPECTION_PROVIDERS)[number];
20
28
  /**
@@ -24,4 +32,10 @@ export type AskDbIntrospectionProvider = (typeof ASKDB_INTROSPECTION_PROVIDERS)[
24
32
  */
25
33
  export declare const ASKDB_DIALECTS: readonly ["postgres", "cockroachdb", "mysql", "mariadb", "sqlite", "sqlserver"];
26
34
  export type AskDbDialectId = (typeof ASKDB_DIALECTS)[number];
35
+ /**
36
+ * Live execute providers supported by the Studio Query Playground.
37
+ * Subset of introspection providers — excludes `prisma` which is schema-only.
38
+ */
39
+ export declare const ASKDB_STUDIO_EXECUTE_PROVIDERS: readonly ["postgres", "mysql", "sqlite", "sqlserver"];
40
+ export type AskDbStudioExecuteProvider = (typeof ASKDB_STUDIO_EXECUTE_PROVIDERS)[number];
27
41
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,6CAA8C,CAAC;AAC1E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,gBAAgB,yEAQnB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,2FAA2F;AAC3F,eAAO,MAAM,mBAAmB,uCAAwC,CAAC;AACzE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB,yCAA0C,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB,mDAAoD,CAAC;AACpF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,6BAA6B,iEAMhC,CAAC;AACX,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,cAAc,iFAOjB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,6CAA8C,CAAC;AAC1E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,gBAAgB,yEAQnB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,2FAA2F;AAC3F,eAAO,MAAM,mBAAmB,uCAAwC,CAAC;AACzE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB,yCAA0C,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB,mDAAoD,CAAC;AACpF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,+CAAgD,CAAC;AACrF,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,6BAA6B,iEAMhC,CAAC;AACX,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,cAAc,iFAOjB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,8BAA8B,uDAKjC,CAAC;AACX,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC"}
package/dist/constants.js CHANGED
@@ -18,6 +18,13 @@ export const ASKDB_LOG_LEVELS = [
18
18
  export const ASKDB_RAG_EMBEDDERS = ["mock", "openai", "ai-sdk"];
19
19
  export const ASKDB_RAG_STORES = ["file", "memory", "pgvector"];
20
20
  export const ASKDB_AI_PROVIDERS = ["openai", "azure", "foundry", "google"];
21
+ /**
22
+ * Provider-portable reasoning/latency effort for AskDB model calls. Maps to
23
+ * each provider's native knob by the `@askdb/ai-*` adapter (see `@askdb/ai`'s
24
+ * `resolveProviderOptions`). Keep aligned with `REASONING_EFFORTS` in
25
+ * `@askdb/ai` (`packages/ai/src/reasoning.ts`).
26
+ */
27
+ export const ASKDB_REASONING_EFFORTS = ["minimal", "low", "medium", "high"];
21
28
  export const ASKDB_INTROSPECTION_PROVIDERS = [
22
29
  "postgres",
23
30
  "prisma",
@@ -38,4 +45,14 @@ export const ASKDB_DIALECTS = [
38
45
  "sqlite",
39
46
  "sqlserver",
40
47
  ];
48
+ /**
49
+ * Live execute providers supported by the Studio Query Playground.
50
+ * Subset of introspection providers — excludes `prisma` which is schema-only.
51
+ */
52
+ export const ASKDB_STUDIO_EXECUTE_PROVIDERS = [
53
+ "postgres",
54
+ "mysql",
55
+ "sqlite",
56
+ "sqlserver",
57
+ ];
41
58
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,iBAAiB,CAAU,CAAC;AAG1E;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;CACA,CAAC;AAGX,2FAA2F;AAC3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAGzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAGxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AAGpF,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU;IACV,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,WAAW;CACH,CAAC;AAGX;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,aAAa;IACb,OAAO;IACP,SAAS;IACT,QAAQ;IACR,WAAW;CACH,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,iBAAiB,CAAU,CAAC;AAG1E;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;CACA,CAAC;AAGX,2FAA2F;AAC3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAGzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAGxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AAGpF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAGrF,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU;IACV,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,WAAW;CACH,CAAC;AAGX;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,aAAa;IACb,OAAO;IACP,SAAS;IACT,QAAQ;IACR,WAAW;CACH,CAAC;AAGX;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,UAAU;IACV,OAAO;IACP,QAAQ;IACR,WAAW;CACH,CAAC"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  export declare const DEFAULT_OPENAI_CHAT_MODEL = "gpt-4o-mini";
6
6
  export declare const DEFAULT_AZURE_OPENAI_DEPLOYMENT = "gpt-4o-mini";
7
+ export declare const DEFAULT_ANTHROPIC_CHAT_MODEL = "claude-sonnet-4-6";
7
8
  export declare const DEFAULT_GOOGLE_CHAT_MODEL = "gemini-2.0-flash";
8
9
  export declare const DEFAULT_INTROSPECT_OUTPUT_DIR = "./askdb/";
9
10
  export declare const DEFAULT_LOCAL_POSTGRES_URL = "postgres://postgres:postgres@127.0.0.1:5432/postgres";
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AACvD,eAAO,MAAM,+BAA+B,gBAAgB,CAAC;AAC7D,eAAO,MAAM,yBAAyB,qBAAqB,CAAC;AAC5D,eAAO,MAAM,6BAA6B,aAAa,CAAC;AACxD,eAAO,MAAM,0BAA0B,yDAAyD,CAAC;AACjG,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AACpE,0FAA0F;AAC1F,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,qCAAqC,KAAK,CAAC;AACxD,eAAO,MAAM,+BAA+B,EAAG,MAAe,CAAC;AAE/D,eAAO,MAAM,yBAAyB,sCAAuC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjF,uFAAuF;AACvF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKnE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAU3F;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,uBAAuB,CAK/F"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AACvD,eAAO,MAAM,+BAA+B,gBAAgB,CAAC;AAC7D,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAChE,eAAO,MAAM,yBAAyB,qBAAqB,CAAC;AAC5D,eAAO,MAAM,6BAA6B,aAAa,CAAC;AACxD,eAAO,MAAM,0BAA0B,yDAAyD,CAAC;AACjG,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AACpE,0FAA0F;AAC1F,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,qCAAqC,KAAK,CAAC;AACxD,eAAO,MAAM,+BAA+B,EAAG,MAAe,CAAC;AAE/D,eAAO,MAAM,yBAAyB,sCAAuC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjF,uFAAuF;AACvF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKnE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAU3F;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,uBAAuB,CAK/F"}
package/dist/defaults.js CHANGED
@@ -4,6 +4,7 @@
4
4
  */
5
5
  export const DEFAULT_OPENAI_CHAT_MODEL = "gpt-4o-mini";
6
6
  export const DEFAULT_AZURE_OPENAI_DEPLOYMENT = "gpt-4o-mini";
7
+ export const DEFAULT_ANTHROPIC_CHAT_MODEL = "claude-sonnet-4-6";
7
8
  export const DEFAULT_GOOGLE_CHAT_MODEL = "gemini-2.0-flash";
8
9
  export const DEFAULT_INTROSPECT_OUTPUT_DIR = "./askdb/";
9
10
  export const DEFAULT_LOCAL_POSTGRES_URL = "postgres://postgres:postgres@127.0.0.1:5432/postgres";
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC;AACvD,MAAM,CAAC,MAAM,+BAA+B,GAAG,aAAa,CAAC;AAC7D,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAC5D,MAAM,CAAC,MAAM,6BAA6B,GAAG,UAAU,CAAC;AACxD,MAAM,CAAC,MAAM,0BAA0B,GAAG,sDAAsD,CAAC;AACjG,MAAM,CAAC,MAAM,2BAA2B,GAAG,wBAAwB,CAAC;AACpE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC;AACxD,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAe,CAAC;AAE/D,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAG9E,uFAAuF;AACvF,MAAM,UAAU,6BAA6B,CAAC,KAAa;IACzD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,wBAAwB;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,CAAC,KAAK,wBAAwB;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAkC;IACrE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;IACD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,GAAuB;IACpE,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,+BAA+B,CAAC;IACnF,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,qCAAqC,CAAC,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC;AACvD,MAAM,CAAC,MAAM,+BAA+B,GAAG,aAAa,CAAC;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,mBAAmB,CAAC;AAChE,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAC5D,MAAM,CAAC,MAAM,6BAA6B,GAAG,UAAU,CAAC;AACxD,MAAM,CAAC,MAAM,0BAA0B,GAAG,sDAAsD,CAAC;AACjG,MAAM,CAAC,MAAM,2BAA2B,GAAG,wBAAwB,CAAC;AACpE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC;AACxD,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAe,CAAC;AAE/D,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAG9E,uFAAuF;AACvF,MAAM,UAAU,6BAA6B,CAAC,KAAa;IACzD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,wBAAwB;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,CAAC,KAAK,wBAAwB;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAkC;IACrE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;IACD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,GAAuB;IACpE,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,+BAA+B,CAAC;IACnF,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,qCAAqC,CAAC,CAAC;AAC/F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"flatten.d.ts","sourceRoot":"","sources":["../src/flatten.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAA0D,MAAM,YAAY,CAAC;AA4DtG;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmK9E"}
1
+ {"version":3,"file":"flatten.d.ts","sourceRoot":"","sources":["../src/flatten.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAIV,WAAW,EAUZ,MAAM,YAAY,CAAC;AA4FpB;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA2K9E"}
package/dist/flatten.js CHANGED
@@ -1,5 +1,5 @@
1
- import { ASKDB_LOG_LEVELS, ASKDB_MODES_V1, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, } from "./constants.js";
2
- import { DEFAULT_AZURE_OPENAI_DEPLOYMENT, DEFAULT_GOOGLE_CHAT_MODEL, DEFAULT_INTROSPECT_OUTPUT_DIR, DEFAULT_LOCAL_POSTGRES_URL, DEFAULT_MOCK_RAG_EMBEDDING_DIMENSIONS, DEFAULT_OPENAI_CHAT_MODEL, DEFAULT_RAG_EMBEDDING_MODEL, DEFAULT_RAG_FILE_BASE_PATH, defaultRagEmbeddingDimensions, normalizePgvectorIndexStrategy, parsePositiveInteger, } from "./defaults.js";
1
+ import { ASKDB_LOG_LEVELS, ASKDB_MODES_V1, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, ASKDB_REASONING_EFFORTS, } from "./constants.js";
2
+ import { DEFAULT_ANTHROPIC_CHAT_MODEL, DEFAULT_AZURE_OPENAI_DEPLOYMENT, DEFAULT_GOOGLE_CHAT_MODEL, DEFAULT_INTROSPECT_OUTPUT_DIR, DEFAULT_MOCK_RAG_EMBEDDING_DIMENSIONS, DEFAULT_OPENAI_CHAT_MODEL, DEFAULT_RAG_EMBEDDING_MODEL, DEFAULT_RAG_FILE_BASE_PATH, defaultRagEmbeddingDimensions, normalizePgvectorIndexStrategy, parsePositiveInteger, } from "./defaults.js";
3
3
  function isMember(value, allowed) {
4
4
  return allowed.includes(value);
5
5
  }
@@ -18,6 +18,12 @@ function applyOpenAiAi(out, cfg) {
18
18
  set(out, "OPENAI_MODEL", model);
19
19
  set(out, "ASKDB_MODEL", model);
20
20
  }
21
+ function applyAnthropicAi(out, cfg) {
22
+ set(out, "ANTHROPIC_API_KEY", cfg.apiKey);
23
+ set(out, "ANTHROPIC_BASE_URL", cfg.baseUrl);
24
+ const model = cfg.model?.trim() || DEFAULT_ANTHROPIC_CHAT_MODEL;
25
+ set(out, "ASKDB_AI_MODEL", model);
26
+ }
21
27
  function applyGoogleAi(out, cfg) {
22
28
  set(out, "GOOGLE_GENERATIVE_AI_API_KEY", cfg.apiKey);
23
29
  set(out, "GOOGLE_AI_BASE_URL", cfg.baseUrl);
@@ -35,11 +41,29 @@ function applyAzureLikeAi(out, cfg) {
35
41
  set(out, "ASKDB_AI_MODEL", model);
36
42
  set(out, "AZURE_OPENAI_BASE_URL", cfg.baseUrl);
37
43
  set(out, "AZURE_OPENAI_API_VERSION", cfg.apiVersion);
44
+ set(out, "ASKDB_AI_AZURE_MODEL_FAMILY", cfg.modelFamily);
45
+ }
46
+ function applyReasoningAi(out, reasoning) {
47
+ if (!reasoning)
48
+ return;
49
+ for (const [envKey, value] of [
50
+ ["ASKDB_AI_REASONING_EFFORT", reasoning.effort],
51
+ ["ASKDB_AI_REASONING_EFFORT_NL_TO_SQL", reasoning.nlToSql],
52
+ ["ASKDB_AI_REASONING_EFFORT_ENRICHMENT", reasoning.enrichment],
53
+ ]) {
54
+ if (value !== undefined && !isMember(value, ASKDB_REASONING_EFFORTS)) {
55
+ throw new Error(`askdb.config: invalid ai.reasoning value "${value}" (expected one of: ${ASKDB_REASONING_EFFORTS.join(", ")}).`);
56
+ }
57
+ set(out, envKey, value);
58
+ }
38
59
  }
39
- function resolveDatabaseUrl(config) {
40
- const raw = config.database.providerConfig.postgres.databaseUrl;
41
- const fromConfig = raw?.trim();
42
- return fromConfig || DEFAULT_LOCAL_POSTGRES_URL;
60
+ function requireProviderBranch(provider, branch) {
61
+ if (!branch) {
62
+ throw new Error(`askdb.config: ai.providerConfig.${provider} is required when ai.provider is "${provider}". ` +
63
+ `(Did you put the settings under providerConfig.custom? That branch is only for ` +
64
+ `third-party providers without a first-party package.)`);
65
+ }
66
+ return branch;
43
67
  }
44
68
  function resolveRagEmbeddingDimensions(rag) {
45
69
  if (rag.embedder === "openai" || rag.embedder === "ai-sdk") {
@@ -60,41 +84,47 @@ function resolveRagEmbeddingDimensions(rag) {
60
84
  export function flattenAskDbConfig(config) {
61
85
  const out = {};
62
86
  // --- AI ---
87
+ // Use type assertions in each branch because the inclusion of CustomAiConfig (provider: string & {})
88
+ // in the union prevents TypeScript from narrowing providerConfig to the specific branch shape.
89
+ // requireProviderBranch enforces that the expected providerConfig key is present; without it a
90
+ // misconfigured object like { provider: "openai" } (no providerConfig) would dereference undefined
91
+ // and crash with an opaque TypeError at runtime.
63
92
  if (config.ai.provider === "openai") {
64
93
  set(out, "ASKDB_AI_PROVIDER", "openai");
65
- applyOpenAiAi(out, config.ai.providerConfig.openai);
94
+ applyOpenAiAi(out, requireProviderBranch("openai", config.ai.providerConfig?.openai));
66
95
  }
67
96
  else if (config.ai.provider === "azure") {
68
97
  set(out, "ASKDB_AI_PROVIDER", "azure");
69
- applyAzureLikeAi(out, config.ai.providerConfig.azure);
98
+ applyAzureLikeAi(out, requireProviderBranch("azure", config.ai.providerConfig?.azure));
70
99
  }
71
100
  else if (config.ai.provider === "foundry") {
72
101
  // `@askdb/core` treats `foundry` like Azure for env parsing.
73
102
  set(out, "ASKDB_AI_PROVIDER", "foundry");
74
- applyAzureLikeAi(out, config.ai.providerConfig.foundry);
103
+ applyAzureLikeAi(out, requireProviderBranch("foundry", config.ai.providerConfig?.foundry));
75
104
  }
76
105
  else if (config.ai.provider === "google") {
77
106
  set(out, "ASKDB_AI_PROVIDER", "google");
78
- applyGoogleAi(out, config.ai.providerConfig.google);
107
+ applyGoogleAi(out, requireProviderBranch("google", config.ai.providerConfig?.google));
79
108
  }
80
109
  else if (config.ai.provider === "anthropic") {
81
- throw new Error("askdb.config: Anthropic AI provider is not supported yet.");
82
- }
83
- // --- Database ---
84
- if (config.database.provider !== "postgres") {
85
- throw new Error(`askdb.config: unsupported database.provider "${config.database.provider}".`);
86
- }
87
- set(out, "DATABASE_URL", resolveDatabaseUrl(config));
110
+ set(out, "ASKDB_AI_PROVIDER", "anthropic");
111
+ applyAnthropicAi(out, requireProviderBranch("anthropic", config.ai.providerConfig?.anthropic));
112
+ }
113
+ else {
114
+ // Custom/third-party provider: flatten to the universal ASKDB_AI_* keys that
115
+ // @askdb/ai's resolveBaseConfig honors for every registered adapter.
116
+ // Works end to end only when the host registry contains an adapter with this provider name.
117
+ set(out, "ASKDB_AI_PROVIDER", config.ai.provider);
118
+ const custom = config.ai.providerConfig?.custom;
119
+ set(out, "ASKDB_AI_API_KEY", custom?.apiKey);
120
+ set(out, "ASKDB_AI_BASE_URL", custom?.baseUrl);
121
+ set(out, "ASKDB_AI_MODEL", custom?.model);
122
+ }
123
+ applyReasoningAi(out, config.ai.reasoning);
88
124
  // --- Introspection ---
89
125
  const intro = config.introspection;
90
- // `DATABASE_URL` already reflects `database`. For Postgres introspection, set
91
- // `introspection.providerConfig.postgres.databaseUrl` only when you need a URL that
92
- // differs from the main app database; when omitted, live introspection reuses the same URL.
93
126
  if (intro.provider === "postgres") {
94
- const introUrl = intro.providerConfig?.postgres?.databaseUrl?.trim();
95
- if (introUrl) {
96
- set(out, "DATABASE_URL", introUrl);
97
- }
127
+ set(out, "ASKDB_INTROSPECT_POSTGRES_URL", intro.providerConfig?.postgres?.databaseUrl);
98
128
  }
99
129
  else if (intro.provider === "prisma") {
100
130
  // schemaPath lives in structured config (introspection.providerConfig.prisma.schemaPath);
@@ -196,6 +226,9 @@ export function flattenAskDbConfig(config) {
196
226
  if (config.studio?.listen?.port !== undefined && !Number.isNaN(config.studio.listen.port)) {
197
227
  set(out, "ASKDB_STUDIO_PORT", String(config.studio.listen.port));
198
228
  }
229
+ set(out, "ASKDB_STUDIO_EXECUTE_PROVIDER", config.studio?.execute?.provider);
230
+ set(out, "ASKDB_STUDIO_DATABASE_URL", config.studio?.execute?.databaseUrl);
231
+ set(out, "ASKDB_STUDIO_SQLITE_FILE", config.studio?.execute?.file);
199
232
  // --- HTTP API listen (canonical keys on runtime flat map) ---
200
233
  const httpListen = config.httpApi?.listen;
201
234
  if (httpListen?.port !== undefined && !Number.isNaN(httpListen.port)) {
@@ -1 +1 @@
1
- {"version":3,"file":"flatten.js","sourceRoot":"","sources":["../src/flatten.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flatten.js","sourceRoot":"","sources":["../src/flatten.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,14 +4,14 @@ export { bootstrapAskDbEnv, bootstrapAskDbRuntime } from "./bootstrap.js";
4
4
  export type { BootstrapAskDbEnvOptions } from "./bootstrap.js";
5
5
  export { env, requiredEnv } from "./env.js";
6
6
  export { getAskDbRuntimeConfig, } from "./runtime-config.js";
7
- export type { AskDbRuntimeConfig, AskDbRuntimeAiConfig, AskDbRuntimeIntrospectionConfig, AskDbRuntimeRagConfig, AskDbRuntimeRagEmbedderConfig, AskDbRuntimeLoggingConfig, AskDbRuntimeHttpApiConfig, AskDbRuntimeDevConfig, AskDbRuntimeModesConfig, AskDbRuntimeNlToSqlConfig, } from "./runtime-config.js";
7
+ export type { AskDbRuntimeConfig, AskDbRuntimeAiConfig, AskDbRuntimeIntrospectionConfig, AskDbRuntimeRagConfig, AskDbRuntimeRagEmbedderConfig, AskDbRuntimeLoggingConfig, AskDbRuntimeHttpApiConfig, AskDbRuntimeDevConfig, AskDbRuntimeModesConfig, AskDbRuntimeNlToSqlConfig, AskDbRuntimeStudioConfig, } from "./runtime-config.js";
8
8
  export { mergeAskDbFlatIntoEnvMap, resetAskDbRuntimeForTests, setAskDbRuntimeForTests, } from "./runtime-store.js";
9
9
  export { DEFAULT_AZURE_OPENAI_DEPLOYMENT, DEFAULT_INTROSPECT_OUTPUT_DIR, DEFAULT_LOCAL_POSTGRES_URL, DEFAULT_MOCK_RAG_EMBEDDING_DIMENSIONS, DEFAULT_OPENAI_CHAT_MODEL, DEFAULT_PGVECTOR_INDEX_STRATEGY, DEFAULT_RAG_EMBEDDING_MODEL, DEFAULT_RAG_FILE_BASE_PATH, defaultRagEmbeddingDimensions, } from "./defaults.js";
10
10
  export { defineConfig, isAskDbEnvProjection, ASKDB_ENV_PROJECTION } from "./projection.js";
11
11
  export type { AskDbEnvProjection } from "./projection.js";
12
12
  export { loadAskDbConfigProjection, loadAskDbConfigProjectionSync } from "./load-merge.js";
13
- export type { AskDbConfig, AskDbAiConfig, OpenaiAiConfig, AzureAiConfig, FoundryAiConfig, AnthropicAiConfig, GoogleAiConfig, OpenaiConfig, AzureConfig, FoundryConfig, AnthropicConfig, GoogleConfig, AskDbIntrospectionConfig, PostgresIntrospectionConfig, PrismaIntrospectionConfig, OpenaiRagEmbedderConfig, FileStoreConfig, MemoryStoreConfig, PgvectorStoreConfig, } from "./types.js";
13
+ export type { AskDbConfig, AskDbAiConfig, AskDbAiReasoningConfig, OpenaiAiConfig, AzureAiConfig, FoundryAiConfig, AnthropicAiConfig, GoogleAiConfig, OpenaiConfig, AzureConfig, FoundryConfig, AnthropicConfig, GoogleConfig, AskDbIntrospectionConfig, PostgresIntrospectionConfig, PrismaIntrospectionConfig, OpenaiRagEmbedderConfig, FileStoreConfig, MemoryStoreConfig, PgvectorStoreConfig, } from "./types.js";
14
14
  export { flattenAskDbConfig } from "./flatten.js";
15
- export { ASKDB_MODES_V1, ASKDB_LOG_LEVELS, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, ASKDB_AI_PROVIDERS, ASKDB_INTROSPECTION_PROVIDERS, ASKDB_DIALECTS, } from "./constants.js";
16
- export type { AskDbModeV1, AskDbLogLevel, AskDbRagEmbedder, AskDbRagStore, AskDbAiProviderId, AskDbIntrospectionProvider, AskDbDialectId, } from "./constants.js";
15
+ export { ASKDB_MODES_V1, ASKDB_LOG_LEVELS, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, ASKDB_AI_PROVIDERS, ASKDB_INTROSPECTION_PROVIDERS, ASKDB_DIALECTS, ASKDB_STUDIO_EXECUTE_PROVIDERS, ASKDB_REASONING_EFFORTS, } from "./constants.js";
16
+ export type { AskDbModeV1, AskDbLogLevel, AskDbRagEmbedder, AskDbRagStore, AskDbAiProviderId, AskDbIntrospectionProvider, AskDbDialectId, AskDbStudioExecuteProvider, AskDbReasoningEffort, } from "./constants.js";
17
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC3F,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAC/B,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,0BAA0B,EAC1B,qCAAqC,EACrC,yBAAyB,EACzB,+BAA+B,EAC/B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3F,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AAC3F,YAAY,EACV,WAAW,EACX,aAAa,EACb,cAAc,EACd,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,YAAY,EACZ,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,cAAc,GACf,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC3F,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAC/B,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,0BAA0B,EAC1B,qCAAqC,EACrC,yBAAyB,EACzB,+BAA+B,EAC/B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3F,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AAC3F,YAAY,EACV,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,YAAY,EACZ,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,8BAA8B,EAC9B,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,cAAc,EACd,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -7,5 +7,5 @@ export { DEFAULT_AZURE_OPENAI_DEPLOYMENT, DEFAULT_INTROSPECT_OUTPUT_DIR, DEFAULT
7
7
  export { defineConfig, isAskDbEnvProjection, ASKDB_ENV_PROJECTION } from "./projection.js";
8
8
  export { loadAskDbConfigProjection, loadAskDbConfigProjectionSync } from "./load-merge.js";
9
9
  export { flattenAskDbConfig } from "./flatten.js";
10
- export { ASKDB_MODES_V1, ASKDB_LOG_LEVELS, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, ASKDB_AI_PROVIDERS, ASKDB_INTROSPECTION_PROVIDERS, ASKDB_DIALECTS, } from "./constants.js";
10
+ export { ASKDB_MODES_V1, ASKDB_LOG_LEVELS, ASKDB_RAG_EMBEDDERS, ASKDB_RAG_STORES, ASKDB_AI_PROVIDERS, ASKDB_INTROSPECTION_PROVIDERS, ASKDB_DIALECTS, ASKDB_STUDIO_EXECUTE_PROVIDERS, ASKDB_REASONING_EFFORTS, } from "./constants.js";
11
11
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE1E,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAa7B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,0BAA0B,EAC1B,qCAAqC,EACrC,yBAAyB,EACzB,+BAA+B,EAC/B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AAsB3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,GACf,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE1E,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAc7B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,0BAA0B,EAC1B,qCAAqC,EACrC,yBAAyB,EACzB,+BAA+B,EAC/B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,MAAM,iBAAiB,CAAC;AAuB3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,8BAA8B,EAC9B,uBAAuB,GACxB,MAAM,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AskDbDialectId, AskDbIntrospectionProvider } from "./constants.js";
1
+ import type { AskDbDialectId, AskDbIntrospectionProvider, AskDbStudioExecuteProvider } from "./constants.js";
2
2
  import type { AskDbConfig } from "./types.js";
3
3
  /**
4
4
  * Typed AI runtime settings for `@askdb/core` (not `process.env`).
@@ -6,7 +6,8 @@ import type { AskDbConfig } from "./types.js";
6
6
  export type AskDbRuntimeAiConfig = {
7
7
  /**
8
8
  * Flat env-shaped map built from the runtime snapshot. Pass to
9
- * `resolveAskDbAiConfig`, `createAskDbLanguageModelFromEnv`, etc.
9
+ * `@askdb/ai` registry methods such as `resolveAiConfig` and
10
+ * `createLanguageModelFromEnv`.
10
11
  */
11
12
  aiEnv: Record<string, string | undefined>;
12
13
  };
@@ -32,29 +33,34 @@ export type AskDbRuntimeHttpApiConfig = {
32
33
  };
33
34
  export type AskDbRuntimeIntrospectionConfig = {
34
35
  provider: AskDbIntrospectionProvider;
36
+ /**
37
+ * Resolved Postgres connection URL when `provider === "postgres"`:
38
+ * `providerConfig.postgres.databaseUrl` → `ASKDB_INTROSPECT_POSTGRES_URL` env.
39
+ * `undefined` for non-Postgres providers.
40
+ */
41
+ postgresDatabaseUrl: string | undefined;
35
42
  /** Resolved from `introspection.providerConfig.prisma.schemaPath`; `undefined` triggers auto-discovery in `@askdb/prisma`. */
36
43
  prismaSchemaPath: string | undefined;
37
44
  /**
38
45
  * Resolved MySQL connection URL when `provider === "mysql"`:
39
- * `providerConfig.mysql.databaseUrl` → `ASKDB_INTROSPECT_MYSQL_URL` env → `DATABASE_URL` fallback.
46
+ * `providerConfig.mysql.databaseUrl` → `ASKDB_INTROSPECT_MYSQL_URL` env.
40
47
  * `undefined` for non-MySQL providers.
41
48
  */
42
49
  mysqlDatabaseUrl: string | undefined;
43
50
  /**
44
51
  * Resolved SQLite file path when `provider === "sqlite"`:
45
52
  * `providerConfig.sqlite.file` → `ASKDB_INTROSPECT_SQLITE_FILE` env.
46
- * No `DATABASE_URL` fallback — SQLite paths and URLs aren't interchangeable.
47
53
  * `undefined` for non-SQLite providers.
48
54
  */
49
55
  sqliteFile: string | undefined;
50
56
  /**
51
57
  * Resolved SQL Server connection URL when `provider === "sqlserver"`:
52
- * `providerConfig.sqlserver.databaseUrl` → `ASKDB_INTROSPECT_SQLSERVER_URL` env → `DATABASE_URL` fallback.
58
+ * `providerConfig.sqlserver.databaseUrl` → `ASKDB_INTROSPECT_SQLSERVER_URL` env.
53
59
  * `undefined` for non-SQL Server providers.
54
60
  */
55
61
  sqlserverDatabaseUrl: string | undefined;
56
- /** Resolved from `introspection.outputDir`; `undefined` means the package default (`./askdb/`) is used. */
57
- outputDir: string | undefined;
62
+ /** Resolved from `introspection.outputDir`; falls back to the package default (`./askdb/`). */
63
+ outputDir: string;
58
64
  };
59
65
  export type AskDbRuntimeDevConfig = {
60
66
  mockSql: string | undefined;
@@ -71,6 +77,20 @@ export type AskDbRuntimeNlToSqlConfig = {
71
77
  */
72
78
  dialect: AskDbDialectId | undefined;
73
79
  };
80
+ export type AskDbRuntimeStudioConfig = {
81
+ execute: {
82
+ /**
83
+ * Resolved execute provider. Falls back to the active introspection provider when it
84
+ * is a live engine (`postgres`, `mysql`, `sqlite`, `sqlserver`), then defaults to
85
+ * `"postgres"` for backward compatibility.
86
+ */
87
+ provider: AskDbStudioExecuteProvider;
88
+ /** Connection URL used by the Studio playground query runner for network databases. */
89
+ databaseUrl: string | undefined;
90
+ /** SQLite file path used when `provider === "sqlite"`. */
91
+ file: string | undefined;
92
+ };
93
+ };
74
94
  /**
75
95
  * Typed runtime view over the bootstrapped AskDB config snapshot.
76
96
  */
@@ -86,6 +106,7 @@ export type AskDbRuntimeConfig = {
86
106
  dev: AskDbRuntimeDevConfig;
87
107
  modes: AskDbRuntimeModesConfig;
88
108
  nlToSql: AskDbRuntimeNlToSqlConfig;
109
+ studio: AskDbRuntimeStudioConfig;
89
110
  };
90
111
  /**
91
112
  * Returns typed runtime configuration from the snapshot installed by {@link bootstrapAskDbEnv}.
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-config.d.ts","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,6BAA6B,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,EAAE,0BAA0B,CAAC;IACrC,8HAA8H;IAC9H,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,2GAA2G;IAC3G,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;;OAIG;IACH,OAAO,EAAE,cAAc,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC3C,qFAAqF;IACrF,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,EAAE,EAAE,oBAAoB,CAAC;IACzB,aAAa,EAAE,+BAA+B,CAAC;IAC/C,GAAG,EAAE,qBAAqB,CAAC;IAC3B,OAAO,EAAE,yBAAyB,CAAC;IACnC,OAAO,EAAE,yBAAyB,CAAC;IACnC,GAAG,EAAE,qBAAqB,CAAC;IAC3B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,OAAO,EAAE,yBAAyB,CAAC;CACpC,CAAC;AAQF;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,CA4F1D"}
1
+ {"version":3,"file":"runtime-config.d.ts","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { ASKDB_STUDIO_EXECUTE_PROVIDERS } from "./constants.js";
2
+ import { DEFAULT_INTROSPECT_OUTPUT_DIR } from "./defaults.js";
1
3
  import { flatToAiEnv, getAskDbRuntimeStore } from "./runtime-store.js";
2
4
  function pickFlat(flat, key) {
3
5
  const v = flat[key];
@@ -26,11 +28,13 @@ export function getAskDbRuntimeConfig() {
26
28
  // Per-engine connection lookup. We deliberately only resolve the field for
27
29
  // the active provider so the runtime view stays minimal and other branches
28
30
  // surface `undefined` (cheap exhaustiveness check at the consumer).
29
- const databaseUrlFallback = pickFlat(flat, "DATABASE_URL");
31
+ const postgresDatabaseUrl = structured.introspection.provider === "postgres"
32
+ ? structured.introspection.providerConfig?.postgres?.databaseUrl?.trim() ||
33
+ pickFlat(flat, "ASKDB_INTROSPECT_POSTGRES_URL")
34
+ : undefined;
30
35
  const mysqlDatabaseUrl = structured.introspection.provider === "mysql"
31
36
  ? structured.introspection.providerConfig?.mysql?.databaseUrl?.trim() ||
32
- pickFlat(flat, "ASKDB_INTROSPECT_MYSQL_URL") ||
33
- databaseUrlFallback
37
+ pickFlat(flat, "ASKDB_INTROSPECT_MYSQL_URL")
34
38
  : undefined;
35
39
  const sqliteFile = structured.introspection.provider === "sqlite"
36
40
  ? structured.introspection.providerConfig?.sqlite?.file?.trim() ||
@@ -38,8 +42,7 @@ export function getAskDbRuntimeConfig() {
38
42
  : undefined;
39
43
  const sqlserverDatabaseUrl = structured.introspection.provider === "sqlserver"
40
44
  ? structured.introspection.providerConfig?.sqlserver?.databaseUrl?.trim() ||
41
- pickFlat(flat, "ASKDB_INTROSPECT_SQLSERVER_URL") ||
42
- databaseUrlFallback
45
+ pickFlat(flat, "ASKDB_INTROSPECT_SQLSERVER_URL")
43
46
  : undefined;
44
47
  return {
45
48
  structured,
@@ -49,11 +52,14 @@ export function getAskDbRuntimeConfig() {
49
52
  },
50
53
  introspection: {
51
54
  provider: structured.introspection.provider,
55
+ postgresDatabaseUrl,
52
56
  prismaSchemaPath: prismaSchemaPathRaw || undefined,
53
57
  mysqlDatabaseUrl,
54
58
  sqliteFile,
55
59
  sqlserverDatabaseUrl,
56
- outputDir: structured.introspection.outputDir?.trim() || undefined,
60
+ outputDir: pickFlat(flat, "ASKDB_INTROSPECT_OUT") ??
61
+ structured.introspection.outputDir?.trim() ??
62
+ DEFAULT_INTROSPECT_OUTPUT_DIR,
57
63
  },
58
64
  rag: {
59
65
  embedder: {
@@ -85,6 +91,70 @@ export function getAskDbRuntimeConfig() {
85
91
  nlToSql: {
86
92
  dialect: structured.dialect,
87
93
  },
94
+ studio: {
95
+ execute: resolveStudioExecuteConfig(structured, flat),
96
+ },
88
97
  };
89
98
  }
99
+ function resolveStudioExecuteConfig(structured, flat) {
100
+ // 1. Explicit provider from structured config or env.
101
+ const providerRaw = structured.studio?.execute?.provider ??
102
+ pickFlat(flat, "ASKDB_STUDIO_EXECUTE_PROVIDER");
103
+ let provider;
104
+ if (providerRaw !== undefined && ASKDB_STUDIO_EXECUTE_PROVIDERS.includes(providerRaw)) {
105
+ provider = providerRaw;
106
+ }
107
+ else {
108
+ // 2. Fall back to introspection provider when it is a live execute provider.
109
+ const introspectionProvider = structured.introspection?.provider;
110
+ if (introspectionProvider !== undefined && ASKDB_STUDIO_EXECUTE_PROVIDERS.includes(introspectionProvider)) {
111
+ provider = introspectionProvider;
112
+ }
113
+ else {
114
+ // 3. Default to postgres for backward compatibility.
115
+ provider = "postgres";
116
+ }
117
+ }
118
+ // Connection resolution — each provider draws from its own structured field
119
+ // first, then the relevant flat env key.
120
+ let databaseUrl;
121
+ let file;
122
+ if (provider === "postgres") {
123
+ databaseUrl =
124
+ structured.studio?.execute?.databaseUrl?.trim() ||
125
+ pickFlat(flat, "ASKDB_STUDIO_DATABASE_URL") ||
126
+ (structured.introspection?.provider === "postgres"
127
+ ? structured.introspection.providerConfig?.postgres?.databaseUrl?.trim() ||
128
+ pickFlat(flat, "ASKDB_INTROSPECT_POSTGRES_URL")
129
+ : undefined);
130
+ }
131
+ else if (provider === "mysql") {
132
+ databaseUrl =
133
+ structured.studio?.execute?.databaseUrl?.trim() ||
134
+ pickFlat(flat, "ASKDB_STUDIO_DATABASE_URL") ||
135
+ (structured.introspection?.provider === "mysql"
136
+ ? structured.introspection.providerConfig?.mysql?.databaseUrl?.trim() ||
137
+ pickFlat(flat, "ASKDB_INTROSPECT_MYSQL_URL")
138
+ : undefined);
139
+ }
140
+ else if (provider === "sqlserver") {
141
+ databaseUrl =
142
+ structured.studio?.execute?.databaseUrl?.trim() ||
143
+ pickFlat(flat, "ASKDB_STUDIO_DATABASE_URL") ||
144
+ (structured.introspection?.provider === "sqlserver"
145
+ ? structured.introspection.providerConfig?.sqlserver?.databaseUrl?.trim() ||
146
+ pickFlat(flat, "ASKDB_INTROSPECT_SQLSERVER_URL")
147
+ : undefined);
148
+ }
149
+ else if (provider === "sqlite") {
150
+ file =
151
+ structured.studio?.execute?.file?.trim() ||
152
+ pickFlat(flat, "ASKDB_STUDIO_SQLITE_FILE") ||
153
+ (structured.introspection?.provider === "sqlite"
154
+ ? structured.introspection.providerConfig?.sqlite?.file?.trim() ||
155
+ pickFlat(flat, "ASKDB_INTROSPECT_SQLITE_FILE")
156
+ : undefined);
157
+ }
158
+ return { provider, databaseUrl, file };
159
+ }
90
160
  //# sourceMappingURL=runtime-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-config.js","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-config.js","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { AskDbDialectId, AskDbLogLevel, AskDbModeV1, AskDbRagEmbedder, AskDbRagStore } from "./constants.js";
1
+ import type { AskDbDialectId, AskDbLogLevel, AskDbModeV1, AskDbRagEmbedder, AskDbRagStore, AskDbReasoningEffort, AskDbStudioExecuteProvider } from "./constants.js";
2
2
  /**
3
- * Authoring-time AskDB configuration: nested groups (`ai`, `database`, `introspection`, `rag`, …)
3
+ * Authoring-time AskDB configuration: nested groups (`ai`, `introspection`, `rag`, …)
4
4
  * passed to {@link defineConfig} in `askdb.config.*`, then flattened to canonical env keys for the runtime snapshot.
5
5
  *
6
6
  * Use with TypeScript's `satisfies` operator to validate the object literal without widening it, e.g.
@@ -20,6 +20,13 @@ export type AzureConfig = {
20
20
  /** When unset, `flattenAskDbConfig` applies the default Azure deployment name (see `@askdb/config` defaults). */
21
21
  model?: string;
22
22
  apiVersion?: string;
23
+ /**
24
+ * Underlying model id backing `model` (the deployment name), e.g. `"gpt-5"`
25
+ * or `"o3-mini"`. Deployment names are arbitrary aliases chosen at deploy
26
+ * time, so AskDB can't always infer reasoning-model support from `model`
27
+ * alone — set this when your deployment name doesn't match the model id.
28
+ */
29
+ modelFamily?: string;
23
30
  };
24
31
  export type FoundryConfig = {
25
32
  apiKey?: string;
@@ -27,15 +34,40 @@ export type FoundryConfig = {
27
34
  model?: string;
28
35
  apiVersion?: string;
29
36
  baseUrl?: string;
37
+ /** See {@link AzureConfig.modelFamily}. */
38
+ modelFamily?: string;
39
+ };
40
+ export type AnthropicConfig = {
41
+ apiKey?: string;
42
+ baseUrl?: string;
43
+ /** When unset, `flattenAskDbConfig` applies the default Anthropic chat model (see `@askdb/config` defaults). */
44
+ model?: string;
30
45
  };
31
- /** Placeholder for future providers — not flattened today. */
32
- export type AnthropicConfig = Record<string, never>;
33
46
  export type GoogleConfig = {
34
47
  apiKey?: string;
35
48
  baseUrl?: string;
36
49
  /** When unset, `flattenAskDbConfig` applies the default Gemini chat model (see `@askdb/config` defaults). */
37
50
  model?: string;
38
51
  };
52
+ /**
53
+ * Provider-portable reasoning/latency effort for AskDB model calls. Unset
54
+ * (the default) preserves current behavior: no reasoning `providerOptions`
55
+ * are sent, so the provider/model's own default applies.
56
+ */
57
+ export type AskDbAiReasoningConfig = {
58
+ /** Global default applied to every AskDB model-call site unless overridden below. */
59
+ effort?: AskDbReasoningEffort;
60
+ /**
61
+ * Override for NL→SQL generation calls. This is the accuracy-sensitive
62
+ * path — leave unset (provider default) or use `"medium"`/`"high"`.
63
+ */
64
+ nlToSql?: AskDbReasoningEffort;
65
+ /**
66
+ * Override for enrichment/suggestion calls. These are non-critical, so
67
+ * it's safe to bias toward `"low"`/`"minimal"` for latency/cost.
68
+ */
69
+ enrichment?: AskDbReasoningEffort;
70
+ };
39
71
  /** All provider-specific configs as optional fields — intersected per-branch to require only the active provider's key. */
40
72
  export type AiProviderConfigs = {
41
73
  openai?: OpenaiConfig;
@@ -50,6 +82,7 @@ export type OpenaiAiConfig = {
50
82
  providerConfig: AiProviderConfigs & {
51
83
  openai: OpenaiConfig;
52
84
  };
85
+ reasoning?: AskDbAiReasoningConfig;
53
86
  };
54
87
  /** Discriminated union branch for `ai` when `provider` is `"azure"`. */
55
88
  export type AzureAiConfig = {
@@ -57,6 +90,7 @@ export type AzureAiConfig = {
57
90
  providerConfig: AiProviderConfigs & {
58
91
  azure: AzureConfig;
59
92
  };
93
+ reasoning?: AskDbAiReasoningConfig;
60
94
  };
61
95
  /** Discriminated union branch for `ai` when `provider` is `"foundry"`. */
62
96
  export type FoundryAiConfig = {
@@ -64,23 +98,57 @@ export type FoundryAiConfig = {
64
98
  providerConfig: AiProviderConfigs & {
65
99
  foundry: FoundryConfig;
66
100
  };
101
+ reasoning?: AskDbAiReasoningConfig;
67
102
  };
68
- /** Placeholder — not yet supported; `flattenAskDbConfig` throws. */
103
+ /** Discriminated union branch for `ai` when `provider` is `"anthropic"`. */
69
104
  export type AnthropicAiConfig = {
70
105
  provider: "anthropic";
71
106
  providerConfig: AiProviderConfigs & {
72
107
  anthropic: AnthropicConfig;
73
108
  };
109
+ reasoning?: AskDbAiReasoningConfig;
74
110
  };
75
- /** Placeholder — not yet supported; `flattenAskDbConfig` throws. */
111
+ /** Discriminated union branch for `ai` when `provider` is `"google"`. */
76
112
  export type GoogleAiConfig = {
77
113
  provider: "google";
78
114
  providerConfig: AiProviderConfigs & {
79
115
  google: GoogleConfig;
80
116
  };
117
+ reasoning?: AskDbAiReasoningConfig;
81
118
  };
82
- /** Discriminated union of all supported (and placeholder) AI provider branches. */
83
- export type AskDbAiConfig = OpenaiAiConfig | AzureAiConfig | FoundryAiConfig | AnthropicAiConfig | GoogleAiConfig;
119
+ /** Generic connection settings for a provider AskDB has no dedicated branch for.
120
+ * Flattened to the universal ASKDB_AI_* keys; works end to end only when the
121
+ * consuming registry has an adapter registered under this provider name. */
122
+ export type CustomProviderConfig = {
123
+ apiKey?: string;
124
+ baseUrl?: string;
125
+ model?: string;
126
+ };
127
+ /** Branch for custom/third-party providers. `(string & {})` preserves literal
128
+ * autocomplete for the known providers while accepting any other string.
129
+ *
130
+ * **Type-level hole**: TypeScript cannot exclude specific string literals from
131
+ * `string & {}`, so every known provider literal (`"openai"`, `"azure"`, …) is
132
+ * technically assignable to this branch as well. As a result, a misconfigured
133
+ * object like `{ provider: "openai" }` (no `providerConfig`) compiles without
134
+ * error. `flattenAskDbConfig` closes this gap at runtime: it calls
135
+ * `requireProviderBranch` in each known-provider branch, which throws a clear
136
+ * `askdb.config: ai.providerConfig.<provider> is required …` error instead of
137
+ * crashing with a raw `TypeError` when the expected branch is absent. */
138
+ export type CustomAiConfig = {
139
+ /** Any provider string not covered by a first-party branch. Works end to end
140
+ * only when the host registry has an adapter registered under this name.
141
+ * See the three-tier model: known literal (zero code) → custom string + registered
142
+ * adapter (~40 lines) → BYO `LanguageModel` via `ask({ model })` (no config). */
143
+ provider: string & {};
144
+ providerConfig?: {
145
+ custom?: CustomProviderConfig;
146
+ };
147
+ reasoning?: AskDbAiReasoningConfig;
148
+ };
149
+ /** Discriminated union of all supported AI provider branches plus the generic
150
+ * custom-provider escape hatch for third-party or host-registered adapters. */
151
+ export type AskDbAiConfig = OpenaiAiConfig | AzureAiConfig | FoundryAiConfig | AnthropicAiConfig | GoogleAiConfig | CustomAiConfig;
84
152
  export type OpenaiRagEmbedderConfig = {
85
153
  model?: string;
86
154
  /** Raw env string or number; positive integer parsed in {@link flattenAskDbConfig}, else derived from `model`. */
@@ -108,8 +176,8 @@ export type PgvectorStoreConfig = {
108
176
  export type IntrospectionProviderConfigs = {
109
177
  postgres?: {
110
178
  /**
111
- * When omitted or blank, live introspection reuses the resolved `DATABASE_URL` from the
112
- * `database` section. Set this only for an introspection-only URL.
179
+ * Postgres connection URL for live introspection (maps to `ASKDB_INTROSPECT_POSTGRES_URL`).
180
+ * When omitted, pass `--url` to `askdb introspect` or set `ASKDB_INTROSPECT_POSTGRES_URL` in env.
113
181
  */
114
182
  databaseUrl?: string;
115
183
  };
@@ -124,9 +192,7 @@ export type IntrospectionProviderConfigs = {
124
192
  mysql?: {
125
193
  /**
126
194
  * MySQL connection URL (e.g. `mysql://user:pass@host:port/database`).
127
- * When omitted, `flattenAskDbConfig` falls back to the top-level `DATABASE_URL`
128
- * resolved from the `database` section / env, since the `database` block remains
129
- * Postgres-only today.
195
+ * When omitted, pass `--url` to `askdb introspect` or set `ASKDB_INTROSPECT_MYSQL_URL` in env.
130
196
  */
131
197
  databaseUrl?: string;
132
198
  };
@@ -141,8 +207,8 @@ export type IntrospectionProviderConfigs = {
141
207
  sqlserver?: {
142
208
  /**
143
209
  * Microsoft SQL Server connection URL (mssql URI form or the equivalent
144
- * `Server=...;` connection string). When omitted, falls back to
145
- * `DATABASE_URL`, same as the MySQL branch.
210
+ * `Server=...;` connection string). When omitted, pass `--url` to `askdb introspect`
211
+ * or set `ASKDB_INTROSPECT_SQLSERVER_URL` in env.
146
212
  */
147
213
  databaseUrl?: string;
148
214
  };
@@ -203,25 +269,12 @@ export type AskDbIntrospectionConfig = PostgresIntrospectionConfig | PrismaIntro
203
269
  * Root shape for `export default defineConfig({ ... })` in `askdb.config.*`.
204
270
  *
205
271
  * - **`ai`**: LLM provider discriminated union — selecting `provider` determines which `providerConfig` branch is required.
206
- * - **`database`**: primary app DB (Postgres today); supplies default `DATABASE_URL`.
207
- * - **`introspection`**: target engine for `askdb introspect` (postgres / prisma / mysql / sqlite / sqlserver) — selecting `provider` determines which `providerConfig` branch is valid.
272
+ * - **`introspection`**: target engine for `askdb introspect` (postgres / prisma / mysql / sqlite / sqlserver) — selecting `provider` determines which `providerConfig` branch is valid. Each branch holds the connection URL/path for that engine.
208
273
  * - **`rag`**: embedder + store branches flattened to `ASKDB_RAG_*` / `ASKDB_PGVECTOR_URL` / file paths.
209
274
  * - **`logging` | `modes` | `host`**: optional operational defaults.
210
275
  */
211
276
  export type AskDbConfig = {
212
277
  ai: AskDbAiConfig;
213
- database: {
214
- provider: "postgres";
215
- providerConfig: {
216
- /**
217
- * When unset/blank, `flattenAskDbConfig` uses the package default local Postgres URL.
218
- * Use `env("DATABASE_URL")` (or another key) in `askdb.config.*` to supply a URL from `.env`.
219
- */
220
- postgres: {
221
- databaseUrl?: string;
222
- };
223
- };
224
- };
225
278
  introspection: AskDbIntrospectionConfig;
226
279
  /**
227
280
  * Override the NL→SQL dialect. When unset, the dialect is inferred from the
@@ -264,12 +317,28 @@ export type AskDbConfig = {
264
317
  dev?: {
265
318
  mockSql?: string;
266
319
  };
267
- /** Studio browser server listen defaults. */
320
+ /** Studio browser server listen and query-execution defaults. */
268
321
  studio?: {
269
322
  listen?: {
270
323
  host?: string;
271
324
  port?: number;
272
325
  };
326
+ /** Query execution against a live database from the Studio playground. */
327
+ execute?: {
328
+ /**
329
+ * Explicit live-execute provider. When omitted, Studio falls back to the active
330
+ * introspection provider when it is a live engine, then defaults to `"postgres"`.
331
+ * Maps to `ASKDB_STUDIO_EXECUTE_PROVIDER`.
332
+ */
333
+ provider?: AskDbStudioExecuteProvider;
334
+ /** Connection URL used by `POST /api/execute` for network databases (maps to `ASKDB_STUDIO_DATABASE_URL`). */
335
+ databaseUrl?: string;
336
+ /**
337
+ * SQLite file path used by `POST /api/execute` when `provider === "sqlite"`.
338
+ * Maps to `ASKDB_STUDIO_SQLITE_FILE`.
339
+ */
340
+ file?: string;
341
+ };
273
342
  };
274
343
  /** HTTP API server defaults (first-party `apps/http-api`). */
275
344
  httpApi?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@askdb/config",
3
- "version": "0.3.0-beta.5",
3
+ "version": "1.0.0-beta.11",
4
4
  "description": "AskDB configuration helpers: Prisma-style env() and askdb.config file discovery for first-party apps.",
5
5
  "keywords": [
6
6
  "askdb",
@@ -25,7 +25,6 @@
25
25
  ".": {
26
26
  "types": "./dist/index.d.ts",
27
27
  "import": "./dist/index.js",
28
- "require": "./dist/index.js",
29
28
  "default": "./dist/index.js"
30
29
  }
31
30
  },
@@ -36,15 +35,15 @@
36
35
  "NOTICE"
37
36
  ],
38
37
  "engines": {
39
- "node": ">=20"
38
+ "node": ">=22.12"
40
39
  },
41
40
  "dependencies": {
42
- "dotenv": "^16.6.1",
43
- "jiti": "^2.4.2"
41
+ "dotenv": "^17.4.2",
42
+ "jiti": "^2.7.0"
44
43
  },
45
44
  "devDependencies": {
46
- "typescript": "^5.7.3",
47
- "vitest": "^3.0.9"
45
+ "typescript": "^6.0.3",
46
+ "vitest": "^4.1.10"
48
47
  },
49
48
  "scripts": {
50
49
  "build": "tsc -p tsconfig.build.json",