convex-agent-knowledge 0.0.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.
Files changed (97) hide show
  1. package/LICENSE +73 -0
  2. package/README.md +156 -0
  3. package/dist/client/chunking.d.ts +7 -0
  4. package/dist/client/chunking.d.ts.map +1 -0
  5. package/dist/client/chunking.js +36 -0
  6. package/dist/client/chunking.js.map +1 -0
  7. package/dist/client/extraction.d.ts +9 -0
  8. package/dist/client/extraction.d.ts.map +1 -0
  9. package/dist/client/extraction.js +88 -0
  10. package/dist/client/extraction.js.map +1 -0
  11. package/dist/client/hash.d.ts +3 -0
  12. package/dist/client/hash.d.ts.map +1 -0
  13. package/dist/client/hash.js +17 -0
  14. package/dist/client/hash.js.map +1 -0
  15. package/dist/client/index.d.ts +99 -0
  16. package/dist/client/index.d.ts.map +1 -0
  17. package/dist/client/index.js +194 -0
  18. package/dist/client/index.js.map +1 -0
  19. package/dist/client/types.d.ts +126 -0
  20. package/dist/client/types.d.ts.map +1 -0
  21. package/dist/client/types.js +2 -0
  22. package/dist/client/types.js.map +1 -0
  23. package/dist/component/_generated/api.d.ts +40 -0
  24. package/dist/component/_generated/api.d.ts.map +1 -0
  25. package/dist/component/_generated/api.js +31 -0
  26. package/dist/component/_generated/api.js.map +1 -0
  27. package/dist/component/_generated/component.d.ts +277 -0
  28. package/dist/component/_generated/component.d.ts.map +1 -0
  29. package/dist/component/_generated/component.js +11 -0
  30. package/dist/component/_generated/component.js.map +1 -0
  31. package/dist/component/_generated/dataModel.d.ts +46 -0
  32. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  33. package/dist/component/_generated/dataModel.js +11 -0
  34. package/dist/component/_generated/dataModel.js.map +1 -0
  35. package/dist/component/_generated/server.d.ts +121 -0
  36. package/dist/component/_generated/server.d.ts.map +1 -0
  37. package/dist/component/_generated/server.js +78 -0
  38. package/dist/component/_generated/server.js.map +1 -0
  39. package/dist/component/actions.d.ts +12 -0
  40. package/dist/component/actions.d.ts.map +1 -0
  41. package/dist/component/actions.js +42 -0
  42. package/dist/component/actions.js.map +1 -0
  43. package/dist/component/convex.config.d.ts +3 -0
  44. package/dist/component/convex.config.d.ts.map +1 -0
  45. package/dist/component/convex.config.js +4 -0
  46. package/dist/component/convex.config.js.map +1 -0
  47. package/dist/component/mutations.d.ts +85 -0
  48. package/dist/component/mutations.d.ts.map +1 -0
  49. package/dist/component/mutations.js +407 -0
  50. package/dist/component/mutations.js.map +1 -0
  51. package/dist/component/queries.d.ts +95 -0
  52. package/dist/component/queries.d.ts.map +1 -0
  53. package/dist/component/queries.js +181 -0
  54. package/dist/component/queries.js.map +1 -0
  55. package/dist/component/schema.d.ts +442 -0
  56. package/dist/component/schema.d.ts.map +1 -0
  57. package/dist/component/schema.js +140 -0
  58. package/dist/component/schema.js.map +1 -0
  59. package/dist/component/validators.d.ts +158 -0
  60. package/dist/component/validators.d.ts.map +1 -0
  61. package/dist/component/validators.js +90 -0
  62. package/dist/component/validators.js.map +1 -0
  63. package/dist/node/index.d.ts +3 -0
  64. package/dist/node/index.d.ts.map +1 -0
  65. package/dist/node/index.js +2 -0
  66. package/dist/node/index.js.map +1 -0
  67. package/dist/node/neo4j.d.ts +5 -0
  68. package/dist/node/neo4j.d.ts.map +1 -0
  69. package/dist/node/neo4j.js +147 -0
  70. package/dist/node/neo4j.js.map +1 -0
  71. package/dist/shared/ranking.d.ts +17 -0
  72. package/dist/shared/ranking.d.ts.map +1 -0
  73. package/dist/shared/ranking.js +44 -0
  74. package/dist/shared/ranking.js.map +1 -0
  75. package/package.json +84 -0
  76. package/src/client/chunking.test.ts +25 -0
  77. package/src/client/chunking.ts +45 -0
  78. package/src/client/extraction.test.ts +15 -0
  79. package/src/client/extraction.ts +108 -0
  80. package/src/client/hash.test.ts +17 -0
  81. package/src/client/hash.ts +17 -0
  82. package/src/client/index.ts +307 -0
  83. package/src/client/types.ts +141 -0
  84. package/src/component/_generated/api.ts +56 -0
  85. package/src/component/_generated/component.ts +310 -0
  86. package/src/component/_generated/dataModel.ts +60 -0
  87. package/src/component/_generated/server.ts +156 -0
  88. package/src/component/actions.ts +47 -0
  89. package/src/component/convex.config.ts +5 -0
  90. package/src/component/mutations.ts +445 -0
  91. package/src/component/queries.ts +202 -0
  92. package/src/component/schema.ts +161 -0
  93. package/src/component/validators.ts +104 -0
  94. package/src/node/index.ts +2 -0
  95. package/src/node/neo4j.ts +210 -0
  96. package/src/shared/ranking.test.ts +30 -0
  97. package/src/shared/ranking.ts +64 -0
@@ -0,0 +1,194 @@
1
+ import { embed, embedMany } from "ai";
2
+ import { chunkText } from "./chunking.js";
3
+ import { extractKnowledge } from "./extraction.js";
4
+ import { stableHash } from "./hash.js";
5
+ import { fuseMemoryScores } from "../shared/ranking.js";
6
+ export class AgentKnowledge {
7
+ component;
8
+ options;
9
+ constructor(component, options) {
10
+ this.component = component;
11
+ this.options = options;
12
+ }
13
+ async remember(ctx, input) {
14
+ const chunks = input.chunks ?? chunkText(input.text, this.options.chunking);
15
+ if (chunks.length === 0) {
16
+ throw new Error("Cannot remember empty text");
17
+ }
18
+ const embeddedChunks = await this.embedChunks(chunks);
19
+ const extracted = input.extracted ??
20
+ (this.options.extract
21
+ ? await this.options.extract({
22
+ namespace: input.namespace,
23
+ text: input.text,
24
+ chunks,
25
+ })
26
+ : await extractKnowledge({
27
+ namespace: input.namespace,
28
+ text: input.text,
29
+ model: this.options.extractionModel,
30
+ }));
31
+ const mutationArgs = {
32
+ namespace: input.namespace,
33
+ ...(input.key === undefined ? {} : { key: input.key }),
34
+ ...(input.agentId === undefined ? {} : { agentId: input.agentId }),
35
+ text: input.text,
36
+ contentHash: stableHash(`${input.namespace}:${input.text}`),
37
+ ...(input.source === undefined ? {} : { source: input.source }),
38
+ ...(input.metadata === undefined ? {} : { metadata: input.metadata }),
39
+ ...(input.importance === undefined ? {} : { importance: input.importance }),
40
+ embeddingDimension: this.options.embeddingDimension,
41
+ chunks: embeddedChunks,
42
+ entities: extracted.entities,
43
+ relationships: extracted.relationships,
44
+ };
45
+ const result = await ctx.runMutation(this.component.mutations.remember, mutationArgs);
46
+ if (this.options.graph) {
47
+ await this.syncGraph(ctx, { limit: 10 });
48
+ }
49
+ return result;
50
+ }
51
+ async recall(ctx, input) {
52
+ const searchType = input.searchType ?? "hybrid";
53
+ const limit = input.limit ?? 10;
54
+ const queryEmbedding = input.queryEmbedding ??
55
+ (searchType === "graph" ? undefined : await this.embedQuery(input.query));
56
+ const semanticResult = searchType === "graph"
57
+ ? { results: [] }
58
+ : (await ctx.runAction(this.component.actions.recall, {
59
+ namespace: input.namespace,
60
+ query: input.query,
61
+ ...(queryEmbedding === undefined ? {} : { queryEmbedding }),
62
+ embeddingDimension: this.options.embeddingDimension,
63
+ searchType,
64
+ limit,
65
+ ...(input.agentId === undefined ? {} : { agentId: input.agentId }),
66
+ }));
67
+ const graph = input.graph ?? this.options.graph;
68
+ if (!graph || searchType === "semantic") {
69
+ return semanticResult;
70
+ }
71
+ const graphScores = await graph.expand({
72
+ namespace: input.namespace,
73
+ seedMemoryIds: semanticResult.results.map((card) => card.memoryId),
74
+ hops: 2,
75
+ limit: Math.max(limit * 4, 16),
76
+ ...(input.entityHints === undefined ? {} : { entityHints: input.entityHints }),
77
+ });
78
+ const graphCards = graphScores.length === 0
79
+ ? []
80
+ : (await ctx.runQuery(this.component.queries.fetchMemoryCards, {
81
+ matches: graphScores.map((score) => ({
82
+ memoryId: score.memoryId,
83
+ score: score.graphScore,
84
+ graphScore: score.graphScore,
85
+ })),
86
+ }));
87
+ return {
88
+ results: fuseMemoryScores(semanticResult.results, graphCards, { limit }),
89
+ };
90
+ }
91
+ async observe(ctx, input) {
92
+ return await ctx.runMutation(this.component.mutations.observe, {
93
+ namespace: input.namespace,
94
+ memoryId: input.memoryId,
95
+ query: input.query,
96
+ outcome: input.outcome,
97
+ ...(input.feedback === undefined ? {} : { feedback: input.feedback }),
98
+ ...(input.metadata === undefined ? {} : { metadata: input.metadata }),
99
+ });
100
+ }
101
+ async promote(ctx, input) {
102
+ return (await ctx.runMutation(this.component.mutations.promote, {
103
+ namespace: input.namespace,
104
+ ...(input.limit === undefined ? {} : { limit: input.limit }),
105
+ }));
106
+ }
107
+ async deleteByKey(ctx, input) {
108
+ return (await ctx.runMutation(this.component.mutations.deleteByKey, {
109
+ namespace: input.namespace,
110
+ key: input.key,
111
+ }));
112
+ }
113
+ async getMemory(ctx, input) {
114
+ return (await ctx.runQuery(this.component.queries.getMemory, {
115
+ memoryId: input.memoryId,
116
+ }));
117
+ }
118
+ async listMemories(ctx, input) {
119
+ return (await ctx.runQuery(this.component.queries.listMemories, {
120
+ namespace: input.namespace,
121
+ ...(input.limit === undefined ? {} : { limit: input.limit }),
122
+ ...(input.cursor === undefined ? {} : { cursor: input.cursor }),
123
+ }));
124
+ }
125
+ async syncGraph(ctx, input) {
126
+ const graph = input?.graph ?? this.options.graph;
127
+ if (!graph) {
128
+ return { succeeded: 0, failed: 0 };
129
+ }
130
+ const jobs = (await ctx.runQuery(this.component.queries.listPendingGraphSyncJobs, {
131
+ limit: input?.limit ?? 10,
132
+ }));
133
+ let succeeded = 0;
134
+ let failed = 0;
135
+ for (const job of jobs) {
136
+ await ctx.runMutation(this.component.mutations.markGraphSyncJobRunning, {
137
+ jobId: job.jobId,
138
+ });
139
+ try {
140
+ await graph.syncJob(job);
141
+ await ctx.runMutation(this.component.mutations.markGraphSyncJobSucceeded, {
142
+ jobId: job.jobId,
143
+ });
144
+ succeeded += 1;
145
+ }
146
+ catch (error) {
147
+ await ctx.runMutation(this.component.mutations.markGraphSyncJobFailed, {
148
+ jobId: job.jobId,
149
+ error: error instanceof Error ? error.message : String(error),
150
+ });
151
+ failed += 1;
152
+ }
153
+ }
154
+ return { succeeded, failed };
155
+ }
156
+ async embedChunks(chunks) {
157
+ if (!this.options.textEmbeddingModel) {
158
+ throw new Error("AgentKnowledge requires textEmbeddingModel to remember text");
159
+ }
160
+ const result = await embedMany({
161
+ model: this.options.textEmbeddingModel,
162
+ values: chunks.map((chunk) => chunk.text),
163
+ });
164
+ return chunks.map((chunk, index) => {
165
+ const embedding = result.embeddings[index];
166
+ if (!embedding) {
167
+ throw new Error(`Missing embedding for chunk ${index}`);
168
+ }
169
+ if (embedding.length !== this.options.embeddingDimension) {
170
+ throw new Error(`Embedding dimension ${embedding.length} does not match configured dimension ${this.options.embeddingDimension}`);
171
+ }
172
+ return {
173
+ ...chunk,
174
+ embedding,
175
+ };
176
+ });
177
+ }
178
+ async embedQuery(query) {
179
+ if (!this.options.textEmbeddingModel) {
180
+ throw new Error("AgentKnowledge requires textEmbeddingModel for semantic or hybrid recall");
181
+ }
182
+ const result = await embed({
183
+ model: this.options.textEmbeddingModel,
184
+ value: query,
185
+ });
186
+ if (result.embedding.length !== this.options.embeddingDimension) {
187
+ throw new Error(`Embedding dimension ${result.embedding.length} does not match configured dimension ${this.options.embeddingDimension}`);
188
+ }
189
+ return result.embedding;
190
+ }
191
+ }
192
+ export { chunkText } from "./chunking.js";
193
+ export { extractKnowledge, heuristicExtractKnowledge } from "./extraction.js";
194
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ export type SearchType = "semantic" | "graph" | "hybrid";
2
+ export type MemorySource = {
3
+ type: string;
4
+ id?: string;
5
+ url?: string;
6
+ title?: string;
7
+ };
8
+ export type ExtractedEntity = {
9
+ externalId: string;
10
+ name: string;
11
+ type: string;
12
+ description?: string;
13
+ aliases?: string[];
14
+ confidence?: number;
15
+ metadata?: unknown;
16
+ };
17
+ export type ExtractedRelationship = {
18
+ fromEntityExternalId: string;
19
+ toEntityExternalId: string;
20
+ type: string;
21
+ description?: string;
22
+ confidence?: number;
23
+ weight?: number;
24
+ metadata?: unknown;
25
+ };
26
+ export type ExtractedKnowledge = {
27
+ entities: ExtractedEntity[];
28
+ relationships: ExtractedRelationship[];
29
+ };
30
+ export type ChunkInput = {
31
+ text: string;
32
+ summary?: string;
33
+ tokenCount?: number;
34
+ metadata?: unknown;
35
+ };
36
+ export type EmbeddedChunkInput = ChunkInput & {
37
+ embedding: number[];
38
+ };
39
+ export type Neo4jConfig = {
40
+ uri: string;
41
+ user: string;
42
+ password: string;
43
+ database?: string;
44
+ };
45
+ export type GraphSyncJob = {
46
+ jobId: string;
47
+ namespace: string;
48
+ operation: "upsert_memory" | "delete_memory" | "promote_memory";
49
+ attempts: number;
50
+ payload: unknown;
51
+ };
52
+ export type GraphMemoryScore = {
53
+ memoryId: string;
54
+ graphScore: number;
55
+ };
56
+ export type GraphExpandInput = {
57
+ namespace: string;
58
+ seedMemoryIds: string[];
59
+ entityHints?: string[];
60
+ hops?: number;
61
+ limit?: number;
62
+ };
63
+ export type GraphStore = {
64
+ syncJob: (job: GraphSyncJob) => Promise<void>;
65
+ expand: (input: GraphExpandInput) => Promise<GraphMemoryScore[]>;
66
+ };
67
+ export type MemoryCard = {
68
+ memoryId: string;
69
+ namespace: string;
70
+ key?: string;
71
+ agentId?: string;
72
+ text: string;
73
+ score: number;
74
+ semanticScore?: number;
75
+ graphScore?: number;
76
+ importance: number;
77
+ source?: MemorySource;
78
+ metadata?: unknown;
79
+ entities: Array<{
80
+ externalId: string;
81
+ name: string;
82
+ type: string;
83
+ description?: string;
84
+ confidence: number;
85
+ }>;
86
+ relationships: Array<{
87
+ fromEntityExternalId: string;
88
+ toEntityExternalId: string;
89
+ type: string;
90
+ description?: string;
91
+ confidence: number;
92
+ weight: number;
93
+ }>;
94
+ };
95
+ export type AgentKnowledgeComponent = {
96
+ actions: {
97
+ recall: unknown;
98
+ };
99
+ mutations: {
100
+ remember: unknown;
101
+ observe: unknown;
102
+ promote: unknown;
103
+ deleteByKey: unknown;
104
+ markGraphSyncJobRunning: unknown;
105
+ markGraphSyncJobSucceeded: unknown;
106
+ markGraphSyncJobFailed: unknown;
107
+ };
108
+ queries: {
109
+ getMemory: unknown;
110
+ listMemories: unknown;
111
+ fetchMemoryCards: unknown;
112
+ listPendingGraphSyncJobs: unknown;
113
+ };
114
+ };
115
+ export type ConvexActionCtx = {
116
+ runAction: (functionReference: unknown, args: Record<string, unknown>) => Promise<any>;
117
+ runMutation: (functionReference: unknown, args: Record<string, unknown>) => Promise<any>;
118
+ runQuery: (functionReference: unknown, args: Record<string, unknown>) => Promise<any>;
119
+ };
120
+ export type ConvexMutationCtx = {
121
+ runMutation: (functionReference: unknown, args: Record<string, unknown>) => Promise<any>;
122
+ };
123
+ export type ConvexQueryCtx = {
124
+ runQuery: (functionReference: unknown, args: Record<string, unknown>) => Promise<any>;
125
+ };
126
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Generated `api` utility.
3
+ *
4
+ * THIS CODE IS AUTOMATICALLY GENERATED.
5
+ *
6
+ * To regenerate, run `npx convex dev`.
7
+ * @module
8
+ */
9
+ import type * as actions from "../actions.js";
10
+ import type * as mutations from "../mutations.js";
11
+ import type * as queries from "../queries.js";
12
+ import type * as validators from "../validators.js";
13
+ import type { ApiFromModules, FilterApi, FunctionReference } from "convex/server";
14
+ declare const fullApi: ApiFromModules<{
15
+ actions: typeof actions;
16
+ mutations: typeof mutations;
17
+ queries: typeof queries;
18
+ validators: typeof validators;
19
+ }>;
20
+ /**
21
+ * A utility for referencing Convex functions in your app's public API.
22
+ *
23
+ * Usage:
24
+ * ```js
25
+ * const myFunctionReference = api.myModule.myFunction;
26
+ * ```
27
+ */
28
+ export declare const api: FilterApi<typeof fullApi, FunctionReference<any, "public">>;
29
+ /**
30
+ * A utility for referencing Convex functions in your app's internal API.
31
+ *
32
+ * Usage:
33
+ * ```js
34
+ * const myFunctionReference = internal.myModule.myFunction;
35
+ * ```
36
+ */
37
+ export declare const internal: FilterApi<typeof fullApi, FunctionReference<any, "internal">>;
38
+ export declare const components: {};
39
+ export {};
40
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAGvB,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC;IAC5B,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,UAAU,EAAE,OAAO,UAAU,CAAC;CAC/B,CAAiB,CAAC;AAEnB;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,EAAE,SAAS,CACzB,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CACjB,CAAC;AAElB;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAC9B,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,CACnB,CAAC;AAElB,eAAO,MAAM,UAAU,EAAqC,EAAE,CAAC"}
@@ -0,0 +1,31 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * Generated `api` utility.
4
+ *
5
+ * THIS CODE IS AUTOMATICALLY GENERATED.
6
+ *
7
+ * To regenerate, run `npx convex dev`.
8
+ * @module
9
+ */
10
+ import { anyApi, componentsGeneric } from "convex/server";
11
+ const fullApi = anyApi;
12
+ /**
13
+ * A utility for referencing Convex functions in your app's public API.
14
+ *
15
+ * Usage:
16
+ * ```js
17
+ * const myFunctionReference = api.myModule.myFunction;
18
+ * ```
19
+ */
20
+ export const api = anyApi;
21
+ /**
22
+ * A utility for referencing Convex functions in your app's internal API.
23
+ *
24
+ * Usage:
25
+ * ```js
26
+ * const myFunctionReference = internal.myModule.myFunction;
27
+ * ```
28
+ */
29
+ export const internal = anyApi;
30
+ export const components = componentsGeneric();
31
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB;;;;;;;GAOG;AAYH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,OAAO,GAKR,MAAa,CAAC;AAEnB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,GAAG,GAGZ,MAAa,CAAC;AAElB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAGjB,MAAa,CAAC;AAElB,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,EAAmB,CAAC"}