@runflow-ai/sdk 1.0.7 → 1.0.8
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/core/agent.d.ts +20 -0
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +165 -25
- package/dist/core/agent.js.map +1 -1
- package/dist/core/api-client.js +1 -1
- package/dist/core/api-client.js.map +1 -1
- package/dist/core/context.d.ts +108 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +148 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +4 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/models.d.ts +1 -0
- package/dist/core/models.d.ts.map +1 -1
- package/dist/core/models.js +7 -0
- package/dist/core/models.js.map +1 -1
- package/dist/index.d.ts +10 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -5
- package/dist/index.js.map +1 -1
- package/dist/knowledge/index.d.ts +4 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +8 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/knowledge-manager.d.ts +54 -0
- package/dist/knowledge/knowledge-manager.d.ts.map +1 -0
- package/dist/knowledge/knowledge-manager.js +139 -0
- package/dist/knowledge/knowledge-manager.js.map +1 -0
- package/dist/llm/index.d.ts +3 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +7 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/llm-manager.d.ts +47 -0
- package/dist/llm/llm-manager.d.ts.map +1 -0
- package/dist/llm/llm-manager.js +177 -0
- package/dist/llm/llm-manager.js.map +1 -0
- package/dist/memory/index.d.ts +2 -0
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +5 -2
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/memory-manager.d.ts +81 -0
- package/dist/memory/memory-manager.d.ts.map +1 -0
- package/dist/memory/memory-manager.js +193 -0
- package/dist/memory/memory-manager.js.map +1 -0
- package/dist/observability/trace-collector.d.ts +19 -0
- package/dist/observability/trace-collector.d.ts.map +1 -1
- package/dist/observability/trace-collector.js +122 -7
- package/dist/observability/trace-collector.js.map +1 -1
- package/dist/providers/index.d.ts +10 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +14 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/runflow/memory-provider.d.ts +21 -0
- package/dist/providers/runflow/memory-provider.d.ts.map +1 -0
- package/dist/providers/runflow/memory-provider.js +33 -0
- package/dist/providers/runflow/memory-provider.js.map +1 -0
- package/dist/providers/types.d.ts +107 -0
- package/dist/providers/types.d.ts.map +1 -0
- package/dist/providers/types.js +11 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/types/all-types.d.ts +26 -4
- package/dist/types/all-types.d.ts.map +1 -1
- package/package.json +22 -2
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ============================================================================
|
|
4
|
+
* LLM MANAGER - Standalone LLM Module
|
|
5
|
+
* ============================================================================
|
|
6
|
+
*
|
|
7
|
+
* Gerencia chamadas a LLMs de forma independente.
|
|
8
|
+
* Suporta providers plugáveis e múltiplos modelos.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.LLM = void 0;
|
|
12
|
+
const api_client_1 = require("../core/api-client");
|
|
13
|
+
// ============================================================================
|
|
14
|
+
// RUNFLOW LLM PROVIDER (Default)
|
|
15
|
+
// ============================================================================
|
|
16
|
+
class RunflowLLMProvider {
|
|
17
|
+
constructor(apiClient, model, config = {}) {
|
|
18
|
+
this.apiClient = apiClient;
|
|
19
|
+
this.model = model;
|
|
20
|
+
this.config = config;
|
|
21
|
+
}
|
|
22
|
+
async generate(messages, options) {
|
|
23
|
+
const request = {
|
|
24
|
+
projectId: '', // Will be injected by API
|
|
25
|
+
provider: this.model.provider,
|
|
26
|
+
model: this.model.model,
|
|
27
|
+
messages: messages.map(m => ({ role: m.role, content: m.content })),
|
|
28
|
+
instructions: options.system,
|
|
29
|
+
temperature: options.temperature || this.config.temperature,
|
|
30
|
+
maxTokens: options.maxTokens || this.config.maxTokens,
|
|
31
|
+
topP: options.topP || this.config.topP,
|
|
32
|
+
frequencyPenalty: options.frequencyPenalty || this.config.frequencyPenalty,
|
|
33
|
+
presencePenalty: options.presencePenalty || this.config.presencePenalty,
|
|
34
|
+
stop: options.stop || this.config.stop,
|
|
35
|
+
seed: options.seed || this.config.seed,
|
|
36
|
+
};
|
|
37
|
+
const response = await this.apiClient.chat(request);
|
|
38
|
+
return {
|
|
39
|
+
text: response.text,
|
|
40
|
+
usage: response.usage ? {
|
|
41
|
+
inputTokens: response.usage.promptTokens,
|
|
42
|
+
outputTokens: response.usage.completionTokens,
|
|
43
|
+
totalTokens: response.usage.totalTokens,
|
|
44
|
+
} : undefined,
|
|
45
|
+
metadata: {
|
|
46
|
+
model: this.model.model,
|
|
47
|
+
provider: this.model.provider,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
async *generateStream(messages, options) {
|
|
52
|
+
const request = {
|
|
53
|
+
projectId: '',
|
|
54
|
+
provider: this.model.provider,
|
|
55
|
+
model: this.model.model,
|
|
56
|
+
messages: messages.map(m => ({ role: m.role, content: m.content })),
|
|
57
|
+
instructions: options.system,
|
|
58
|
+
temperature: options.temperature || this.config.temperature,
|
|
59
|
+
maxTokens: options.maxTokens || this.config.maxTokens,
|
|
60
|
+
};
|
|
61
|
+
const stream = this.apiClient.chatStream(request);
|
|
62
|
+
for await (const chunk of stream) {
|
|
63
|
+
if (chunk.type === 'content') {
|
|
64
|
+
yield { text: chunk.content || '', done: false };
|
|
65
|
+
}
|
|
66
|
+
else if (chunk.type === 'done') {
|
|
67
|
+
yield { text: '', done: true };
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
else if (chunk.type === 'error') {
|
|
71
|
+
throw new Error(chunk.error || 'Streaming error');
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// ============================================================================
|
|
77
|
+
// LLM CLASS
|
|
78
|
+
// ============================================================================
|
|
79
|
+
class LLM {
|
|
80
|
+
constructor(config) {
|
|
81
|
+
this.options = config;
|
|
82
|
+
// Extract model config
|
|
83
|
+
this.modelConfig = {
|
|
84
|
+
provider: config.provider,
|
|
85
|
+
model: config.model,
|
|
86
|
+
};
|
|
87
|
+
// Resolver provider
|
|
88
|
+
this.provider = config.customProvider || new RunflowLLMProvider(config.apiClient || (0, api_client_1.createRunflowAPIClient)(), this.modelConfig, config);
|
|
89
|
+
}
|
|
90
|
+
// ============================================================================
|
|
91
|
+
// BASIC GENERATION
|
|
92
|
+
// ============================================================================
|
|
93
|
+
async generate(input, options) {
|
|
94
|
+
const messages = this.normalizeInput(input, options?.system);
|
|
95
|
+
return this.provider.generate(messages, options || {});
|
|
96
|
+
}
|
|
97
|
+
generateStream(input, options) {
|
|
98
|
+
const messages = this.normalizeInput(input, options?.system);
|
|
99
|
+
return this.provider.generateStream(messages, options || {});
|
|
100
|
+
}
|
|
101
|
+
// ============================================================================
|
|
102
|
+
// ADVANCED OPERATIONS (Future)
|
|
103
|
+
// ============================================================================
|
|
104
|
+
// generateJSON() - Requires response_format support in API
|
|
105
|
+
// generateBatch() - To be implemented when needed
|
|
106
|
+
// ============================================================================
|
|
107
|
+
// HELPERS
|
|
108
|
+
// ============================================================================
|
|
109
|
+
normalizeInput(input, system) {
|
|
110
|
+
if (typeof input === 'string') {
|
|
111
|
+
const messages = [];
|
|
112
|
+
if (system) {
|
|
113
|
+
messages.push({ role: 'system', content: system });
|
|
114
|
+
}
|
|
115
|
+
messages.push({ role: 'user', content: input });
|
|
116
|
+
return messages;
|
|
117
|
+
}
|
|
118
|
+
if (system) {
|
|
119
|
+
return [
|
|
120
|
+
{ role: 'system', content: system },
|
|
121
|
+
...input,
|
|
122
|
+
];
|
|
123
|
+
}
|
|
124
|
+
return input;
|
|
125
|
+
}
|
|
126
|
+
// ============================================================================
|
|
127
|
+
// STATIC FACTORY METHODS
|
|
128
|
+
// ============================================================================
|
|
129
|
+
/**
|
|
130
|
+
* Create OpenAI LLM
|
|
131
|
+
* @example LLM.openai('gpt-4o', { temperature: 0.7 })
|
|
132
|
+
*/
|
|
133
|
+
static openai(model, options = {}) {
|
|
134
|
+
return new LLM({
|
|
135
|
+
provider: 'openai',
|
|
136
|
+
model,
|
|
137
|
+
...options,
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Create Anthropic LLM
|
|
142
|
+
* @example LLM.anthropic('claude-3-5-sonnet-20241022', { temperature: 0.9 })
|
|
143
|
+
*/
|
|
144
|
+
static anthropic(model, options = {}) {
|
|
145
|
+
return new LLM({
|
|
146
|
+
provider: 'anthropic',
|
|
147
|
+
model,
|
|
148
|
+
...options,
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Create AWS Bedrock LLM
|
|
153
|
+
* @example LLM.bedrock('anthropic.claude-3-sonnet-20240229-v1:0')
|
|
154
|
+
* @example LLM.bedrock('amazon.titan-text-express-v1')
|
|
155
|
+
*/
|
|
156
|
+
static bedrock(model, options = {}) {
|
|
157
|
+
return new LLM({
|
|
158
|
+
provider: 'bedrock',
|
|
159
|
+
model,
|
|
160
|
+
...options,
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
// ============================================================================
|
|
164
|
+
// GETTERS
|
|
165
|
+
// ============================================================================
|
|
166
|
+
getModel() {
|
|
167
|
+
return this.modelConfig;
|
|
168
|
+
}
|
|
169
|
+
getOptions() {
|
|
170
|
+
return this.options;
|
|
171
|
+
}
|
|
172
|
+
getProvider() {
|
|
173
|
+
return this.provider;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
exports.LLM = LLM;
|
|
177
|
+
//# sourceMappingURL=llm-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-manager.js","sourceRoot":"","sources":["../../src/llm/llm-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/memory/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/memory/index.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Memory = void 0;
|
|
4
|
+
// Memory exports
|
|
5
|
+
var memory_manager_1 = require("./memory-manager");
|
|
6
|
+
Object.defineProperty(exports, "Memory", { enumerable: true, get: function () { return memory_manager_1.Memory; } });
|
|
4
7
|
//# sourceMappingURL=index.js.map
|
package/dist/memory/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":";;;AAAA,iBAAiB;AACjB,mDAA0C;AAAjC,wGAAA,MAAM,OAAA"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* MEMORY MANAGER - Standalone Memory Module
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* Gerencia memória de conversação de forma independente, podendo ser usado
|
|
7
|
+
* com ou sem Agent. Suporta providers plugáveis.
|
|
8
|
+
*/
|
|
9
|
+
import { MemoryData, MemoryMessage, RunflowAPIClient } from '../types';
|
|
10
|
+
import { MemoryProvider } from '../providers/types';
|
|
11
|
+
export interface MemoryOptions {
|
|
12
|
+
memoryKey?: string;
|
|
13
|
+
sessionId?: string;
|
|
14
|
+
maxTurns?: number;
|
|
15
|
+
maxTokens?: number;
|
|
16
|
+
provider?: MemoryProvider;
|
|
17
|
+
apiClient?: RunflowAPIClient;
|
|
18
|
+
}
|
|
19
|
+
export declare class Memory {
|
|
20
|
+
private provider;
|
|
21
|
+
private memoryKey;
|
|
22
|
+
private options;
|
|
23
|
+
constructor(options?: MemoryOptions);
|
|
24
|
+
/**
|
|
25
|
+
* Resolve memoryKey com prioridade:
|
|
26
|
+
* 1. options.memoryKey (explicit)
|
|
27
|
+
* 2. Runflow.identify() (context)
|
|
28
|
+
* 3. options.sessionId (fallback)
|
|
29
|
+
*/
|
|
30
|
+
private resolveMemoryKey;
|
|
31
|
+
/**
|
|
32
|
+
* Get full memory data
|
|
33
|
+
*/
|
|
34
|
+
get(): Promise<MemoryData>;
|
|
35
|
+
/**
|
|
36
|
+
* Set entire memory
|
|
37
|
+
*/
|
|
38
|
+
set(data: MemoryData): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Append a message
|
|
41
|
+
*/
|
|
42
|
+
append(message: MemoryMessage): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Clear all memory
|
|
45
|
+
*/
|
|
46
|
+
clear(): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Summarize memory
|
|
49
|
+
*/
|
|
50
|
+
summarize(): Promise<string>;
|
|
51
|
+
/**
|
|
52
|
+
* Get memory formatted for LLM prompts
|
|
53
|
+
*/
|
|
54
|
+
getFormatted(): Promise<string>;
|
|
55
|
+
/**
|
|
56
|
+
* Get recent messages (last N turns)
|
|
57
|
+
*/
|
|
58
|
+
getRecent(turns: number): Promise<MemoryMessage[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Search in memory
|
|
61
|
+
*/
|
|
62
|
+
search(query: string): Promise<MemoryMessage[]>;
|
|
63
|
+
/**
|
|
64
|
+
* Get memory size
|
|
65
|
+
*/
|
|
66
|
+
getSize(): Promise<{
|
|
67
|
+
turns: number;
|
|
68
|
+
messages: number;
|
|
69
|
+
tokens: number;
|
|
70
|
+
}>;
|
|
71
|
+
/**
|
|
72
|
+
* Check if memory exists
|
|
73
|
+
*/
|
|
74
|
+
exists(): Promise<boolean>;
|
|
75
|
+
private roleToLabel;
|
|
76
|
+
private limitByTokens;
|
|
77
|
+
getMemoryKey(): string;
|
|
78
|
+
getOptions(): MemoryOptions;
|
|
79
|
+
getProvider(): MemoryProvider;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=memory-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-manager.d.ts","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQpD,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAMD,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAgB;gBAEnB,OAAO,GAAE,aAAkB;IAgBvC;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAwBxB;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC;IAIhC;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAWlC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAuBrC;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAKxD;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAerD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAY7E;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAahC,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,aAAa;IAsBrB,YAAY,IAAI,MAAM;IAItB,UAAU,IAAI,aAAa;IAI3B,WAAW,IAAI,cAAc;CAG9B"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ============================================================================
|
|
4
|
+
* MEMORY MANAGER - Standalone Memory Module
|
|
5
|
+
* ============================================================================
|
|
6
|
+
*
|
|
7
|
+
* Gerencia memória de conversação de forma independente, podendo ser usado
|
|
8
|
+
* com ou sem Agent. Suporta providers plugáveis.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.Memory = void 0;
|
|
12
|
+
const memory_provider_1 = require("../providers/runflow/memory-provider");
|
|
13
|
+
const context_1 = require("../core/context");
|
|
14
|
+
// ============================================================================
|
|
15
|
+
// MEMORY CLASS
|
|
16
|
+
// ============================================================================
|
|
17
|
+
class Memory {
|
|
18
|
+
constructor(options = {}) {
|
|
19
|
+
this.options = options;
|
|
20
|
+
// Resolver provider
|
|
21
|
+
this.provider = options.provider || new memory_provider_1.RunflowMemoryProvider({
|
|
22
|
+
apiClient: options.apiClient,
|
|
23
|
+
});
|
|
24
|
+
// Resolver memoryKey
|
|
25
|
+
this.memoryKey = this.resolveMemoryKey();
|
|
26
|
+
}
|
|
27
|
+
// ============================================================================
|
|
28
|
+
// KEY RESOLUTION
|
|
29
|
+
// ============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Resolve memoryKey com prioridade:
|
|
32
|
+
* 1. options.memoryKey (explicit)
|
|
33
|
+
* 2. Runflow.identify() (context)
|
|
34
|
+
* 3. options.sessionId (fallback)
|
|
35
|
+
*/
|
|
36
|
+
resolveMemoryKey() {
|
|
37
|
+
// 1. Explicit memoryKey
|
|
38
|
+
if (this.options.memoryKey) {
|
|
39
|
+
return this.options.memoryKey;
|
|
40
|
+
}
|
|
41
|
+
// 2. From Runflow context
|
|
42
|
+
const state = context_1.Runflow.getState();
|
|
43
|
+
if (state.entityType && state.entityValue) {
|
|
44
|
+
return `${state.entityType}:${state.entityValue}`;
|
|
45
|
+
}
|
|
46
|
+
// 3. Fallback to sessionId
|
|
47
|
+
if (this.options.sessionId) {
|
|
48
|
+
return `session:${this.options.sessionId}`;
|
|
49
|
+
}
|
|
50
|
+
throw new Error('Memory requires memoryKey, identify(), or sessionId');
|
|
51
|
+
}
|
|
52
|
+
// ============================================================================
|
|
53
|
+
// BASIC OPERATIONS
|
|
54
|
+
// ============================================================================
|
|
55
|
+
/**
|
|
56
|
+
* Get full memory data
|
|
57
|
+
*/
|
|
58
|
+
async get() {
|
|
59
|
+
return this.provider.get(this.memoryKey);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Set entire memory
|
|
63
|
+
*/
|
|
64
|
+
async set(data) {
|
|
65
|
+
return this.provider.set(this.memoryKey, data);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Append a message
|
|
69
|
+
*/
|
|
70
|
+
async append(message) {
|
|
71
|
+
return this.provider.append(this.memoryKey, message);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Clear all memory
|
|
75
|
+
*/
|
|
76
|
+
async clear() {
|
|
77
|
+
return this.provider.clear(this.memoryKey);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Summarize memory
|
|
81
|
+
*/
|
|
82
|
+
async summarize() {
|
|
83
|
+
if (!this.provider.summarize) {
|
|
84
|
+
throw new Error('Provider does not support summarization');
|
|
85
|
+
}
|
|
86
|
+
return this.provider.summarize(this.memoryKey);
|
|
87
|
+
}
|
|
88
|
+
// ============================================================================
|
|
89
|
+
// ADVANCED OPERATIONS
|
|
90
|
+
// ============================================================================
|
|
91
|
+
/**
|
|
92
|
+
* Get memory formatted for LLM prompts
|
|
93
|
+
*/
|
|
94
|
+
async getFormatted() {
|
|
95
|
+
const data = await this.get();
|
|
96
|
+
if (!data.messages || data.messages.length === 0) {
|
|
97
|
+
return '';
|
|
98
|
+
}
|
|
99
|
+
// Apply limits
|
|
100
|
+
let messages = data.messages;
|
|
101
|
+
if (this.options.maxTurns) {
|
|
102
|
+
messages = messages.slice(-this.options.maxTurns * 2); // 2 messages per turn
|
|
103
|
+
}
|
|
104
|
+
if (this.options.maxTokens) {
|
|
105
|
+
messages = this.limitByTokens(messages, this.options.maxTokens);
|
|
106
|
+
}
|
|
107
|
+
return messages
|
|
108
|
+
.map(msg => `${this.roleToLabel(msg.role)}: ${msg.content}`)
|
|
109
|
+
.join('\n');
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get recent messages (last N turns)
|
|
113
|
+
*/
|
|
114
|
+
async getRecent(turns) {
|
|
115
|
+
const data = await this.get();
|
|
116
|
+
return data.messages.slice(-turns * 2); // 2 messages per turn
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Search in memory
|
|
120
|
+
*/
|
|
121
|
+
async search(query) {
|
|
122
|
+
// Try provider's search if available
|
|
123
|
+
if (this.provider.search) {
|
|
124
|
+
return this.provider.search(this.memoryKey, query);
|
|
125
|
+
}
|
|
126
|
+
// Fallback: simple string matching
|
|
127
|
+
const data = await this.get();
|
|
128
|
+
const lowerQuery = query.toLowerCase();
|
|
129
|
+
return data.messages.filter(msg => msg.content.toLowerCase().includes(lowerQuery));
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Get memory size
|
|
133
|
+
*/
|
|
134
|
+
async getSize() {
|
|
135
|
+
const data = await this.get();
|
|
136
|
+
const messages = data.messages.length;
|
|
137
|
+
const turns = Math.floor(messages / 2);
|
|
138
|
+
const tokens = data.messages.reduce((sum, msg) => sum + Math.ceil(msg.content.length / 4), 0);
|
|
139
|
+
return { turns, messages, tokens };
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Check if memory exists
|
|
143
|
+
*/
|
|
144
|
+
async exists() {
|
|
145
|
+
try {
|
|
146
|
+
const data = await this.get();
|
|
147
|
+
return data.messages.length > 0;
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
return false;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
// ============================================================================
|
|
154
|
+
// HELPERS
|
|
155
|
+
// ============================================================================
|
|
156
|
+
roleToLabel(role) {
|
|
157
|
+
const labels = {
|
|
158
|
+
user: 'User',
|
|
159
|
+
assistant: 'Assistant',
|
|
160
|
+
system: 'System',
|
|
161
|
+
};
|
|
162
|
+
return labels[role] || role;
|
|
163
|
+
}
|
|
164
|
+
limitByTokens(messages, maxTokens) {
|
|
165
|
+
const result = [];
|
|
166
|
+
let totalTokens = 0;
|
|
167
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
168
|
+
const messageTokens = Math.ceil(messages[i].content.length / 4);
|
|
169
|
+
if (totalTokens + messageTokens <= maxTokens) {
|
|
170
|
+
result.unshift(messages[i]);
|
|
171
|
+
totalTokens += messageTokens;
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
break;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return result;
|
|
178
|
+
}
|
|
179
|
+
// ============================================================================
|
|
180
|
+
// GETTERS
|
|
181
|
+
// ============================================================================
|
|
182
|
+
getMemoryKey() {
|
|
183
|
+
return this.memoryKey;
|
|
184
|
+
}
|
|
185
|
+
getOptions() {
|
|
186
|
+
return this.options;
|
|
187
|
+
}
|
|
188
|
+
getProvider() {
|
|
189
|
+
return this.provider;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
exports.Memory = Memory;
|
|
193
|
+
//# sourceMappingURL=memory-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-manager.js","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,13 +5,32 @@ export declare class RunflowTraceCollector implements TraceCollector {
|
|
|
5
5
|
private pendingTraces;
|
|
6
6
|
private options;
|
|
7
7
|
private flushTimer?;
|
|
8
|
+
private context;
|
|
8
9
|
constructor(apiClient: RunflowAPIClient, projectId: string, options?: TraceCollectorOptions);
|
|
9
10
|
trace(data: Omit<TraceData, 'traceId' | 'startTime' | 'endTime' | 'duration'>): string;
|
|
11
|
+
/**
|
|
12
|
+
* Set execution context (called by Agent.process)
|
|
13
|
+
*/
|
|
14
|
+
setContext(context: {
|
|
15
|
+
executionId?: string;
|
|
16
|
+
threadId?: string;
|
|
17
|
+
entityType?: string;
|
|
18
|
+
entityValue?: string;
|
|
19
|
+
userId?: string;
|
|
20
|
+
}): void;
|
|
10
21
|
startSpan(operation: string, metadata?: Partial<TraceMetadata>): TraceSpan;
|
|
11
22
|
flush(): Promise<void>;
|
|
12
23
|
configure(options: TraceCollectorOptions): void;
|
|
13
24
|
private addTrace;
|
|
14
25
|
private sendTraces;
|
|
26
|
+
/**
|
|
27
|
+
* Check if traces should be saved locally (development mode)
|
|
28
|
+
*/
|
|
29
|
+
private shouldSaveLocally;
|
|
30
|
+
/**
|
|
31
|
+
* Save traces to local file for development
|
|
32
|
+
*/
|
|
33
|
+
private saveTracesToFile;
|
|
15
34
|
private generateTraceId;
|
|
16
35
|
private startFlushTimer;
|
|
17
36
|
private stopFlushTimer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-collector.d.ts","sourceRoot":"","sources":["../../src/observability/trace-collector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"trace-collector.d.ts","sourceRoot":"","sources":["../../src/observability/trace-collector.ts"],"names":[],"mappings":"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"}
|