@adhd/agent-core-provider 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/drizzle/0000_providers_and_models.sql +23 -0
  2. package/drizzle/0001_model_platform_bindings.sql +8 -0
  3. package/drizzle/0002_provider_tool_formats.sql +10 -0
  4. package/drizzle/meta/0000_snapshot.json +149 -0
  5. package/drizzle/meta/0001_snapshot.json +190 -0
  6. package/drizzle/meta/0002_snapshot.json +245 -0
  7. package/drizzle/meta/_journal.json +27 -0
  8. package/package.json +53 -0
  9. package/src/adapter/provider-adapter.d.ts +21 -0
  10. package/src/adapter/provider-adapter.d.ts.map +1 -0
  11. package/src/adapter/provider-adapter.js +38 -0
  12. package/src/adapter/provider-adapter.js.map +1 -0
  13. package/src/db/client.d.ts +7 -0
  14. package/src/db/client.d.ts.map +1 -0
  15. package/src/db/client.js +19 -0
  16. package/src/db/client.js.map +1 -0
  17. package/src/db/migrate-runner.d.ts +30 -0
  18. package/src/db/migrate-runner.d.ts.map +1 -0
  19. package/src/db/migrate-runner.js +34 -0
  20. package/src/db/migrate-runner.js.map +1 -0
  21. package/src/db/migrate.d.ts +9 -0
  22. package/src/db/migrate.d.ts.map +1 -0
  23. package/src/db/migrate.js +13 -0
  24. package/src/db/migrate.js.map +1 -0
  25. package/src/db/schema.d.ts +475 -0
  26. package/src/db/schema.d.ts.map +1 -0
  27. package/src/db/schema.js +79 -0
  28. package/src/db/schema.js.map +1 -0
  29. package/src/index.d.ts +17 -0
  30. package/src/index.d.ts.map +1 -0
  31. package/src/index.js +15 -0
  32. package/src/index.js.map +1 -0
  33. package/src/runtime/emit-tools.d.ts +91 -0
  34. package/src/runtime/emit-tools.d.ts.map +1 -0
  35. package/src/runtime/emit-tools.js +98 -0
  36. package/src/runtime/emit-tools.js.map +1 -0
  37. package/src/seed/bindings.d.ts +16 -0
  38. package/src/seed/bindings.d.ts.map +1 -0
  39. package/src/seed/bindings.js +65 -0
  40. package/src/seed/bindings.js.map +1 -0
  41. package/src/seed/index.d.ts +13 -0
  42. package/src/seed/index.d.ts.map +1 -0
  43. package/src/seed/index.js +29 -0
  44. package/src/seed/index.js.map +1 -0
  45. package/src/seed/models.d.ts +22 -0
  46. package/src/seed/models.d.ts.map +1 -0
  47. package/src/seed/models.js +68 -0
  48. package/src/seed/models.js.map +1 -0
  49. package/src/seed/providers.d.ts +11 -0
  50. package/src/seed/providers.d.ts.map +1 -0
  51. package/src/seed/providers.js +65 -0
  52. package/src/seed/providers.js.map +1 -0
  53. package/src/store/model-store.d.ts +69 -0
  54. package/src/store/model-store.d.ts.map +1 -0
  55. package/src/store/model-store.js +130 -0
  56. package/src/store/model-store.js.map +1 -0
  57. package/src/store/provider-store.d.ts +39 -0
  58. package/src/store/provider-store.d.ts.map +1 -0
  59. package/src/store/provider-store.js +88 -0
  60. package/src/store/provider-store.js.map +1 -0
  61. package/src/store/tool-format-store.d.ts +58 -0
  62. package/src/store/tool-format-store.d.ts.map +1 -0
  63. package/src/store/tool-format-store.js +93 -0
  64. package/src/store/tool-format-store.js.map +1 -0
@@ -0,0 +1,475 @@
1
+ export declare const providers: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "provider_providers";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: "id";
7
+ tableName: "provider_providers";
8
+ dataType: "string";
9
+ columnType: "SQLiteText";
10
+ data: string;
11
+ driverParam: string;
12
+ notNull: true;
13
+ hasDefault: false;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: false;
17
+ enumValues: [string, ...string[]];
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {
22
+ length: number | undefined;
23
+ }>;
24
+ transport: import("drizzle-orm/sqlite-core").SQLiteColumn<{
25
+ name: "transport";
26
+ tableName: "provider_providers";
27
+ dataType: "string";
28
+ columnType: "SQLiteText";
29
+ data: string;
30
+ driverParam: string;
31
+ notNull: true;
32
+ hasDefault: false;
33
+ isPrimaryKey: false;
34
+ isAutoincrement: false;
35
+ hasRuntimeDefault: false;
36
+ enumValues: [string, ...string[]];
37
+ baseColumn: never;
38
+ identity: undefined;
39
+ generated: undefined;
40
+ }, {}, {
41
+ length: number | undefined;
42
+ }>;
43
+ authPattern: import("drizzle-orm/sqlite-core").SQLiteColumn<{
44
+ name: "auth_pattern";
45
+ tableName: "provider_providers";
46
+ dataType: "string";
47
+ columnType: "SQLiteText";
48
+ data: string;
49
+ driverParam: string;
50
+ notNull: true;
51
+ hasDefault: false;
52
+ isPrimaryKey: false;
53
+ isAutoincrement: false;
54
+ hasRuntimeDefault: false;
55
+ enumValues: [string, ...string[]];
56
+ baseColumn: never;
57
+ identity: undefined;
58
+ generated: undefined;
59
+ }, {}, {
60
+ length: number | undefined;
61
+ }>;
62
+ baseUrl: import("drizzle-orm/sqlite-core").SQLiteColumn<{
63
+ name: "base_url";
64
+ tableName: "provider_providers";
65
+ dataType: "string";
66
+ columnType: "SQLiteText";
67
+ data: string;
68
+ driverParam: string;
69
+ notNull: false;
70
+ hasDefault: false;
71
+ isPrimaryKey: false;
72
+ isAutoincrement: false;
73
+ hasRuntimeDefault: false;
74
+ enumValues: [string, ...string[]];
75
+ baseColumn: never;
76
+ identity: undefined;
77
+ generated: undefined;
78
+ }, {}, {
79
+ length: number | undefined;
80
+ }>;
81
+ endpointTemplate: import("drizzle-orm/sqlite-core").SQLiteColumn<{
82
+ name: "endpoint_template";
83
+ tableName: "provider_providers";
84
+ dataType: "string";
85
+ columnType: "SQLiteText";
86
+ data: string;
87
+ driverParam: string;
88
+ notNull: false;
89
+ hasDefault: false;
90
+ isPrimaryKey: false;
91
+ isAutoincrement: false;
92
+ hasRuntimeDefault: false;
93
+ enumValues: [string, ...string[]];
94
+ baseColumn: never;
95
+ identity: undefined;
96
+ generated: undefined;
97
+ }, {}, {
98
+ length: number | undefined;
99
+ }>;
100
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
101
+ name: "created_at";
102
+ tableName: "provider_providers";
103
+ dataType: "string";
104
+ columnType: "SQLiteText";
105
+ data: string;
106
+ driverParam: string;
107
+ notNull: true;
108
+ hasDefault: false;
109
+ isPrimaryKey: false;
110
+ isAutoincrement: false;
111
+ hasRuntimeDefault: false;
112
+ enumValues: [string, ...string[]];
113
+ baseColumn: never;
114
+ identity: undefined;
115
+ generated: undefined;
116
+ }, {}, {
117
+ length: number | undefined;
118
+ }>;
119
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
120
+ name: "updated_at";
121
+ tableName: "provider_providers";
122
+ dataType: "string";
123
+ columnType: "SQLiteText";
124
+ data: string;
125
+ driverParam: string;
126
+ notNull: true;
127
+ hasDefault: false;
128
+ isPrimaryKey: false;
129
+ isAutoincrement: false;
130
+ hasRuntimeDefault: false;
131
+ enumValues: [string, ...string[]];
132
+ baseColumn: never;
133
+ identity: undefined;
134
+ generated: undefined;
135
+ }, {}, {
136
+ length: number | undefined;
137
+ }>;
138
+ };
139
+ dialect: "sqlite";
140
+ }>;
141
+ export declare const models: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
142
+ name: "provider_models";
143
+ schema: undefined;
144
+ columns: {
145
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
146
+ name: "id";
147
+ tableName: "provider_models";
148
+ dataType: "string";
149
+ columnType: "SQLiteText";
150
+ data: string;
151
+ driverParam: string;
152
+ notNull: true;
153
+ hasDefault: false;
154
+ isPrimaryKey: true;
155
+ isAutoincrement: false;
156
+ hasRuntimeDefault: false;
157
+ enumValues: [string, ...string[]];
158
+ baseColumn: never;
159
+ identity: undefined;
160
+ generated: undefined;
161
+ }, {}, {
162
+ length: number | undefined;
163
+ }>;
164
+ contextWindow: import("drizzle-orm/sqlite-core").SQLiteColumn<{
165
+ name: "context_window";
166
+ tableName: "provider_models";
167
+ dataType: "number";
168
+ columnType: "SQLiteInteger";
169
+ data: number;
170
+ driverParam: number;
171
+ notNull: true;
172
+ hasDefault: false;
173
+ isPrimaryKey: false;
174
+ isAutoincrement: false;
175
+ hasRuntimeDefault: false;
176
+ enumValues: undefined;
177
+ baseColumn: never;
178
+ identity: undefined;
179
+ generated: undefined;
180
+ }, {}, {}>;
181
+ outputLimit: import("drizzle-orm/sqlite-core").SQLiteColumn<{
182
+ name: "output_limit";
183
+ tableName: "provider_models";
184
+ dataType: "number";
185
+ columnType: "SQLiteInteger";
186
+ data: number;
187
+ driverParam: number;
188
+ notNull: true;
189
+ hasDefault: false;
190
+ isPrimaryKey: false;
191
+ isAutoincrement: false;
192
+ hasRuntimeDefault: false;
193
+ enumValues: undefined;
194
+ baseColumn: never;
195
+ identity: undefined;
196
+ generated: undefined;
197
+ }, {}, {}>;
198
+ vision: import("drizzle-orm/sqlite-core").SQLiteColumn<{
199
+ name: "vision";
200
+ tableName: "provider_models";
201
+ dataType: "boolean";
202
+ columnType: "SQLiteBoolean";
203
+ data: boolean;
204
+ driverParam: number;
205
+ notNull: true;
206
+ hasDefault: true;
207
+ isPrimaryKey: false;
208
+ isAutoincrement: false;
209
+ hasRuntimeDefault: false;
210
+ enumValues: undefined;
211
+ baseColumn: never;
212
+ identity: undefined;
213
+ generated: undefined;
214
+ }, {}, {}>;
215
+ promptCaching: import("drizzle-orm/sqlite-core").SQLiteColumn<{
216
+ name: "prompt_caching";
217
+ tableName: "provider_models";
218
+ dataType: "boolean";
219
+ columnType: "SQLiteBoolean";
220
+ data: boolean;
221
+ driverParam: number;
222
+ notNull: true;
223
+ hasDefault: true;
224
+ isPrimaryKey: false;
225
+ isAutoincrement: false;
226
+ hasRuntimeDefault: false;
227
+ enumValues: undefined;
228
+ baseColumn: never;
229
+ identity: undefined;
230
+ generated: undefined;
231
+ }, {}, {}>;
232
+ extendedThinking: import("drizzle-orm/sqlite-core").SQLiteColumn<{
233
+ name: "extended_thinking";
234
+ tableName: "provider_models";
235
+ dataType: "boolean";
236
+ columnType: "SQLiteBoolean";
237
+ data: boolean;
238
+ driverParam: number;
239
+ notNull: true;
240
+ hasDefault: true;
241
+ isPrimaryKey: false;
242
+ isAutoincrement: false;
243
+ hasRuntimeDefault: false;
244
+ enumValues: undefined;
245
+ baseColumn: never;
246
+ identity: undefined;
247
+ generated: undefined;
248
+ }, {}, {}>;
249
+ pricingTier: import("drizzle-orm/sqlite-core").SQLiteColumn<{
250
+ name: "pricing_tier";
251
+ tableName: "provider_models";
252
+ dataType: "string";
253
+ columnType: "SQLiteText";
254
+ data: string;
255
+ driverParam: string;
256
+ notNull: true;
257
+ hasDefault: false;
258
+ isPrimaryKey: false;
259
+ isAutoincrement: false;
260
+ hasRuntimeDefault: false;
261
+ enumValues: [string, ...string[]];
262
+ baseColumn: never;
263
+ identity: undefined;
264
+ generated: undefined;
265
+ }, {}, {
266
+ length: number | undefined;
267
+ }>;
268
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
269
+ name: "created_at";
270
+ tableName: "provider_models";
271
+ dataType: "string";
272
+ columnType: "SQLiteText";
273
+ data: string;
274
+ driverParam: string;
275
+ notNull: true;
276
+ hasDefault: false;
277
+ isPrimaryKey: false;
278
+ isAutoincrement: false;
279
+ hasRuntimeDefault: false;
280
+ enumValues: [string, ...string[]];
281
+ baseColumn: never;
282
+ identity: undefined;
283
+ generated: undefined;
284
+ }, {}, {
285
+ length: number | undefined;
286
+ }>;
287
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
288
+ name: "updated_at";
289
+ tableName: "provider_models";
290
+ dataType: "string";
291
+ columnType: "SQLiteText";
292
+ data: string;
293
+ driverParam: string;
294
+ notNull: true;
295
+ hasDefault: false;
296
+ isPrimaryKey: false;
297
+ isAutoincrement: false;
298
+ hasRuntimeDefault: false;
299
+ enumValues: [string, ...string[]];
300
+ baseColumn: never;
301
+ identity: undefined;
302
+ generated: undefined;
303
+ }, {}, {
304
+ length: number | undefined;
305
+ }>;
306
+ };
307
+ dialect: "sqlite";
308
+ }>;
309
+ export declare const modelPlatformBindings: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
310
+ name: "provider_model_platform_bindings";
311
+ schema: undefined;
312
+ columns: {
313
+ modelId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
314
+ name: "model_id";
315
+ tableName: "provider_model_platform_bindings";
316
+ dataType: "string";
317
+ columnType: "SQLiteText";
318
+ data: string;
319
+ driverParam: string;
320
+ notNull: true;
321
+ hasDefault: false;
322
+ isPrimaryKey: false;
323
+ isAutoincrement: false;
324
+ hasRuntimeDefault: false;
325
+ enumValues: [string, ...string[]];
326
+ baseColumn: never;
327
+ identity: undefined;
328
+ generated: undefined;
329
+ }, {}, {
330
+ length: number | undefined;
331
+ }>;
332
+ platform: import("drizzle-orm/sqlite-core").SQLiteColumn<{
333
+ name: "platform";
334
+ tableName: "provider_model_platform_bindings";
335
+ dataType: "string";
336
+ columnType: "SQLiteText";
337
+ data: string;
338
+ driverParam: string;
339
+ notNull: true;
340
+ hasDefault: false;
341
+ isPrimaryKey: false;
342
+ isAutoincrement: false;
343
+ hasRuntimeDefault: false;
344
+ enumValues: [string, ...string[]];
345
+ baseColumn: never;
346
+ identity: undefined;
347
+ generated: undefined;
348
+ }, {}, {
349
+ length: number | undefined;
350
+ }>;
351
+ platformModelId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
352
+ name: "platform_model_id";
353
+ tableName: "provider_model_platform_bindings";
354
+ dataType: "string";
355
+ columnType: "SQLiteText";
356
+ data: string;
357
+ driverParam: string;
358
+ notNull: true;
359
+ hasDefault: false;
360
+ isPrimaryKey: false;
361
+ isAutoincrement: false;
362
+ hasRuntimeDefault: false;
363
+ enumValues: [string, ...string[]];
364
+ baseColumn: never;
365
+ identity: undefined;
366
+ generated: undefined;
367
+ }, {}, {
368
+ length: number | undefined;
369
+ }>;
370
+ };
371
+ dialect: "sqlite";
372
+ }>;
373
+ export declare const providerToolFormats: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
374
+ name: "provider_tool_formats";
375
+ schema: undefined;
376
+ columns: {
377
+ providerId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
378
+ name: "provider_id";
379
+ tableName: "provider_tool_formats";
380
+ dataType: "string";
381
+ columnType: "SQLiteText";
382
+ data: string;
383
+ driverParam: string;
384
+ notNull: true;
385
+ hasDefault: false;
386
+ isPrimaryKey: false;
387
+ isAutoincrement: false;
388
+ hasRuntimeDefault: false;
389
+ enumValues: [string, ...string[]];
390
+ baseColumn: never;
391
+ identity: undefined;
392
+ generated: undefined;
393
+ }, {}, {
394
+ length: number | undefined;
395
+ }>;
396
+ canonicalTool: import("drizzle-orm/sqlite-core").SQLiteColumn<{
397
+ name: "canonical_tool";
398
+ tableName: "provider_tool_formats";
399
+ dataType: "string";
400
+ columnType: "SQLiteText";
401
+ data: string;
402
+ driverParam: string;
403
+ notNull: true;
404
+ hasDefault: false;
405
+ isPrimaryKey: false;
406
+ isAutoincrement: false;
407
+ hasRuntimeDefault: false;
408
+ enumValues: [string, ...string[]];
409
+ baseColumn: never;
410
+ identity: undefined;
411
+ generated: undefined;
412
+ }, {}, {
413
+ length: number | undefined;
414
+ }>;
415
+ emitShape: import("drizzle-orm/sqlite-core").SQLiteColumn<{
416
+ name: "emit_shape";
417
+ tableName: "provider_tool_formats";
418
+ dataType: "string";
419
+ columnType: "SQLiteText";
420
+ data: string;
421
+ driverParam: string;
422
+ notNull: true;
423
+ hasDefault: false;
424
+ isPrimaryKey: false;
425
+ isAutoincrement: false;
426
+ hasRuntimeDefault: false;
427
+ enumValues: [string, ...string[]];
428
+ baseColumn: never;
429
+ identity: undefined;
430
+ generated: undefined;
431
+ }, {}, {
432
+ length: number | undefined;
433
+ }>;
434
+ typeTag: import("drizzle-orm/sqlite-core").SQLiteColumn<{
435
+ name: "type_tag";
436
+ tableName: "provider_tool_formats";
437
+ dataType: "string";
438
+ columnType: "SQLiteText";
439
+ data: string;
440
+ driverParam: string;
441
+ notNull: false;
442
+ hasDefault: false;
443
+ isPrimaryKey: false;
444
+ isAutoincrement: false;
445
+ hasRuntimeDefault: false;
446
+ enumValues: [string, ...string[]];
447
+ baseColumn: never;
448
+ identity: undefined;
449
+ generated: undefined;
450
+ }, {}, {
451
+ length: number | undefined;
452
+ }>;
453
+ note: import("drizzle-orm/sqlite-core").SQLiteColumn<{
454
+ name: "note";
455
+ tableName: "provider_tool_formats";
456
+ dataType: "string";
457
+ columnType: "SQLiteText";
458
+ data: string;
459
+ driverParam: string;
460
+ notNull: false;
461
+ hasDefault: false;
462
+ isPrimaryKey: false;
463
+ isAutoincrement: false;
464
+ hasRuntimeDefault: false;
465
+ enumValues: [string, ...string[]];
466
+ baseColumn: never;
467
+ identity: undefined;
468
+ generated: undefined;
469
+ }, {}, {
470
+ length: number | undefined;
471
+ }>;
472
+ };
473
+ dialect: "sqlite";
474
+ }>;
475
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../../packages/agent/agent-core-provider/src/db/schema.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQpB,CAAC;AAQH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBlB,CAAC;AAWF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWjC,CAAC;AAeF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc/B,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { index, integer, primaryKey, sqliteTable, text, } from 'drizzle-orm/sqlite-core';
2
+ // ──────────────────────────────────────────────
3
+ // provider_providers
4
+ // Text PK (lookup-not-enum) — new providers are seeded rows, not migrations.
5
+ // transport: "HTTP" | "stdio" (controlled-vocabulary seeded values, plain text)
6
+ // auth_pattern: e.g. "bearer", "x-api-key", "none"
7
+ // ──────────────────────────────────────────────
8
+ export const providers = sqliteTable('provider_providers', {
9
+ id: text('id').primaryKey(), // e.g. "anthropic", "openai", "lmstudio", "claudecli"
10
+ transport: text('transport').notNull(), // "HTTP" | "stdio"
11
+ authPattern: text('auth_pattern').notNull(), // e.g. "bearer", "x-api-key", "none"
12
+ baseUrl: text('base_url'), // nullable — absent for stdio providers
13
+ endpointTemplate: text('endpoint_template'), // nullable — provider-specific template
14
+ createdAt: text('created_at').notNull(),
15
+ updatedAt: text('updated_at').notNull(),
16
+ });
17
+ // ──────────────────────────────────────────────
18
+ // provider_models
19
+ // Canonical model catalog independent of any provider naming.
20
+ // Capability flags stored as SQLite integers (mode:"boolean") so Drizzle
21
+ // converts 0/1 ↔ false/true on read — asserted in tests ([inv:reopen-proves-persistence]).
22
+ // ──────────────────────────────────────────────
23
+ export const models = sqliteTable('provider_models', {
24
+ id: text('id').primaryKey(), // e.g. "claude_opus_4_8", "gpt_4o_mini"
25
+ contextWindow: integer('context_window').notNull(),
26
+ outputLimit: integer('output_limit').notNull(),
27
+ vision: integer('vision', { mode: 'boolean' }).notNull().default(false),
28
+ promptCaching: integer('prompt_caching', { mode: 'boolean' })
29
+ .notNull()
30
+ .default(false),
31
+ extendedThinking: integer('extended_thinking', { mode: 'boolean' })
32
+ .notNull()
33
+ .default(false),
34
+ pricingTier: text('pricing_tier').notNull(), // e.g. "premium", "standard", "economy"
35
+ createdAt: text('created_at').notNull(),
36
+ updatedAt: text('updated_at').notNull(),
37
+ }, (table) => [index('idx_provider_models_pricing_tier').on(table.pricingTier)]);
38
+ // ──────────────────────────────────────────────
39
+ // provider_model_platform_bindings
40
+ // Maps a canonical model id + platform to the provider-specific string.
41
+ // PK is composite (model_id, platform) — one row per (model, platform) pair.
42
+ // model_id is a LOGICAL FK to provider_models.id (cross-package seeded lookup;
43
+ // no SQL FK so seeding order and shared-DB topology stay flexible).
44
+ // platform is a controlled-vocab text key (e.g. "claude_api", "claude_code",
45
+ // "bedrock") — never a SQL enum ([inv:lookup-not-enum]).
46
+ // ──────────────────────────────────────────────
47
+ export const modelPlatformBindings = sqliteTable('provider_model_platform_bindings', {
48
+ modelId: text('model_id').notNull(), // logical ref → provider_models.id
49
+ platform: text('platform').notNull(), // e.g. "claude_api", "claude_code", "bedrock"
50
+ platformModelId: text('platform_model_id').notNull(), // e.g. "claude-opus-4-8", "opus", ARN
51
+ }, (table) => [
52
+ primaryKey({ columns: [table.modelId, table.platform] }),
53
+ index('idx_provider_mpb_model_id').on(table.modelId),
54
+ ]);
55
+ // ──────────────────────────────────────────────
56
+ // provider_tool_formats
57
+ // Captures the per-provider tool schema shape for each canonical tool name.
58
+ // PK is composite (provider_id, canonical_tool).
59
+ // provider_id is a LOGICAL FK to provider_providers.id ([inv:lookup-not-enum]).
60
+ // emit_shape is a seeded controlled-vocab lookup:
61
+ // "custom" — emitted as {name, description, input_schema} function def
62
+ // "server_side" — emitted as a versioned type-tagged entry with NO input_schema
63
+ // (e.g. Anthropic web_search_20250305); type_tag is set
64
+ // "unsupported" — provider-native tool that requires a local execution loop;
65
+ // emitter must throw an explicit error; note is set
66
+ // ([inv:lookup-not-enum], [def:server-side-tool], [def:unsupported-native])
67
+ // ──────────────────────────────────────────────
68
+ export const providerToolFormats = sqliteTable('provider_tool_formats', {
69
+ providerId: text('provider_id').notNull(), // logical ref → provider_providers.id
70
+ canonicalTool: text('canonical_tool').notNull(), // e.g. "web_search", "bash", "shell_exec"
71
+ emitShape: text('emit_shape').notNull(), // "custom" | "server_side" | "unsupported"
72
+ typeTag: text('type_tag'), // nullable — versioned type string for server_side rows
73
+ // e.g. "web_search_20250305"; null for custom/unsupported
74
+ note: text('note'), // nullable — actionable message for unsupported rows
75
+ }, (table) => [
76
+ primaryKey({ columns: [table.providerId, table.canonicalTool] }),
77
+ index('idx_provider_tool_formats_provider_id').on(table.providerId),
78
+ ]);
79
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../../packages/agent/agent-core-provider/src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,OAAO,EACP,UAAU,EACV,WAAW,EACX,IAAI,GACL,MAAM,yBAAyB,CAAC;AAEjC,iDAAiD;AACjD,qBAAqB;AACrB,6EAA6E;AAC7E,iFAAiF;AACjF,mDAAmD;AACnD,iDAAiD;AACjD,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAC,oBAAoB,EAAE;IACzD,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,sDAAsD;IACnF,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,mBAAmB;IAC3D,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE,qCAAqC;IAClF,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,wCAAwC;IACnE,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAAE,wCAAwC;IACrF,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IACvC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;CACxC,CAAC,CAAC;AAEH,iDAAiD;AACjD,kBAAkB;AAClB,8DAA8D;AAC9D,yEAAyE;AACzE,2FAA2F;AAC3F,iDAAiD;AACjD,MAAM,CAAC,MAAM,MAAM,GAAG,WAAW,CAC/B,iBAAiB,EACjB;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,wCAAwC;IACrE,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE;IAClD,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE;IAC9C,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACvE,aAAa,EAAE,OAAO,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SAC1D,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;IACjB,gBAAgB,EAAE,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SAChE,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;IACjB,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE,wCAAwC;IACrF,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IACvC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;CACxC,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAC7E,CAAC;AAEF,iDAAiD;AACjD,mCAAmC;AACnC,wEAAwE;AACxE,6EAA6E;AAC7E,+EAA+E;AAC/E,oEAAoE;AACpE,6EAA6E;AAC7E,yDAAyD;AACzD,iDAAiD;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAC9C,kCAAkC,EAClC;IACE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,mCAAmC;IACxE,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,8CAA8C;IACpF,eAAe,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,sCAAsC;CAC7F,EACD,CAAC,KAAK,EAAE,EAAE,CAAC;IACT,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACxD,KAAK,CAAC,2BAA2B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;CACrD,CACF,CAAC;AAEF,iDAAiD;AACjD,wBAAwB;AACxB,4EAA4E;AAC5E,iDAAiD;AACjD,gFAAgF;AAChF,kDAAkD;AAClD,8EAA8E;AAC9E,kFAAkF;AAClF,0EAA0E;AAC1E,+EAA+E;AAC/E,sEAAsE;AACtE,4EAA4E;AAC5E,iDAAiD;AACjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAC5C,uBAAuB,EACvB;IACE,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,sCAAsC;IACjF,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,0CAA0C;IAC3F,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,EAAE,2CAA2C;IACpF,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,wDAAwD;IACnF,0DAA0D;IAC1D,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,qDAAqD;CAC1E,EACD,CAAC,KAAK,EAAE,EAAE,CAAC;IACT,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;IAChE,KAAK,CAAC,uCAAuC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC;CACpE,CACF,CAAC"}
package/src/index.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ export { db, sqlite } from './db/client.js';
2
+ export { runMigrations } from './db/migrate.js';
3
+ export * from './db/schema.js';
4
+ export { ProviderStore, ProviderStoreError } from './store/provider-store.js';
5
+ export type { Provider, ProviderCreateInput, ProviderErrorCode, } from './store/provider-store.js';
6
+ export { ModelStore, ModelStoreError } from './store/model-store.js';
7
+ export type { Model, ModelCreateInput, ModelErrorCode, ModelPlatformBinding, ModelPlatformBindingCreateInput, } from './store/model-store.js';
8
+ export { ToolFormatStore, ToolFormatStoreError, } from './store/tool-format-store.js';
9
+ export type { ToolFormat, ToolFormatCreateInput, ToolFormatErrorCode, EmitShape, } from './store/tool-format-store.js';
10
+ export { ProviderAdapterImpl } from './adapter/provider-adapter.js';
11
+ export { emitTool, emitToolsForProvider, UnsupportedNativeToolError, } from './runtime/emit-tools.js';
12
+ export type { EmittedCustomTool, EmittedServerSideTool, EmittedTool, ToolFormatLookup, UnsupportedNativeToolErrorCode, } from './runtime/emit-tools.js';
13
+ export { seed, seedProviders, seedModels, seedBindings } from './seed/index.js';
14
+ export { SEEDED_PROVIDER_IDS } from './seed/index.js';
15
+ export { MODEL_ROWS, SEEDED_MODEL_IDS } from './seed/index.js';
16
+ export { BINDING_ROWS } from './seed/index.js';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/agent/agent-core-provider/src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,YAAY,EACV,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACrE,YAAY,EACV,KAAK,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,+BAA+B,GAChC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,eAAe,EACf,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,iBAAiB,EACjB,qBAAqB,EACrB,WAAW,EACX,gBAAgB,EAChB,8BAA8B,GAC/B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
package/src/index.js ADDED
@@ -0,0 +1,15 @@
1
+ // @adhd/agent-provider — barrel export
2
+ // Each subsequent plan state adds exports here as new modules are created.
3
+ export { db, sqlite } from './db/client.js';
4
+ export { runMigrations } from './db/migrate.js';
5
+ export * from './db/schema.js';
6
+ export { ProviderStore, ProviderStoreError } from './store/provider-store.js';
7
+ export { ModelStore, ModelStoreError } from './store/model-store.js';
8
+ export { ToolFormatStore, ToolFormatStoreError, } from './store/tool-format-store.js';
9
+ export { ProviderAdapterImpl } from './adapter/provider-adapter.js';
10
+ export { emitTool, emitToolsForProvider, UnsupportedNativeToolError, } from './runtime/emit-tools.js';
11
+ export { seed, seedProviders, seedModels, seedBindings } from './seed/index.js';
12
+ export { SEEDED_PROVIDER_IDS } from './seed/index.js';
13
+ export { MODEL_ROWS, SEEDED_MODEL_IDS } from './seed/index.js';
14
+ export { BINDING_ROWS } from './seed/index.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/agent/agent-core-provider/src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,2EAA2E;AAE3E,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAO9E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AASrE,OAAO,EACL,eAAe,EACf,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAQtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AASjC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}