@deepagents/context 0.8.0 → 0.9.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/dist/index.d.ts +93 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +297 -103
- package/dist/index.js.map +4 -4
- package/dist/lib/agent.d.ts +28 -0
- package/dist/lib/agent.d.ts.map +1 -0
- package/dist/lib/codec.d.ts +17 -0
- package/dist/lib/codec.d.ts.map +1 -0
- package/dist/lib/context.d.ts +6 -0
- package/dist/lib/context.d.ts.map +1 -1
- package/dist/lib/estimate.d.ts +15 -2
- package/dist/lib/estimate.d.ts.map +1 -1
- package/dist/lib/store/sqlite.store.d.ts +4 -3
- package/dist/lib/store/sqlite.store.d.ts.map +1 -1
- package/dist/lib/store/store.d.ts +14 -3
- package/dist/lib/store/store.d.ts.map +1 -1
- package/package.json +7 -2
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type StreamTextTransform, type ToolChoice, type ToolSet, generateText } from 'ai';
|
|
2
|
+
import z from 'zod';
|
|
3
|
+
import { type AgentModel } from '@deepagents/agent';
|
|
4
|
+
import { type ContextEngine } from '../index.ts';
|
|
5
|
+
export interface CreateAgent<COut, CIn = COut, Output = never> {
|
|
6
|
+
name: string;
|
|
7
|
+
context: ContextEngine;
|
|
8
|
+
tools?: ToolSet;
|
|
9
|
+
model: AgentModel;
|
|
10
|
+
toolChoice?: ToolChoice<Record<string, COut>>;
|
|
11
|
+
output?: z.Schema<Output>;
|
|
12
|
+
providerOptions?: Parameters<typeof generateText>[0]['providerOptions'];
|
|
13
|
+
logging?: boolean;
|
|
14
|
+
}
|
|
15
|
+
declare class Agent<COut, CIn = COut, Output = never> {
|
|
16
|
+
#private;
|
|
17
|
+
constructor(options: CreateAgent<COut, CIn, Output>);
|
|
18
|
+
generate<COut, CIn = COut, Output = never>(contextVariables: CIn, config?: {
|
|
19
|
+
abortSignal?: AbortSignal;
|
|
20
|
+
}): Promise<import("ai").GenerateTextResult<ToolSet, Output_1>>;
|
|
21
|
+
stream<COut, CIn = COut, Output = never>(contextVariables: CIn, config?: {
|
|
22
|
+
abortSignal?: AbortSignal;
|
|
23
|
+
transform?: StreamTextTransform<ToolSet> | StreamTextTransform<ToolSet>[];
|
|
24
|
+
}): Promise<import("ai").StreamTextResult<ToolSet, import("ai").DeepPartial<Output_1>>>;
|
|
25
|
+
}
|
|
26
|
+
export declare function agent<Output, CIn, COut = CIn>(options: CreateAgent<COut, CIn, Output>): Agent<COut, CIn, Output>;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/lib/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,KAAK,OAAO,EAGZ,YAAY,EAIb,MAAM,IAAI,CAAC;AAEZ,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,KAAK,aAAa,EAAe,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,GAAG,KAAK;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1B,eAAe,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,cAAM,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,GAAG,KAAK;;gBAE9B,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC;IAItC,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,GAAG,KAAK,EACpD,gBAAgB,EAAE,GAAG,EACrB,MAAM,CAAC,EAAE;QACP,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B;IAiCU,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,GAAG,KAAK,EAClD,gBAAgB,EAAE,GAAG,EACrB,MAAM,CAAC,EAAE;QACP,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,SAAS,CAAC,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;KAC3E;CAsEJ;AAED,wBAAgB,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,GAAG,EAC3C,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,GACtC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAE1B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Codec for encoding/decoding fragments.
|
|
3
|
+
*
|
|
4
|
+
* Methods use `this` to access fragment data:
|
|
5
|
+
* ```ts
|
|
6
|
+
* codec: {
|
|
7
|
+
* decode() { return { role: 'user', content: String(this.data) }; },
|
|
8
|
+
* encode() { return this.data; },
|
|
9
|
+
* }
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export interface FragmentCodec<TData = unknown> {
|
|
13
|
+
decode(): unknown;
|
|
14
|
+
/** Convert fragment to storage format (for DB) */
|
|
15
|
+
encode(): unknown;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=codec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/lib/codec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK,GAAG,OAAO;IAC5C,MAAM,IAAI,OAAO,CAAC;IAClB,kDAAkD;IAClD,MAAM,IAAI,OAAO,CAAC;CACnB"}
|
package/dist/lib/context.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { FragmentCodec } from './codec.ts';
|
|
1
2
|
/**
|
|
2
3
|
* Fragment type identifier.
|
|
3
4
|
* - 'fragment': Regular context fragment (default)
|
|
@@ -24,6 +25,11 @@ export interface ContextFragment {
|
|
|
24
25
|
* When true, this fragment will be persisted to the store on save().
|
|
25
26
|
*/
|
|
26
27
|
persist?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Codec for encoding/decoding this fragment.
|
|
30
|
+
* Used by resolve() to convert to AI SDK format.
|
|
31
|
+
*/
|
|
32
|
+
codec?: FragmentCodec;
|
|
27
33
|
}
|
|
28
34
|
/**
|
|
29
35
|
* Fragment data can be a primitive, array, object, or nested fragment.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/lib/context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB;;;OAGG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/lib/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB;;;OAGG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,MAAM,GACN,OAAO,GACP,eAAe,GACf,YAAY,EAAE,GACd;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;CAAE,CAAC;AAEpC;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,eAAe,CAQjE;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAE1D;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,cAAc,CAOtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAEpE"}
|
package/dist/lib/estimate.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import type { ContextFragment } from './context.ts';
|
|
1
2
|
import type { Models } from './models.generated.ts';
|
|
3
|
+
import type { ContextRenderer } from './renderers/abstract.renderer.ts';
|
|
2
4
|
/**
|
|
3
5
|
* Cost information for a model (prices per 1M tokens)
|
|
4
6
|
*/
|
|
@@ -23,6 +25,15 @@ export interface ModelInfo {
|
|
|
23
25
|
};
|
|
24
26
|
provider: string;
|
|
25
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Estimate for a single fragment
|
|
30
|
+
*/
|
|
31
|
+
export interface FragmentEstimate {
|
|
32
|
+
name: string;
|
|
33
|
+
id?: string;
|
|
34
|
+
tokens: number;
|
|
35
|
+
cost: number;
|
|
36
|
+
}
|
|
26
37
|
/**
|
|
27
38
|
* Estimate result returned by the estimate function
|
|
28
39
|
*/
|
|
@@ -36,6 +47,7 @@ export interface EstimateResult {
|
|
|
36
47
|
output: number;
|
|
37
48
|
exceedsContext: boolean;
|
|
38
49
|
};
|
|
50
|
+
fragments: FragmentEstimate[];
|
|
39
51
|
}
|
|
40
52
|
/**
|
|
41
53
|
* Tokenizer interface for counting tokens
|
|
@@ -102,7 +114,8 @@ export declare function getModelsRegistry(): ModelsRegistry;
|
|
|
102
114
|
* Automatically loads the registry if not already loaded
|
|
103
115
|
*
|
|
104
116
|
* @param modelId - Model ID (e.g., "openai:gpt-4o", "anthropic:claude-3-5-sonnet")
|
|
105
|
-
* @param
|
|
117
|
+
* @param renderer - Renderer to use for converting fragments to text
|
|
118
|
+
* @param fragments - Context fragments to estimate
|
|
106
119
|
*/
|
|
107
|
-
export declare function estimate(modelId: Models,
|
|
120
|
+
export declare function estimate(modelId: Models, renderer: ContextRenderer, ...fragments: ContextFragment[]): Promise<EstimateResult>;
|
|
108
121
|
//# sourceMappingURL=estimate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"estimate.d.ts","sourceRoot":"","sources":["../../src/lib/estimate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"estimate.d.ts","sourceRoot":"","sources":["../../src/lib/estimate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;IACF,SAAS,EAAE,gBAAgB,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC/B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAO9B,CAAC;AAoBF;;;GAGG;AACH,qBAAa,cAAc;;IAMzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA6B3B;;;OAGG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI3C;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7B;;OAEG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;;;OAIG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI;IAI7D;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAI/C;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;IAWxC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc;CAyBzD;AAKD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAKlD;AAED;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,eAAe,EACzB,GAAG,SAAS,EAAE,eAAe,EAAE,GAC9B,OAAO,CAAC,cAAc,CAAC,CA0CzB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BranchData, BranchInfo, ChatData, ChatInfo, CheckpointData, CheckpointInfo, GraphData, MessageData, SearchOptions, SearchResult } from './store.ts';
|
|
1
|
+
import type { BranchData, BranchInfo, ChatData, ChatInfo, CheckpointData, CheckpointInfo, GraphData, MessageData, SearchOptions, SearchResult, StoredChatData } from './store.ts';
|
|
2
2
|
import { ContextStore } from './store.ts';
|
|
3
3
|
/**
|
|
4
4
|
* SQLite-based context store using graph model.
|
|
@@ -10,8 +10,9 @@ export declare class SqliteContextStore extends ContextStore {
|
|
|
10
10
|
#private;
|
|
11
11
|
constructor(path: string);
|
|
12
12
|
createChat(chat: ChatData): Promise<void>;
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
upsertChat(chat: ChatData): Promise<StoredChatData>;
|
|
14
|
+
getChat(chatId: string): Promise<StoredChatData | undefined>;
|
|
15
|
+
updateChat(chatId: string, updates: Partial<Pick<ChatData, 'title' | 'metadata'>>): Promise<StoredChatData>;
|
|
15
16
|
listChats(): Promise<ChatInfo[]>;
|
|
16
17
|
addMessage(message: MessageData): Promise<void>;
|
|
17
18
|
getMessage(messageId: string): Promise<MessageData | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite.store.d.ts","sourceRoot":"","sources":["../../../src/lib/store/sqlite.store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,cAAc,EAGd,SAAS,EAET,WAAW,EACX,aAAa,EACb,YAAY,
|
|
1
|
+
{"version":3,"file":"sqlite.store.d.ts","sourceRoot":"","sources":["../../../src/lib/store/sqlite.store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,cAAc,EAGd,SAAS,EAET,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAwE1C;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;;gBAGtC,IAAI,EAAE,MAAM;IAWlB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAczC,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IA8BnD,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IA0B5D,UAAU,CACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC,GACrD,OAAO,CAAC,cAAc,CAAC;IAmCpB,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAuChC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC/C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IA8B/D,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAqCvD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAchD,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/C,SAAS,CACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IA4B5B,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IA4BhE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYhE,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC,IAAI,CAAC;IAMV,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IA0DnD,gBAAgB,CAAC,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB3D,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IA0BhC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAuB1D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7D,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC;IAgEpB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;CA0EnD"}
|
|
@@ -14,6 +14,11 @@ export interface ChatData {
|
|
|
14
14
|
id: string;
|
|
15
15
|
title?: string;
|
|
16
16
|
metadata?: Record<string, unknown>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Stored chat data returned from database (includes timestamps).
|
|
20
|
+
*/
|
|
21
|
+
export interface StoredChatData extends ChatData {
|
|
17
22
|
createdAt: number;
|
|
18
23
|
updatedAt: number;
|
|
19
24
|
}
|
|
@@ -38,7 +43,6 @@ export interface MessageData {
|
|
|
38
43
|
name: string;
|
|
39
44
|
type?: string;
|
|
40
45
|
data: unknown;
|
|
41
|
-
persist: boolean;
|
|
42
46
|
createdAt: number;
|
|
43
47
|
}
|
|
44
48
|
/**
|
|
@@ -158,14 +162,21 @@ export declare abstract class ContextStore {
|
|
|
158
162
|
* Create a new chat.
|
|
159
163
|
*/
|
|
160
164
|
abstract createChat(chat: ChatData): Promise<void>;
|
|
165
|
+
/**
|
|
166
|
+
* Create a chat if it doesn't exist, or return existing one.
|
|
167
|
+
* Returns the stored chat data with timestamps.
|
|
168
|
+
*/
|
|
169
|
+
abstract upsertChat(chat: ChatData): Promise<StoredChatData>;
|
|
161
170
|
/**
|
|
162
171
|
* Get a chat by ID.
|
|
163
172
|
*/
|
|
164
|
-
abstract getChat(chatId: string): Promise<
|
|
173
|
+
abstract getChat(chatId: string): Promise<StoredChatData | undefined>;
|
|
165
174
|
/**
|
|
166
175
|
* Update chat metadata.
|
|
176
|
+
* Note: updatedAt is automatically managed by database triggers.
|
|
177
|
+
* Returns the updated chat data.
|
|
167
178
|
*/
|
|
168
|
-
abstract updateChat(chatId: string, updates: Partial<Pick<ChatData, 'title' | 'metadata'
|
|
179
|
+
abstract updateChat(chatId: string, updates: Partial<Pick<ChatData, 'title' | 'metadata'>>): Promise<StoredChatData>;
|
|
169
180
|
/**
|
|
170
181
|
* List all chats, sorted by updatedAt descending.
|
|
171
182
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/lib/store/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/lib/store/store.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepagents/context",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,7 +34,12 @@
|
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"gpt-tokenizer": "^3.4.0",
|
|
36
36
|
"pluralize": "^8.0.0",
|
|
37
|
-
"stringcase": "^4.3.1"
|
|
37
|
+
"stringcase": "^4.3.1",
|
|
38
|
+
"ai": "^5.0.100",
|
|
39
|
+
"chalk": "^5.6.0",
|
|
40
|
+
"zod": "^3.25.76 || ^4.0.0",
|
|
41
|
+
"@deepagents/agent": "0.9.0",
|
|
42
|
+
"@ai-sdk/groq": "2.0.32"
|
|
38
43
|
},
|
|
39
44
|
"devDependencies": {
|
|
40
45
|
"@types/debug": "^4.1.12"
|