@animalabs/agent-framework 0.27.0 → 0.29.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 +145 -41
- package/dist/src/agent.d.ts +29 -2
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +73 -12
- package/dist/src/agent.js.map +1 -1
- package/dist/src/api/mcp-server-core.d.ts.map +1 -1
- package/dist/src/api/mcp-server-core.js +3 -12
- package/dist/src/api/mcp-server-core.js.map +1 -1
- package/dist/src/api/server.d.ts.map +1 -1
- package/dist/src/api/server.js +11 -5
- package/dist/src/api/server.js.map +1 -1
- package/dist/src/auto-continue.d.ts +5 -2
- package/dist/src/auto-continue.d.ts.map +1 -1
- package/dist/src/auto-continue.js +9 -5
- package/dist/src/auto-continue.js.map +1 -1
- package/dist/src/code-execution/isolate/runner.d.ts +7 -5
- package/dist/src/code-execution/isolate/runner.d.ts.map +1 -1
- package/dist/src/code-execution/isolate/runner.js +7 -5
- package/dist/src/code-execution/isolate/runner.js.map +1 -1
- package/dist/src/code-execution/isolate/scripts.d.ts.map +1 -1
- package/dist/src/code-execution/isolate/scripts.js +3 -2
- package/dist/src/code-execution/isolate/scripts.js.map +1 -1
- package/dist/src/cut-off-round.d.ts +24 -0
- package/dist/src/cut-off-round.d.ts.map +1 -0
- package/dist/src/cut-off-round.js +87 -0
- package/dist/src/cut-off-round.js.map +1 -0
- package/dist/src/framework.d.ts +468 -125
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +3651 -1111
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +133 -13
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +654 -59
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/gate/index.d.ts +3 -2
- package/dist/src/gate/index.d.ts.map +1 -1
- package/dist/src/gate/index.js +2 -1
- package/dist/src/gate/index.js.map +1 -1
- package/dist/src/gate/reply-judge.d.ts +116 -0
- package/dist/src/gate/reply-judge.d.ts.map +1 -0
- package/dist/src/gate/reply-judge.js +467 -0
- package/dist/src/gate/reply-judge.js.map +1 -0
- package/dist/src/gate/types.d.ts +173 -2
- package/dist/src/gate/types.d.ts.map +1 -1
- package/dist/src/heartbeat/heartbeat.d.ts +202 -0
- package/dist/src/heartbeat/heartbeat.d.ts.map +1 -0
- package/dist/src/heartbeat/heartbeat.js +778 -0
- package/dist/src/heartbeat/heartbeat.js.map +1 -0
- package/dist/src/heartbeat/reminder-time.d.ts +5 -0
- package/dist/src/heartbeat/reminder-time.d.ts.map +1 -0
- package/dist/src/heartbeat/reminder-time.js +107 -0
- package/dist/src/heartbeat/reminder-time.js.map +1 -0
- package/dist/src/held-writes.d.ts +3 -3
- package/dist/src/held-writes.js +3 -3
- package/dist/src/host-presentation.d.ts +170 -0
- package/dist/src/host-presentation.d.ts.map +1 -0
- package/dist/src/host-presentation.js +561 -0
- package/dist/src/host-presentation.js.map +1 -0
- package/dist/src/index.d.ts +5 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/line-reader.d.ts +4 -0
- package/dist/src/line-reader.d.ts.map +1 -0
- package/dist/src/line-reader.js +59 -0
- package/dist/src/line-reader.js.map +1 -0
- package/dist/src/mcpl/capability-mask.d.ts.map +1 -1
- package/dist/src/mcpl/capability-mask.js +3 -2
- package/dist/src/mcpl/capability-mask.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +34 -6
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +133 -54
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
- package/dist/src/mcpl/conversation-router.js +2 -1
- package/dist/src/mcpl/conversation-router.js.map +1 -1
- package/dist/src/mcpl/convert-block.d.ts +1 -0
- package/dist/src/mcpl/convert-block.d.ts.map +1 -1
- package/dist/src/mcpl/convert-block.js +16 -4
- package/dist/src/mcpl/convert-block.js.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.js +4 -3
- package/dist/src/mcpl/hook-orchestrator.js.map +1 -1
- package/dist/src/mcpl/inbound-source.d.ts +29 -11
- package/dist/src/mcpl/inbound-source.d.ts.map +1 -1
- package/dist/src/mcpl/inbound-source.js +43 -70
- package/dist/src/mcpl/inbound-source.js.map +1 -1
- package/dist/src/mcpl/modern-connection.d.ts.map +1 -1
- package/dist/src/mcpl/modern-connection.js +11 -7
- package/dist/src/mcpl/modern-connection.js.map +1 -1
- package/dist/src/mcpl/protocol-family.d.ts +3 -2
- package/dist/src/mcpl/protocol-family.d.ts.map +1 -1
- package/dist/src/mcpl/protocol-family.js +25 -3
- package/dist/src/mcpl/protocol-family.js.map +1 -1
- package/dist/src/mcpl/push-handler.js +2 -2
- package/dist/src/mcpl/push-handler.js.map +1 -1
- package/dist/src/mcpl/references.d.ts +12 -40
- package/dist/src/mcpl/references.d.ts.map +1 -1
- package/dist/src/mcpl/references.js +29 -23
- package/dist/src/mcpl/references.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +18 -8
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +70 -30
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/skip-reply-wake.d.ts +25 -0
- package/dist/src/mcpl/skip-reply-wake.d.ts.map +1 -1
- package/dist/src/mcpl/skip-reply-wake.js +25 -0
- package/dist/src/mcpl/skip-reply-wake.js.map +1 -1
- package/dist/src/mcpl/tags.d.ts +9 -2
- package/dist/src/mcpl/tags.d.ts.map +1 -1
- package/dist/src/mcpl/tags.js +12 -2
- package/dist/src/mcpl/tags.js.map +1 -1
- package/dist/src/mcpl/tool-presence.d.ts +66 -14
- package/dist/src/mcpl/tool-presence.d.ts.map +1 -1
- package/dist/src/mcpl/tool-presence.js +150 -80
- package/dist/src/mcpl/tool-presence.js.map +1 -1
- package/dist/src/mcpl/tool-signature.d.ts +10 -3
- package/dist/src/mcpl/tool-signature.d.ts.map +1 -1
- package/dist/src/mcpl/tool-signature.js +60 -30
- package/dist/src/mcpl/tool-signature.js.map +1 -1
- package/dist/src/mcpl/toolset-host.d.ts +88 -55
- package/dist/src/mcpl/toolset-host.d.ts.map +1 -1
- package/dist/src/mcpl/toolset-host.js +220 -111
- package/dist/src/mcpl/toolset-host.js.map +1 -1
- package/dist/src/mcpl/toolsets-module.d.ts +27 -35
- package/dist/src/mcpl/toolsets-module.d.ts.map +1 -1
- package/dist/src/mcpl/toolsets-module.js +313 -91
- package/dist/src/mcpl/toolsets-module.js.map +1 -1
- package/dist/src/mcpl/transport.d.ts +1 -1
- package/dist/src/mcpl/transport.d.ts.map +1 -1
- package/dist/src/mcpl/transport.js +16 -16
- package/dist/src/mcpl/transport.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +31 -13
- 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 +10 -8
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +15 -9
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/api/index.d.ts.map +1 -1
- package/dist/src/modules/api/index.js +4 -2
- package/dist/src/modules/api/index.js.map +1 -1
- package/dist/src/modules/discord/index.d.ts.map +1 -1
- package/dist/src/modules/discord/index.js +33 -25
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/modules/history/index.d.ts.map +1 -1
- package/dist/src/modules/history/index.js +30 -17
- package/dist/src/modules/history/index.js.map +1 -1
- package/dist/src/modules/sender-name.d.ts +7 -0
- package/dist/src/modules/sender-name.d.ts.map +1 -0
- package/dist/src/modules/sender-name.js +10 -0
- package/dist/src/modules/sender-name.js.map +1 -0
- package/dist/src/modules/workspace/answers.d.ts +26 -0
- package/dist/src/modules/workspace/answers.d.ts.map +1 -0
- package/dist/src/modules/workspace/answers.js +138 -0
- package/dist/src/modules/workspace/answers.js.map +1 -0
- package/dist/src/modules/workspace/branch-intent.d.ts +5 -3
- package/dist/src/modules/workspace/branch-intent.d.ts.map +1 -1
- package/dist/src/modules/workspace/branch-intent.js +6 -2
- package/dist/src/modules/workspace/branch-intent.js.map +1 -1
- package/dist/src/modules/workspace/direct-write.d.ts +3 -0
- package/dist/src/modules/workspace/direct-write.d.ts.map +1 -1
- package/dist/src/modules/workspace/direct-write.js +59 -24
- package/dist/src/modules/workspace/direct-write.js.map +1 -1
- package/dist/src/modules/workspace/disk-agreement.d.ts +33 -11
- package/dist/src/modules/workspace/disk-agreement.d.ts.map +1 -1
- package/dist/src/modules/workspace/disk-agreement.js +48 -17
- package/dist/src/modules/workspace/disk-agreement.js.map +1 -1
- package/dist/src/modules/workspace/edit-text.d.ts +2 -1
- package/dist/src/modules/workspace/edit-text.d.ts.map +1 -1
- package/dist/src/modules/workspace/edit-text.js +4 -2
- package/dist/src/modules/workspace/edit-text.js.map +1 -1
- package/dist/src/modules/workspace/effects.d.ts +4 -2
- package/dist/src/modules/workspace/effects.d.ts.map +1 -1
- package/dist/src/modules/workspace/effects.js +67 -50
- package/dist/src/modules/workspace/effects.js.map +1 -1
- package/dist/src/modules/workspace/index.d.ts +63 -51
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +980 -547
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/observe.d.ts +125 -82
- package/dist/src/modules/workspace/observe.d.ts.map +1 -1
- package/dist/src/modules/workspace/observe.js +465 -241
- package/dist/src/modules/workspace/observe.js.map +1 -1
- package/dist/src/modules/workspace/read-page.d.ts.map +1 -1
- package/dist/src/modules/workspace/read-page.js +7 -1
- package/dist/src/modules/workspace/read-page.js.map +1 -1
- package/dist/src/modules/workspace/reconcile.d.ts +7 -1
- package/dist/src/modules/workspace/reconcile.d.ts.map +1 -1
- package/dist/src/modules/workspace/reconcile.js +156 -50
- package/dist/src/modules/workspace/reconcile.js.map +1 -1
- package/dist/src/modules/workspace/result-text.d.ts +1 -0
- package/dist/src/modules/workspace/result-text.d.ts.map +1 -1
- package/dist/src/modules/workspace/result-text.js.map +1 -1
- package/dist/src/modules/workspace/sync.d.ts +9 -0
- package/dist/src/modules/workspace/sync.d.ts.map +1 -1
- package/dist/src/modules/workspace/sync.js +14 -0
- package/dist/src/modules/workspace/sync.js.map +1 -1
- package/dist/src/modules/workspace/types.d.ts +96 -43
- package/dist/src/modules/workspace/types.d.ts.map +1 -1
- package/dist/src/modules/workspace/types.js.map +1 -1
- package/dist/src/modules/workspace/watcher.d.ts.map +1 -1
- package/dist/src/modules/workspace/watcher.js +8 -3
- package/dist/src/modules/workspace/watcher.js.map +1 -1
- package/dist/src/notice-tags.d.ts +79 -0
- package/dist/src/notice-tags.d.ts.map +1 -0
- package/dist/src/notice-tags.js +83 -0
- package/dist/src/notice-tags.js.map +1 -0
- package/dist/src/prose-drafts.d.ts +4 -3
- package/dist/src/prose-drafts.d.ts.map +1 -1
- package/dist/src/prose-drafts.js +3 -2
- package/dist/src/prose-drafts.js.map +1 -1
- package/dist/src/reasoning-loss-notice.d.ts +23 -0
- package/dist/src/reasoning-loss-notice.d.ts.map +1 -0
- package/dist/src/reasoning-loss-notice.js +52 -0
- package/dist/src/reasoning-loss-notice.js.map +1 -0
- package/dist/src/reasoning-loss.d.ts +24 -0
- package/dist/src/reasoning-loss.d.ts.map +1 -0
- package/dist/src/reasoning-loss.js +102 -0
- package/dist/src/reasoning-loss.js.map +1 -0
- package/dist/src/send-tools.d.ts +3 -2
- package/dist/src/send-tools.d.ts.map +1 -1
- package/dist/src/send-tools.js +3 -2
- package/dist/src/send-tools.js.map +1 -1
- package/dist/src/sent-rows.js +1 -1
- package/dist/src/silent-heartbeat.d.ts +1 -53
- package/dist/src/silent-heartbeat.d.ts.map +1 -1
- package/dist/src/silent-heartbeat.js +56 -3
- package/dist/src/silent-heartbeat.js.map +1 -1
- package/dist/src/supplied-text.d.ts +35 -0
- package/dist/src/supplied-text.d.ts.map +1 -0
- package/dist/src/supplied-text.js +141 -0
- package/dist/src/supplied-text.js.map +1 -0
- package/dist/src/thinking-drops.d.ts +4 -11
- package/dist/src/thinking-drops.d.ts.map +1 -1
- package/dist/src/thinking-drops.js +7 -14
- package/dist/src/thinking-drops.js.map +1 -1
- package/dist/src/tool-args.d.ts +12 -0
- package/dist/src/tool-args.d.ts.map +1 -1
- package/dist/src/tool-args.js +39 -4
- package/dist/src/tool-args.js.map +1 -1
- package/dist/src/tool-image-ledger.d.ts.map +1 -1
- package/dist/src/tool-image-ledger.js +2 -1
- package/dist/src/tool-image-ledger.js.map +1 -1
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +5 -4
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/tool-result-guard.d.ts +8 -4
- package/dist/src/tool-result-guard.d.ts.map +1 -1
- package/dist/src/tool-result-guard.js +23 -11
- package/dist/src/tool-result-guard.js.map +1 -1
- package/dist/src/tune-out/coordinator.d.ts +3 -2
- package/dist/src/tune-out/coordinator.d.ts.map +1 -1
- package/dist/src/tune-out/coordinator.js +24 -26
- package/dist/src/tune-out/coordinator.js.map +1 -1
- package/dist/src/tune-out/tools.d.ts +4 -1
- package/dist/src/tune-out/tools.d.ts.map +1 -1
- package/dist/src/types/agent.d.ts +63 -18
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/events.d.ts +18 -8
- package/dist/src/types/events.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +58 -0
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +27 -13
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +34 -1
- package/dist/src/types/trace.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/agent.ts +76 -12
- package/src/api/mcp-server-core.ts +3 -14
- package/src/api/server.ts +11 -5
- package/src/auto-continue.ts +12 -5
- package/src/code-execution/isolate/runner.ts +7 -5
- package/src/code-execution/isolate/scripts.ts +3 -2
- package/src/cut-off-round.ts +98 -0
- package/src/framework.ts +3772 -1138
- package/src/gate/event-gate.ts +705 -60
- package/src/gate/index.ts +9 -1
- package/src/gate/reply-judge.ts +512 -0
- package/src/gate/types.ts +176 -3
- package/src/heartbeat/heartbeat.ts +843 -0
- package/src/heartbeat/reminder-time.ts +107 -0
- package/src/held-writes.ts +3 -3
- package/src/host-presentation.ts +605 -0
- package/src/index.ts +5 -1
- package/src/line-reader.ts +58 -0
- package/src/mcpl/capability-mask.ts +3 -2
- package/src/mcpl/channel-registry.ts +139 -53
- package/src/mcpl/conversation-router.ts +2 -1
- package/src/mcpl/convert-block.ts +17 -4
- package/src/mcpl/hook-orchestrator.ts +4 -3
- package/src/mcpl/inbound-source.ts +45 -70
- package/src/mcpl/modern-connection.ts +11 -7
- package/src/mcpl/protocol-family.ts +24 -3
- package/src/mcpl/push-handler.ts +2 -2
- package/src/mcpl/references.ts +31 -23
- package/src/mcpl/server-connection.ts +76 -34
- package/src/mcpl/skip-reply-wake.ts +35 -0
- package/src/mcpl/tags.ts +13 -2
- package/src/mcpl/tool-presence.ts +149 -82
- package/src/mcpl/tool-signature.ts +64 -32
- package/src/mcpl/toolset-host.ts +212 -110
- package/src/mcpl/toolsets-module.ts +277 -91
- package/src/mcpl/transport.ts +18 -14
- package/src/mcpl/types.ts +32 -13
- package/src/module-registry.ts +14 -9
- package/src/modules/api/index.ts +4 -2
- package/src/modules/discord/index.ts +37 -25
- package/src/modules/history/index.ts +30 -18
- package/src/modules/sender-name.ts +9 -0
- package/src/modules/workspace/answers.ts +151 -0
- package/src/modules/workspace/branch-intent.ts +10 -5
- package/src/modules/workspace/direct-write.ts +59 -23
- package/src/modules/workspace/disk-agreement.ts +52 -21
- package/src/modules/workspace/edit-text.ts +7 -5
- package/src/modules/workspace/effects.ts +69 -50
- package/src/modules/workspace/index.ts +966 -556
- package/src/modules/workspace/observe.ts +497 -242
- package/src/modules/workspace/read-page.ts +7 -1
- package/src/modules/workspace/reconcile.ts +184 -49
- package/src/modules/workspace/result-text.ts +2 -0
- package/src/modules/workspace/sync.ts +16 -0
- package/src/modules/workspace/types.ts +96 -43
- package/src/modules/workspace/watcher.ts +8 -3
- package/src/notice-tags.ts +84 -0
- package/src/prose-drafts.ts +4 -3
- package/src/reasoning-loss-notice.ts +64 -0
- package/src/reasoning-loss.ts +120 -0
- package/src/send-tools.ts +3 -2
- package/src/sent-rows.ts +1 -1
- package/src/silent-heartbeat.ts +4 -3
- package/src/supplied-text.ts +154 -0
- package/src/thinking-drops.ts +10 -16
- package/src/tool-args.ts +38 -4
- package/src/tool-image-ledger.ts +2 -1
- package/src/tool-presentation.ts +5 -4
- package/src/tool-result-guard.ts +26 -11
- package/src/tune-out/coordinator.ts +25 -27
- package/src/tune-out/tools.ts +4 -1
- package/src/types/agent.ts +63 -18
- package/src/types/events.ts +18 -8
- package/src/types/framework.ts +59 -0
- package/src/types/module.ts +28 -13
- package/src/types/trace.ts +36 -1
package/README.md
CHANGED
|
@@ -64,7 +64,7 @@ Chronicle's audit history.
|
|
|
64
64
|
model: 'claude-opus-4-20250514',
|
|
65
65
|
systemPrompt: '...',
|
|
66
66
|
strategy: new AutobiographicalStrategy({ recentWindowTokens: 30000 }),
|
|
67
|
-
allowedTools: ['search--query', '
|
|
67
|
+
allowedTools: ['search--query', 'toolsets--open', 'toolsets--act', 'toolsets--look', 'toolsets--close', 'files--archive'], // or 'all'
|
|
68
68
|
triggerSources: ['discord'], // or 'all'
|
|
69
69
|
maxTokens: 8192,
|
|
70
70
|
maxStreamTokens: 150_000, // input token budget before stream restart
|
|
@@ -73,17 +73,13 @@ Chronicle's audit history.
|
|
|
73
73
|
|
|
74
74
|
`allowedTools` is enforced at dispatch for registered agents. Omission or
|
|
75
75
|
`'all'` permits all tools; an explicit list matches exact names, including
|
|
76
|
-
`module--utility` names.
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
but none are permitted, `list` returns a failed `ToolResult` with the registered
|
|
84
|
-
and permitted counts and migration advice, and a list containing `utils`
|
|
85
|
-
logs one warning per Agent instance after registration.
|
|
86
|
-
An empty registry still returns a successful empty list.
|
|
76
|
+
`module--utility` names. A utility, like every tool of the host's built-in
|
|
77
|
+
toolset (see "The host's own toolsets" below), is called through
|
|
78
|
+
`toolsets--act`, and the dispatch check applies to the utility's own name: an
|
|
79
|
+
agent that should use one lists `module--utility` and the `toolsets--` tools.
|
|
80
|
+
An agent that can't use `toolsets--open` and `toolsets--act` gets no host
|
|
81
|
+
toolsets: every tool it may call stays in its tool list, except module
|
|
82
|
+
utilities, which are never in a tool list (it can still call one by name).
|
|
87
83
|
|
|
88
84
|
Trusted module calls are exempt from agent allowlists. Genuinely unidentified
|
|
89
85
|
public callers, including unknown legacy caller names, remain unrestricted.
|
|
@@ -137,6 +133,8 @@ return {
|
|
|
137
133
|
- **ApiModule** - WebSocket API event processing
|
|
138
134
|
- **WorkspaceModule** - Mountable filesystem abstraction with Chronicle tree state, filesystem watching, and materialization
|
|
139
135
|
|
|
136
|
+
DiscordModule and ApiModule store a sender's name that comes from outside the framework in a form marked with its source: a Discord author's username as `<name> (Discord)`, and the name on every `api:message` event, from an ApiServer caller or a host's own, as `<name> (API)`. An `api:message` whose `participant` isn't text, which its type doesn't allow, isn't stored, and starts no turn. Such a name is stored on one line: each run of line breaks (U+2028 and U+2029 included) and other control characters becomes one space. The generic name `user`, in any capitalization, is stored as given. Unless a host gives one of its own agents the name `user`, in any capitalization, or a name ending in ` (Discord)` or ` (API)`, such a message never carries an agent's name, so the agent's request never takes it as the agent's own turn. Where an agent's request shows senders' names, the agent sees the marked form, and the unmarked one in rows stored by earlier versions. A host that pushes an `api:message` in an agent's name records a user turn, not that agent's, with the same exception, and the ApiServer's message list returns each message's participant as stored, so a caller sees its own messages under `<name> (API)`. The ApiServer refuses a `participant` that isn't text, as it refuses content that isn't. The bot's own messages that a Discord history sync stores keep the name of the framework's first agent, as before. For a sender from outside, both modules also store the name as sent in `metadata.author` (with the author's Discord id), unless an `api:message` event's metadata already carries an `author` object, which is kept. History's author filter matches a row's `metadata.author` when it has one, and its participant otherwise. Code that tells senders apart should read a row's `metadata.author` (its `name`, and `id` for Discord) when it has one, and its participant otherwise, as the filter does: rows these modules stored in earlier versions have none, unless a host's `api:message` carried one.
|
|
137
|
+
|
|
140
138
|
### Event Processing
|
|
141
139
|
|
|
142
140
|
The framework runs an event loop over a `ProcessQueue`. Each event is processed by all modules, which return `EventResponse` objects. If any response requests inference, the framework compiles context and starts a stream.
|
|
@@ -349,7 +347,8 @@ three ways:
|
|
|
349
347
|
'auto'` or a non-empty list, a scope's non-empty `whitelist`, a
|
|
350
348
|
`toolLifecycle` `observe` or `inputs` block, a
|
|
351
349
|
`toolLifecycle.maxInputBytes` or an `autofetch` bound above its default,
|
|
352
|
-
and `toolHints: true
|
|
350
|
+
and `toolHints: true` (an MCPL server takes hints when the setting is left
|
|
351
|
+
out; a modern server ignores the default).
|
|
353
352
|
A setting
|
|
354
353
|
that only takes something away, or repeats a default, is already
|
|
355
354
|
satisfied, so it is accepted: `enabledFeatureSets` and the rest of
|
|
@@ -432,52 +431,155 @@ the `mcpl/coalescing` state (retry window 1 h); audit lines are
|
|
|
432
431
|
|
|
433
432
|
#### Tool presence and toolsets (RFC-014)
|
|
434
433
|
|
|
435
|
-
|
|
436
|
-
`
|
|
437
|
-
`toolHints` too.
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
434
|
+
Every MCPL server is offered `experimental.mcpl.toolHints` unless its
|
|
435
|
+
configuration sets `toolHints: false`, and its hints count only if it
|
|
436
|
+
advertised `toolHints` too. A server that doesn't advertise them lists every
|
|
437
|
+
tool as before. With `toolHints: false` on a server, the host advertises and
|
|
438
|
+
reads nothing new for it. The `toolsets` module below is registered at
|
|
439
|
+
creation in any case, since the host's own toolsets use it. A modern (MCP)
|
|
440
|
+
server never has hints. Only a module given to `create()` can hold the name
|
|
441
|
+
`toolsets`: MCPL servers that leave the setting out then have none, and a line
|
|
442
|
+
says so. A server `toolPrefix` of `toolsets` is refused.
|
|
443
|
+
|
|
444
|
+
With hints in effect, the server's static tools stay in the tool list as before, and its
|
|
441
445
|
dynamic tools (those in a toolset, or hinted `mcpl/presence: "dynamic"`) never
|
|
442
446
|
enter it, since every change to the list rebuilds the prompt cache. The
|
|
443
|
-
framework registers a `toolsets` module with four constant tools
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
447
|
+
framework registers a `toolsets` module with four constant tools at creation,
|
|
448
|
+
for every agent (the host's own toolsets need them too, below), so the tool
|
|
449
|
+
list doesn't change when a server starts to present:
|
|
450
|
+
|
|
451
|
+
- `toolsets--open {server?, toolset?, instance?, options?, full?}` opens a
|
|
452
|
+
server's toolset (`server` and `toolset`), or a named instance of one, and
|
|
453
|
+
answers with what the server shows on opening and the tools usable now;
|
|
454
|
+
`server` alone opens the server's tab and `toolset: "settings"` alone the
|
|
455
|
+
host's built-in toolset (below);
|
|
448
456
|
- `toolsets--act {server?, tool, instance?, args?}` calls a dynamic tool down
|
|
449
457
|
the same path as a direct call of it (the agent's `allowedTools`, the
|
|
450
458
|
server's tool policy, the state exchange, the reading of its result, RFC-007
|
|
451
|
-
observers,
|
|
459
|
+
observers and RFC-008 class rules, which see the server's tool and its class),
|
|
460
|
+
with only the instance added, in
|
|
452
461
|
`_meta["mcpl/instance"]`. It first checks `args` against the definition in
|
|
453
462
|
force for that instance; that check is bounded, and leaves `pattern` and
|
|
454
463
|
anything nested or branching too far to the server, which checks every
|
|
455
464
|
call itself;
|
|
456
465
|
- `toolsets--look {server?, toolset?, instance?, tool?}` restates what is open
|
|
457
|
-
and what can be opened, or one tool's
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
466
|
+
and what can be opened, or one tool's signature, description, class and
|
|
467
|
+
input schema. It
|
|
468
|
+
re-reads each server that presents toolsets first, and says so when it
|
|
469
|
+
couldn't; what that changed
|
|
470
|
+
is in the answer when look restates everything, and otherwise told as a
|
|
471
|
+
notice;
|
|
472
|
+
- `toolsets--close {server?, toolset?, instance?, disconnect?}` closes it;
|
|
473
|
+
`server` alone moves the server to a tab or hides its open tab, and with
|
|
474
|
+
`disconnect: true` makes it a closed tab (below).
|
|
475
|
+
|
|
476
|
+
### The host's own toolsets
|
|
477
|
+
|
|
478
|
+
Beside the toolsets servers declare, the host presents some tools out of the
|
|
479
|
+
tool list itself (RFC-014 §8.5 host-made toolsets, §8.1 surface presentation;
|
|
480
|
+
`src/host-presentation.ts`). It's host presentation, not an MCPL wire change,
|
|
481
|
+
and works for every server, with or without RFC-014. The `toolsets--` tools
|
|
482
|
+
are registered for every agent, MCPL or none, unless a module holds the name.
|
|
483
|
+
|
|
484
|
+
- **The built-in toolset, `settings`.** The host tools an agent reaches for
|
|
485
|
+
rarely: `agent_settings`, `wake_add_rule`, `wake_remove_rule`,
|
|
486
|
+
`gate_status`, `event_tags`, `set_tool_visibility`, `set_tool_description`,
|
|
487
|
+
`heartbeat--heartbeat_status`, `heartbeat--heartbeat_trigger`,
|
|
488
|
+
`workspace--status`, every module utility (`Module.getUtilities`), and a
|
|
489
|
+
module's tools it places there (`Module.toolPlacement` answering
|
|
490
|
+
`'builtin'`). None is in the tool list. `toolsets--open {toolset:"settings"}`
|
|
491
|
+
announces them, `toolsets--act {tool, args}` calls one while it's open, under
|
|
492
|
+
its own name and permissions, its `args` checked against the definition first, `toolsets--close {toolset:"settings"}` closes
|
|
493
|
+
it, and `toolsets--look {toolset:"settings"}` lists them either way. A
|
|
494
|
+
server's own toolset named `settings` is reached with its `server` named.
|
|
495
|
+
- **Server tabs.** Each MCPL server is presented to each agent one of three
|
|
496
|
+
ways: `full` (its tools in the tool list, the default), a `tab` (connected,
|
|
497
|
+
its events still arriving, none of its tools in the tool list:
|
|
498
|
+
`toolsets--open {server}` announces them and lets `toolsets--act` call them,
|
|
499
|
+
named in full or bare with `server`; `toolsets--close {server}` hides them
|
|
500
|
+
again), or a `closed-tab` (disconnected until `toolsets--open {server}`
|
|
501
|
+
connects it again, with its configuration and credentials, an
|
|
502
|
+
`accessProvider` asked afresh). `toolsets--close {server}` moves a full
|
|
503
|
+
server to a tab, `toolsets--close {server, disconnect: true}` disconnects it,
|
|
504
|
+
and `toolsets--open {server, full: true}` puts it back in the tool list. A
|
|
505
|
+
server's configured `presentation` (`'full' | 'tab' | 'closed-tab'`) is where
|
|
506
|
+
each agent starts; what an agent chose is kept across restarts. A
|
|
507
|
+
connection is the host's, so a closed tab is disconnected for every agent of
|
|
508
|
+
the host, and `disconnect` is refused while another resident agent has the
|
|
509
|
+
server in its tool list or its tab open, or can't use the meta-tools (it
|
|
510
|
+
has every server in its list, and couldn't open a closed tab again). A
|
|
511
|
+
disconnect that fails changes nothing. An operator's own connect of a
|
|
512
|
+
closed tab ends it, and an operator's disconnect forgets the server's tab.
|
|
513
|
+
- **Hidden tools.** A tool an agent hides with `set_tool_visibility` leaves its
|
|
514
|
+
tool list for the built-in toolset, or its server's tab, and comes back when
|
|
515
|
+
shown. The `toolsets--` tools can't be hidden.
|
|
516
|
+
|
|
517
|
+
The tool list changes only when a server moves between full and a tab or a
|
|
518
|
+
tool is hidden or shown, one prompt-cache write each; opening, acting in and
|
|
519
|
+
closing a host toolset never change it. Which host toolsets an agent has open,
|
|
520
|
+
and each server's presentation where the agent changed it, are kept in
|
|
521
|
+
`<storePath>/config/toolsets.json`. An open host toolset whose announcement has
|
|
522
|
+
left the context is reminded of, as a server's toolset is (§8.3). A call of a
|
|
523
|
+
tool the agent may call by name still works by name; the tool list just
|
|
524
|
+
doesn't carry it. `framework.presentedTools(agentName, tools, canUseMeta?)`
|
|
525
|
+
applies this presentation to a tool list, so a host can tell a stream that
|
|
526
|
+
isn't registered yet (a fork, before its run starts) what its first request
|
|
527
|
+
will carry.
|
|
528
|
+
|
|
529
|
+
`server` can be left out when only one server has the name. By our reading of
|
|
530
|
+
the code, a server with no toolsets stops presenting them once its latest `tools/list` has no dynamic
|
|
531
|
+
tool, so until the rebuild, act takes its last one only with `server` named.
|
|
532
|
+
Hint changes apply
|
|
461
533
|
as their message is read, in `rev` order, whatever becomes of the message (a
|
|
462
|
-
refused push, a result that came after its timeout). A
|
|
463
|
-
`tools/list`
|
|
464
|
-
|
|
534
|
+
refused push, a result that came after its timeout). A move between static and
|
|
535
|
+
dynamic takes effect when the server's `tools/list` states it, and the tool
|
|
536
|
+
list follows at its next rebuild that lists the server, whichever refresh
|
|
537
|
+
brings it (a move is no reason to rebuild the tool list early). Until then the
|
|
538
|
+
tool is called at either place, where the tool list shows it or where the
|
|
539
|
+
server's latest list put it (RFC-014 §4.2 keeps it working where it is until
|
|
540
|
+
the move applies), and
|
|
541
|
+
once that rebuild has published the list, a notice says where it went. A list
|
|
542
|
+
read while a rebuild is under way can undo a move that rebuild then publishes;
|
|
543
|
+
neither is told, and the next rebuild puts the tool back.
|
|
544
|
+
A skipped rev re-reads `tools/list` and then `toolsets/list`, which the host
|
|
545
|
+
also reads after every (re)connect, adopting what the server kept open and
|
|
546
|
+
never re-opening anything.
|
|
465
547
|
What changed is told where it happened: after a call's own result, after the
|
|
466
548
|
push that explains it, or as a notice (`kind: 'mcpl-toolsets'`, which wakes
|
|
467
549
|
nothing) for a standalone `tools/hints`, a late result, an adoption, a
|
|
468
|
-
recovery, or a call whose result
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
550
|
+
recovery, or a call whose result may not reach the agent (a script's, a
|
|
551
|
+
module's or a host's, or one the framework makes itself); an open, close or
|
|
552
|
+
look made that way also shows its caller the change, unless the change has
|
|
553
|
+
already gone as a notice (below). A dynamic tool's change also goes as a notice
|
|
554
|
+
when it wouldn't fit whole within its result's inline cap, or when its call
|
|
555
|
+
fails after the result was read. A call's change also goes as a notice, ahead of its
|
|
556
|
+
result, when a later change goes to the agent before the call's caller has
|
|
557
|
+
taken it, so changes are told in the order they were read (the agent's window
|
|
558
|
+
can still show a call's result, a push's event, or a change its taker couldn't
|
|
559
|
+
show after a change read later). The model's own call's change counts as told
|
|
560
|
+
once its result is handed back: if the turn is stopped while the call is out
|
|
561
|
+
(or, by our reading of the code, the agent is gone), the result is dropped and the change with it, and
|
|
562
|
+
`toolsets--look` shows the state it left. Notices and reminders
|
|
563
|
+
need the server's `pushEvents` grant, like any delivery; without it, a change
|
|
564
|
+
that would go as a notice is dropped, and `toolsets--look` shows the state. A new tool's first sentence is told with its
|
|
565
|
+
definition until text describing it has reached the model, except that, by our reading of the code, a puppet's
|
|
566
|
+
open, close or look whose result the store refuses has already counted it. Suggestions are shown, never acted on. Each
|
|
567
|
+
`ended` id is told once while the
|
|
568
|
+
host runs (told ids are kept in memory), short of rare interleavings, such as a
|
|
569
|
+
`toolsets--look` overlapping other reads of the same server, that can tell one
|
|
570
|
+
twice. When an
|
|
472
571
|
open toolset's announcements have left an agent's context (compressed or out
|
|
473
572
|
of the window), the module's `gatherContext` restates what is open, as a
|
|
474
573
|
stored `afterUser` injection (namespace `mcpl-toolsets`), at that agent's next
|
|
475
574
|
start.
|
|
476
575
|
|
|
477
576
|
A dynamic tool called by its prefixed name is refused, pointing at
|
|
478
|
-
`toolsets--act
|
|
479
|
-
|
|
480
|
-
|
|
577
|
+
`toolsets--act`, unless the tool list or the server's latest list shows it as
|
|
578
|
+
static (a move waiting for its rebuild). Calls to an undeclared toolset's
|
|
579
|
+
tools are refused while the host has that group closed (RFC-014 §5.4), except
|
|
580
|
+
by a tool's listed name until the rebuild that publishes its move into the
|
|
581
|
+
group. Projection and surface mode are not implemented: a `surface` server's
|
|
582
|
+
static tools are listed like any server's.
|
|
481
583
|
|
|
482
584
|
#### Per-channel conversation routing (deprecated)
|
|
483
585
|
|
|
@@ -501,9 +603,11 @@ framework.abortInference('assistant', 'user requested stop');
|
|
|
501
603
|
|
|
502
604
|
The non-streaming path uses `AbortSignal` forwarded to `membrane.stream()`, which returns an `AbortedResponse` with partial content. The streaming path cancels the `YieldingStream` directly.
|
|
503
605
|
|
|
504
|
-
A turn whose stream is cancelled this way, or by `agent.cancelStream()`, ends as a stop, whether the stream reports the cancel as `aborted`, as an `error`, or by just closing: one `inference:aborted` carrying the caller's reason (`user` when none was given), a `[turn-interrupted]` note in the agent's context, and never `inference:exhausted`, which is for failed inferences. A stream that membrane aborts on its own, at a deadline or on an error (reason `timeout` or `error`), is a failed inference. `stop()` and an operator's quiesce abandon end a turn as a stop too, with their own reasons, `shutdown` and `quiesce_abandoned`, and write no note. A stopped stream still writes its inference-log row, with `success: false`.
|
|
606
|
+
A turn whose stream is cancelled this way, or by `agent.cancelStream()`, ends as a stop, whether the stream reports the cancel as `aborted`, as an `error`, or by just closing: one `inference:aborted` carrying the caller's reason (`user` when none was given), a `[turn-interrupted]` note in the agent's context, and never `inference:exhausted`, which is for failed inferences. A stream that membrane aborts on its own, at a deadline or on an error (reason `timeout` or `error`), is a failed inference. `stop()` and an operator's quiesce abandon end a turn as a stop too, with their own reasons, `shutdown` and `quiesce_abandoned`, and write no note, except the `[speech-not-posted]` notice when the turn's rounds left speech unposted (XML tool mode, or a membrane without `roundContent`; see below). A stopped stream still writes its inference-log row, with `success: false`.
|
|
607
|
+
|
|
608
|
+
A caller's stop and an operator's quiesce abandon also reach a turn that has no live stream: one running its modules' `gatherContext`, its MCPL hooks or its compile, one waiting to retry a failed inference or compile (`abortInference()` and an operator's abandon end the wait, and a stop through `Agent.cancelStream()` waits for it to run out), and one whose tool-result guard is waiting to retry after a refusal, which holds only the round's finished stream. The turn ends at its next check, before it sends anything more, as a stop on a live stream ends it, and a turn whose compile fails after the stop ends at the failure, before a provider hold, the error policy's retry or `inference:exhausted`. A caller's stop leaves the note saying the turn was stopped before it sent anything or before it finished, and an operator's abandon leaves none, except the `[speech-not-posted]` notice when the turn's rounds left speech unposted. `abortInference()` returns `true` for such a turn. In the guard's wait, `stop()` ends the turn as a stop with reason `shutdown`, and an operator's abandon ends it as the abandon, even when a caller's stop came first; with both, it ends as `stop()`'s. `stop()` drops a turn in its hooks, its compile or a wait to retry before it sends anything, as before, and drops one whose compile fails while it runs, once a caller's stop has reached it, rather than ending it as that stop. While the failure of a turn's stream is reported (`inference:failed`), the agent no longer holds that stream, so `abortInference()` from a listener reports `false`. A failure to build a turn's request is reported while the turn's check is still ahead, so there `abortInference()` reports `true`, and the turn ends at that check. A caller's stop made where no check of a turn is ahead stops nothing, and doesn't end the agent's next turn: while the agent is idle, while a turn finishes its last delivery, and while a non-streaming turn's tool results wait to start the turn's next call. A turn whose continuation (a budget restart's, or a tool-result guard's retry) waits to start, or whose failed call a provider-capacity hold or a provider's stated wait keeps for its retry, is ended by `abortInference()`, by an operator's quiesce abandon and by `stop()`: the continuation or retry is dropped, and the turn ends with the caller's reason, `quiesce_abandoned` or `shutdown`. After `abortInference()` or an abandon, wakes that arrived meanwhile still run (after the abandon, once the host resumes): those a hold keeps beside the retry, and those the scheduler merged into the retry's or the continuation's start before that start began, which the stop or the abandon puts back in the queue. A stop through `Agent.cancelStream()` stops nothing there.
|
|
505
609
|
|
|
506
|
-
|
|
610
|
+
In XML tool mode, or with a membrane that gives a tool round no `roundContent`, such a round's speech reaches a channel only when its stream completes. When the stream ends any other way (a failure, a stop, a tool that ends the turn, an error policy's retry, a context-budget or tool-result-guard restart, a quiesce abandon or `stop()`), the rounds' words are already in the agent's context, and a `[speech-not-posted]` notice tells the agent that nothing it wrote before its tool calls in those rounds was posted, so it can send what should go out again. It's written once for those rounds: where the turn ends, or before a retry's or a restart's request is sent. A turn its own `skip_reply` ends, a silent turn, a round still waiting on its tools when its stream ends (which never reaches the context) and the rounds of a stream that completes get none. In XML tool mode with thinking on, a round whose text was only thinking gets the notice too, since the framework has only the round's raw text there. A failed turn's `[inference-failed]` note says that its earlier rounds ran when any round reached the context with its results, and that a round's tool calls were started and may have taken effect when any of its streams ended before that round's results came back; a caller's stop says the latter in its `[turn-interrupted]` note too. A turn that fails, or that a caller stops, writes no `[delivered]` receipt, so when its rounds' plain speech was delivered live (native tool mode, in locus or hybrid routing), its `[inference-failed]` note, or the stop's `[turn-interrupted]` note, says that speech was handed on for delivery as written and that no `[delivered]` line was written for it. When some of its speech was still being routed as the turn ended, the note also says it may yet be posted and to check the channel before sending it again. A delivery that finished undelivered gets neither: a channel delivery's `[discord-send-failed]` note, or a refused `>>>` envelope's bounce, already says what happened. A quiesce abandon and `stop()` write neither note.
|
|
507
611
|
|
|
508
612
|
## API Server
|
|
509
613
|
|
package/dist/src/agent.d.ts
CHANGED
|
@@ -67,12 +67,17 @@ export interface StartStreamResult {
|
|
|
67
67
|
/** The compile's `thinkingRecordedAfter`, when it gave one: a reply stored at or below it predates the branch's
|
|
68
68
|
* thinking-binding record, so the provider may drop its thinking with no strip having missed. */
|
|
69
69
|
thinkingRecordedAfter?: number;
|
|
70
|
+
/** The key (`branchKey`) of the branch the compile read, when its provenance names one. */
|
|
71
|
+
thinkingBranch?: string;
|
|
70
72
|
/** Tells the context manager what the stream's later rounds carried after the compiled messages, every round so
|
|
71
73
|
* far in sent order, with this request's head (context-manager's `noteRequestSent`). Present only where the
|
|
72
74
|
* model binds its thinking and the context manager keeps a record it can be told of. */
|
|
73
75
|
noteRequestSent?: (rows: readonly SentRow[]) => boolean;
|
|
76
|
+
/** The stored bodies the request's compile carried, by each body's first message id (its provenance's raw bodies).
|
|
77
|
+
* Absent when the compile reports no provenance. */
|
|
78
|
+
carriedBodies?: ReadonlySet<MessageId>;
|
|
74
79
|
}
|
|
75
|
-
import type { ContextManager, TokenBudget, ContextInjection, CompileResult, MessageId, MessageMetadata, RequestIdentity } from '@animalabs/context-manager';
|
|
80
|
+
import type { ContextManager, TokenBudget, ContextInjection, CompileResult, MessageId, MessageMetadata, RequestIdentity, ThinkingStrip } from '@animalabs/context-manager';
|
|
76
81
|
import type { AgentConfig, AgentState, SameRoundThinkTextPolicy, SameRoundThinkTextPolicySource, ToolCallId, ToolCall, ToolResult, ToolDefinition, AgentInfo, InferenceResult, InferenceOptions, AgentRuntimeSettingsPatch, AgentRuntimeSettingsSnapshot, AgentRuntimeSettingsOverrides } from './types/index.js';
|
|
77
82
|
/**
|
|
78
83
|
* Refuse an agent config whose `promptCaching`, `toolResultGuard`,
|
|
@@ -99,6 +104,10 @@ export declare const DEFAULT_AUTO_CONTINUE_MAX = 3;
|
|
|
99
104
|
export declare function resolveAutoContinue(config: AgentConfig): {
|
|
100
105
|
maxConsecutive: number;
|
|
101
106
|
} | undefined;
|
|
107
|
+
export declare function branchKey(branch: {
|
|
108
|
+
readonly id: string;
|
|
109
|
+
readonly created: number;
|
|
110
|
+
}): string;
|
|
102
111
|
/**
|
|
103
112
|
* An agent wraps a context manager and manages inference state.
|
|
104
113
|
*/
|
|
@@ -544,6 +553,14 @@ export declare class Agent {
|
|
|
544
553
|
* reaches here).
|
|
545
554
|
*/
|
|
546
555
|
private applyCompileWatermark;
|
|
556
|
+
/**
|
|
557
|
+
* The branch now (`branchKey`) and its head, as `pendingWatermark` reads it: a message stored on that branch later
|
|
558
|
+
* has a larger sequence. Sequences are numbered per branch, so one compares with another only on the same branch.
|
|
559
|
+
*/
|
|
560
|
+
branchHead(): {
|
|
561
|
+
branch: string;
|
|
562
|
+
sequence: number;
|
|
563
|
+
} | undefined;
|
|
547
564
|
/** The watermark a successful compile will establish (taken before, applied after). */
|
|
548
565
|
private pendingWatermark;
|
|
549
566
|
/** A committing compile, as for a request that is sent: the context
|
|
@@ -588,6 +605,14 @@ export declare class Agent {
|
|
|
588
605
|
* throws is logged, and the start goes on.
|
|
589
606
|
*/
|
|
590
607
|
onCompiledToSend?: (messages: readonly unknown[]) => void;
|
|
608
|
+
/**
|
|
609
|
+
* A host's hook, called with each committing compile's `thinkingStrip` (never a dry run's) and the key of the
|
|
610
|
+
* branch it read (`branchKey`), as the compile returns, whether or not its request is then sent, since the
|
|
611
|
+
* context manager's binding record takes the strip either way. One that throws is logged. The framework sets it
|
|
612
|
+
* at the agent's first stream unless a host has set one, so a host's own observer stands in for the framework's,
|
|
613
|
+
* whose `[reasoning]` line for the agent then isn't told.
|
|
614
|
+
*/
|
|
615
|
+
onThinkingStrip?: (strip: ThinkingStrip, branch: string) => void;
|
|
591
616
|
/**
|
|
592
617
|
* The newest content of `namespace` among this agent's rows stored since
|
|
593
618
|
* its last compile built to send (unsentSince), and whether every part of
|
|
@@ -799,7 +824,9 @@ export declare class Agent {
|
|
|
799
824
|
* one is still ahead; otherwise the next start drops it. `reason` is
|
|
800
825
|
* provenance for the framework's inference:aborted trace and marker
|
|
801
826
|
* metadata (e.g. 'zombie_reclaim', 'subagent_cancel'); it never reaches
|
|
802
|
-
* the provider.
|
|
827
|
+
* the provider. When the stream's cancel() throws, the throw goes on to
|
|
828
|
+
* the caller, and the agent still holds the stream, its cancel record as
|
|
829
|
+
* it was before the call.
|
|
803
830
|
*/
|
|
804
831
|
cancelStream(reason?: string): void;
|
|
805
832
|
/** Collect (and clear) the cancelStream() made while this agent held no
|
package/dist/src/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/src/agent.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { NOTICE_TAG } from './notice-tags.js';
|
|
2
|
+
import { heartbeatToolAlias } from './heartbeat/heartbeat.js';
|
|
1
3
|
import { isAbortedResponse } from '@animalabs/membrane';
|
|
2
4
|
import { ToolResultGuard } from './tool-result-guard.js';
|
|
3
5
|
import { withoutTokenEstimates } from './thinking-token-stamp.js';
|
|
@@ -109,8 +111,7 @@ export function resolveAutoContinue(config) {
|
|
|
109
111
|
}
|
|
110
112
|
return { maxConsecutive: max };
|
|
111
113
|
}
|
|
112
|
-
|
|
113
|
-
function branchKey(branch) {
|
|
114
|
+
export function branchKey(branch) {
|
|
114
115
|
return `${branch.id}\u0000${branch.created}`;
|
|
115
116
|
}
|
|
116
117
|
/**
|
|
@@ -334,7 +335,14 @@ export class Agent {
|
|
|
334
335
|
if (this.allowedTools === 'all') {
|
|
335
336
|
return true;
|
|
336
337
|
}
|
|
337
|
-
|
|
338
|
+
if (this.allowedTools.includes(toolName))
|
|
339
|
+
return true;
|
|
340
|
+
// A heartbeat tool is one tool under either prefix: the framework's
|
|
341
|
+
// `heartbeat--x` and heartbeat-mcpl's `mcpl--heartbeat--x`, which an
|
|
342
|
+
// allowedTools written for the server names. Only one of them is ever
|
|
343
|
+
// offered, since the framework refuses the server beside its heartbeat.
|
|
344
|
+
const alias = heartbeatToolAlias(toolName);
|
|
345
|
+
return alias !== undefined && this.allowedTools.includes(alias);
|
|
338
346
|
}
|
|
339
347
|
/**
|
|
340
348
|
* Check if a source can trigger inference for this agent.
|
|
@@ -981,8 +989,9 @@ export class Agent {
|
|
|
981
989
|
// Tolerates partial context-manager doubles (tests build Agents over
|
|
982
990
|
// stubs). Without a watermark, a reader that looks for one takes its own
|
|
983
991
|
// side: the coalescer counts the message as read, and the framework's
|
|
984
|
-
// unreadNoticesForPrimary counts it as unread. A
|
|
985
|
-
// reads the answered watermark instead
|
|
992
|
+
// unreadNoticesForPrimary counts it as unread. A wake for a deferred
|
|
993
|
+
// write or a stored message reads the answered watermark instead
|
|
994
|
+
// (deferredWriteDone, storedMessageDone).
|
|
986
995
|
this.consumedWatermark = this.pendingWatermark();
|
|
987
996
|
this.watermarkMarks++;
|
|
988
997
|
this.shownWatermark = this.consumedWatermark;
|
|
@@ -1025,6 +1034,22 @@ export class Agent {
|
|
|
1025
1034
|
this.consumedWatermark = watermark;
|
|
1026
1035
|
this.watermarkMarks++;
|
|
1027
1036
|
}
|
|
1037
|
+
/**
|
|
1038
|
+
* The branch now (`branchKey`) and its head, as `pendingWatermark` reads it: a message stored on that branch later
|
|
1039
|
+
* has a larger sequence. Sequences are numbered per branch, so one compares with another only on the same branch.
|
|
1040
|
+
*/
|
|
1041
|
+
branchHead() {
|
|
1042
|
+
const head = this.pendingWatermark();
|
|
1043
|
+
const cm = this.contextManager;
|
|
1044
|
+
if (!head || typeof cm.currentBranchRef !== 'function')
|
|
1045
|
+
return undefined;
|
|
1046
|
+
try {
|
|
1047
|
+
return { branch: branchKey(cm.currentBranchRef()), sequence: head.sequence };
|
|
1048
|
+
}
|
|
1049
|
+
catch {
|
|
1050
|
+
return undefined;
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1028
1053
|
/** The watermark a successful compile will establish (taken before, applied after). */
|
|
1029
1054
|
pendingWatermark() {
|
|
1030
1055
|
const cm = this.contextManager;
|
|
@@ -1108,6 +1133,14 @@ export class Agent {
|
|
|
1108
1133
|
* throws is logged, and the start goes on.
|
|
1109
1134
|
*/
|
|
1110
1135
|
onCompiledToSend;
|
|
1136
|
+
/**
|
|
1137
|
+
* A host's hook, called with each committing compile's `thinkingStrip` (never a dry run's) and the key of the
|
|
1138
|
+
* branch it read (`branchKey`), as the compile returns, whether or not its request is then sent, since the
|
|
1139
|
+
* context manager's binding record takes the strip either way. One that throws is logged. The framework sets it
|
|
1140
|
+
* at the agent's first stream unless a host has set one, so a host's own observer stands in for the framework's,
|
|
1141
|
+
* whose `[reasoning]` line for the agent then isn't told.
|
|
1142
|
+
*/
|
|
1143
|
+
onThinkingStrip;
|
|
1111
1144
|
/**
|
|
1112
1145
|
* The newest content of `namespace` among this agent's rows stored since
|
|
1113
1146
|
* its last compile built to send (unsentSince), and whether every part of
|
|
@@ -1319,6 +1352,14 @@ export class Agent {
|
|
|
1319
1352
|
}
|
|
1320
1353
|
if (watermark)
|
|
1321
1354
|
this.applyCompileWatermark(watermark, marksBefore);
|
|
1355
|
+
if (!opts?.dryRun && result.thinkingStrip && this.onThinkingStrip) {
|
|
1356
|
+
try {
|
|
1357
|
+
this.onThinkingStrip(result.thinkingStrip, result.provenance ? branchKey(result.provenance.branch) : '');
|
|
1358
|
+
}
|
|
1359
|
+
catch (err) {
|
|
1360
|
+
console.error(`[agent] ${this.name}: the host's thinking-strip observer failed:`, err);
|
|
1361
|
+
}
|
|
1362
|
+
}
|
|
1322
1363
|
return result;
|
|
1323
1364
|
}
|
|
1324
1365
|
// ==========================================================================
|
|
@@ -1805,10 +1846,10 @@ export class Agent {
|
|
|
1805
1846
|
// ran. The stream driver collects it on that stream's terminal event, or
|
|
1806
1847
|
// at the loop's end when the iterator closed without one, while the
|
|
1807
1848
|
// stream still owns the agent. This clear is for the records no driver
|
|
1808
|
-
// collects: a
|
|
1809
|
-
//
|
|
1810
|
-
//
|
|
1811
|
-
//
|
|
1849
|
+
// collects: a cancel of a stream no driver iterates; one whose stream's
|
|
1850
|
+
// terminal came after another stream took the agent; or a cancel after
|
|
1851
|
+
// the stream's complete event. A fresh stream must not inherit one and
|
|
1852
|
+
// read its own later error as a deliberate stop.
|
|
1812
1853
|
this._pendingCancel = undefined;
|
|
1813
1854
|
this._inferenceStartedAt = Date.now();
|
|
1814
1855
|
this.lastStreamInputTokens = 0;
|
|
@@ -1879,7 +1920,11 @@ export class Agent {
|
|
|
1879
1920
|
// Read against the messages the stream sends, which membrane's report indexes (RoundReport's coordinates).
|
|
1880
1921
|
placeDrops: (entries) => placeThinkingDrops(entries, request.messages, compiled),
|
|
1881
1922
|
...this.requestNotes(binding, compiled),
|
|
1923
|
+
...(compiled.provenance
|
|
1924
|
+
? { carriedBodies: new Set(compiled.provenance.messages.flatMap((m) => m.kind === 'raw' ? m.bodies.map((b) => b.messageId) : [])) }
|
|
1925
|
+
: {}),
|
|
1882
1926
|
...(compiled.recordedAfter !== undefined ? { thinkingRecordedAfter: compiled.recordedAfter } : {}),
|
|
1927
|
+
...(compiled.provenance ? { thinkingBranch: branchKey(compiled.provenance.branch) } : {}),
|
|
1883
1928
|
...(kvEnabled
|
|
1884
1929
|
? {
|
|
1885
1930
|
takeKvSubmission: () => kvQueue.shift(),
|
|
@@ -1983,12 +2028,25 @@ export class Agent {
|
|
|
1983
2028
|
* one is still ahead; otherwise the next start drops it. `reason` is
|
|
1984
2029
|
* provenance for the framework's inference:aborted trace and marker
|
|
1985
2030
|
* metadata (e.g. 'zombie_reclaim', 'subagent_cancel'); it never reaches
|
|
1986
|
-
* the provider.
|
|
2031
|
+
* the provider. When the stream's cancel() throws, the throw goes on to
|
|
2032
|
+
* the caller, and the agent still holds the stream, its cancel record as
|
|
2033
|
+
* it was before the call.
|
|
1987
2034
|
*/
|
|
1988
2035
|
cancelStream(reason) {
|
|
1989
2036
|
if ('stream' in this._state && this._state.stream) {
|
|
2037
|
+
// A cancel that throws leaves the stream going and the agent holding
|
|
2038
|
+
// it, so this call's record is taken back, leaving any earlier one: a
|
|
2039
|
+
// later end of that stream, an `error` the provider reports included,
|
|
2040
|
+
// is not read as this stop's.
|
|
2041
|
+
const earlier = this._pendingCancel;
|
|
1990
2042
|
this._pendingCancel = { reason };
|
|
1991
|
-
|
|
2043
|
+
try {
|
|
2044
|
+
this._state.stream.cancel();
|
|
2045
|
+
}
|
|
2046
|
+
catch (error) {
|
|
2047
|
+
this._pendingCancel = earlier;
|
|
2048
|
+
throw error;
|
|
2049
|
+
}
|
|
1992
2050
|
}
|
|
1993
2051
|
else {
|
|
1994
2052
|
this._stopWithoutStream = { reason };
|
|
@@ -2052,7 +2110,9 @@ export class Agent {
|
|
|
2052
2110
|
if (systemInjections.length === 0) {
|
|
2053
2111
|
return this.systemPrompt;
|
|
2054
2112
|
}
|
|
2055
|
-
const injectedText = systemInjections.map((block) => block.type === 'text'
|
|
2113
|
+
const injectedText = systemInjections.map((block) => block.type === 'text'
|
|
2114
|
+
? block.text
|
|
2115
|
+
: `[${NOTICE_TAG.blockNotShown}: ${/^[aeiou]/i.test(block.type) ? 'an' : 'a'} ${block.type} block; the system prompt carries text only.]`);
|
|
2056
2116
|
return this.systemPrompt + '\n' + injectedText.join('\n');
|
|
2057
2117
|
}
|
|
2058
2118
|
abortInference(reason) {
|
|
@@ -2142,6 +2202,7 @@ export class Agent {
|
|
|
2142
2202
|
id: block.id,
|
|
2143
2203
|
name: block.name,
|
|
2144
2204
|
input: block.input,
|
|
2205
|
+
...(block.unparseableInput !== undefined ? { unparseableInput: block.unparseableInput } : {}),
|
|
2145
2206
|
});
|
|
2146
2207
|
}
|
|
2147
2208
|
else if (block.type === 'text') {
|