@the-brain/core 0.2.9 → 0.2.11
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/Brain.d.ts +13 -10
- package/dist/Brain.d.ts.map +1 -1
- package/dist/Brain.js +8 -52
- package/dist/Brain.js.map +1 -1
- package/dist/adapters/IStorageAdapter.d.ts +0 -1
- package/dist/adapters/IStorageAdapter.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/plugins/MemoryPlugin.d.ts +11 -0
- package/dist/plugins/MemoryPlugin.d.ts.map +1 -0
- package/dist/plugins/MemoryPlugin.js +34 -0
- package/dist/plugins/MemoryPlugin.js.map +1 -0
- package/dist/plugins/SavingPlugin.d.ts +11 -0
- package/dist/plugins/SavingPlugin.d.ts.map +1 -0
- package/dist/plugins/SavingPlugin.js +27 -0
- package/dist/plugins/SavingPlugin.js.map +1 -0
- package/dist/services/ai/analyze.service.d.ts +0 -1
- package/dist/services/ai/analyze.service.d.ts.map +1 -1
- package/dist/services/ai/analyze.service.js +0 -2
- package/dist/services/ai/analyze.service.js.map +1 -1
- package/dist/services/ai/prompts/analyze-with-synapses.prompt.d.ts.map +1 -1
- package/dist/services/ai/prompts/analyze-with-synapses.prompt.js +1 -1
- package/dist/services/ai/prompts/analyze-with-synapses.prompt.js.map +1 -1
- package/dist/services/ai/prompts/analyze.prompt.d.ts.map +1 -1
- package/dist/services/ai/prompts/analyze.prompt.js +0 -1
- package/dist/services/ai/prompts/analyze.prompt.js.map +1 -1
- package/dist/services/ai/prompts/ltm-summary.prompt.d.ts.map +1 -1
- package/dist/services/ai/prompts/ltm-summary.prompt.js +1 -1
- package/dist/services/ai/prompts/ltm-summary.prompt.js.map +1 -1
- package/dist/services/brain/conscious.processor.d.ts.map +1 -1
- package/dist/services/brain/conscious.processor.js +1 -12
- package/dist/services/brain/conscious.processor.js.map +1 -1
- package/dist/types/brain.d.ts +0 -4
- package/dist/types/brain.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/Brain.d.ts
CHANGED
|
@@ -4,10 +4,6 @@ import { IStorageAdapter } from "./adapters/IStorageAdapter.js";
|
|
|
4
4
|
import { IEmbeddingAdapter } from "./adapters/IEmbeddingAdapter.js";
|
|
5
5
|
export interface BrainConfig {
|
|
6
6
|
systemPrompt?: string;
|
|
7
|
-
builtInActions?: {
|
|
8
|
-
SAVE_ONLY?: string;
|
|
9
|
-
RESEARCH_BRAIN?: string;
|
|
10
|
-
};
|
|
11
7
|
llm?: {
|
|
12
8
|
responseTemperature?: number;
|
|
13
9
|
responseMaxTokens?: number;
|
|
@@ -27,6 +23,9 @@ export interface BrainConfig {
|
|
|
27
23
|
profileUpdateEveryN?: number;
|
|
28
24
|
};
|
|
29
25
|
}
|
|
26
|
+
export interface BrainPlugin {
|
|
27
|
+
register(brain: Brain): Promise<void>;
|
|
28
|
+
}
|
|
30
29
|
export type ActionHandler = (userId: string, text: string, context: {
|
|
31
30
|
synapticTree: string;
|
|
32
31
|
relevantEntries: IVaultEntry[];
|
|
@@ -41,16 +40,20 @@ export interface ProcessResult {
|
|
|
41
40
|
entryId?: unknown;
|
|
42
41
|
}
|
|
43
42
|
export declare class Brain {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
readonly llm: ILLMAdapter;
|
|
44
|
+
readonly storage: IStorageAdapter;
|
|
45
|
+
readonly embedding?: IEmbeddingAdapter | undefined;
|
|
47
46
|
private actionsCache;
|
|
48
|
-
private handlers;
|
|
47
|
+
private readonly handlers;
|
|
49
48
|
private saveCount;
|
|
50
49
|
private conversationCount;
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
readonly cfg: Required<{
|
|
51
|
+
llm: Required<NonNullable<BrainConfig["llm"]>>;
|
|
52
|
+
memory: Required<NonNullable<BrainConfig["memory"]>>;
|
|
53
|
+
chat: Required<NonNullable<BrainConfig["chat"]>>;
|
|
54
|
+
}>;
|
|
53
55
|
constructor(llm: ILLMAdapter, storage: IStorageAdapter, embedding?: IEmbeddingAdapter | undefined, config?: BrainConfig);
|
|
56
|
+
use(...plugins: BrainPlugin[]): Promise<void>;
|
|
54
57
|
loadActions(): Promise<void>;
|
|
55
58
|
registerAction(name: string, description: string, handler: ActionHandler): Promise<void>;
|
|
56
59
|
removeAction(name: string): Promise<void>;
|
package/dist/Brain.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Brain.d.ts","sourceRoot":"","sources":["../src/Brain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAc,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"Brain.d.ts","sourceRoot":"","sources":["../src/Brain.ts"],"names":[],"mappings":"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"}
|
package/dist/Brain.js
CHANGED
|
@@ -3,16 +3,8 @@ import { getBrainContext } from "./services/ai/intent.context.service.js";
|
|
|
3
3
|
import { proccessAndStore } from "./services/ingest/ingest.service.js";
|
|
4
4
|
import { runSubconsciousRoutine } from "./services/brain/subconscious.routine.js";
|
|
5
5
|
import { runConsciousProcessor } from "./services/brain/conscious.processor.js";
|
|
6
|
-
import {
|
|
7
|
-
import { SAVE_RESPONSE_PROMPT } from "./services/ai/prompts/save-response.prompt.js";
|
|
8
|
-
import { PERSONALITY_SYSTEM_PROMPT } from "./services/ai/prompts/personality.prompt.js";
|
|
9
|
-
import { USER_PROFILE_PROMPT, buildSystemPrompt } from "./services/ai/prompts/user-profile.prompt.js";
|
|
6
|
+
import { USER_PROFILE_PROMPT } from "./services/ai/prompts/user-profile.prompt.js";
|
|
10
7
|
import { LLM, CHAT, MEMORY, BRAIN } from "./config/constants.js";
|
|
11
|
-
// ─── Built-in handlers ────────────────────────────────────────────────────────
|
|
12
|
-
const BUILT_IN_ACTIONS = [
|
|
13
|
-
{ name: "SAVE_ONLY", description: "user states a fact, shares info, opinion, preference, or wants to store something" },
|
|
14
|
-
{ name: "RESEARCH_BRAIN", description: "user explicitly asks a question about past notes, memory, or stored knowledge" },
|
|
15
|
-
];
|
|
16
8
|
export class Brain {
|
|
17
9
|
llm;
|
|
18
10
|
storage;
|
|
@@ -21,7 +13,6 @@ export class Brain {
|
|
|
21
13
|
handlers = new Map();
|
|
22
14
|
saveCount = 0;
|
|
23
15
|
conversationCount = 0;
|
|
24
|
-
_config;
|
|
25
16
|
cfg;
|
|
26
17
|
constructor(llm, storage, embedding, config) {
|
|
27
18
|
this.llm = llm;
|
|
@@ -47,45 +38,15 @@ export class Brain {
|
|
|
47
38
|
profileUpdateEveryN: config?.chat?.profileUpdateEveryN ?? CHAT.PROFILE_UPDATE_EVERY_N,
|
|
48
39
|
},
|
|
49
40
|
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
const fullContext = relevantEntries
|
|
57
|
-
.map((e, i) => `[${i + 1}] ${e.rawText.substring(0, maxCharsPerEntry)}`)
|
|
58
|
-
.join('\n\n---\n\n');
|
|
59
|
-
const prompt = hasContext
|
|
60
|
-
? RESEARCH_ANSWER_PROMPT(text, fullContext, chatHistory)
|
|
61
|
-
: `The user asked: "${text}"\n\nYou don't have anything stored about this yet. Let them know and ask if they want to tell you more.`;
|
|
62
|
-
const answer = await this.llm.complete({
|
|
63
|
-
systemPrompt,
|
|
64
|
-
userPrompt: prompt,
|
|
65
|
-
temperature: this.cfg.llm.responseTemperature,
|
|
66
|
-
maxTokens: this.cfg.llm.responseMaxTokens,
|
|
67
|
-
});
|
|
68
|
-
return answer ?? "Coś poszło nie tak z generowaniem odpowiedzi.";
|
|
69
|
-
});
|
|
70
|
-
this.handlers.set("SAVE_ONLY", async (userId, text, _context, _llm, chatHistory) => {
|
|
71
|
-
const userProfile = await this.storage.getUserProfile(userId);
|
|
72
|
-
const systemPrompt = buildSystemPrompt(basePersonality, userProfile);
|
|
73
|
-
const answer = await this.llm.complete({
|
|
74
|
-
systemPrompt,
|
|
75
|
-
userPrompt: SAVE_RESPONSE_PROMPT(text, chatHistory),
|
|
76
|
-
temperature: this.cfg.llm.saveTemperature,
|
|
77
|
-
maxTokens: this.cfg.llm.saveMaxTokens,
|
|
78
|
-
});
|
|
79
|
-
return answer ?? "Zapisałem to.";
|
|
80
|
-
});
|
|
41
|
+
}
|
|
42
|
+
// ─── Plugins ──────────────────────────────────────────────────────────────
|
|
43
|
+
async use(...plugins) {
|
|
44
|
+
for (const plugin of plugins) {
|
|
45
|
+
await plugin.register(this);
|
|
46
|
+
}
|
|
81
47
|
}
|
|
82
48
|
// ─── Actions ──────────────────────────────────────────────────────────────
|
|
83
49
|
async loadActions() {
|
|
84
|
-
// Seed built-in actions if not present
|
|
85
|
-
for (const action of BUILT_IN_ACTIONS) {
|
|
86
|
-
const description = this._config?.builtInActions?.[action.name] ?? action.description;
|
|
87
|
-
await this.storage.upsertAction(action.name, description, true);
|
|
88
|
-
}
|
|
89
50
|
this.actionsCache = await this.storage.getActions();
|
|
90
51
|
}
|
|
91
52
|
async registerAction(name, description, handler) {
|
|
@@ -100,8 +61,7 @@ export class Brain {
|
|
|
100
61
|
}
|
|
101
62
|
// ─── Process ──────────────────────────────────────────────────────────────
|
|
102
63
|
async process(userId, text) {
|
|
103
|
-
const actions = this.actionsCache
|
|
104
|
-
// Load persistent chat history from DB
|
|
64
|
+
const actions = this.actionsCache;
|
|
105
65
|
const chatHistory = await this.storage.getChatHistory(userId);
|
|
106
66
|
const intent = await classifyIntent({ userText: text, chatHistory, actions }, this.llm);
|
|
107
67
|
const context = await getBrainContext(userId, text, this.storage, this.embedding, this.cfg.memory);
|
|
@@ -113,15 +73,12 @@ export class Brain {
|
|
|
113
73
|
if (intent.action === "SAVE_ONLY") {
|
|
114
74
|
const entry = await proccessAndStore(userId, text, this.llm, this.storage, this.embedding);
|
|
115
75
|
answer = await handler(userId, text, context, this.llm, chatHistory);
|
|
116
|
-
// Trigger maintenance every N saves (fire and forget)
|
|
117
76
|
this.saveCount++;
|
|
118
77
|
if (this.saveCount % this.cfg.chat.maintenanceEveryN === 0) {
|
|
119
78
|
this.runMaintenance().catch(err => console.error('[Brain] Maintenance error:', err));
|
|
120
79
|
}
|
|
121
|
-
// Persist chat history
|
|
122
80
|
await this.storage.appendChatMessage(userId, "user", text, this.cfg.chat.historyMaxStored);
|
|
123
81
|
await this.storage.appendChatMessage(userId, "assistant", answer, this.cfg.chat.historyMaxStored);
|
|
124
|
-
// Update user profile every N conversations (fire and forget)
|
|
125
82
|
this.conversationCount++;
|
|
126
83
|
if (this.conversationCount % this.cfg.chat.profileUpdateEveryN === 0) {
|
|
127
84
|
this.updateUserProfile(userId, chatHistory).catch(err => console.error('[Brain] Profile update error:', err));
|
|
@@ -131,7 +88,6 @@ export class Brain {
|
|
|
131
88
|
answer = await handler(userId, text, context, this.llm, chatHistory);
|
|
132
89
|
await this.storage.appendChatMessage(userId, "user", text, this.cfg.chat.historyMaxStored);
|
|
133
90
|
await this.storage.appendChatMessage(userId, "assistant", answer, this.cfg.chat.historyMaxStored);
|
|
134
|
-
// Update user profile every N conversations (fire and forget)
|
|
135
91
|
this.conversationCount++;
|
|
136
92
|
if (this.conversationCount % this.cfg.chat.profileUpdateEveryN === 0) {
|
|
137
93
|
this.updateUserProfile(userId, chatHistory).catch(err => console.error('[Brain] Profile update error:', err));
|
package/dist/Brain.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Brain.js","sourceRoot":"","sources":["../src/Brain.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAe,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Brain.js","sourceRoot":"","sources":["../src/Brain.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/IStorageAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEpG,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,
|
|
1
|
+
{"version":3,"file":"IStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/IStorageAdapter.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { Brain } from "./Brain.js";
|
|
2
|
-
export type { ActionHandler, ProcessResult, BrainConfig } from "./Brain.js";
|
|
2
|
+
export type { ActionHandler, ProcessResult, BrainConfig, BrainPlugin } from "./Brain.js";
|
|
3
|
+
export { MemoryPlugin } from "./plugins/MemoryPlugin.js";
|
|
4
|
+
export { SavingPlugin } from "./plugins/SavingPlugin.js";
|
|
3
5
|
export type { ILLMAdapter, LLMRequest } from "./adapters/ILLMAdapter.js";
|
|
4
6
|
export type { IEmbeddingAdapter } from "./adapters/IEmbeddingAdapter.js";
|
|
5
7
|
export type { IStorageAdapter, ActionInfo, EntryAnalysisData, } from "./adapters/IStorageAdapter.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,YAAY,EACV,eAAe,EACf,UAAU,EACV,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,gCAAgC,EAAE,MAAM,0DAA0D,CAAC;AAG5G,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,WAAW,EACX,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACzF,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,YAAY,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAG9E,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
// ─── Main class ───────────────────────────────────────────────────────────────
|
|
2
2
|
export { Brain } from "./Brain.js";
|
|
3
|
+
// ─── Built-in plugins ─────────────────────────────────────────────────────────
|
|
4
|
+
export { MemoryPlugin } from "./plugins/MemoryPlugin.js";
|
|
5
|
+
export { SavingPlugin } from "./plugins/SavingPlugin.js";
|
|
3
6
|
// ─── Built-in LLM adapters ────────────────────────────────────────────────────
|
|
4
7
|
export { OpenAICompatibleAdapter } from "./adapters/llm/OpenAICompatibleAdapter.js";
|
|
5
8
|
export { OpenAICompatibleEmbeddingAdapter } from "./adapters/embedding/OpenAICompatibleEmbeddingAdapter.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGnC,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAWzD,iFAAiF;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,gCAAgC,EAAE,MAAM,0DAA0D,CAAC;AAU5G,iFAAiF;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAElF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAGhF,iFAAiF;AACjF,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAEhF,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Brain, BrainPlugin } from "../Brain.js";
|
|
2
|
+
export declare class MemoryPlugin implements BrainPlugin {
|
|
3
|
+
private readonly description;
|
|
4
|
+
private readonly systemPrompt;
|
|
5
|
+
constructor(options?: {
|
|
6
|
+
description?: string;
|
|
7
|
+
systemPrompt?: string;
|
|
8
|
+
});
|
|
9
|
+
register(brain: Brain): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=MemoryPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/MemoryPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAKtD,qBAAa,YAAa,YAAW,WAAW;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;IAM/D,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAyB5C"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { RESEARCH_ANSWER_PROMPT } from "../services/ai/prompts/research-answer.prompt.js";
|
|
2
|
+
import { PERSONALITY_SYSTEM_PROMPT } from "../services/ai/prompts/personality.prompt.js";
|
|
3
|
+
import { buildSystemPrompt } from "../services/ai/prompts/user-profile.prompt.js";
|
|
4
|
+
export class MemoryPlugin {
|
|
5
|
+
description;
|
|
6
|
+
systemPrompt;
|
|
7
|
+
constructor(options) {
|
|
8
|
+
this.description = options?.description
|
|
9
|
+
?? "user explicitly asks a question about past notes, memory, or stored knowledge";
|
|
10
|
+
this.systemPrompt = options?.systemPrompt ?? PERSONALITY_SYSTEM_PROMPT;
|
|
11
|
+
}
|
|
12
|
+
async register(brain) {
|
|
13
|
+
const systemPrompt = this.systemPrompt;
|
|
14
|
+
await brain.registerAction("RESEARCH_BRAIN", this.description, async (userId, text, { relevantEntries, hasContext }, _llm, chatHistory) => {
|
|
15
|
+
const userProfile = await brain.storage.getUserProfile(userId);
|
|
16
|
+
const sysPrompt = buildSystemPrompt(systemPrompt, userProfile);
|
|
17
|
+
const maxChars = brain.cfg.memory.contextMaxCharsPerEntry;
|
|
18
|
+
const fullContext = relevantEntries
|
|
19
|
+
.map((e, i) => `[${i + 1}] ${e.rawText.substring(0, maxChars)}`)
|
|
20
|
+
.join('\n\n---\n\n');
|
|
21
|
+
const prompt = hasContext
|
|
22
|
+
? RESEARCH_ANSWER_PROMPT(text, fullContext, chatHistory)
|
|
23
|
+
: `The user asked: "${text}"\n\nYou don't have anything stored about this yet. Let them know and ask if they want to tell you more.`;
|
|
24
|
+
const answer = await brain.llm.complete({
|
|
25
|
+
systemPrompt: sysPrompt,
|
|
26
|
+
userPrompt: prompt,
|
|
27
|
+
temperature: brain.cfg.llm.responseTemperature,
|
|
28
|
+
maxTokens: brain.cfg.llm.responseMaxTokens,
|
|
29
|
+
});
|
|
30
|
+
return answer ?? "Coś poszło nie tak z generowaniem odpowiedzi.";
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=MemoryPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryPlugin.js","sourceRoot":"","sources":["../../src/plugins/MemoryPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAElF,MAAM,OAAO,YAAY;IACN,WAAW,CAAS;IACpB,YAAY,CAAS;IAEtC,YAAY,OAAyD;QACnE,IAAI,CAAC,WAAW,GAAG,OAAO,EAAE,WAAW;eAClC,+EAA+E,CAAC;QACrF,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,yBAAyB,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAY;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,MAAM,KAAK,CAAC,cAAc,CACxB,gBAAgB,EAChB,IAAI,CAAC,WAAW,EAChB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YACzE,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAG,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC;YAC1D,MAAM,WAAW,GAAG,eAAe;iBAChC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;iBAC/D,IAAI,CAAC,aAAa,CAAC,CAAC;YACvB,MAAM,MAAM,GAAG,UAAU;gBACvB,CAAC,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC;gBACxD,CAAC,CAAC,oBAAoB,IAAI,0GAA0G,CAAC;YACvI,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACtC,YAAY,EAAE,SAAS;gBACvB,UAAU,EAAE,MAAM;gBAClB,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB;gBAC9C,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB;aAC3C,CAAC,CAAC;YACH,OAAO,MAAM,IAAI,+CAA+C,CAAC;QACnE,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Brain, BrainPlugin } from "../Brain.js";
|
|
2
|
+
export declare class SavingPlugin implements BrainPlugin {
|
|
3
|
+
private readonly description;
|
|
4
|
+
private readonly systemPrompt;
|
|
5
|
+
constructor(options?: {
|
|
6
|
+
description?: string;
|
|
7
|
+
systemPrompt?: string;
|
|
8
|
+
});
|
|
9
|
+
register(brain: Brain): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=SavingPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SavingPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/SavingPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAKtD,qBAAa,YAAa,YAAW,WAAW;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;IAM/D,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAkB5C"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { SAVE_RESPONSE_PROMPT } from "../services/ai/prompts/save-response.prompt.js";
|
|
2
|
+
import { PERSONALITY_SYSTEM_PROMPT } from "../services/ai/prompts/personality.prompt.js";
|
|
3
|
+
import { buildSystemPrompt } from "../services/ai/prompts/user-profile.prompt.js";
|
|
4
|
+
export class SavingPlugin {
|
|
5
|
+
description;
|
|
6
|
+
systemPrompt;
|
|
7
|
+
constructor(options) {
|
|
8
|
+
this.description = options?.description
|
|
9
|
+
?? "user states a fact, shares info, opinion, preference, or wants to store something";
|
|
10
|
+
this.systemPrompt = options?.systemPrompt ?? PERSONALITY_SYSTEM_PROMPT;
|
|
11
|
+
}
|
|
12
|
+
async register(brain) {
|
|
13
|
+
const systemPrompt = this.systemPrompt;
|
|
14
|
+
await brain.registerAction("SAVE_ONLY", this.description, async (userId, text, _context, _llm, chatHistory) => {
|
|
15
|
+
const userProfile = await brain.storage.getUserProfile(userId);
|
|
16
|
+
const sysPrompt = buildSystemPrompt(systemPrompt, userProfile);
|
|
17
|
+
const answer = await brain.llm.complete({
|
|
18
|
+
systemPrompt: sysPrompt,
|
|
19
|
+
userPrompt: SAVE_RESPONSE_PROMPT(text, chatHistory),
|
|
20
|
+
temperature: brain.cfg.llm.saveTemperature,
|
|
21
|
+
maxTokens: brain.cfg.llm.saveMaxTokens,
|
|
22
|
+
});
|
|
23
|
+
return answer ?? "Zapisałem to.";
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=SavingPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SavingPlugin.js","sourceRoot":"","sources":["../../src/plugins/SavingPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAElF,MAAM,OAAO,YAAY;IACN,WAAW,CAAS;IACpB,YAAY,CAAS;IAEtC,YAAY,OAAyD;QACnE,IAAI,CAAC,WAAW,GAAG,OAAO,EAAE,WAAW;eAClC,mFAAmF,CAAC;QACzF,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,yBAAyB,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAY;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,MAAM,KAAK,CAAC,cAAc,CACxB,WAAW,EACX,IAAI,CAAC,WAAW,EAChB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YAClD,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAG,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACtC,YAAY,EAAE,SAAS;gBACvB,UAAU,EAAE,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC;gBACnD,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe;gBAC1C,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa;aACvC,CAAC,CAAC;YACH,OAAO,MAAM,IAAI,eAAe,CAAC;QACnC,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.service.d.ts","sourceRoot":"","sources":["../../../src/services/ai/analyze.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAK5D,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,
|
|
1
|
+
{"version":3,"file":"analyze.service.d.ts","sourceRoot":"","sources":["../../../src/services/ai/analyze.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAK5D,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAaD,eAAO,MAAM,iBAAiB,GAAU,MAAM,MAAM,EAAE,KAAK,WAAW,KAAG,OAAO,CAAC,UAAU,CA6B1F,CAAC"}
|
|
@@ -5,7 +5,6 @@ const SUMMARY_MAX_LENGTH = 100;
|
|
|
5
5
|
const truncate = (text) => text.length > SUMMARY_MAX_LENGTH ? text.substring(0, SUMMARY_MAX_LENGTH) + '...' : text;
|
|
6
6
|
const FALLBACK_ANALYSIS = (text) => ({
|
|
7
7
|
summary: truncate(text),
|
|
8
|
-
tags: ['unprocessed'],
|
|
9
8
|
strength: 5,
|
|
10
9
|
isProcessed: false,
|
|
11
10
|
});
|
|
@@ -28,7 +27,6 @@ export const analyzeTextWithAI = async (text, llm) => {
|
|
|
28
27
|
}
|
|
29
28
|
return {
|
|
30
29
|
summary: parsed.summary || truncate(text),
|
|
31
|
-
tags: Array.isArray(parsed.tags) ? parsed.tags : [],
|
|
32
30
|
strength: Number(parsed.strength) || 0,
|
|
33
31
|
isProcessed: true,
|
|
34
32
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.service.js","sourceRoot":"","sources":["../../../src/services/ai/analyze.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.service.js","sourceRoot":"","sources":["../../../src/services/ai/analyze.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAQhD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CACxC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAE1F,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAc,EAAE,CAAC,CAAC;IACvD,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC;IACvB,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,IAAY,EAAE,GAAgB,EAAuB,EAAE;IAC7F,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;YACjC,YAAY,EAAE,yHAAyH;YACvI,UAAU,EAAE,cAAc,CAAC,IAAI,CAAC;YAChC,WAAW,EAAE,GAAG,CAAC,wBAAwB;YACzC,SAAS,EAAE,GAAG,CAAC,uBAAuB;SACvC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC3C,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC;YACzC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACpG,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-with-synapses.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze-with-synapses.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze-with-synapses.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze-with-synapses.prompt.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,GACrC,gBAAgB,MAAM,EACtB,kBAAkB,MAAM,WAyB3B,CAAA"}
|
|
@@ -9,7 +9,7 @@ ${contextSummaries}
|
|
|
9
9
|
|
|
10
10
|
Return JSON with TWO arrays:
|
|
11
11
|
{
|
|
12
|
-
"topics": [{"topic":"name","entryIds":["id1"],"
|
|
12
|
+
"topics": [{"topic":"name","entryIds":["id1"],"importance":1-10}],
|
|
13
13
|
"synapses": [{"sourceId":"newEntryId","targetId":"anyEntryId","reason":"semantic reason why connected","strength":1-10}]
|
|
14
14
|
}
|
|
15
15
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-with-synapses.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze-with-synapses.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze-with-synapses.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze-with-synapses.prompt.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,CACxC,cAAsB,EACtB,gBAAwB,EAC1B,EAAE;IACA,OAAO;;;EAGT,cAAc;;;EAGd,gBAAgB;;;;;;;;;;;;;;;;0BAgBQ,CAAA;AAC1B,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze.prompt.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,WAW1C,CAAA"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export const ANALYZE_PROMPT = (text) => {
|
|
2
2
|
return `Analyze the following text and return a JSON object with these exact fields:
|
|
3
3
|
- summary: A concise summary (max 100 words)
|
|
4
|
-
- tags: An array of 3-5 relevant tags
|
|
5
4
|
- strength: A number from 1-10 indicating how important/memorable this information is (1=trivial, 10=critical)
|
|
6
5
|
|
|
7
6
|
Text to analyze:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyze.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/analyze.prompt.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,OAAO;;;;;;UAMD,IAAI;;;oDAGsC,CAAA;AACpD,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ltm-summary.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/ltm-summary.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ltm-summary.prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/prompts/ltm-summary.prompt.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B,GAAI,OAAO,MAAM,EAAE,gBAAgB,MAAM,WASpF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ltm-summary.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/ltm-summary.prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ltm-summary.prompt.js","sourceRoot":"","sources":["../../../../src/services/ai/prompts/ltm-summary.prompt.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,KAAa,EAAE,cAAsB,EAAE,EAAE;IACrF,OAAO,qCAAqC,KAAK;;;EAGnD,cAAc;;;;iBAIC,CAAC;AAClB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conscious.processor.d.ts","sourceRoot":"","sources":["../../../src/services/brain/conscious.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAsBpE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"conscious.processor.d.ts","sourceRoot":"","sources":["../../../src/services/brain/conscious.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAsBpE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAyFD;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAuF/G"}
|
|
@@ -12,13 +12,11 @@ async function analyzeWithSynapses(deltaEntries, contextEntries, llm) {
|
|
|
12
12
|
const deltaSummaries = deltaEntries.map(e => ({
|
|
13
13
|
id: e._id.toString(),
|
|
14
14
|
text: e.analysis?.summary || e.rawText.substring(0, 150),
|
|
15
|
-
tags: e.analysis?.tags?.slice(0, 5) || [],
|
|
16
15
|
isNew: true,
|
|
17
16
|
}));
|
|
18
17
|
const contextSummaries = contextEntries.map(e => ({
|
|
19
18
|
id: e._id.toString(),
|
|
20
19
|
text: e.analysis?.summary || e.rawText.substring(0, 100),
|
|
21
|
-
tags: e.analysis?.tags?.slice(0, 3) || [],
|
|
22
20
|
isNew: false,
|
|
23
21
|
}));
|
|
24
22
|
const prompt = ANALYZE_WITH_SYNAPSES_PROMPT(JSON.stringify(deltaSummaries, null, 1), JSON.stringify(contextSummaries, null, 1));
|
|
@@ -47,7 +45,6 @@ async function analyzeWithSynapses(deltaEntries, contextEntries, llm) {
|
|
|
47
45
|
async function createLongTermMemorySummary(entries, topic, llm) {
|
|
48
46
|
const entriesContent = entries.slice(0, BRAIN.LTM_MAX_SOURCE_ENTRIES).map(e => ({
|
|
49
47
|
summary: e.analysis?.summary?.substring(0, 200) || e.rawText.substring(0, 200),
|
|
50
|
-
tags: e.analysis?.tags?.slice(0, 3) || [],
|
|
51
48
|
}));
|
|
52
49
|
const prompt = LONG_TERM_MEMORY_SUMMARY_PROMPT(topic, JSON.stringify(entriesContent));
|
|
53
50
|
try {
|
|
@@ -122,15 +119,7 @@ export async function runConsciousProcessor(llm, storage) {
|
|
|
122
119
|
const strongEntries = await storage.findStrongEntries(userId);
|
|
123
120
|
if (strongEntries.length > 0) {
|
|
124
121
|
console.log(`👁️ [Świadomość] Konsolidacja: ${strongEntries.length} silnych wspomnień`);
|
|
125
|
-
|
|
126
|
-
const allTags = strongEntries.flatMap(e => e.analysis?.tags || []);
|
|
127
|
-
const tagCounts = new Map();
|
|
128
|
-
allTags.forEach(tag => tagCounts.set(tag, (tagCounts.get(tag) || 0) + 1));
|
|
129
|
-
const topTags = [...tagCounts.entries()]
|
|
130
|
-
.sort((a, b) => b[1] - a[1])
|
|
131
|
-
.slice(0, 3)
|
|
132
|
-
.map(([tag]) => tag);
|
|
133
|
-
const topic = topTags.join(' + ') || 'general';
|
|
122
|
+
const topic = 'general';
|
|
134
123
|
console.log(`👁️ [Świadomość] 🧠 Tworzę LTM: "${topic}"`);
|
|
135
124
|
const memoryData = await createLongTermMemorySummary(strongEntries, topic, llm);
|
|
136
125
|
if (memoryData) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conscious.processor.js","sourceRoot":"","sources":["../../../src/services/brain/conscious.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAwBvD;;;GAGG;AACH,KAAK,UAAU,mBAAmB,CAChC,YAA2B,EAC3B,cAA6B,EAC7B,GAAgB;IAEhB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEnE,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5C,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;QACxD,
|
|
1
|
+
{"version":3,"file":"conscious.processor.js","sourceRoot":"","sources":["../../../src/services/brain/conscious.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAwBvD;;;GAGG;AACH,KAAK,UAAU,mBAAmB,CAChC,YAA2B,EAC3B,cAA6B,EAC7B,GAAgB;IAEhB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEnE,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5C,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;QACxD,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC,CAAC;IAEJ,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChD,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;QACxD,KAAK,EAAE,KAAK;KACb,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,GAAG,4BAA4B,CACzC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,EACvC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAC1C,CAAC;IAEF,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAE3H,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;YACjC,YAAY,EAAE,kKAAkK;YAChL,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,GAAG,CAAC,oBAAoB;YACrC,SAAS,EAAE,GAAG,CAAC,mBAAmB;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACrD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACtC,CAAC;QAED,OAAO,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;QACzD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,2BAA2B,CACxC,OAAsB,EACtB,KAAa,EACb,GAAgB;IAEhB,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9E,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;KAC/E,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;IAEtF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;YACjC,YAAY,EAAE,uDAAuD;YACrE,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,GAAG,CAAC,eAAe;YAChC,SAAS,EAAE,GAAG,CAAC,cAAc;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,GAAgB,EAAE,OAAwB;IACpF,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,MAAM,KAAK,GAAmB;QAC5B,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;KACnB,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;QAE3E,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,qCAAqC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAE9E,2CAA2C;YAC3C,wCAAwC;YACxC,2CAA2C;YAC3C,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;YAC3D,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEnE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,YAAY,CAAC,MAAM,oBAAoB,CAAC,CAAC;gBAEnF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBAC/D,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;oBACjE,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,YAAY,CAAC,MAAM,aAAa,CAAC,CAAC;oBAExH,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACzD,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;oBAE1E,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;oBAC1F,OAAO,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,MAAM,aAAa,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;oBAEjG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;wBACtD,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC;oBAC1B,CAAC;oBAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACrC,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;wBAChF,KAAK,CAAC,eAAe,IAAI,eAAe,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,+CAA+C;YAC/C,+DAA+D;YAC/D,2CAA2C;YAC3C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE9D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,qCAAqC,aAAa,CAAC,MAAM,oBAAoB,CAAC,CAAC;gBAE3F,MAAM,KAAK,GAAG,SAAS,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,uCAAuC,KAAK,GAAG,CAAC,CAAC;gBAE7D,MAAM,UAAU,GAAG,MAAM,2BAA2B,CAAC,aAAa,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;gBAEhF,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;oBAClE,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;oBAElD,MAAM,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;oBAC9C,KAAK,CAAC,YAAY,IAAI,aAAa,CAAC,MAAM,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,GAAG,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;IAElE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/types/brain.d.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
export interface TopicAnalysis {
|
|
2
2
|
topic: string;
|
|
3
3
|
entryIds: string[];
|
|
4
|
-
tags: string[];
|
|
5
4
|
importance: number;
|
|
6
5
|
}
|
|
7
6
|
export interface LongTermMemoryData {
|
|
8
7
|
summary: string;
|
|
9
|
-
tags: string[];
|
|
10
8
|
}
|
|
11
9
|
export interface IVaultEntry {
|
|
12
10
|
_id: {
|
|
@@ -16,7 +14,6 @@ export interface IVaultEntry {
|
|
|
16
14
|
rawText: string;
|
|
17
15
|
analysis?: {
|
|
18
16
|
summary: string;
|
|
19
|
-
tags: string[];
|
|
20
17
|
strength: number;
|
|
21
18
|
isProcessed: boolean;
|
|
22
19
|
};
|
|
@@ -34,7 +31,6 @@ export interface ILongTermMemory {
|
|
|
34
31
|
};
|
|
35
32
|
userId: string;
|
|
36
33
|
summary: string | null;
|
|
37
|
-
tags: string[];
|
|
38
34
|
strength: number;
|
|
39
35
|
sourceEntryIds: {
|
|
40
36
|
toString(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../src/types/brain.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,
|
|
1
|
+
{"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../src/types/brain.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,IAAI,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB"}
|