@elizaos/plugin-knowledge 2.0.0-alpha.6 → 2.0.0-alpha.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../actions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAKvB,eAAO,MAAM,sBAAsB,EAAE,MAkNpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAsJnC,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAkD,CAAC"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../actions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAKvB,eAAO,MAAM,sBAAsB,EAAE,MAiNpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAqJnC,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAkD,CAAC"}
@@ -1,156 +1,3 @@
1
- // documents-provider.ts
2
- import { addHeader, logger, MemoryType } from "@elizaos/core";
3
- var documentsProvider = {
4
- name: "AVAILABLE_DOCUMENTS",
5
- description: "List of documents available in the knowledge base. Shows which documents the agent can reference and retrieve information from.",
6
- dynamic: true,
7
- get: async (runtime, _message, _state) => {
8
- try {
9
- const knowledgeService = runtime.getService("knowledge");
10
- if (!knowledgeService) {
11
- logger.warn("Knowledge service not available for documents provider");
12
- return {
13
- data: { documents: [] },
14
- values: {
15
- documentsCount: 0,
16
- documents: "",
17
- availableDocuments: ""
18
- },
19
- text: ""
20
- };
21
- }
22
- const allMemories = await knowledgeService.getMemories({
23
- tableName: "documents",
24
- roomId: runtime.agentId,
25
- count: 100
26
- });
27
- const documents = allMemories.filter((memory) => memory.metadata?.type === MemoryType.DOCUMENT);
28
- if (!documents || documents.length === 0) {
29
- return {
30
- data: { documents: [] },
31
- values: {
32
- documentsCount: 0,
33
- documents: "",
34
- availableDocuments: ""
35
- },
36
- text: ""
37
- };
38
- }
39
- const documentsList = documents.map((doc, index) => {
40
- const metadata = doc.metadata;
41
- const filename = metadata?.filename || metadata?.title || `Document ${index + 1}`;
42
- const fileType = metadata?.fileExt || metadata?.fileType || "";
43
- const source = metadata?.source || "upload";
44
- const fileSize = metadata?.fileSize;
45
- const parts = [filename];
46
- if (fileType) {
47
- parts.push(fileType);
48
- }
49
- if (fileSize) {
50
- const sizeKB = Math.round(fileSize / 1024);
51
- if (sizeKB > 1024) {
52
- parts.push(`${Math.round(sizeKB / 1024)}MB`);
53
- } else {
54
- parts.push(`${sizeKB}KB`);
55
- }
56
- }
57
- if (source && source !== "upload") {
58
- parts.push(`from ${source}`);
59
- }
60
- return parts.join(" - ");
61
- }).join(`
62
- `);
63
- const documentsText = addHeader("# Available Documents", `${documents.length} document(s) in knowledge base:
64
- ${documentsList}`);
65
- return {
66
- data: {
67
- documents: documents.map((doc) => ({
68
- id: doc.id,
69
- filename: doc.metadata?.filename || doc.metadata?.title,
70
- fileType: doc.metadata?.fileType || doc.metadata?.fileExt,
71
- source: doc.metadata?.source
72
- })),
73
- count: documents.length
74
- },
75
- values: {
76
- documentsCount: documents.length,
77
- documents: documentsList,
78
- availableDocuments: documentsText
79
- },
80
- text: documentsText
81
- };
82
- } catch (error) {
83
- logger.error("Error in documents provider:", error instanceof Error ? error.message : String(error));
84
- return {
85
- data: { documents: [], error: error instanceof Error ? error.message : String(error) },
86
- values: {
87
- documentsCount: 0,
88
- documents: "",
89
- availableDocuments: ""
90
- },
91
- text: ""
92
- };
93
- }
94
- }
95
- };
96
- // provider.ts
97
- import { addHeader as addHeader2 } from "@elizaos/core";
98
- var knowledgeProvider = {
99
- name: "KNOWLEDGE",
100
- description: "Knowledge from the knowledge base that the agent knows, retrieved whenever the agent needs to answer a question about their expertise.",
101
- dynamic: true,
102
- get: async (runtime, message) => {
103
- const knowledgeService = runtime.getService("knowledge");
104
- const knowledgeData = await knowledgeService?.getKnowledge(message);
105
- if (!knowledgeData || knowledgeData.length === 0) {
106
- return {
107
- text: "",
108
- values: { knowledge: "", knowledgeUsed: false },
109
- data: { knowledge: "", ragMetadata: null, knowledgeUsed: false }
110
- };
111
- }
112
- const firstFiveKnowledgeItems = knowledgeData.slice(0, 5);
113
- let knowledge = addHeader2("# Knowledge", firstFiveKnowledgeItems.map((item) => `- ${item.content.text}`).join(`
114
- `));
115
- const tokenLength = 3.5;
116
- const maxChars = 4000 * tokenLength;
117
- if (knowledge.length > maxChars) {
118
- knowledge = knowledge.slice(0, maxChars);
119
- }
120
- const ragMetadata = {
121
- retrievedFragments: knowledgeData.map((fragment) => {
122
- const fragmentMetadata = fragment.metadata;
123
- return {
124
- fragmentId: fragment.id,
125
- documentTitle: fragmentMetadata?.filename || fragmentMetadata?.title || "",
126
- similarityScore: fragment.similarity,
127
- contentPreview: `${(fragment.content?.text || "").substring(0, 100)}...`
128
- };
129
- }),
130
- queryText: message.content?.text || "",
131
- totalFragments: knowledgeData.length,
132
- retrievalTimestamp: Date.now()
133
- };
134
- knowledgeService.setPendingRAGMetadata(ragMetadata);
135
- setTimeout(async () => {
136
- await knowledgeService.enrichRecentMemoriesWithPendingRAG();
137
- }, 2000);
138
- return {
139
- data: {
140
- knowledge,
141
- ragMetadata,
142
- knowledgeUsed: true
143
- },
144
- values: {
145
- knowledge,
146
- knowledgeUsed: true
147
- },
148
- text: knowledge,
149
- ragMetadata,
150
- knowledgeUsed: true
151
- };
152
- }
153
- };
154
1
  // types.ts
155
2
  import z from "zod";
156
3
  var ModelConfigSchema = z.object({
@@ -187,5 +34,5 @@ export {
187
34
  KnowledgeServiceType
188
35
  };
189
36
 
190
- //# debugId=B275B978F846716464756E2164756E21
37
+ //# debugId=C33D155A95A0CEF964756E2164756E21
191
38
  //# sourceMappingURL=index.browser.js.map
@@ -1,12 +1,10 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../documents-provider.ts", "../../provider.ts", "../../types.ts"],
3
+ "sources": ["../../types.ts"],
4
4
  "sourcesContent": [
5
- "import type { IAgentRuntime, Memory, Provider, State } from \"@elizaos/core\";\nimport { addHeader, logger, MemoryType } from \"@elizaos/core\";\nimport type { KnowledgeService } from \"./service.ts\";\nimport type { KnowledgeDocumentMetadata } from \"./types.ts\";\n\nexport const documentsProvider: Provider = {\n name: \"AVAILABLE_DOCUMENTS\",\n description:\n \"List of documents available in the knowledge base. Shows which documents the agent can reference and retrieve information from.\",\n dynamic: true,\n get: async (runtime: IAgentRuntime, _message: Memory, _state?: State) => {\n try {\n const knowledgeService = runtime.getService(\"knowledge\") as KnowledgeService;\n\n if (!knowledgeService) {\n logger.warn(\"Knowledge service not available for documents provider\");\n return {\n data: { documents: [] },\n values: {\n documentsCount: 0,\n documents: \"\",\n availableDocuments: \"\",\n },\n text: \"\",\n };\n }\n\n const allMemories = await knowledgeService.getMemories({\n tableName: \"documents\",\n roomId: runtime.agentId,\n count: 100,\n });\n\n const documents = allMemories.filter(\n (memory) => memory.metadata?.type === MemoryType.DOCUMENT\n );\n\n if (!documents || documents.length === 0) {\n return {\n data: { documents: [] },\n values: {\n documentsCount: 0,\n documents: \"\",\n availableDocuments: \"\",\n },\n text: \"\",\n };\n }\n\n const documentsList = documents\n .map((doc, index) => {\n const metadata = doc.metadata as KnowledgeDocumentMetadata | undefined;\n const filename = metadata?.filename || metadata?.title || `Document ${index + 1}`;\n const fileType = metadata?.fileExt || metadata?.fileType || \"\";\n const source = metadata?.source || \"upload\";\n const fileSize = metadata?.fileSize;\n\n const parts = [filename];\n\n if (fileType) {\n parts.push(fileType);\n }\n\n if (fileSize) {\n const sizeKB = Math.round(fileSize / 1024);\n if (sizeKB > 1024) {\n parts.push(`${Math.round(sizeKB / 1024)}MB`);\n } else {\n parts.push(`${sizeKB}KB`);\n }\n }\n\n if (source && source !== \"upload\") {\n parts.push(`from ${source}`);\n }\n\n return parts.join(\" - \");\n })\n .join(\"\\n\");\n\n const documentsText = addHeader(\n \"# Available Documents\",\n `${documents.length} document(s) in knowledge base:\\n${documentsList}`\n );\n\n return {\n data: {\n documents: documents.map((doc) => ({\n id: doc.id,\n filename:\n (doc.metadata as KnowledgeDocumentMetadata | undefined)?.filename ||\n (doc.metadata as KnowledgeDocumentMetadata | undefined)?.title,\n fileType:\n (doc.metadata as KnowledgeDocumentMetadata | undefined)?.fileType ||\n (doc.metadata as KnowledgeDocumentMetadata | undefined)?.fileExt,\n source: (doc.metadata as KnowledgeDocumentMetadata | undefined)?.source,\n })),\n count: documents.length,\n },\n values: {\n documentsCount: documents.length,\n documents: documentsList,\n availableDocuments: documentsText,\n },\n text: documentsText,\n };\n } catch (error) {\n logger.error(\n \"Error in documents provider:\",\n error instanceof Error ? error.message : String(error)\n );\n return {\n data: { documents: [], error: error instanceof Error ? error.message : String(error) },\n values: {\n documentsCount: 0,\n documents: \"\",\n availableDocuments: \"\",\n },\n text: \"\",\n };\n }\n },\n};\n",
6
- "import type { IAgentRuntime, Memory, Provider } from \"@elizaos/core\";\nimport { addHeader } from \"@elizaos/core\";\nimport type { KnowledgeService } from \"./service.ts\";\n\nexport const knowledgeProvider: Provider = {\n name: \"KNOWLEDGE\",\n description:\n \"Knowledge from the knowledge base that the agent knows, retrieved whenever the agent needs to answer a question about their expertise.\",\n dynamic: true,\n get: async (runtime: IAgentRuntime, message: Memory) => {\n const knowledgeService = runtime.getService(\"knowledge\") as KnowledgeService;\n const knowledgeData = await knowledgeService?.getKnowledge(message);\n\n // Early return when no knowledge exists - provider will be skipped in context\n // (runtime filters providers with empty/whitespace text)\n if (!knowledgeData || knowledgeData.length === 0) {\n return {\n text: \"\",\n values: { knowledge: \"\", knowledgeUsed: false },\n data: { knowledge: \"\", ragMetadata: null, knowledgeUsed: false },\n };\n }\n\n const firstFiveKnowledgeItems = knowledgeData.slice(0, 5);\n\n let knowledge = addHeader(\n \"# Knowledge\",\n firstFiveKnowledgeItems.map((item) => `- ${item.content.text}`).join(\"\\n\")\n );\n\n const tokenLength = 3.5;\n const maxChars = 4000 * tokenLength;\n\n if (knowledge.length > maxChars) {\n knowledge = knowledge.slice(0, maxChars);\n }\n\n const ragMetadata = {\n retrievedFragments: knowledgeData.map((fragment) => {\n const fragmentMetadata = fragment.metadata as Record<string, unknown> | undefined;\n return {\n fragmentId: fragment.id,\n documentTitle:\n (fragmentMetadata?.filename as string) || (fragmentMetadata?.title as string) || \"\",\n similarityScore: (fragment as { similarity?: number }).similarity,\n contentPreview: `${(fragment.content?.text || \"\").substring(0, 100)}...`,\n };\n }),\n queryText: message.content?.text || \"\",\n totalFragments: knowledgeData.length,\n retrievalTimestamp: Date.now(),\n };\n\n knowledgeService.setPendingRAGMetadata(ragMetadata);\n setTimeout(async () => {\n await knowledgeService.enrichRecentMemoriesWithPendingRAG();\n }, 2000);\n\n return {\n data: {\n knowledge,\n ragMetadata,\n knowledgeUsed: true,\n },\n values: {\n knowledge,\n knowledgeUsed: true,\n },\n text: knowledge,\n ragMetadata,\n knowledgeUsed: true,\n };\n },\n};\n",
7
5
  "import type { Content, UUID } from \"@elizaos/core\";\nimport z from \"zod\";\n\n/**\n * Local metadata type for stored knowledge items.\n * Uses a permissive record type to avoid conflicts between TypeScript and protobuf MemoryMetadata types.\n */\nexport type StoredKnowledgeMetadata = Record<string, unknown>;\n\n/**\n * Stored knowledge item with content, metadata, and optional similarity score.\n * Used for knowledge retrieval results and internal knowledge processing.\n * This is a local definition to avoid conflicts with the proto KnowledgeItem type.\n */\nexport interface StoredKnowledgeItem {\n id: UUID;\n content: Content;\n metadata?: StoredKnowledgeMetadata;\n worldId?: UUID;\n similarity?: number;\n}\n\nexport const ModelConfigSchema = z.object({\n EMBEDDING_PROVIDER: z.enum([\"openai\", \"google\"]).optional(),\n TEXT_PROVIDER: z.enum([\"openai\", \"anthropic\", \"openrouter\", \"google\"]).optional(),\n\n OPENAI_API_KEY: z.string().optional(),\n ANTHROPIC_API_KEY: z.string().optional(),\n OPENROUTER_API_KEY: z.string().optional(),\n GOOGLE_API_KEY: z.string().optional(),\n\n OPENAI_BASE_URL: z.string().optional(),\n ANTHROPIC_BASE_URL: z.string().optional(),\n OPENROUTER_BASE_URL: z.string().optional(),\n GOOGLE_BASE_URL: z.string().optional(),\n\n TEXT_EMBEDDING_MODEL: z.string(),\n TEXT_MODEL: z.string().optional(),\n\n MAX_INPUT_TOKENS: z\n .string()\n .or(z.number())\n .transform((val) => (typeof val === \"string\" ? parseInt(val, 10) : val)),\n MAX_OUTPUT_TOKENS: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 4096)),\n\n EMBEDDING_DIMENSION: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 1536)),\n\n LOAD_DOCS_ON_STARTUP: z.boolean().default(false),\n\n CTX_KNOWLEDGE_ENABLED: z.boolean().default(false),\n\n RATE_LIMIT_ENABLED: z.boolean().default(true),\n\n MAX_CONCURRENT_REQUESTS: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 150)),\n\n REQUESTS_PER_MINUTE: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 300)),\n\n TOKENS_PER_MINUTE: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 750000)),\n\n BATCH_DELAY_MS: z\n .string()\n .or(z.number())\n .optional()\n .transform((val) => (val ? (typeof val === \"string\" ? parseInt(val, 10) : val) : 100)),\n});\n\nexport type ModelConfig = z.infer<typeof ModelConfigSchema>;\n\nexport interface ProviderRateLimits {\n maxConcurrentRequests: number;\n requestsPerMinute: number;\n tokensPerMinute?: number;\n provider: string;\n rateLimitEnabled: boolean;\n batchDelayMs: number;\n}\n\nexport interface TextGenerationOptions {\n provider?: \"anthropic\" | \"openai\" | \"openrouter\" | \"google\";\n modelName?: string;\n maxTokens?: number;\n cacheDocument?: string;\n cacheOptions?: {\n type: \"ephemeral\";\n };\n autoCacheContextualRetrieval?: boolean;\n}\n\nexport interface AddKnowledgeOptions {\n agentId?: UUID;\n worldId: UUID;\n roomId: UUID;\n entityId: UUID;\n clientDocumentId: UUID;\n contentType: string;\n originalFilename: string;\n content: string;\n metadata?: Record<string, unknown>;\n}\n\ndeclare module \"@elizaos/core\" {\n interface ServiceTypeRegistry {\n KNOWLEDGE: \"knowledge\";\n }\n}\n\nexport const KnowledgeServiceType = {\n KNOWLEDGE: \"knowledge\" as const,\n} satisfies Partial<import(\"@elizaos/core\").ServiceTypeRegistry>;\n\nexport interface KnowledgeDocumentMetadata extends Record<string, unknown> {\n type: string; // e.g., 'document', 'website_content'\n source: string; // e.g., 'upload', 'web_scrape', path to file\n title?: string;\n filename?: string;\n fileExt?: string;\n fileType?: string; // MIME type\n fileSize?: number;\n}\n\nexport interface KnowledgeConfig {\n CTX_KNOWLEDGE_ENABLED: boolean;\n LOAD_DOCS_ON_STARTUP: boolean;\n MAX_INPUT_TOKENS?: string | number;\n MAX_OUTPUT_TOKENS?: string | number;\n EMBEDDING_PROVIDER?: string;\n TEXT_PROVIDER?: string;\n TEXT_EMBEDDING_MODEL?: string;\n // Rate limiting configuration\n RATE_LIMIT_ENABLED?: boolean;\n MAX_CONCURRENT_REQUESTS?: number;\n REQUESTS_PER_MINUTE?: number;\n TOKENS_PER_MINUTE?: number;\n BATCH_DELAY_MS?: number;\n}\n\nexport interface LoadResult {\n successful: number;\n failed: number;\n errors?: Array<{ filename: string; error: string }>;\n}\n\nexport interface ExtendedMemoryMetadata extends Record<string, unknown> {\n type?: string;\n title?: string;\n filename?: string;\n path?: string;\n description?: string;\n fileExt?: string;\n timestamp?: number;\n contentType?: string;\n documentId?: string;\n source?: string;\n fileType?: string;\n fileSize?: number;\n position?: number; // For fragments\n originalFilename?: string;\n url?: string; // For web content\n}\n"
8
6
  ],
9
- "mappings": "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",
10
- "debugId": "B275B978F846716464756E2164756E21",
7
+ "mappings": ";AACA;AAqBO,IAAM,oBAAoB,EAAE,OAAO;AAAA,EACxC,oBAAoB,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC,EAAE,SAAS;AAAA,EAC1D,eAAe,EAAE,KAAK,CAAC,UAAU,aAAa,cAAc,QAAQ,CAAC,EAAE,SAAS;AAAA,EAEhF,gBAAgB,EAAE,OAAO,EAAE,SAAS;AAAA,EACpC,mBAAmB,EAAE,OAAO,EAAE,SAAS;AAAA,EACvC,oBAAoB,EAAE,OAAO,EAAE,SAAS;AAAA,EACxC,gBAAgB,EAAE,OAAO,EAAE,SAAS;AAAA,EAEpC,iBAAiB,EAAE,OAAO,EAAE,SAAS;AAAA,EACrC,oBAAoB,EAAE,OAAO,EAAE,SAAS;AAAA,EACxC,qBAAqB,EAAE,OAAO,EAAE,SAAS;AAAA,EACzC,iBAAiB,EAAE,OAAO,EAAE,SAAS;AAAA,EAErC,sBAAsB,EAAE,OAAO;AAAA,EAC/B,YAAY,EAAE,OAAO,EAAE,SAAS;AAAA,EAEhC,kBAAkB,EACf,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,UAAU,CAAC,QAAS,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,GAAI;AAAA,EACzE,mBAAmB,EAChB,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,IAAK;AAAA,EAExF,qBAAqB,EAClB,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,IAAK;AAAA,EAExF,sBAAsB,EAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EAE/C,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EAEhD,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EAE5C,yBAAyB,EACtB,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,GAAI;AAAA,EAEvF,qBAAqB,EAClB,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,GAAI;AAAA,EAEvF,mBAAmB,EAChB,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,MAAO;AAAA,EAE1F,gBAAgB,EACb,OAAO,EACP,GAAG,EAAE,OAAO,CAAC,EACb,SAAS,EACT,UAAU,CAAC,QAAS,MAAO,OAAO,QAAQ,WAAW,SAAS,KAAK,EAAE,IAAI,MAAO,GAAI;AACzF,CAAC;AA0CM,IAAM,uBAAuB;AAAA,EAClC,WAAW;AACb;",
8
+ "debugId": "C33D155A95A0CEF964756E2164756E21",
11
9
  "names": []
12
10
  }
@@ -4,38 +4,59 @@ var __defProp = Object.defineProperty;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ function __accessProp(key) {
8
+ return this[key];
9
+ }
10
+ var __toESMCache_node;
11
+ var __toESMCache_esm;
7
12
  var __toESM = (mod, isNodeMode, target) => {
13
+ var canCache = mod != null && typeof mod === "object";
14
+ if (canCache) {
15
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
16
+ var cached = cache.get(mod);
17
+ if (cached)
18
+ return cached;
19
+ }
8
20
  target = mod != null ? __create(__getProtoOf(mod)) : {};
9
21
  const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
22
  for (let key of __getOwnPropNames(mod))
11
23
  if (!__hasOwnProp.call(to, key))
12
24
  __defProp(to, key, {
13
- get: () => mod[key],
25
+ get: __accessProp.bind(mod, key),
14
26
  enumerable: true
15
27
  });
28
+ if (canCache)
29
+ cache.set(mod, to);
16
30
  return to;
17
31
  };
18
- var __moduleCache = /* @__PURE__ */ new WeakMap;
19
32
  var __toCommonJS = (from) => {
20
- var entry = __moduleCache.get(from), desc;
33
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
21
34
  if (entry)
22
35
  return entry;
23
36
  entry = __defProp({}, "__esModule", { value: true });
24
- if (from && typeof from === "object" || typeof from === "function")
25
- __getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
26
- get: () => from[key],
27
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
28
- }));
37
+ if (from && typeof from === "object" || typeof from === "function") {
38
+ for (var key of __getOwnPropNames(from))
39
+ if (!__hasOwnProp.call(entry, key))
40
+ __defProp(entry, key, {
41
+ get: __accessProp.bind(from, key),
42
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
43
+ });
44
+ }
29
45
  __moduleCache.set(from, entry);
30
46
  return entry;
31
47
  };
48
+ var __moduleCache;
49
+ var __returnValue = (v) => v;
50
+ function __exportSetter(name, newValue) {
51
+ this[name] = __returnValue.bind(null, newValue);
52
+ }
32
53
  var __export = (target, all) => {
33
54
  for (var name in all)
34
55
  __defProp(target, name, {
35
56
  get: all[name],
36
57
  enumerable: true,
37
58
  configurable: true,
38
- set: (newValue) => all[name] = () => newValue
59
+ set: __exportSetter.bind(all, name)
39
60
  });
40
61
  };
41
62
 
@@ -217,6 +238,21 @@ var import_node_buffer = require("node:buffer");
217
238
  var import_node_crypto4 = require("node:crypto");
218
239
  var mammoth = __toESM(require("mammoth"));
219
240
  var import_unpdf = require("unpdf");
241
+ // node_modules/uuid/dist-node/native.js
242
+ var import_node_crypto = require("node:crypto");
243
+ var native_default = { randomUUID: import_node_crypto.randomUUID };
244
+
245
+ // node_modules/uuid/dist-node/rng.js
246
+ var import_node_crypto2 = require("node:crypto");
247
+ var rnds8Pool = new Uint8Array(256);
248
+ var poolPtr = rnds8Pool.length;
249
+ function rng() {
250
+ if (poolPtr > rnds8Pool.length - 16) {
251
+ import_node_crypto2.randomFillSync(rnds8Pool);
252
+ poolPtr = 0;
253
+ }
254
+ return rnds8Pool.slice(poolPtr, poolPtr += 16);
255
+ }
220
256
 
221
257
  // node_modules/uuid/dist-node/regex.js
222
258
  var regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;
@@ -227,16 +263,6 @@ function validate(uuid) {
227
263
  }
228
264
  var validate_default = validate;
229
265
 
230
- // node_modules/uuid/dist-node/parse.js
231
- function parse(uuid) {
232
- if (!validate_default(uuid)) {
233
- throw TypeError("Invalid UUID");
234
- }
235
- let v;
236
- return Uint8Array.of((v = parseInt(uuid.slice(0, 8), 16)) >>> 24, v >>> 16 & 255, v >>> 8 & 255, v & 255, (v = parseInt(uuid.slice(9, 13), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(14, 18), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(19, 23), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255, v / 4294967296 & 255, v >>> 24 & 255, v >>> 16 & 255, v >>> 8 & 255, v & 255);
237
- }
238
- var parse_default = parse;
239
-
240
266
  // node_modules/uuid/dist-node/stringify.js
241
267
  var byteToHex = [];
242
268
  for (let i = 0;i < 256; ++i) {
@@ -246,58 +272,6 @@ function unsafeStringify(arr, offset = 0) {
246
272
  return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
247
273
  }
248
274
 
249
- // node_modules/uuid/dist-node/rng.js
250
- var import_node_crypto = require("node:crypto");
251
- var rnds8Pool = new Uint8Array(256);
252
- var poolPtr = rnds8Pool.length;
253
- function rng() {
254
- if (poolPtr > rnds8Pool.length - 16) {
255
- import_node_crypto.randomFillSync(rnds8Pool);
256
- poolPtr = 0;
257
- }
258
- return rnds8Pool.slice(poolPtr, poolPtr += 16);
259
- }
260
-
261
- // node_modules/uuid/dist-node/v35.js
262
- function stringToBytes(str) {
263
- str = unescape(encodeURIComponent(str));
264
- const bytes = new Uint8Array(str.length);
265
- for (let i = 0;i < str.length; ++i) {
266
- bytes[i] = str.charCodeAt(i);
267
- }
268
- return bytes;
269
- }
270
- var DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
271
- var URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
272
- function v35(version, hash, value, namespace, buf, offset) {
273
- const valueBytes = typeof value === "string" ? stringToBytes(value) : value;
274
- const namespaceBytes = typeof namespace === "string" ? parse_default(namespace) : namespace;
275
- if (typeof namespace === "string") {
276
- namespace = parse_default(namespace);
277
- }
278
- if (namespace?.length !== 16) {
279
- throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
280
- }
281
- let bytes = new Uint8Array(16 + valueBytes.length);
282
- bytes.set(namespaceBytes);
283
- bytes.set(valueBytes, namespaceBytes.length);
284
- bytes = hash(bytes);
285
- bytes[6] = bytes[6] & 15 | version;
286
- bytes[8] = bytes[8] & 63 | 128;
287
- if (buf) {
288
- offset = offset || 0;
289
- for (let i = 0;i < 16; ++i) {
290
- buf[offset + i] = bytes[i];
291
- }
292
- return buf;
293
- }
294
- return unsafeStringify(bytes);
295
- }
296
-
297
- // node_modules/uuid/dist-node/native.js
298
- var import_node_crypto2 = require("node:crypto");
299
- var native_default = { randomUUID: import_node_crypto2.randomUUID };
300
-
301
275
  // node_modules/uuid/dist-node/v4.js
302
276
  function _v4(options, buf, offset) {
303
277
  options = options || {};
@@ -338,6 +312,52 @@ function sha1(bytes) {
338
312
  }
339
313
  var sha1_default = sha1;
340
314
 
315
+ // node_modules/uuid/dist-node/parse.js
316
+ function parse(uuid) {
317
+ if (!validate_default(uuid)) {
318
+ throw TypeError("Invalid UUID");
319
+ }
320
+ let v;
321
+ return Uint8Array.of((v = parseInt(uuid.slice(0, 8), 16)) >>> 24, v >>> 16 & 255, v >>> 8 & 255, v & 255, (v = parseInt(uuid.slice(9, 13), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(14, 18), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(19, 23), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255, v / 4294967296 & 255, v >>> 24 & 255, v >>> 16 & 255, v >>> 8 & 255, v & 255);
322
+ }
323
+ var parse_default = parse;
324
+
325
+ // node_modules/uuid/dist-node/v35.js
326
+ function stringToBytes(str) {
327
+ str = unescape(encodeURIComponent(str));
328
+ const bytes = new Uint8Array(str.length);
329
+ for (let i = 0;i < str.length; ++i) {
330
+ bytes[i] = str.charCodeAt(i);
331
+ }
332
+ return bytes;
333
+ }
334
+ var DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
335
+ var URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
336
+ function v35(version, hash, value, namespace, buf, offset) {
337
+ const valueBytes = typeof value === "string" ? stringToBytes(value) : value;
338
+ const namespaceBytes = typeof namespace === "string" ? parse_default(namespace) : namespace;
339
+ if (typeof namespace === "string") {
340
+ namespace = parse_default(namespace);
341
+ }
342
+ if (namespace?.length !== 16) {
343
+ throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
344
+ }
345
+ let bytes = new Uint8Array(16 + valueBytes.length);
346
+ bytes.set(namespaceBytes);
347
+ bytes.set(valueBytes, namespaceBytes.length);
348
+ bytes = hash(bytes);
349
+ bytes[6] = bytes[6] & 15 | version;
350
+ bytes[8] = bytes[8] & 63 | 128;
351
+ if (buf) {
352
+ offset = offset || 0;
353
+ for (let i = 0;i < 16; ++i) {
354
+ buf[offset + i] = bytes[i];
355
+ }
356
+ return buf;
357
+ }
358
+ return unsafeStringify(bytes);
359
+ }
360
+
341
361
  // node_modules/uuid/dist-node/v5.js
342
362
  function v5(value, namespace, buf, offset) {
343
363
  return v35(80, sha1_default, value, namespace, buf, offset);
@@ -2511,8 +2531,7 @@ var processKnowledgeAction = {
2511
2531
  const __avText = __avTextRaw.toLowerCase();
2512
2532
  const __avKeywords = ["process", "knowledge"];
2513
2533
  const __avKeywordOk = __avKeywords.length > 0 && __avKeywords.some((kw) => kw.length > 0 && __avText.includes(kw));
2514
- const __avRegex = /\b(?:process|knowledge)\b/i;
2515
- const __avRegexOk = __avRegex.test(__avText);
2534
+ const __avRegexOk = /\b(?:process|knowledge)\b/i.test(__avText);
2516
2535
  const __avSource = String(message?.content?.source ?? message?.source ?? "");
2517
2536
  const __avExpectedSource = "";
2518
2537
  const __avSourceOk = __avExpectedSource ? __avSource === __avExpectedSource : Boolean(__avSource || state || runtime?.agentId || runtime?.getService);
@@ -2671,8 +2690,7 @@ var searchKnowledgeAction = {
2671
2690
  const __avText = __avTextRaw.toLowerCase();
2672
2691
  const __avKeywords = ["search", "knowledge"];
2673
2692
  const __avKeywordOk = __avKeywords.length > 0 && __avKeywords.some((kw) => kw.length > 0 && __avText.includes(kw));
2674
- const __avRegex = /\b(?:search|knowledge)\b/i;
2675
- const __avRegexOk = __avRegex.test(__avText);
2693
+ const __avRegexOk = /\b(?:search|knowledge)\b/i.test(__avText);
2676
2694
  const __avSource = String(message?.content?.source ?? message?.source ?? "");
2677
2695
  const __avExpectedSource = "";
2678
2696
  const __avSourceOk = __avExpectedSource ? __avSource === __avExpectedSource : Boolean(__avSource || state || runtime?.agentId || runtime?.getService);
@@ -3230,7 +3248,7 @@ async function knowledgePanelHandler(req, res, runtime) {
3230
3248
  const requestPath = req.originalUrl || req.url || req.path || "";
3231
3249
  const pluginBasePath = requestPath.replace(/\/display.*$/, "");
3232
3250
  try {
3233
- const currentDir = import_node_path.default.dirname(new URL("file:///Users/shawwalters/eliza-workspace/milady/plugins/plugin-knowledge/typescript/routes.ts").pathname);
3251
+ const currentDir = import_node_path.default.dirname(new URL("file:///Users/shawwalters/eliza-workspace/plugins/plugin-knowledge/typescript/routes.ts").pathname);
3234
3252
  const frontendPath = import_node_path.default.join(currentDir, "../dist/index.html");
3235
3253
  if (import_node_fs.default.existsSync(frontendPath)) {
3236
3254
  const html = await import_node_fs.default.promises.readFile(frontendPath, "utf8");
@@ -3306,7 +3324,7 @@ async function knowledgePanelHandler(req, res, runtime) {
3306
3324
  async function frontendAssetHandler(req, res, _runtime) {
3307
3325
  try {
3308
3326
  const fullPath = req.originalUrl || req.url || req.path || "";
3309
- const currentDir = import_node_path.default.dirname(new URL("file:///Users/shawwalters/eliza-workspace/milady/plugins/plugin-knowledge/typescript/routes.ts").pathname);
3327
+ const currentDir = import_node_path.default.dirname(new URL("file:///Users/shawwalters/eliza-workspace/plugins/plugin-knowledge/typescript/routes.ts").pathname);
3310
3328
  const assetsMarker = "/assets/";
3311
3329
  const assetsStartIndex = fullPath.lastIndexOf(assetsMarker);
3312
3330
  let assetName = null;
@@ -3752,5 +3770,5 @@ var knowledgePlugin = createKnowledgePlugin({
3752
3770
  enableTests: true
3753
3771
  });
3754
3772
 
3755
- //# debugId=83F51FED4EE57D6B64756E2164756E21
3773
+ //# debugId=AEF1BFD61156963C64756E2164756E21
3756
3774
  //# sourceMappingURL=index.node.cjs.map