@cogitator-ai/core 0.21.1 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -30
- package/dist/agent.d.ts +1 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +17 -1
- package/dist/agent.js.map +1 -1
- package/dist/cogitator/initializers.d.ts +5 -6
- package/dist/cogitator/initializers.d.ts.map +1 -1
- package/dist/cogitator/initializers.js +32 -19
- package/dist/cogitator/initializers.js.map +1 -1
- package/dist/cogitator/message-builder.d.ts +1 -1
- package/dist/cogitator/message-builder.d.ts.map +1 -1
- package/dist/cogitator/message-builder.js +23 -8
- package/dist/cogitator/message-builder.js.map +1 -1
- package/dist/cogitator/response-format.d.ts +17 -0
- package/dist/cogitator/response-format.d.ts.map +1 -0
- package/dist/cogitator/response-format.js +78 -0
- package/dist/cogitator/response-format.js.map +1 -0
- package/dist/cogitator/run-limiter.d.ts +18 -0
- package/dist/cogitator/run-limiter.d.ts.map +1 -0
- package/dist/cogitator/run-limiter.js +64 -0
- package/dist/cogitator/run-limiter.js.map +1 -0
- package/dist/cogitator/streaming.d.ts +2 -2
- package/dist/cogitator/streaming.d.ts.map +1 -1
- package/dist/cogitator/streaming.js +2 -1
- package/dist/cogitator/streaming.js.map +1 -1
- package/dist/cogitator/threads.d.ts +27 -0
- package/dist/cogitator/threads.d.ts.map +1 -0
- package/dist/cogitator/threads.js +54 -0
- package/dist/cogitator/threads.js.map +1 -0
- package/dist/cogitator/tool-executor.d.ts.map +1 -1
- package/dist/cogitator/tool-executor.js +18 -4
- package/dist/cogitator/tool-executor.js.map +1 -1
- package/dist/constitutional/constitutional-ai.d.ts +5 -0
- package/dist/constitutional/constitutional-ai.d.ts.map +1 -1
- package/dist/constitutional/constitutional-ai.js +19 -28
- package/dist/constitutional/constitutional-ai.js.map +1 -1
- package/dist/context/context-manager.d.ts +4 -1
- package/dist/context/context-manager.d.ts.map +1 -1
- package/dist/context/context-manager.js +12 -11
- package/dist/context/context-manager.js.map +1 -1
- package/dist/cost-routing/cost-estimator.d.ts +2 -0
- package/dist/cost-routing/cost-estimator.d.ts.map +1 -1
- package/dist/cost-routing/cost-estimator.js +6 -2
- package/dist/cost-routing/cost-estimator.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/learning/agent-optimizer.d.ts +21 -5
- package/dist/learning/agent-optimizer.d.ts.map +1 -1
- package/dist/learning/agent-optimizer.js +97 -142
- package/dist/learning/agent-optimizer.js.map +1 -1
- package/dist/learning/index.d.ts +1 -1
- package/dist/learning/index.d.ts.map +1 -1
- package/dist/learning/trace-builder.d.ts +20 -0
- package/dist/learning/trace-builder.d.ts.map +1 -0
- package/dist/learning/trace-builder.js +159 -0
- package/dist/learning/trace-builder.js.map +1 -0
- package/dist/llm/anthropic.d.ts +2 -0
- package/dist/llm/anthropic.d.ts.map +1 -1
- package/dist/llm/anthropic.js +11 -0
- package/dist/llm/anthropic.js.map +1 -1
- package/dist/llm/azure.d.ts +2 -0
- package/dist/llm/azure.d.ts.map +1 -1
- package/dist/llm/azure.js +1 -0
- package/dist/llm/azure.js.map +1 -1
- package/dist/llm/bedrock.d.ts +2 -0
- package/dist/llm/bedrock.d.ts.map +1 -1
- package/dist/llm/bedrock.js +3 -0
- package/dist/llm/bedrock.js.map +1 -1
- package/dist/llm/errors.d.ts +5 -0
- package/dist/llm/errors.d.ts.map +1 -1
- package/dist/llm/errors.js +36 -26
- package/dist/llm/errors.js.map +1 -1
- package/dist/llm/google.d.ts.map +1 -1
- package/dist/llm/google.js +29 -5
- package/dist/llm/google.js.map +1 -1
- package/dist/llm/index.d.ts +8 -2
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +18 -18
- package/dist/llm/index.js.map +1 -1
- package/dist/llm/ollama.d.ts.map +1 -1
- package/dist/llm/ollama.js +7 -3
- package/dist/llm/ollama.js.map +1 -1
- package/dist/llm/openai.d.ts +2 -0
- package/dist/llm/openai.d.ts.map +1 -1
- package/dist/llm/openai.js +1 -0
- package/dist/llm/openai.js.map +1 -1
- package/dist/llm/providers.d.ts +4 -0
- package/dist/llm/providers.d.ts.map +1 -0
- package/dist/llm/providers.js +18 -0
- package/dist/llm/providers.js.map +1 -0
- package/dist/llm/retry.d.ts +32 -0
- package/dist/llm/retry.d.ts.map +1 -0
- package/dist/llm/retry.js +107 -0
- package/dist/llm/retry.js.map +1 -0
- package/dist/observability/opentelemetry.d.ts +12 -5
- package/dist/observability/opentelemetry.d.ts.map +1 -1
- package/dist/observability/opentelemetry.js +58 -32
- package/dist/observability/opentelemetry.js.map +1 -1
- package/dist/reasoning/thought-tree.js +2 -2
- package/dist/reasoning/thought-tree.js.map +1 -1
- package/dist/runtime.d.ts +23 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +136 -37
- package/dist/runtime.js.map +1 -1
- package/dist/time-travel/checkpoint-store.d.ts +1 -0
- package/dist/time-travel/checkpoint-store.d.ts.map +1 -1
- package/dist/time-travel/checkpoint-store.js +16 -7
- package/dist/time-travel/checkpoint-store.js.map +1 -1
- package/dist/time-travel/replayer.d.ts +9 -1
- package/dist/time-travel/replayer.d.ts.map +1 -1
- package/dist/time-travel/replayer.js +40 -23
- package/dist/time-travel/replayer.js.map +1 -1
- package/dist/time-travel/time-travel.d.ts +13 -0
- package/dist/time-travel/time-travel.d.ts.map +1 -1
- package/dist/time-travel/time-travel.js +79 -9
- package/dist/time-travel/time-travel.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -668,34 +668,31 @@ const executor = new ThoughtTreeExecutor(cogitator, {
|
|
|
668
668
|
DSPy-style optimization through execution traces:
|
|
669
669
|
|
|
670
670
|
```typescript
|
|
671
|
-
import {
|
|
672
|
-
AgentOptimizer,
|
|
673
|
-
InMemoryTraceStore,
|
|
674
|
-
createSuccessMetric,
|
|
675
|
-
createContainsMetric,
|
|
676
|
-
} from '@cogitator-ai/core';
|
|
671
|
+
import { AgentOptimizer, InMemoryTraceStore } from '@cogitator-ai/core';
|
|
677
672
|
|
|
678
673
|
const traceStore = new InMemoryTraceStore();
|
|
679
|
-
const optimizer = new AgentOptimizer(
|
|
674
|
+
const optimizer = new AgentOptimizer({
|
|
675
|
+
llm: cogitator.getLLMBackend('openai/gpt-6.1-sol'),
|
|
676
|
+
model: 'gpt-6.1-sol',
|
|
680
677
|
traceStore,
|
|
681
|
-
|
|
682
|
-
maxCandidates: 5,
|
|
683
|
-
evaluationRuns: 3,
|
|
678
|
+
cogitator,
|
|
684
679
|
});
|
|
685
680
|
|
|
686
|
-
const result = await optimizer.compile(
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
{ input: 'Calculate
|
|
681
|
+
const result = await optimizer.compile(
|
|
682
|
+
agent,
|
|
683
|
+
[
|
|
684
|
+
{ input: 'Calculate 2+2', expected: '4' },
|
|
685
|
+
{ input: 'Calculate 10*5', expected: '50' },
|
|
690
686
|
],
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
});
|
|
687
|
+
{ maxRounds: 3 }
|
|
688
|
+
);
|
|
694
689
|
|
|
695
|
-
console.log('Optimized instructions:', result.
|
|
696
|
-
console.log('
|
|
690
|
+
console.log('Optimized instructions:', result.instructionsAfter);
|
|
691
|
+
console.log('Score:', result.scoreBefore, '→', result.scoreAfter);
|
|
697
692
|
```
|
|
698
693
|
|
|
694
|
+
With `cogitator`, `compile()` runs the trainset with the original agent (those runs score it and become demo candidates) and again with the optimized instructions, so `scoreAfter` is measured. Without it, `compile()` works on the traces already stored and `scoreAfter` is the instruction optimizer's estimate.
|
|
695
|
+
|
|
699
696
|
### Built-in Metrics
|
|
700
697
|
|
|
701
698
|
```typescript
|
|
@@ -876,14 +873,14 @@ const result = await cogitator.run(agent, { input: 'Original task...' });
|
|
|
876
873
|
const checkpoints = await timeTravel.checkpointAll(result, 'original');
|
|
877
874
|
|
|
878
875
|
const replayResult = await timeTravel.replayLive(agent, checkpoints[2].id);
|
|
879
|
-
console.log('Replayed from step 2:', replayResult.
|
|
876
|
+
console.log('Replayed from step 2:', replayResult.output);
|
|
880
877
|
|
|
881
878
|
const forkResult = await timeTravel.fork(agent, checkpoints[2].id, {
|
|
882
|
-
|
|
879
|
+
input: 'Modified task...',
|
|
883
880
|
});
|
|
884
881
|
console.log('Forked result:', forkResult.result.output);
|
|
885
882
|
|
|
886
|
-
const diff = await timeTravel.compareWithOriginal(forkResult);
|
|
883
|
+
const diff = await timeTravel.compareWithOriginal(forkResult.result);
|
|
887
884
|
console.log(timeTravel.formatDiff(diff));
|
|
888
885
|
```
|
|
889
886
|
|
|
@@ -913,8 +910,8 @@ const forkWithNewInput = await timeTravel.forkWithNewInput(
|
|
|
913
910
|
);
|
|
914
911
|
|
|
915
912
|
const variants = await timeTravel.forkMultiple(agent, checkpointId, [
|
|
916
|
-
{
|
|
917
|
-
{
|
|
913
|
+
{ input: 'Variant A' },
|
|
914
|
+
{ input: 'Variant B' },
|
|
918
915
|
{ additionalContext: 'Be more concise' },
|
|
919
916
|
]);
|
|
920
917
|
```
|
|
@@ -925,10 +922,13 @@ const variants = await timeTravel.forkMultiple(agent, checkpointId, [
|
|
|
925
922
|
const deterministicReplay = await timeTravel.replayDeterministic(agent, checkpointId);
|
|
926
923
|
|
|
927
924
|
const liveReplay = await timeTravel.replayLive(agent, checkpointId, {
|
|
928
|
-
|
|
925
|
+
skipTools: ['send_email'],
|
|
926
|
+
modifiedToolResults: { web_search: { results: [] } },
|
|
929
927
|
});
|
|
930
928
|
```
|
|
931
929
|
|
|
930
|
+
Mocked tool results are keyed by tool name (in deterministic replays also by call id): the tool answers with the given value and never runs. Tools in `skipTools` are removed from the replayed agent. Checkpoints, replays and forks store their traces in the trace store, so `compare()` and `compareWithOriginal()` can read them.
|
|
931
|
+
|
|
932
932
|
---
|
|
933
933
|
|
|
934
934
|
## Causal Reasoning
|
|
@@ -1033,6 +1033,22 @@ const hypotheses = await generator.generateFromFailure(trace, { agentId: 'agent-
|
|
|
1033
1033
|
|
|
1034
1034
|
## Error Handling & Resilience
|
|
1035
1035
|
|
|
1036
|
+
### Retrying LLM Calls
|
|
1037
|
+
|
|
1038
|
+
Agent runs retry failed LLM calls on their own: rate limits, 5xx, timeouts and dropped connections, with exponential backoff and the provider's `Retry-After`. Streams are retried only before the first chunk. Tune or turn this off with `llm.retry`:
|
|
1039
|
+
|
|
1040
|
+
```typescript
|
|
1041
|
+
const cog = new Cogitator({
|
|
1042
|
+
llm: {
|
|
1043
|
+
retry: { maxRetries: 3, maxRetryAfter: 30_000, onRetry: (e) => console.warn(e) },
|
|
1044
|
+
// retry: false — no retries
|
|
1045
|
+
},
|
|
1046
|
+
});
|
|
1047
|
+
|
|
1048
|
+
// A backend used on its own
|
|
1049
|
+
const backend = withLLMRetry(new GoogleBackend({ apiKey }), { maxRetries: 3 });
|
|
1050
|
+
```
|
|
1051
|
+
|
|
1036
1052
|
### Retry with Backoff
|
|
1037
1053
|
|
|
1038
1054
|
```typescript
|
|
@@ -1115,7 +1131,7 @@ const cog = new Cogitator({
|
|
|
1115
1131
|
},
|
|
1116
1132
|
});
|
|
1117
1133
|
|
|
1118
|
-
// Throws
|
|
1134
|
+
// Throws a CogitatorError with code PROMPT_INJECTION_DETECTED when an attack is found
|
|
1119
1135
|
await cog.run(agent, { input: userInput });
|
|
1120
1136
|
```
|
|
1121
1137
|
|
|
@@ -1402,17 +1418,16 @@ const cog = new Cogitator({
|
|
|
1402
1418
|
Automatic context window management with compression strategies:
|
|
1403
1419
|
|
|
1404
1420
|
```typescript
|
|
1405
|
-
import { ContextManager, TruncateStrategy, SummarizeStrategy } from '@cogitator-ai/core';
|
|
1406
|
-
|
|
1407
1421
|
const cog = new Cogitator({
|
|
1408
1422
|
context: {
|
|
1409
|
-
enabled: true,
|
|
1410
|
-
maxTokens: 8000,
|
|
1411
1423
|
strategy: 'hybrid',
|
|
1424
|
+
compressionThreshold: 0.8,
|
|
1412
1425
|
},
|
|
1413
1426
|
});
|
|
1414
1427
|
```
|
|
1415
1428
|
|
|
1429
|
+
Setting `context` turns compression on; pass `enabled: false` to keep the config but switch it off.
|
|
1430
|
+
|
|
1416
1431
|
Available strategies: `TruncateStrategy`, `SlidingWindowStrategy`, `SummarizeStrategy`, `HybridStrategy`.
|
|
1417
1432
|
|
|
1418
1433
|
---
|
package/dist/agent.d.ts
CHANGED
|
@@ -46,7 +46,7 @@ export declare class Agent implements IAgent {
|
|
|
46
46
|
*/
|
|
47
47
|
constructor(config: AgentConfig);
|
|
48
48
|
/** LLM model identifier */
|
|
49
|
-
get model(): string;
|
|
49
|
+
get model(): string | undefined;
|
|
50
50
|
/** System prompt defining agent behavior */
|
|
51
51
|
get instructions(): string;
|
|
52
52
|
/** Tools available to this agent */
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,IAAI,MAAM,EACf,WAAW,EACX,IAAI,EACJ,aAAa,EACb,kBAAkB,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,IAAI,MAAM,EACf,WAAW,EACX,IAAI,EACJ,aAAa,EACb,kBAAkB,EAGnB,MAAM,qBAAqB,CAAC;AAM7B,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,KAAM,YAAW,MAAM;IAClC,gDAAgD;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAE7B;;;;;;;;;;;OAWG;gBACS,MAAM,EAAE,WAAW;IAiB/B,2BAA2B;IAC3B,IAAI,KAAK,IAAI,MAAM,GAAG,SAAS,CAE9B;IAED,4CAA4C;IAC5C,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,oCAAoC;IACpC,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,KAAK;IAQ7C;;;;;;;;;;;OAWG;IACH,SAAS,IAAI,aAAa;IAyB1B;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,GAAE,kBAAuB,GAAG,KAAK;IA6CpF;;;;;OAKG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,aAAa;CAiBtE"}
|
package/dist/agent.js
CHANGED
|
@@ -60,7 +60,6 @@ export class Agent {
|
|
|
60
60
|
this.config = {
|
|
61
61
|
temperature: 0.7,
|
|
62
62
|
maxIterations: 10,
|
|
63
|
-
timeout: 120_000,
|
|
64
63
|
...finalConfig,
|
|
65
64
|
};
|
|
66
65
|
}
|
|
@@ -122,6 +121,7 @@ export class Agent {
|
|
|
122
121
|
topP: this.config.topP,
|
|
123
122
|
maxTokens: this.config.maxTokens,
|
|
124
123
|
stopSequences: this.config.stopSequences,
|
|
124
|
+
responseFormat: serializeResponseFormat(this.config.responseFormat),
|
|
125
125
|
maxIterations: this.config.maxIterations,
|
|
126
126
|
timeout: this.config.timeout,
|
|
127
127
|
},
|
|
@@ -178,6 +178,7 @@ export class Agent {
|
|
|
178
178
|
topP: snapshot.config.topP,
|
|
179
179
|
maxTokens: snapshot.config.maxTokens,
|
|
180
180
|
stopSequences: snapshot.config.stopSequences,
|
|
181
|
+
responseFormat: deserializeResponseFormat(snapshot, overrides?.responseFormat),
|
|
181
182
|
maxIterations: snapshot.config.maxIterations,
|
|
182
183
|
timeout: snapshot.config.timeout,
|
|
183
184
|
...overrides,
|
|
@@ -213,4 +214,19 @@ export class Agent {
|
|
|
213
214
|
return true;
|
|
214
215
|
}
|
|
215
216
|
}
|
|
217
|
+
function serializeResponseFormat(format) {
|
|
218
|
+
if (format?.type !== 'json_schema')
|
|
219
|
+
return format;
|
|
220
|
+
const name = format.schema.description;
|
|
221
|
+
return { type: 'json_schema', schemaName: name || 'response' };
|
|
222
|
+
}
|
|
223
|
+
function deserializeResponseFormat(snapshot, override) {
|
|
224
|
+
const format = snapshot.config.responseFormat;
|
|
225
|
+
if (override || !format)
|
|
226
|
+
return override;
|
|
227
|
+
if (format.type !== 'json_schema')
|
|
228
|
+
return format;
|
|
229
|
+
throw new Error(`Agent "${snapshot.name}" was serialized with the JSON schema "${format.schemaName}". ` +
|
|
230
|
+
'Pass the Zod schema back as overrides.responseFormat to deserialize it.');
|
|
231
|
+
}
|
|
216
232
|
//# sourceMappingURL=agent.js.map
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import type { CogitatorConfig,
|
|
1
|
+
import type { CogitatorConfig, MemoryAdapter, InsightStore, ModelRoute } from '@cogitator-ai/types';
|
|
2
2
|
import { ContextBuilder } from '@cogitator-ai/memory';
|
|
3
3
|
import { ReflectionEngine } from '../reflection/index.js';
|
|
4
4
|
import { ConstitutionalAI } from '../constitutional/index.js';
|
|
5
5
|
import { CostAwareRouter } from '../cost-routing/index.js';
|
|
6
6
|
import { PromptInjectionDetector } from '../security/index.js';
|
|
7
7
|
import { ContextManager } from '../context/index.js';
|
|
8
|
-
import type { Agent } from '../agent.js';
|
|
9
8
|
export type SandboxManager = {
|
|
10
9
|
initialize(): Promise<void>;
|
|
11
10
|
execute(request: {
|
|
@@ -54,10 +53,10 @@ export interface InitializerState {
|
|
|
54
53
|
}
|
|
55
54
|
export declare function initializeMemory(config: CogitatorConfig, state: InitializerState): Promise<void>;
|
|
56
55
|
export declare function initializeSandbox(config: CogitatorConfig, state: InitializerState): Promise<SandboxManager | undefined>;
|
|
57
|
-
export declare function initializeReflection(config: CogitatorConfig, state: InitializerState,
|
|
58
|
-
export declare function initializeGuardrails(config: CogitatorConfig, state: InitializerState,
|
|
56
|
+
export declare function initializeReflection(config: CogitatorConfig, state: InitializerState, agentModel: string, route: (model: string) => ModelRoute): Promise<void>;
|
|
57
|
+
export declare function initializeGuardrails(config: CogitatorConfig, state: InitializerState, agentModel: string, route: (model: string) => ModelRoute): void;
|
|
59
58
|
export declare function initializeCostRouting(config: CogitatorConfig, state: InitializerState): void;
|
|
60
|
-
export declare function initializeSecurity(config: CogitatorConfig, state: InitializerState,
|
|
61
|
-
export declare function initializeContextManager(config: CogitatorConfig, state: InitializerState,
|
|
59
|
+
export declare function initializeSecurity(config: CogitatorConfig, state: InitializerState, agentModel: string, route: (model: string) => ModelRoute): void;
|
|
60
|
+
export declare function initializeContextManager(config: CogitatorConfig, state: InitializerState, route: (model: string) => ModelRoute): void;
|
|
62
61
|
export declare function cleanupState(state: InitializerState): Promise<void>;
|
|
63
62
|
//# sourceMappingURL=initializers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializers.d.ts","sourceRoot":"","sources":["../../src/cogitator/initializers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"initializers.d.ts","sourceRoot":"","sources":["../../src/cogitator/initializers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { InMemoryAdapter, RedisAdapter, PostgresAdapter, ContextBuilder, } from '@cogitator-ai/memory';
|
|
1
|
+
import { InMemoryAdapter, RedisAdapter, PostgresAdapter, ContextBuilder, createEmbeddingService, } from '@cogitator-ai/memory';
|
|
2
2
|
import { getLogger } from '../logger.js';
|
|
3
3
|
import { ReflectionEngine, InMemoryInsightStore } from '../reflection/index.js';
|
|
4
4
|
import { ConstitutionalAI } from '../constitutional/index.js';
|
|
5
5
|
import { CostAwareRouter } from '../cost-routing/index.js';
|
|
6
6
|
import { PromptInjectionDetector } from '../security/index.js';
|
|
7
7
|
import { ContextManager } from '../context/index.js';
|
|
8
|
-
import { parseModel } from '../llm/index.js';
|
|
9
8
|
export async function initializeMemory(config, state) {
|
|
10
9
|
if (state.memoryInitialized || !config.memory?.adapter)
|
|
11
10
|
return;
|
|
@@ -52,8 +51,12 @@ export async function initializeMemory(config, state) {
|
|
|
52
51
|
}
|
|
53
52
|
state.memoryAdapter = adapter;
|
|
54
53
|
if (config.memory.contextBuilder) {
|
|
54
|
+
const embedding = config.memory.embedding;
|
|
55
55
|
const deps = {
|
|
56
|
-
memoryAdapter:
|
|
56
|
+
memoryAdapter: adapter,
|
|
57
|
+
...(isFactAdapter(adapter) && { factAdapter: adapter }),
|
|
58
|
+
...(isEmbeddingAdapter(adapter) && { embeddingAdapter: adapter }),
|
|
59
|
+
...(embedding && { embeddingService: createEmbeddingService(embedding) }),
|
|
57
60
|
};
|
|
58
61
|
const contextConfig = {
|
|
59
62
|
...config.memory.contextBuilder,
|
|
@@ -84,28 +87,30 @@ export async function initializeSandbox(config, state) {
|
|
|
84
87
|
return undefined;
|
|
85
88
|
}
|
|
86
89
|
}
|
|
87
|
-
export async function initializeReflection(config, state,
|
|
90
|
+
export async function initializeReflection(config, state, agentModel, route) {
|
|
88
91
|
if (state.reflectionInitialized || !config.reflection?.enabled)
|
|
89
92
|
return;
|
|
90
|
-
const
|
|
91
|
-
const backend = getBackend(modelString);
|
|
93
|
+
const { backend, model } = route(config.reflection.reflectionModel ?? agentModel);
|
|
92
94
|
state.insightStore = new InMemoryInsightStore();
|
|
93
95
|
state.reflectionEngine = new ReflectionEngine({
|
|
94
96
|
llm: backend,
|
|
95
97
|
insightStore: state.insightStore,
|
|
96
|
-
config: { ...config.reflection, reflectionModel:
|
|
98
|
+
config: { ...config.reflection, reflectionModel: model },
|
|
97
99
|
});
|
|
98
100
|
state.reflectionInitialized = true;
|
|
99
101
|
}
|
|
100
|
-
export function initializeGuardrails(config, state,
|
|
101
|
-
if (state.guardrailsInitialized
|
|
102
|
+
export function initializeGuardrails(config, state, agentModel, route) {
|
|
103
|
+
if (state.guardrailsInitialized)
|
|
102
104
|
return;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
if (!config.guardrails || config.guardrails.enabled === false) {
|
|
106
|
+
state.guardrailsInitialized = true;
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const { backend, model } = route(config.guardrails.model ?? agentModel);
|
|
105
110
|
state.constitutionalAI = new ConstitutionalAI({
|
|
106
111
|
llm: backend,
|
|
107
112
|
constitution: config.guardrails.constitution,
|
|
108
|
-
config: { ...config.guardrails, model
|
|
113
|
+
config: { ...config.guardrails, model },
|
|
109
114
|
});
|
|
110
115
|
state.guardrailsInitialized = true;
|
|
111
116
|
}
|
|
@@ -115,26 +120,26 @@ export function initializeCostRouting(config, state) {
|
|
|
115
120
|
state.costRouter = new CostAwareRouter({ config: config.costRouting });
|
|
116
121
|
state.costRoutingInitialized = true;
|
|
117
122
|
}
|
|
118
|
-
export function initializeSecurity(config, state,
|
|
123
|
+
export function initializeSecurity(config, state, agentModel, route) {
|
|
119
124
|
if (state.securityInitialized || !config.security?.promptInjection)
|
|
120
125
|
return;
|
|
121
126
|
const injectionConfig = { ...config.security.promptInjection };
|
|
122
127
|
if (injectionConfig.classifier === 'llm' && !injectionConfig.llmBackend) {
|
|
123
|
-
const
|
|
124
|
-
injectionConfig.llmBackend =
|
|
125
|
-
injectionConfig.llmModel =
|
|
128
|
+
const { backend, model } = route(injectionConfig.llmModel ?? agentModel);
|
|
129
|
+
injectionConfig.llmBackend = backend;
|
|
130
|
+
injectionConfig.llmModel = model;
|
|
126
131
|
}
|
|
127
132
|
state.injectionDetector = new PromptInjectionDetector(injectionConfig);
|
|
128
133
|
state.securityInitialized = true;
|
|
129
134
|
}
|
|
130
|
-
export function initializeContextManager(config, state,
|
|
135
|
+
export function initializeContextManager(config, state, route) {
|
|
131
136
|
if (state.contextManagerInitialized)
|
|
132
137
|
return;
|
|
133
|
-
if (!config.context
|
|
138
|
+
if (!config.context || config.context.enabled === false) {
|
|
134
139
|
state.contextManagerInitialized = true;
|
|
135
140
|
return;
|
|
136
141
|
}
|
|
137
|
-
state.contextManager = new ContextManager(config.context, {
|
|
142
|
+
state.contextManager = new ContextManager(config.context, { route });
|
|
138
143
|
state.contextManagerInitialized = true;
|
|
139
144
|
}
|
|
140
145
|
export async function cleanupState(state) {
|
|
@@ -161,4 +166,12 @@ export async function cleanupState(state) {
|
|
|
161
166
|
state.contextManager = undefined;
|
|
162
167
|
state.contextManagerInitialized = false;
|
|
163
168
|
}
|
|
169
|
+
function isFactAdapter(adapter) {
|
|
170
|
+
const candidate = adapter;
|
|
171
|
+
return typeof candidate.getFacts === 'function' && typeof candidate.addFact === 'function';
|
|
172
|
+
}
|
|
173
|
+
function isEmbeddingAdapter(adapter) {
|
|
174
|
+
const candidate = adapter;
|
|
175
|
+
return typeof candidate.search === 'function' && typeof candidate.addEmbedding === 'function';
|
|
176
|
+
}
|
|
164
177
|
//# sourceMappingURL=initializers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializers.js","sourceRoot":"","sources":["../../src/cogitator/initializers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"initializers.js","sourceRoot":"","sources":["../../src/cogitator/initializers.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export declare function buildInputWithAudio(input: string, audio: AudioInput[] |
|
|
|
11
11
|
signal?: AbortSignal;
|
|
12
12
|
}): Promise<string>;
|
|
13
13
|
export declare function buildInitialMessages(agent: Agent, options: RunOptions, threadId: string, memoryAdapter: MemoryAdapter | undefined, contextBuilder: ContextBuilder | undefined): Promise<Message[]>;
|
|
14
|
-
export declare function saveEntry(threadId: string, agentId: string, message: Message, memoryAdapter: MemoryAdapter | undefined, toolCalls?: ToolCall[], toolResults?: ToolResult[], onError?: (error: Error, operation: 'save' | 'load') => void): Promise<void>;
|
|
14
|
+
export declare function saveEntry(threadId: string, agentId: string, message: Message, memoryAdapter: MemoryAdapter | undefined, toolCalls?: ToolCall[], toolResults?: ToolResult[], onError?: (error: Error, operation: 'save' | 'load') => void, userId?: string): Promise<void>;
|
|
15
15
|
export declare function enrichMessagesWithInsights(messages: Message[], reflectionEngine: ReflectionEngine, agentContext: AgentContext): Promise<void>;
|
|
16
16
|
export declare function addContextToMessages(messages: Message[], context: Record<string, unknown>): void;
|
|
17
17
|
//# sourceMappingURL=message-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-builder.d.ts","sourceRoot":"","sources":["../../src/cogitator/message-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,aAAa,EACb,QAAQ,EACR,UAAU,EAGV,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAsB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"message-builder.d.ts","sourceRoot":"","sources":["../../src/cogitator/message-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,aAAa,EACb,QAAQ,EACR,UAAU,EAGV,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAsB,MAAM,sBAAsB,CAAC;AAG1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAC/B,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GACjD,OAAO,CAAC,MAAM,CAAC,CAuBjB;AA6BD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,cAAc,EAAE,cAAc,GAAG,SAAS,GACzC,OAAO,CAAC,OAAO,EAAE,CAAC,CA4CpB;AAkBD,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,SAAS,CAAC,EAAE,QAAQ,EAAE,EACtB,WAAW,CAAC,EAAE,UAAU,EAAE,EAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,EAC5D,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,OAAO,EAAE,EACnB,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAehG"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { countMessageTokens } from '@cogitator-ai/memory';
|
|
2
2
|
import { getLogger } from '../logger.js';
|
|
3
|
+
import { ensureThreadAccess, threadMetadata } from './threads.js';
|
|
3
4
|
import { sanitizeToolHistory } from '../utils/tool-history.js';
|
|
4
5
|
import { transcribeAudio } from '../tools/audio-transcribe.js';
|
|
5
6
|
/**
|
|
@@ -54,15 +55,22 @@ export async function buildInitialMessages(agent, options, threadId, memoryAdapt
|
|
|
54
55
|
{ role: 'user', content: userContent },
|
|
55
56
|
];
|
|
56
57
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
if (options.threadId !== undefined && options.threadAccess !== 'shared') {
|
|
59
|
+
await ensureThreadAccess(memoryAdapter, threadId, {
|
|
60
|
+
agentId: agent.id,
|
|
61
|
+
userId: options.userId,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
await createThreadIfMissing(memoryAdapter, threadId, agent.id, options.userId);
|
|
60
66
|
}
|
|
61
67
|
if (contextBuilder && options.loadHistory !== false) {
|
|
62
68
|
const ctx = await contextBuilder.build({
|
|
63
69
|
threadId,
|
|
64
70
|
agentId: agent.id,
|
|
71
|
+
userId: options.userId,
|
|
65
72
|
systemPrompt: agent.instructions,
|
|
73
|
+
currentInput: options.input,
|
|
66
74
|
});
|
|
67
75
|
return [...sanitizeToolHistory(ctx.messages), { role: 'user', content: userContent }];
|
|
68
76
|
}
|
|
@@ -80,14 +88,21 @@ export async function buildInitialMessages(agent, options, threadId, memoryAdapt
|
|
|
80
88
|
{ role: 'user', content: userContent },
|
|
81
89
|
];
|
|
82
90
|
}
|
|
83
|
-
|
|
91
|
+
/**
|
|
92
|
+
* Creates thread `threadId`, owned by `userId`, unless it exists. A thread
|
|
93
|
+
* that cannot be read is left alone: creating it would overwrite its owner.
|
|
94
|
+
*/
|
|
95
|
+
async function createThreadIfMissing(memoryAdapter, threadId, agentId, userId) {
|
|
96
|
+
const threadResult = await memoryAdapter.getThread(threadId);
|
|
97
|
+
if (threadResult.success && !threadResult.data) {
|
|
98
|
+
await memoryAdapter.createThread(agentId, threadMetadata({ agentId, userId }), threadId);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
export async function saveEntry(threadId, agentId, message, memoryAdapter, toolCalls, toolResults, onError, userId) {
|
|
84
102
|
if (!memoryAdapter)
|
|
85
103
|
return;
|
|
86
104
|
try {
|
|
87
|
-
|
|
88
|
-
if (!threadResult.success || !threadResult.data) {
|
|
89
|
-
await memoryAdapter.createThread(agentId, { agentId }, threadId);
|
|
90
|
-
}
|
|
105
|
+
await createThreadIfMissing(memoryAdapter, threadId, agentId, userId);
|
|
91
106
|
await memoryAdapter.addEntry({
|
|
92
107
|
threadId,
|
|
93
108
|
message,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-builder.js","sourceRoot":"","sources":["../../src/cogitator/message-builder.ts"],"names":[],"mappings":"AAUA,OAAO,EAAkB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"message-builder.js","sourceRoot":"","sources":["../../src/cogitator/message-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { LLMResponseFormat, ResponseFormat } from '@cogitator-ai/types';
|
|
2
|
+
/**
|
|
3
|
+
* Translates an agent's `responseFormat` into the format LLM backends take.
|
|
4
|
+
*
|
|
5
|
+
* Zod schemas become JSON Schema. Strict mode is requested only when the
|
|
6
|
+
* schema allows it (every property required, no additional properties),
|
|
7
|
+
* since providers refuse strict schemas with optional fields.
|
|
8
|
+
*/
|
|
9
|
+
export declare function toLLMResponseFormat(format: ResponseFormat | undefined): LLMResponseFormat | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* Reads the structured result of a run from its final text.
|
|
12
|
+
*
|
|
13
|
+
* Returns `undefined` when the agent asked for plain text, when the text is not
|
|
14
|
+
* JSON, or when it does not match the agent's schema.
|
|
15
|
+
*/
|
|
16
|
+
export declare function parseStructuredOutput(format: ResponseFormat | undefined, output: string): unknown;
|
|
17
|
+
//# sourceMappingURL=response-format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-format.d.ts","sourceRoot":"","sources":["../../src/cogitator/response-format.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI7E;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,cAAc,GAAG,SAAS,GACjC,iBAAiB,GAAG,SAAS,CAyB/B;AAmBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CASjG"}
|