@deepagents/text2sql 0.10.2 → 0.11.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.
- package/README.md +32 -41
- package/dist/index.d.ts +1 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2338 -2398
- package/dist/index.js.map +4 -4
- package/dist/lib/adapters/adapter.d.ts +13 -1
- package/dist/lib/adapters/adapter.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/abstract.grounding.d.ts +19 -3
- package/dist/lib/adapters/groundings/abstract.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/column-stats.grounding.d.ts +1 -2
- package/dist/lib/adapters/groundings/column-stats.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/column-values.grounding.d.ts +1 -2
- package/dist/lib/adapters/groundings/column-values.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/constraint.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/constraint.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/index.js +15 -222
- package/dist/lib/adapters/groundings/index.js.map +3 -3
- package/dist/lib/adapters/groundings/indexes.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/indexes.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/info.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/info.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/report.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/report.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/row-count.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/row-count.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/table.grounding.d.ts +3 -3
- package/dist/lib/adapters/groundings/table.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/view.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/view.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/index.js +343 -315
- package/dist/lib/adapters/mysql/index.js.map +4 -4
- package/dist/lib/adapters/postgres/index.js +385 -357
- package/dist/lib/adapters/postgres/index.js.map +4 -4
- package/dist/lib/adapters/spreadsheet/index.js +290 -223
- package/dist/lib/adapters/spreadsheet/index.js.map +4 -4
- package/dist/lib/adapters/sqlite/index.js +307 -279
- package/dist/lib/adapters/sqlite/index.js.map +4 -4
- package/dist/lib/adapters/sqlserver/index.js +383 -355
- package/dist/lib/adapters/sqlserver/index.js.map +4 -4
- package/dist/lib/agents/developer.agent.d.ts +33 -23
- package/dist/lib/agents/developer.agent.d.ts.map +1 -1
- package/dist/lib/agents/sql.agent.d.ts +4 -4
- package/dist/lib/agents/sql.agent.d.ts.map +1 -1
- package/dist/lib/agents/teachables.agent.d.ts +2 -2
- package/dist/lib/agents/teachables.agent.d.ts.map +1 -1
- package/dist/lib/agents/text2sql.agent.d.ts +18 -71
- package/dist/lib/agents/text2sql.agent.d.ts.map +1 -1
- package/dist/lib/fragments/schema.d.ts +214 -0
- package/dist/lib/fragments/schema.d.ts.map +1 -0
- package/dist/lib/instructions.d.ts +29 -2
- package/dist/lib/instructions.d.ts.map +1 -1
- package/dist/lib/instructions.js +336 -319
- package/dist/lib/instructions.js.map +4 -4
- package/dist/lib/sql.d.ts +13 -103
- package/dist/lib/sql.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/base-contextual-extractor.d.ts +2 -2
- package/dist/lib/synthesis/extractors/base-contextual-extractor.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/message-extractor.d.ts +1 -2
- package/dist/lib/synthesis/extractors/message-extractor.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/sql-extractor.d.ts.map +1 -1
- package/dist/lib/synthesis/index.js +1794 -572
- package/dist/lib/synthesis/index.js.map +4 -4
- package/dist/lib/synthesis/synthesizers/depth-evolver.d.ts.map +1 -1
- package/dist/lib/synthesis/synthesizers/persona-generator.d.ts +7 -17
- package/dist/lib/synthesis/synthesizers/persona-generator.d.ts.map +1 -1
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts +2 -2
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts.map +1 -1
- package/dist/lib/synthesis/synthesizers/teachings-generator.d.ts +8 -20
- package/dist/lib/synthesis/synthesizers/teachings-generator.d.ts.map +1 -1
- package/dist/lib/teach/teachings.d.ts +2 -2
- package/dist/lib/teach/teachings.d.ts.map +1 -1
- package/package.json +4 -3
- package/dist/lib/agents/chat1.agent.d.ts +0 -50
- package/dist/lib/agents/chat1.agent.d.ts.map +0 -1
- package/dist/lib/agents/chat2.agent.d.ts +0 -68
- package/dist/lib/agents/chat2.agent.d.ts.map +0 -1
- package/dist/lib/agents/chat3.agent.d.ts +0 -80
- package/dist/lib/agents/chat3.agent.d.ts.map +0 -1
- package/dist/lib/agents/chat4.agent.d.ts +0 -88
- package/dist/lib/agents/chat4.agent.d.ts.map +0 -1
- package/dist/lib/history/history.d.ts +0 -41
- package/dist/lib/history/history.d.ts.map +0 -1
- package/dist/lib/history/memory.history.d.ts +0 -5
- package/dist/lib/history/memory.history.d.ts.map +0 -1
- package/dist/lib/history/sqlite.history.d.ts +0 -15
- package/dist/lib/history/sqlite.history.d.ts.map +0 -1
- package/dist/lib/memory/memory.prompt.d.ts +0 -3
- package/dist/lib/memory/memory.prompt.d.ts.map +0 -1
- package/dist/lib/memory/memory.store.d.ts +0 -5
- package/dist/lib/memory/memory.store.d.ts.map +0 -1
- package/dist/lib/memory/sqlite.store.d.ts +0 -14
- package/dist/lib/memory/sqlite.store.d.ts.map +0 -1
- package/dist/lib/memory/store.d.ts +0 -40
- package/dist/lib/memory/store.d.ts.map +0 -1
- package/dist/lib/teach/teachables.d.ts +0 -648
- package/dist/lib/teach/teachables.d.ts.map +0 -1
- package/dist/lib/teach/xml.d.ts +0 -6
- package/dist/lib/teach/xml.d.ts.map +0 -1
|
@@ -1,31 +1,41 @@
|
|
|
1
|
+
import { type ContextFragment } from '@deepagents/context';
|
|
1
2
|
import type { Adapter } from '../adapters/adapter.ts';
|
|
2
|
-
import type { Teachables } from '../teach/teachables.ts';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Context variables passed to the developer agent tools via stream().
|
|
5
5
|
*/
|
|
6
|
-
export type
|
|
7
|
-
/** Database adapter for validation */
|
|
6
|
+
export type DeveloperContextVariables = {
|
|
7
|
+
/** Database adapter for validation and execution */
|
|
8
8
|
adapter: Adapter;
|
|
9
|
-
/** Schema introspection XML */
|
|
10
|
-
introspection: string;
|
|
11
|
-
/** Combined teachings/instructions */
|
|
12
|
-
teachings: string;
|
|
13
|
-
/** Instructions for SQL generation */
|
|
14
|
-
instructions: Teachables[];
|
|
15
9
|
};
|
|
16
10
|
/**
|
|
17
|
-
* Developer
|
|
18
|
-
*
|
|
19
|
-
* This agent provides tools for SQL generation, validation, and explanation
|
|
20
|
-
* without execution. Designed for developers/DBAs who want full control
|
|
21
|
-
* over query building and refinement.
|
|
22
|
-
*
|
|
23
|
-
* Tools:
|
|
24
|
-
* - generate_sql: Convert natural language to validated SQL
|
|
25
|
-
* - validate_sql: Check SQL syntax without execution
|
|
26
|
-
* - explain_sql: Get plain-English explanation of SQL
|
|
27
|
-
* - show_schema: Display schema introspection on demand
|
|
28
|
-
* - scratchpad: Developer notes/reasoning
|
|
11
|
+
* Developer agent exports - tools and context fragments.
|
|
12
|
+
* The agent is constructed dynamically in sql.ts developer() method.
|
|
29
13
|
*/
|
|
30
|
-
|
|
14
|
+
declare const _default: {
|
|
15
|
+
tools: {
|
|
16
|
+
/**
|
|
17
|
+
* Validate SQL query syntax before execution.
|
|
18
|
+
*/
|
|
19
|
+
validate_query: import("ai").Tool<{
|
|
20
|
+
sql: string;
|
|
21
|
+
}, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Execute SQL query against the database.
|
|
24
|
+
*/
|
|
25
|
+
db_query: import("ai").Tool<{
|
|
26
|
+
reasoning: string;
|
|
27
|
+
sql: string;
|
|
28
|
+
}, any[]>;
|
|
29
|
+
/**
|
|
30
|
+
* Get plain-English explanation of a SQL query.
|
|
31
|
+
*/
|
|
32
|
+
explain_sql: import("ai").Tool<{
|
|
33
|
+
sql: string;
|
|
34
|
+
}, {
|
|
35
|
+
explanation: string;
|
|
36
|
+
}>;
|
|
37
|
+
};
|
|
38
|
+
fragments: ContextFragment<import("@deepagents/context").FragmentData>[];
|
|
39
|
+
};
|
|
40
|
+
export default _default;
|
|
31
41
|
//# sourceMappingURL=developer.agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"developer.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/developer.agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"developer.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/developer.agent.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,eAAe,EAAiB,MAAM,qBAAqB,CAAC;AAE1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGtD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AA4FF;;;GAGG;;;QAxFD;;WAEG;;;;QAgBH;;WAEG;;;;;QA4BH;;WAEG;;;;;;;;;AAuCL,wBAAoC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { type AgentModel } from '@deepagents/agent';
|
|
2
|
+
import { type ContextFragment } from '@deepagents/context';
|
|
2
3
|
import type { Adapter } from '../adapters/adapter.ts';
|
|
3
|
-
import { type Teachables } from '../teach/teachables.ts';
|
|
4
4
|
export interface ToSqlOptions {
|
|
5
5
|
/** The natural language input to convert to SQL */
|
|
6
6
|
input: string;
|
|
7
7
|
/** Database adapter for validation */
|
|
8
8
|
adapter: Adapter;
|
|
9
|
-
/**
|
|
10
|
-
|
|
9
|
+
/** Schema fragments from adapter introspection */
|
|
10
|
+
schemaFragments: ContextFragment[];
|
|
11
11
|
/** Instructions/teachings to include */
|
|
12
|
-
instructions:
|
|
12
|
+
instructions: ContextFragment[];
|
|
13
13
|
/** Optional model override */
|
|
14
14
|
model?: AgentModel;
|
|
15
15
|
/** Maximum retry attempts on validation failure (default: 3) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/sql.agent.ts"],"names":[],"mappings":"AAgBA,OAAO,
|
|
1
|
+
{"version":3,"file":"sql.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/sql.agent.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAEL,KAAK,eAAe,EAMrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,kDAAkD;IAClD,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,wCAAwC;IACxC,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,8BAA8B;IAC9B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAiBD,QAAA,MAAM,MAAM,eAA+B,CAAC;AAC5C;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;gBACH,OAAO,EAAE,MAAM;IAK3B,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB;CAG/D;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;IAI3B,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB;CAGjE;AAED,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAqFvE"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { type AgentModel } from '@deepagents/agent';
|
|
2
|
-
import { type
|
|
2
|
+
import { type ContextFragment } from '@deepagents/context';
|
|
3
3
|
export interface GenerateToTeachingsOptions {
|
|
4
4
|
model?: AgentModel;
|
|
5
5
|
}
|
|
6
6
|
export declare function toTeachings(input: {
|
|
7
7
|
schema: string;
|
|
8
8
|
context?: string;
|
|
9
|
-
}, options?: GenerateToTeachingsOptions): Promise<
|
|
9
|
+
}, options?: GenerateToTeachingsOptions): Promise<ContextFragment[]>;
|
|
10
10
|
//# sourceMappingURL=teachables.agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teachables.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/teachables.agent.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAyB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"teachables.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/teachables.agent.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAyB,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACL,KAAK,eAAe,EAWrB,MAAM,qBAAqB,CAAC;AAwI7B,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3C,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,eAAe,EAAE,CAAC,CAuE5B"}
|
|
@@ -1,77 +1,24 @@
|
|
|
1
1
|
import { type Tool } from 'ai';
|
|
2
|
-
import type { TeachablesStore } from '../memory/store.ts';
|
|
3
|
-
import type { GeneratedTeachable } from '../teach/teachables.ts';
|
|
4
2
|
export type RenderingTools = Record<string, Tool<unknown, never>>;
|
|
5
|
-
export declare const memoryTools: {
|
|
6
|
-
remember_memory: Tool<{
|
|
7
|
-
memory: {
|
|
8
|
-
type: "identity";
|
|
9
|
-
description: string;
|
|
10
|
-
} | {
|
|
11
|
-
type: "alias";
|
|
12
|
-
term: string;
|
|
13
|
-
meaning: string;
|
|
14
|
-
} | {
|
|
15
|
-
type: "preference";
|
|
16
|
-
aspect: string;
|
|
17
|
-
value: string;
|
|
18
|
-
} | {
|
|
19
|
-
type: "context";
|
|
20
|
-
description: string;
|
|
21
|
-
} | {
|
|
22
|
-
type: "correction";
|
|
23
|
-
subject: string;
|
|
24
|
-
clarification: string;
|
|
25
|
-
};
|
|
26
|
-
}, string>;
|
|
27
|
-
forget_memory: Tool<{
|
|
28
|
-
id: string;
|
|
29
|
-
}, string>;
|
|
30
|
-
recall_memory: Tool<{
|
|
31
|
-
type?: "identity" | "alias" | "preference" | "context" | "correction" | undefined;
|
|
32
|
-
}, string | {
|
|
33
|
-
id: string;
|
|
34
|
-
type: "term" | "hint" | "guardrail" | "explain" | "example" | "clarification" | "workflow" | "quirk" | "styleGuide" | "analogy" | "glossary" | "identity" | "persona" | "alias" | "preference" | "context" | "correction";
|
|
35
|
-
data: GeneratedTeachable;
|
|
36
|
-
createdAt: string;
|
|
37
|
-
}[]>;
|
|
38
|
-
update_memory: Tool<{
|
|
39
|
-
memory: {
|
|
40
|
-
type: "identity";
|
|
41
|
-
description: string;
|
|
42
|
-
} | {
|
|
43
|
-
type: "alias";
|
|
44
|
-
term: string;
|
|
45
|
-
meaning: string;
|
|
46
|
-
} | {
|
|
47
|
-
type: "preference";
|
|
48
|
-
aspect: string;
|
|
49
|
-
value: string;
|
|
50
|
-
} | {
|
|
51
|
-
type: "context";
|
|
52
|
-
description: string;
|
|
53
|
-
} | {
|
|
54
|
-
type: "correction";
|
|
55
|
-
subject: string;
|
|
56
|
-
clarification: string;
|
|
57
|
-
};
|
|
58
|
-
id: string;
|
|
59
|
-
}, string>;
|
|
60
|
-
};
|
|
61
3
|
/**
|
|
62
4
|
* An agent that does Table Augmented Generation for Text-to-SQL tasks.
|
|
63
5
|
*/
|
|
64
|
-
export declare const t_a_g:
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
6
|
+
export declare const t_a_g: {
|
|
7
|
+
"__#private@#private": any;
|
|
8
|
+
readonly tools: import("ai").ToolSet;
|
|
9
|
+
generate<COut, CIn = COut>(contextVariables: CIn, config?: {
|
|
10
|
+
abortSignal?: AbortSignal;
|
|
11
|
+
}): Promise<import("ai").GenerateTextResult<import("ai").ToolSet, never>>;
|
|
12
|
+
stream<COut, CIn = COut>(contextVariables: CIn, config?: {
|
|
13
|
+
abortSignal?: AbortSignal;
|
|
14
|
+
transform?: import("ai").StreamTextTransform<import("ai").ToolSet> | import("ai").StreamTextTransform<import("ai").ToolSet>[];
|
|
15
|
+
maxRetries?: number;
|
|
16
|
+
}): Promise<import("ai").StreamTextResult<import("ai").ToolSet, never>>;
|
|
17
|
+
clone(overrides?: Partial<import("@deepagents/context").CreateAgent<{
|
|
18
|
+
sql: string;
|
|
19
|
+
}, {
|
|
20
|
+
introspection: string;
|
|
21
|
+
teachings: string;
|
|
22
|
+
}>> | undefined): /*elided*/ any;
|
|
23
|
+
};
|
|
77
24
|
//# sourceMappingURL=text2sql.agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text2sql.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/text2sql.agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"text2sql.agent.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/text2sql.agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,IAAI,CAAC;AASrC,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AAmJlE;;GAEG;AACH,eAAO,MAAM,KAAK;;;;mBApImD,CAAC;;;mBAkB/B,CAAC;iBACpC,CAAA;kBAEsC,CAAC;;;aAgHlC,MAAM;;uBAEI,MAAM;mBACV,MAAM;;CAgBnB,CAAC"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import type { ContextFragment } from '@deepagents/context';
|
|
2
|
+
/**
|
|
3
|
+
* Schema fragment builders.
|
|
4
|
+
*
|
|
5
|
+
* These fragments represent database schema metadata that can be injected
|
|
6
|
+
* into AI prompts. Use with renderers (XML, Markdown, TOML, TOON) to format.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { dialectInfo, table, column, relationship } from '@deepagents/text2sql';
|
|
11
|
+
*
|
|
12
|
+
* const schemaFragments = [
|
|
13
|
+
* dialectInfo({ dialect: 'PostgreSQL', version: '14.5' }),
|
|
14
|
+
* table({
|
|
15
|
+
* name: 'users',
|
|
16
|
+
* columns: [
|
|
17
|
+
* column({ name: 'id', type: 'integer', pk: true }),
|
|
18
|
+
* column({ name: 'email', type: 'varchar', unique: true }),
|
|
19
|
+
* ],
|
|
20
|
+
* }),
|
|
21
|
+
* ];
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* Database dialect and version information.
|
|
26
|
+
*
|
|
27
|
+
* @param input.dialect - Database type (PostgreSQL, SQLite, SQL Server, etc.)
|
|
28
|
+
* @param input.version - Database version string
|
|
29
|
+
* @param input.database - Database name
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* dialectInfo({ dialect: 'PostgreSQL', version: '14.5', database: 'myapp' })
|
|
33
|
+
*/
|
|
34
|
+
export declare function dialectInfo(input: {
|
|
35
|
+
dialect: string;
|
|
36
|
+
version?: string;
|
|
37
|
+
database?: string;
|
|
38
|
+
}): ContextFragment;
|
|
39
|
+
/**
|
|
40
|
+
* Database table with columns and optional metadata.
|
|
41
|
+
*
|
|
42
|
+
* @param input.name - Table name
|
|
43
|
+
* @param input.schema - Schema name (e.g., 'public' for PostgreSQL)
|
|
44
|
+
* @param input.rowCount - Approximate row count
|
|
45
|
+
* @param input.sizeHint - Size category for query optimization hints
|
|
46
|
+
* @param input.columns - Array of column() fragments
|
|
47
|
+
* @param input.indexes - Array of index() fragments
|
|
48
|
+
* @param input.constraints - Array of constraint() fragments
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* table({
|
|
52
|
+
* name: 'users',
|
|
53
|
+
* rowCount: 1500,
|
|
54
|
+
* sizeHint: 'medium',
|
|
55
|
+
* columns: [
|
|
56
|
+
* column({ name: 'id', type: 'integer', pk: true }),
|
|
57
|
+
* column({ name: 'email', type: 'varchar', unique: true, indexed: true }),
|
|
58
|
+
* ],
|
|
59
|
+
* indexes: [
|
|
60
|
+
* index({ name: 'idx_email', columns: ['email'], unique: true }),
|
|
61
|
+
* ],
|
|
62
|
+
* })
|
|
63
|
+
*/
|
|
64
|
+
export declare function table(input: {
|
|
65
|
+
name: string;
|
|
66
|
+
schema?: string;
|
|
67
|
+
rowCount?: number;
|
|
68
|
+
sizeHint?: 'tiny' | 'small' | 'medium' | 'large' | 'huge';
|
|
69
|
+
columns: ContextFragment[];
|
|
70
|
+
indexes?: ContextFragment[];
|
|
71
|
+
constraints?: ContextFragment[];
|
|
72
|
+
}): ContextFragment;
|
|
73
|
+
/**
|
|
74
|
+
* Table column with type and annotations.
|
|
75
|
+
*
|
|
76
|
+
* @param input.name - Column name
|
|
77
|
+
* @param input.type - Column data type (e.g., 'integer', 'varchar(255)')
|
|
78
|
+
* @param input.pk - Is primary key
|
|
79
|
+
* @param input.fk - Foreign key reference in "table.column" format
|
|
80
|
+
* @param input.unique - Has unique constraint
|
|
81
|
+
* @param input.notNull - Has NOT NULL constraint
|
|
82
|
+
* @param input.default - Default value expression
|
|
83
|
+
* @param input.indexed - Has index on this column
|
|
84
|
+
* @param input.values - Enum or low cardinality values
|
|
85
|
+
* @param input.stats - Column statistics (min, max, null fraction)
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* column({
|
|
89
|
+
* name: 'status',
|
|
90
|
+
* type: 'varchar',
|
|
91
|
+
* notNull: true,
|
|
92
|
+
* indexed: true,
|
|
93
|
+
* values: ['active', 'inactive', 'suspended'],
|
|
94
|
+
* })
|
|
95
|
+
*/
|
|
96
|
+
export declare function column(input: {
|
|
97
|
+
name: string;
|
|
98
|
+
type: string;
|
|
99
|
+
pk?: boolean;
|
|
100
|
+
fk?: string;
|
|
101
|
+
unique?: boolean;
|
|
102
|
+
notNull?: boolean;
|
|
103
|
+
default?: string;
|
|
104
|
+
indexed?: boolean;
|
|
105
|
+
values?: string[];
|
|
106
|
+
stats?: {
|
|
107
|
+
min?: string;
|
|
108
|
+
max?: string;
|
|
109
|
+
nullFraction?: number;
|
|
110
|
+
};
|
|
111
|
+
}): ContextFragment;
|
|
112
|
+
/**
|
|
113
|
+
* Table index.
|
|
114
|
+
*
|
|
115
|
+
* @param input.name - Index name
|
|
116
|
+
* @param input.columns - Columns included in the index
|
|
117
|
+
* @param input.unique - Is unique index
|
|
118
|
+
* @param input.type - Index type (BTREE, HASH, GIN, etc.)
|
|
119
|
+
*
|
|
120
|
+
* @example
|
|
121
|
+
* index({ name: 'idx_user_email', columns: ['email'], unique: true, type: 'BTREE' })
|
|
122
|
+
*/
|
|
123
|
+
export declare function index(input: {
|
|
124
|
+
name: string;
|
|
125
|
+
columns: string[];
|
|
126
|
+
unique?: boolean;
|
|
127
|
+
type?: string;
|
|
128
|
+
}): ContextFragment;
|
|
129
|
+
/**
|
|
130
|
+
* Table constraint (CHECK, UNIQUE, PRIMARY_KEY, FOREIGN_KEY, etc).
|
|
131
|
+
*
|
|
132
|
+
* @param input.name - Constraint name
|
|
133
|
+
* @param input.type - Constraint type
|
|
134
|
+
* @param input.columns - Columns involved in the constraint
|
|
135
|
+
* @param input.definition - CHECK constraint SQL definition
|
|
136
|
+
* @param input.defaultValue - DEFAULT constraint value
|
|
137
|
+
* @param input.referencedTable - For FK: referenced table name
|
|
138
|
+
* @param input.referencedColumns - For FK: referenced column names
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* constraint({
|
|
142
|
+
* name: 'chk_amount_positive',
|
|
143
|
+
* type: 'CHECK',
|
|
144
|
+
* definition: 'amount > 0',
|
|
145
|
+
* })
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* constraint({
|
|
149
|
+
* name: 'fk_order_user',
|
|
150
|
+
* type: 'FOREIGN_KEY',
|
|
151
|
+
* columns: ['user_id'],
|
|
152
|
+
* referencedTable: 'users',
|
|
153
|
+
* referencedColumns: ['id'],
|
|
154
|
+
* })
|
|
155
|
+
*/
|
|
156
|
+
export declare function constraint(input: {
|
|
157
|
+
name: string;
|
|
158
|
+
type: 'CHECK' | 'UNIQUE' | 'NOT_NULL' | 'DEFAULT' | 'PRIMARY_KEY' | 'FOREIGN_KEY';
|
|
159
|
+
columns?: string[];
|
|
160
|
+
definition?: string;
|
|
161
|
+
defaultValue?: string;
|
|
162
|
+
referencedTable?: string;
|
|
163
|
+
referencedColumns?: string[];
|
|
164
|
+
}): ContextFragment;
|
|
165
|
+
/**
|
|
166
|
+
* Database view.
|
|
167
|
+
*
|
|
168
|
+
* @param input.name - View name
|
|
169
|
+
* @param input.schema - Schema name
|
|
170
|
+
* @param input.columns - Array of column() fragments
|
|
171
|
+
* @param input.definition - View SQL definition
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* view({
|
|
175
|
+
* name: 'active_users',
|
|
176
|
+
* columns: [
|
|
177
|
+
* column({ name: 'id', type: 'integer' }),
|
|
178
|
+
* column({ name: 'email', type: 'varchar' }),
|
|
179
|
+
* ],
|
|
180
|
+
* definition: "SELECT id, email FROM users WHERE status = 'active'",
|
|
181
|
+
* })
|
|
182
|
+
*/
|
|
183
|
+
export declare function view(input: {
|
|
184
|
+
name: string;
|
|
185
|
+
schema?: string;
|
|
186
|
+
columns: ContextFragment[];
|
|
187
|
+
definition?: string;
|
|
188
|
+
}): ContextFragment;
|
|
189
|
+
/**
|
|
190
|
+
* Relationship between tables (foreign key connection).
|
|
191
|
+
*
|
|
192
|
+
* @param input.from - Source table and columns
|
|
193
|
+
* @param input.to - Referenced table and columns
|
|
194
|
+
* @param input.cardinality - Relationship cardinality
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* relationship({
|
|
198
|
+
* from: { table: 'orders', columns: ['user_id'] },
|
|
199
|
+
* to: { table: 'users', columns: ['id'] },
|
|
200
|
+
* cardinality: 'many-to-one',
|
|
201
|
+
* })
|
|
202
|
+
*/
|
|
203
|
+
export declare function relationship(input: {
|
|
204
|
+
from: {
|
|
205
|
+
table: string;
|
|
206
|
+
columns: string[];
|
|
207
|
+
};
|
|
208
|
+
to: {
|
|
209
|
+
table: string;
|
|
210
|
+
columns: string[];
|
|
211
|
+
};
|
|
212
|
+
cardinality?: 'one-to-one' | 'one-to-many' | 'many-to-one' | 'many-to-many';
|
|
213
|
+
}): ContextFragment;
|
|
214
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/lib/fragments/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { type ContextFragment } from '@deepagents/context';
|
|
2
|
+
/**
|
|
3
|
+
* Instructions module - re-exports domain fragments from @deepagents/context.
|
|
4
|
+
*
|
|
5
|
+
* This module provides fragment builders for injecting domain knowledge
|
|
6
|
+
* into AI prompts. All fragments are rendered using the context package renderers.
|
|
7
|
+
*/
|
|
8
|
+
export { term, hint, guardrail, explain, example, clarification, workflow, quirk, styleGuide, analogy, glossary, identity, persona, alias, preference, userContext, correction, fragment, role, type ContextFragment, } from '@deepagents/context';
|
|
9
|
+
/**
|
|
10
|
+
* Render fragments to XML instructions.
|
|
11
|
+
*
|
|
12
|
+
* This is a convenience function that wraps fragments in a parent tag
|
|
13
|
+
* and renders them using XmlRenderer with groupFragments enabled.
|
|
14
|
+
*
|
|
15
|
+
* @param tag - Parent tag name (e.g., 'instructions')
|
|
16
|
+
* @param fragments - Fragments to render
|
|
17
|
+
* @returns XML string
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* const xml = toInstructions(
|
|
22
|
+
* 'instructions',
|
|
23
|
+
* persona({ name: 'Freya', role: 'Data Assistant' }),
|
|
24
|
+
* guardrail({ rule: 'Never expose PII' }),
|
|
25
|
+
* hint('Always filter by status'),
|
|
26
|
+
* );
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function toInstructions(tag: string, ...fragments: ContextFragment[]): string;
|
|
3
30
|
//# sourceMappingURL=instructions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/lib/instructions.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/lib/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,qBAAqB,CAAC;AAE7B;;;;;GAKG;AAGH,OAAO,EAEL,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,OAAO,EACP,OAAO,EACP,aAAa,EACb,QAAQ,EACR,KAAK,EACL,UAAU,EACV,OAAO,EACP,QAAQ,EAER,QAAQ,EACR,OAAO,EACP,KAAK,EACL,UAAU,EACV,WAAW,EACX,UAAU,EAEV,QAAQ,EACR,IAAI,EACJ,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,SAAS,EAAE,eAAe,EAAE,GAC9B,MAAM,CAQR"}
|