@animalabs/agent-framework 0.6.0 → 0.6.3
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/src/agent.d.ts +4 -0
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +15 -0
- package/dist/src/agent.js.map +1 -1
- package/dist/src/framework.d.ts +235 -2
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +1141 -92
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +20 -1
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +60 -4
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +17 -1
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +34 -3
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/push-handler.d.ts.map +1 -1
- package/dist/src/mcpl/push-handler.js +4 -0
- package/dist/src/mcpl/push-handler.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +29 -0
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +102 -4
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +17 -1
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/module-registry.d.ts +15 -1
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +92 -4
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/types/agent.d.ts +37 -0
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +40 -0
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +46 -0
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +51 -0
- package/dist/src/types/trace.d.ts.map +1 -1
- package/dist/test/agent-cache-ttl.test.d.ts +2 -0
- package/dist/test/agent-cache-ttl.test.d.ts.map +1 -0
- package/dist/test/agent-cache-ttl.test.js +25 -0
- package/dist/test/agent-cache-ttl.test.js.map +1 -0
- package/dist/test/conversation-fork-injection-scoping.test.d.ts +2 -0
- package/dist/test/conversation-fork-injection-scoping.test.d.ts.map +1 -0
- package/dist/test/conversation-fork-injection-scoping.test.js +184 -0
- package/dist/test/conversation-fork-injection-scoping.test.js.map +1 -0
- package/dist/test/gather-context-timeout.test.d.ts +2 -0
- package/dist/test/gather-context-timeout.test.d.ts.map +1 -0
- package/dist/test/gather-context-timeout.test.js +120 -0
- package/dist/test/gather-context-timeout.test.js.map +1 -0
- package/dist/test/inference-exhaustion-rewind.test.d.ts +2 -0
- package/dist/test/inference-exhaustion-rewind.test.d.ts.map +1 -0
- package/dist/test/inference-exhaustion-rewind.test.js +181 -0
- package/dist/test/inference-exhaustion-rewind.test.js.map +1 -0
- package/dist/test/inference-failure-observability.test.js +9 -0
- package/dist/test/inference-failure-observability.test.js.map +1 -1
- package/dist/test/maintenance-timer.test.d.ts +2 -0
- package/dist/test/maintenance-timer.test.d.ts.map +1 -0
- package/dist/test/maintenance-timer.test.js +114 -0
- package/dist/test/maintenance-timer.test.js.map +1 -0
- package/dist/test/mcpl-reconnect-events.test.d.ts +2 -0
- package/dist/test/mcpl-reconnect-events.test.d.ts.map +1 -0
- package/dist/test/mcpl-reconnect-events.test.js +119 -0
- package/dist/test/mcpl-reconnect-events.test.js.map +1 -0
- package/dist/test/mcpl-reconnect-reregistration.test.d.ts +2 -0
- package/dist/test/mcpl-reconnect-reregistration.test.d.ts.map +1 -0
- package/dist/test/mcpl-reconnect-reregistration.test.js +181 -0
- package/dist/test/mcpl-reconnect-reregistration.test.js.map +1 -0
- package/dist/test/mcpl-request-timeout.test.d.ts +2 -0
- package/dist/test/mcpl-request-timeout.test.d.ts.map +1 -0
- package/dist/test/mcpl-request-timeout.test.js +123 -0
- package/dist/test/mcpl-request-timeout.test.js.map +1 -0
- package/dist/test/mcpl-runtime-lifecycle.test.d.ts +7 -0
- package/dist/test/mcpl-runtime-lifecycle.test.d.ts.map +1 -0
- package/dist/test/mcpl-runtime-lifecycle.test.js +142 -0
- package/dist/test/mcpl-runtime-lifecycle.test.js.map +1 -0
- package/dist/test/ops-alert.test.d.ts +2 -0
- package/dist/test/ops-alert.test.d.ts.map +1 -0
- package/dist/test/ops-alert.test.js +152 -0
- package/dist/test/ops-alert.test.js.map +1 -0
- package/dist/test/refusal-rewind.test.d.ts +2 -0
- package/dist/test/refusal-rewind.test.d.ts.map +1 -0
- package/dist/test/refusal-rewind.test.js +108 -0
- package/dist/test/refusal-rewind.test.js.map +1 -0
- package/dist/test/state-scaling-e2e.test.d.ts +22 -0
- package/dist/test/state-scaling-e2e.test.d.ts.map +1 -0
- package/dist/test/state-scaling-e2e.test.js +200 -0
- package/dist/test/state-scaling-e2e.test.js.map +1 -0
- package/dist/test/state-scaling.test.d.ts +12 -0
- package/dist/test/state-scaling.test.d.ts.map +1 -0
- package/dist/test/state-scaling.test.js +243 -0
- package/dist/test/state-scaling.test.js.map +1 -0
- package/dist/test/tool-result-content.test.d.ts +2 -0
- package/dist/test/tool-result-content.test.d.ts.map +1 -0
- package/dist/test/tool-result-content.test.js +37 -0
- package/dist/test/tool-result-content.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/src/agent.ts +16 -0
- package/src/framework.ts +1339 -99
- package/src/gate/event-gate.ts +56 -4
- package/src/index.ts +10 -0
- package/src/mcpl/channel-registry.ts +34 -3
- package/src/mcpl/push-handler.ts +4 -0
- package/src/mcpl/server-connection.ts +110 -4
- package/src/mcpl/types.ts +19 -1
- package/src/module-registry.ts +113 -4
- package/src/types/agent.ts +38 -0
- package/src/types/framework.ts +44 -0
- package/src/types/module.ts +52 -0
- package/src/types/trace.ts +67 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@animalabs/agent-framework",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.3",
|
|
4
4
|
"description": "Multi-agent framework with pluggable modules, persistent state, and concurrent tool execution",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
"dev": "tsc --watch",
|
|
29
29
|
"clean": "rm -rf dist",
|
|
30
30
|
"typecheck": "tsc --noEmit",
|
|
31
|
+
"pretest": "mkdir -p dist/test/fixtures && cp test/fixtures/*.mjs dist/test/fixtures/",
|
|
31
32
|
"test": "node --test dist/test/*.test.js",
|
|
32
33
|
"prepublishOnly": "npm run build"
|
|
33
34
|
},
|
|
@@ -42,7 +43,7 @@
|
|
|
42
43
|
"author": "Anima Research",
|
|
43
44
|
"license": "MIT",
|
|
44
45
|
"dependencies": {
|
|
45
|
-
"@animalabs/chronicle": "^0.2.
|
|
46
|
+
"@animalabs/chronicle": "^0.2.2",
|
|
46
47
|
"@animalabs/context-manager": "^0.5.5",
|
|
47
48
|
"@animalabs/membrane": "^0.5.64",
|
|
48
49
|
"chokidar": "^4.0.3",
|
package/src/agent.ts
CHANGED
|
@@ -44,6 +44,10 @@ export class Agent {
|
|
|
44
44
|
* blocks are preserved through Chronicle.
|
|
45
45
|
*/
|
|
46
46
|
readonly thinking: AgentConfig['thinking'];
|
|
47
|
+
/** Refusal auto-rewind policy (see AgentConfig.refusalHandling). */
|
|
48
|
+
readonly refusalHandling: AgentConfig['refusalHandling'];
|
|
49
|
+
/** Prompt-cache TTL forwarded to the provider (see AgentConfig.cacheTtl). */
|
|
50
|
+
readonly cacheTtl: AgentConfig['cacheTtl'];
|
|
47
51
|
|
|
48
52
|
private _state: AgentState = { status: 'idle' };
|
|
49
53
|
private _inferenceStartedAt = 0;
|
|
@@ -70,6 +74,8 @@ export class Agent {
|
|
|
70
74
|
this.maxTokens = config.maxTokens ?? 4096;
|
|
71
75
|
this.temperature = config.temperature;
|
|
72
76
|
this.thinking = config.thinking;
|
|
77
|
+
this.refusalHandling = config.refusalHandling;
|
|
78
|
+
this.cacheTtl = config.cacheTtl;
|
|
73
79
|
this.maxStreamTokens = config.maxStreamTokens ?? 150_000;
|
|
74
80
|
this.contextBudgetTokens = config.contextBudgetTokens;
|
|
75
81
|
this.contextManager = contextManager;
|
|
@@ -319,6 +325,15 @@ export class Agent {
|
|
|
319
325
|
injections?: ContextInjection[],
|
|
320
326
|
budget?: TokenBudget
|
|
321
327
|
): Promise<NormalizedRequest> {
|
|
328
|
+
// Keep the context manager's view of the live tool surface current: the
|
|
329
|
+
// autobiographical strategy must declare the same tools on its
|
|
330
|
+
// summarizer/compression requests, or transcripts containing tool blocks
|
|
331
|
+
// are refused by Anthropic's reasoning_extraction classifier (labclaude
|
|
332
|
+
// incident, 2026-07-09). Optional chaining: older context-manager
|
|
333
|
+
// versions don't have the hook.
|
|
334
|
+
(this.contextManager as unknown as { setToolDefinitions?: (t: ToolDefinition[]) => void })
|
|
335
|
+
.setToolDefinitions?.(availableTools);
|
|
336
|
+
|
|
322
337
|
let { messages, systemInjections } = await this.compileWithInjections(budget, injections);
|
|
323
338
|
|
|
324
339
|
// Safety: ensure messages don't end with an assistant message.
|
|
@@ -342,6 +357,7 @@ export class Agent {
|
|
|
342
357
|
},
|
|
343
358
|
tools: availableTools.length > 0 ? availableTools : undefined,
|
|
344
359
|
promptCaching: true,
|
|
360
|
+
...(this.cacheTtl !== undefined && { cacheTtl: this.cacheTtl }),
|
|
345
361
|
assistantParticipant: this.name,
|
|
346
362
|
};
|
|
347
363
|
}
|