@askdb/config 0.3.0-beta.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/LICENSE +201 -0
- package/NOTICE +10 -0
- package/README.md +97 -0
- package/dist/bootstrap.d.ts +31 -0
- package/dist/bootstrap.d.ts.map +1 -0
- package/dist/bootstrap.js +108 -0
- package/dist/bootstrap.js.map +1 -0
- package/dist/constants.d.ts +20 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +22 -0
- package/dist/constants.js.map +1 -0
- package/dist/defaults.d.ts +20 -0
- package/dist/defaults.d.ts.map +1 -0
- package/dist/defaults.js +46 -0
- package/dist/defaults.js.map +1 -0
- package/dist/discover.d.ts +15 -0
- package/dist/discover.d.ts.map +1 -0
- package/dist/discover.js +29 -0
- package/dist/discover.js.map +1 -0
- package/dist/env.d.ts +11 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +24 -0
- package/dist/env.js.map +1 -0
- package/dist/flatten.d.ts +7 -0
- package/dist/flatten.d.ts.map +1 -0
- package/dist/flatten.js +228 -0
- package/dist/flatten.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/load-merge.d.ts +18 -0
- package/dist/load-merge.d.ts.map +1 -0
- package/dist/load-merge.js +52 -0
- package/dist/load-merge.js.map +1 -0
- package/dist/projection.d.ts +22 -0
- package/dist/projection.d.ts.map +1 -0
- package/dist/projection.js +32 -0
- package/dist/projection.js.map +1 -0
- package/dist/runtime-config.d.ts +59 -0
- package/dist/runtime-config.d.ts.map +1 -0
- package/dist/runtime-config.js +60 -0
- package/dist/runtime-config.js.map +1 -0
- package/dist/runtime-store.d.ts +21 -0
- package/dist/runtime-store.d.ts.map +1 -0
- package/dist/runtime-store.js +40 -0
- package/dist/runtime-store.js.map +1 -0
- package/dist/types.d.ts +169 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { AskDbConfig } from "./types.js";
|
|
2
|
+
export type AskDbRuntimeStore = {
|
|
3
|
+
readonly structured: AskDbConfig;
|
|
4
|
+
/** Canonical string map from {@link flattenAskDbConfig} (same keys as former merged `process.env`). */
|
|
5
|
+
readonly flat: Readonly<Record<string, string>>;
|
|
6
|
+
};
|
|
7
|
+
export declare function setAskDbRuntime(data: AskDbRuntimeStore): void;
|
|
8
|
+
export declare function clearAskDbRuntime(): void;
|
|
9
|
+
export declare function getAskDbRuntimeStore(): AskDbRuntimeStore;
|
|
10
|
+
/** Build an env-shaped map for `@askdb/core` from the flattened runtime snapshot (not `process.env`). */
|
|
11
|
+
export declare function flatToAiEnv(flat: Readonly<Record<string, string>>): Record<string, string | undefined>;
|
|
12
|
+
/**
|
|
13
|
+
* Merge AskDB flat keys into a base env map (e.g. for spawning child processes).
|
|
14
|
+
* Does not read `process.env` itself.
|
|
15
|
+
*/
|
|
16
|
+
export declare function mergeAskDbFlatIntoEnvMap(base: NodeJS.ProcessEnv, flat: Readonly<Record<string, string>>): NodeJS.ProcessEnv;
|
|
17
|
+
/** @internal Tests only — replaces the runtime store without loading from disk. */
|
|
18
|
+
export declare function setAskDbRuntimeForTests(data: AskDbRuntimeStore): void;
|
|
19
|
+
/** @internal Tests only. */
|
|
20
|
+
export declare function resetAskDbRuntimeForTests(): void;
|
|
21
|
+
//# sourceMappingURL=runtime-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-store.d.ts","sourceRoot":"","sources":["../src/runtime-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;IACjC,uGAAuG;IACvG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACjD,CAAC;AAIF,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAE7D;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,CAQxD;AAED,yGAAyG;AACzG,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAEtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,CAAC,UAAU,EACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACrC,MAAM,CAAC,UAAU,CAQnB;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAErE;AAED,4BAA4B;AAC5B,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
let stored;
|
|
2
|
+
export function setAskDbRuntime(data) {
|
|
3
|
+
stored = data;
|
|
4
|
+
}
|
|
5
|
+
export function clearAskDbRuntime() {
|
|
6
|
+
stored = undefined;
|
|
7
|
+
}
|
|
8
|
+
export function getAskDbRuntimeStore() {
|
|
9
|
+
if (!stored) {
|
|
10
|
+
throw new Error("AskDB runtime is not initialized. Call bootstrapAskDbEnv() (or bootstrapAskDbRuntime()) from @askdb/config after startup, " +
|
|
11
|
+
"typically with the project cwd, and ensure askdb.config.* exists.");
|
|
12
|
+
}
|
|
13
|
+
return stored;
|
|
14
|
+
}
|
|
15
|
+
/** Build an env-shaped map for `@askdb/core` from the flattened runtime snapshot (not `process.env`). */
|
|
16
|
+
export function flatToAiEnv(flat) {
|
|
17
|
+
return { ...flat };
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Merge AskDB flat keys into a base env map (e.g. for spawning child processes).
|
|
21
|
+
* Does not read `process.env` itself.
|
|
22
|
+
*/
|
|
23
|
+
export function mergeAskDbFlatIntoEnvMap(base, flat) {
|
|
24
|
+
const out = { ...base };
|
|
25
|
+
for (const [k, v] of Object.entries(flat)) {
|
|
26
|
+
if (v.trim() !== "") {
|
|
27
|
+
out[k] = v;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return out;
|
|
31
|
+
}
|
|
32
|
+
/** @internal Tests only — replaces the runtime store without loading from disk. */
|
|
33
|
+
export function setAskDbRuntimeForTests(data) {
|
|
34
|
+
stored = data;
|
|
35
|
+
}
|
|
36
|
+
/** @internal Tests only. */
|
|
37
|
+
export function resetAskDbRuntimeForTests() {
|
|
38
|
+
stored = undefined;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=runtime-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-store.js","sourceRoot":"","sources":["../src/runtime-store.ts"],"names":[],"mappings":"AAQA,IAAI,MAAqC,CAAC;AAE1C,MAAM,UAAU,eAAe,CAAC,IAAuB;IACrD,MAAM,GAAG,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,SAAS,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,4HAA4H;YAC1H,mEAAmE,CACtE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,WAAW,CAAC,IAAsC;IAChE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAAuB,EACvB,IAAsC;IAEtC,MAAM,GAAG,GAAsB,EAAE,GAAG,IAAI,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,uBAAuB,CAAC,IAAuB;IAC7D,MAAM,GAAG,IAAI,CAAC;AAChB,CAAC;AAED,4BAA4B;AAC5B,MAAM,UAAU,yBAAyB;IACvC,MAAM,GAAG,SAAS,CAAC;AACrB,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import type { AskDbAiProviderId, AskDbIntrospectionProvider, AskDbLogLevel, AskDbModeV1, AskDbRagEmbedder, AskDbRagStore } from "./constants.js";
|
|
2
|
+
/**
|
|
3
|
+
* Authoring-time AskDB configuration: nested groups (`ai`, `database`, `introspection`, `rag`, …)
|
|
4
|
+
* passed to {@link defineConfig} in `askdb.config.*`, then flattened to canonical env keys for the runtime snapshot.
|
|
5
|
+
*
|
|
6
|
+
* Use with TypeScript’s `satisfies` operator to validate the object literal without widening it, e.g.
|
|
7
|
+
* `defineConfig({ ... } satisfies AskDbConfig)` or `const cfg = { ... } satisfies AskDbConfig`.
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
10
|
+
export type OpenaiConfig = {
|
|
11
|
+
apiKey?: string;
|
|
12
|
+
baseUrl?: string;
|
|
13
|
+
/** When unset, `flattenAskDbConfig` applies the default OpenAI chat model (see `@askdb/config` defaults). */
|
|
14
|
+
model?: string;
|
|
15
|
+
};
|
|
16
|
+
export type AzureConfig = {
|
|
17
|
+
apiKey?: string;
|
|
18
|
+
secondaryApiKey?: string;
|
|
19
|
+
baseUrl?: string;
|
|
20
|
+
/** When unset, `flattenAskDbConfig` applies the default Azure deployment name (see `@askdb/config` defaults). */
|
|
21
|
+
model?: string;
|
|
22
|
+
apiVersion?: string;
|
|
23
|
+
};
|
|
24
|
+
export type FoundryConfig = {
|
|
25
|
+
apiKey?: string;
|
|
26
|
+
secondaryApiKey?: string;
|
|
27
|
+
model?: string;
|
|
28
|
+
apiVersion?: string;
|
|
29
|
+
baseUrl?: string;
|
|
30
|
+
};
|
|
31
|
+
/** Placeholder for future providers — not flattened today. */
|
|
32
|
+
export type AnthropicConfig = Record<string, never>;
|
|
33
|
+
export type GoogleConfig = Record<string, never>;
|
|
34
|
+
export type OpenaiRagEmbedderConfig = {
|
|
35
|
+
model?: string;
|
|
36
|
+
/** Raw env string or number; positive integer parsed in {@link flattenAskDbConfig}, else derived from `model`. */
|
|
37
|
+
dimension?: string | number;
|
|
38
|
+
apiKey?: string;
|
|
39
|
+
baseUrl?: string;
|
|
40
|
+
};
|
|
41
|
+
export type FileStoreConfig = {
|
|
42
|
+
/** Passed to `createFileStore({ basePath })` — vector files use `<basePath>.embeddings.*`. */
|
|
43
|
+
basePath?: string;
|
|
44
|
+
autoFlush?: boolean;
|
|
45
|
+
};
|
|
46
|
+
/** In-memory store has no env-backed options today. */
|
|
47
|
+
export type MemoryStoreConfig = Record<string, never>;
|
|
48
|
+
export type PgvectorStoreConfig = {
|
|
49
|
+
/** Connection string for pgvector (maps to `ASKDB_PGVECTOR_URL`). */
|
|
50
|
+
databaseUrl?: string;
|
|
51
|
+
table?: string;
|
|
52
|
+
/** Positive integer from env or number; when unset, matches resolved RAG embedder dimensions in {@link flattenAskDbConfig}. */
|
|
53
|
+
dimensions?: string | number;
|
|
54
|
+
/** When unset, {@link flattenAskDbConfig} uses `hnsw`. */
|
|
55
|
+
indexStrategy?: string;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Root shape for `export default defineConfig({ ... })` in `askdb.config.*`.
|
|
59
|
+
*
|
|
60
|
+
* - **`ai`**: LLM provider + discriminated `providerConfig` branch (`openai` | `azure` | `foundry`).
|
|
61
|
+
* - **`database`**: primary app DB (Postgres today); supplies default `DATABASE_URL`.
|
|
62
|
+
* - **`introspection`**: Postgres vs Prisma engine; Postgres may omit `databaseUrl` to reuse `database`.
|
|
63
|
+
* - **`rag`**: embedder + store branches flattened to `ASKDB_RAG_*` / `ASKDB_PGVECTOR_URL` / file paths.
|
|
64
|
+
* - **`logging` | `modes` | `host`**: optional operational defaults.
|
|
65
|
+
*/
|
|
66
|
+
export type AskDbConfig = {
|
|
67
|
+
ai: {
|
|
68
|
+
provider: AskDbAiProviderId;
|
|
69
|
+
providerConfig: {
|
|
70
|
+
openai?: OpenaiConfig;
|
|
71
|
+
azure?: AzureConfig;
|
|
72
|
+
foundry?: FoundryConfig;
|
|
73
|
+
anthropic?: AnthropicConfig;
|
|
74
|
+
google?: GoogleConfig;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
database: {
|
|
78
|
+
provider: "postgres";
|
|
79
|
+
providerConfig: {
|
|
80
|
+
/**
|
|
81
|
+
* When unset/blank, `flattenAskDbConfig` uses the package default local Postgres URL.
|
|
82
|
+
* Use `env("DATABASE_URL")` (or another key) in `askdb.config.*` to supply a URL from `.env`.
|
|
83
|
+
*/
|
|
84
|
+
postgres: {
|
|
85
|
+
databaseUrl?: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
introspection: {
|
|
90
|
+
provider: AskDbIntrospectionProvider;
|
|
91
|
+
providerConfig: {
|
|
92
|
+
postgres?: {
|
|
93
|
+
/**
|
|
94
|
+
* When omitted or blank, live introspection reuses the resolved `DATABASE_URL` from the
|
|
95
|
+
* `database` section. Set this only for an introspection-only URL.
|
|
96
|
+
*/
|
|
97
|
+
databaseUrl?: string;
|
|
98
|
+
};
|
|
99
|
+
prisma?: {
|
|
100
|
+
schemaPath?: string;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Default introspection output directory (maps to `ASKDB_INTROSPECT_OUT`).
|
|
105
|
+
* When unset/blank, `flattenAskDbConfig` uses the package default `./askdb/`.
|
|
106
|
+
*/
|
|
107
|
+
outputDir?: string;
|
|
108
|
+
};
|
|
109
|
+
rag: {
|
|
110
|
+
embedder: AskDbRagEmbedder;
|
|
111
|
+
embedderConfig: {
|
|
112
|
+
openai?: OpenaiRagEmbedderConfig;
|
|
113
|
+
};
|
|
114
|
+
store: AskDbRagStore;
|
|
115
|
+
storeConfig: {
|
|
116
|
+
file?: FileStoreConfig;
|
|
117
|
+
memory?: MemoryStoreConfig;
|
|
118
|
+
pgvector?: PgvectorStoreConfig;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
logging?: {
|
|
122
|
+
level?: AskDbLogLevel;
|
|
123
|
+
correlationId?: string;
|
|
124
|
+
/** Maps to `ASKDB_LOG_FILE`. */
|
|
125
|
+
logFile?: string;
|
|
126
|
+
/** When true, maps to `ASKDB_LOG_STDOUT=true`. */
|
|
127
|
+
logStdout?: boolean;
|
|
128
|
+
};
|
|
129
|
+
modes?: {
|
|
130
|
+
askdbMode?: AskDbModeV1;
|
|
131
|
+
omitSensitiveFromPrompt?: boolean;
|
|
132
|
+
};
|
|
133
|
+
host?: {
|
|
134
|
+
schemaPath?: string;
|
|
135
|
+
schemaJson?: string;
|
|
136
|
+
};
|
|
137
|
+
/** Deterministic NL→SQL for tests / local dev (maps to `ASKDB_MOCK_SQL`). */
|
|
138
|
+
dev?: {
|
|
139
|
+
mockSql?: string;
|
|
140
|
+
};
|
|
141
|
+
/** Default listen options for `askdb-tui` / other CLIs that need a model id. */
|
|
142
|
+
tui?: {
|
|
143
|
+
model?: string;
|
|
144
|
+
};
|
|
145
|
+
/** Studio browser server and optional RAG overrides. */
|
|
146
|
+
studio?: {
|
|
147
|
+
model?: string;
|
|
148
|
+
listen?: {
|
|
149
|
+
host?: string;
|
|
150
|
+
port?: number;
|
|
151
|
+
};
|
|
152
|
+
rag?: {
|
|
153
|
+
embedder?: string;
|
|
154
|
+
dimensions?: string | number;
|
|
155
|
+
apiKey?: string;
|
|
156
|
+
baseUrl?: string;
|
|
157
|
+
model?: string;
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
/** HTTP API server defaults (first-party `apps/http-api`). */
|
|
161
|
+
httpApi?: {
|
|
162
|
+
listen?: {
|
|
163
|
+
/** When unset, servers default to `3000`. Use `env("PORT")` for platforms that inject `PORT`. */
|
|
164
|
+
port?: number;
|
|
165
|
+
host?: string;
|
|
166
|
+
};
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@askdb/config",
|
|
3
|
+
"version": "0.3.0-beta.1",
|
|
4
|
+
"description": "AskDB configuration helpers: Prisma-style env() and askdb.config file discovery for first-party apps.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"askdb",
|
|
7
|
+
"config",
|
|
8
|
+
"environment"
|
|
9
|
+
],
|
|
10
|
+
"homepage": "https://github.com/Ygilany/AskDB#readme",
|
|
11
|
+
"bugs": {
|
|
12
|
+
"url": "https://github.com/Ygilany/AskDB/issues"
|
|
13
|
+
},
|
|
14
|
+
"repository": {
|
|
15
|
+
"type": "git",
|
|
16
|
+
"url": "git+https://github.com/Ygilany/AskDB.git",
|
|
17
|
+
"directory": "packages/config"
|
|
18
|
+
},
|
|
19
|
+
"license": "Apache-2.0",
|
|
20
|
+
"author": "Yahya Gilany",
|
|
21
|
+
"type": "module",
|
|
22
|
+
"main": "./dist/index.js",
|
|
23
|
+
"types": "./dist/index.d.ts",
|
|
24
|
+
"exports": {
|
|
25
|
+
".": {
|
|
26
|
+
"types": "./dist/index.d.ts",
|
|
27
|
+
"import": "./dist/index.js",
|
|
28
|
+
"require": "./dist/index.js",
|
|
29
|
+
"default": "./dist/index.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"dist",
|
|
34
|
+
"README.md",
|
|
35
|
+
"LICENSE",
|
|
36
|
+
"NOTICE"
|
|
37
|
+
],
|
|
38
|
+
"engines": {
|
|
39
|
+
"node": ">=20"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"dotenv": "^16.6.1",
|
|
43
|
+
"jiti": "^2.4.2"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"typescript": "^5.7.3",
|
|
47
|
+
"vitest": "^3.0.9"
|
|
48
|
+
},
|
|
49
|
+
"scripts": {
|
|
50
|
+
"build": "tsc -p tsconfig.build.json",
|
|
51
|
+
"lint": "tsc -p tsconfig.build.json --noEmit",
|
|
52
|
+
"test": "vitest run --config ../../vitest.config.ts"
|
|
53
|
+
}
|
|
54
|
+
}
|