network-ai 4.15.3 → 5.0.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/INTEGRATION_GUIDE.md +11 -4
- package/QUICKSTART.md +31 -4
- package/README.md +37 -15
- package/bin/dashboard.ts +146 -0
- package/bin/mcp-server.ts +3 -2
- package/dist/adapters/adapter-registry.d.ts +33 -1
- package/dist/adapters/adapter-registry.d.ts.map +1 -1
- package/dist/adapters/adapter-registry.js +49 -0
- package/dist/adapters/adapter-registry.js.map +1 -1
- package/dist/adapters/anthropic-computer-use-adapter.d.ts +132 -0
- package/dist/adapters/anthropic-computer-use-adapter.d.ts.map +1 -0
- package/dist/adapters/anthropic-computer-use-adapter.js +180 -0
- package/dist/adapters/anthropic-computer-use-adapter.js.map +1 -0
- package/dist/adapters/browser-agent-adapter.d.ts +121 -0
- package/dist/adapters/browser-agent-adapter.d.ts.map +1 -0
- package/dist/adapters/browser-agent-adapter.js +219 -0
- package/dist/adapters/browser-agent-adapter.js.map +1 -0
- package/dist/adapters/copilot-adapter.d.ts +59 -0
- package/dist/adapters/copilot-adapter.d.ts.map +1 -0
- package/dist/adapters/copilot-adapter.js +132 -0
- package/dist/adapters/copilot-adapter.js.map +1 -0
- package/dist/adapters/index.d.ts +15 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +22 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/langgraph-adapter.d.ts +70 -0
- package/dist/adapters/langgraph-adapter.d.ts.map +1 -0
- package/dist/adapters/langgraph-adapter.js +119 -0
- package/dist/adapters/langgraph-adapter.js.map +1 -0
- package/dist/adapters/openai-agents-adapter.d.ts +100 -0
- package/dist/adapters/openai-agents-adapter.d.ts.map +1 -0
- package/dist/adapters/openai-agents-adapter.js +118 -0
- package/dist/adapters/openai-agents-adapter.js.map +1 -0
- package/dist/adapters/pydantic-ai-adapter.d.ts +104 -0
- package/dist/adapters/pydantic-ai-adapter.d.ts.map +1 -0
- package/dist/adapters/pydantic-ai-adapter.js +163 -0
- package/dist/adapters/pydantic-ai-adapter.js.map +1 -0
- package/dist/adapters/vertex-ai-adapter.d.ts +122 -0
- package/dist/adapters/vertex-ai-adapter.d.ts.map +1 -0
- package/dist/adapters/vertex-ai-adapter.js +166 -0
- package/dist/adapters/vertex-ai-adapter.js.map +1 -0
- package/dist/bin/dashboard.d.ts +11 -0
- package/dist/bin/dashboard.d.ts.map +1 -0
- package/dist/bin/dashboard.js +135 -0
- package/dist/bin/dashboard.js.map +1 -0
- package/dist/bin/mcp-server.js +3 -2
- package/dist/bin/mcp-server.js.map +1 -1
- package/dist/index.d.ts +103 -559
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +295 -1074
- package/dist/index.js.map +1 -1
- package/dist/lib/adapter-test-harness.d.ts +88 -0
- package/dist/lib/adapter-test-harness.d.ts.map +1 -0
- package/dist/lib/adapter-test-harness.js +118 -0
- package/dist/lib/adapter-test-harness.js.map +1 -0
- package/dist/lib/agent-conversation.d.ts +115 -0
- package/dist/lib/agent-conversation.d.ts.map +1 -0
- package/dist/lib/agent-conversation.js +155 -0
- package/dist/lib/agent-conversation.js.map +1 -0
- package/dist/lib/agent-debate.d.ts +115 -0
- package/dist/lib/agent-debate.d.ts.map +1 -0
- package/dist/lib/agent-debate.js +146 -0
- package/dist/lib/agent-debate.js.map +1 -0
- package/dist/lib/agent-memory.d.ts +157 -0
- package/dist/lib/agent-memory.d.ts.map +1 -0
- package/dist/lib/agent-memory.js +336 -0
- package/dist/lib/agent-memory.js.map +1 -0
- package/dist/lib/agent-vcr.d.ts +133 -0
- package/dist/lib/agent-vcr.d.ts.map +1 -0
- package/dist/lib/agent-vcr.js +218 -0
- package/dist/lib/agent-vcr.js.map +1 -0
- package/dist/lib/anomaly-detector.d.ts +112 -0
- package/dist/lib/anomaly-detector.d.ts.map +1 -0
- package/dist/lib/anomaly-detector.js +178 -0
- package/dist/lib/anomaly-detector.js.map +1 -0
- package/dist/lib/approval-inbox.d.ts +147 -0
- package/dist/lib/approval-inbox.d.ts.map +1 -0
- package/dist/lib/approval-inbox.js +385 -0
- package/dist/lib/approval-inbox.js.map +1 -0
- package/dist/lib/auth-guardian.d.ts +170 -0
- package/dist/lib/auth-guardian.d.ts.map +1 -0
- package/dist/lib/auth-guardian.js +604 -0
- package/dist/lib/auth-guardian.js.map +1 -0
- package/dist/lib/auth-validator.d.ts +70 -0
- package/dist/lib/auth-validator.d.ts.map +1 -0
- package/dist/lib/auth-validator.js +32 -0
- package/dist/lib/auth-validator.js.map +1 -0
- package/dist/lib/blackboard-validator.d.ts +56 -0
- package/dist/lib/blackboard-validator.d.ts.map +1 -1
- package/dist/lib/blackboard-validator.js +181 -4
- package/dist/lib/blackboard-validator.js.map +1 -1
- package/dist/lib/comparison-runner.d.ts +99 -0
- package/dist/lib/comparison-runner.d.ts.map +1 -0
- package/dist/lib/comparison-runner.js +138 -0
- package/dist/lib/comparison-runner.js.map +1 -0
- package/dist/lib/config-watcher.d.ts +109 -0
- package/dist/lib/config-watcher.d.ts.map +1 -0
- package/dist/lib/config-watcher.js +215 -0
- package/dist/lib/config-watcher.js.map +1 -0
- package/dist/lib/cost-governor.d.ts +105 -0
- package/dist/lib/cost-governor.d.ts.map +1 -0
- package/dist/lib/cost-governor.js +128 -0
- package/dist/lib/cost-governor.js.map +1 -0
- package/dist/lib/cost-heatmap.d.ts +104 -0
- package/dist/lib/cost-heatmap.d.ts.map +1 -0
- package/dist/lib/cost-heatmap.js +161 -0
- package/dist/lib/cost-heatmap.js.map +1 -0
- package/dist/lib/coverage-reporter.d.ts +92 -0
- package/dist/lib/coverage-reporter.d.ts.map +1 -0
- package/dist/lib/coverage-reporter.js +177 -0
- package/dist/lib/coverage-reporter.js.map +1 -0
- package/dist/lib/dashboard-server.d.ts +71 -0
- package/dist/lib/dashboard-server.d.ts.map +1 -0
- package/dist/lib/dashboard-server.js +403 -0
- package/dist/lib/dashboard-server.js.map +1 -0
- package/dist/lib/dry-run.d.ts +73 -0
- package/dist/lib/dry-run.d.ts.map +1 -0
- package/dist/lib/dry-run.js +130 -0
- package/dist/lib/dry-run.js.map +1 -0
- package/dist/lib/errors.d.ts +15 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +38 -0
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/event-bus.d.ts +167 -0
- package/dist/lib/event-bus.d.ts.map +1 -0
- package/dist/lib/event-bus.js +229 -0
- package/dist/lib/event-bus.js.map +1 -0
- package/dist/lib/explainability.d.ts +85 -0
- package/dist/lib/explainability.d.ts.map +1 -0
- package/dist/lib/explainability.js +102 -0
- package/dist/lib/explainability.js.map +1 -0
- package/dist/lib/goal-dsl.d.ts +157 -0
- package/dist/lib/goal-dsl.d.ts.map +1 -0
- package/dist/lib/goal-dsl.js +392 -0
- package/dist/lib/goal-dsl.js.map +1 -0
- package/dist/lib/job-queue.d.ts +183 -0
- package/dist/lib/job-queue.d.ts.map +1 -0
- package/dist/lib/job-queue.js +310 -0
- package/dist/lib/job-queue.js.map +1 -0
- package/dist/lib/learning-loop.d.ts +113 -0
- package/dist/lib/learning-loop.d.ts.map +1 -0
- package/dist/lib/learning-loop.js +181 -0
- package/dist/lib/learning-loop.js.map +1 -0
- package/dist/lib/lifecycle-hooks.d.ts +116 -0
- package/dist/lib/lifecycle-hooks.d.ts.map +1 -0
- package/dist/lib/lifecycle-hooks.js +148 -0
- package/dist/lib/lifecycle-hooks.js.map +1 -0
- package/dist/lib/locked-blackboard.d.ts.map +1 -1
- package/dist/lib/locked-blackboard.js +9 -5
- package/dist/lib/locked-blackboard.js.map +1 -1
- package/dist/lib/mcp-tool-consumer.d.ts +153 -0
- package/dist/lib/mcp-tool-consumer.d.ts.map +1 -0
- package/dist/lib/mcp-tool-consumer.js +320 -0
- package/dist/lib/mcp-tool-consumer.js.map +1 -0
- package/dist/lib/metrics.d.ts +119 -0
- package/dist/lib/metrics.d.ts.map +1 -0
- package/dist/lib/metrics.js +284 -0
- package/dist/lib/metrics.js.map +1 -0
- package/dist/lib/orchestrator-types.d.ts +309 -0
- package/dist/lib/orchestrator-types.d.ts.map +1 -0
- package/dist/lib/orchestrator-types.js +61 -0
- package/dist/lib/orchestrator-types.js.map +1 -0
- package/dist/lib/otel-bridge.d.ts +74 -0
- package/dist/lib/otel-bridge.d.ts.map +1 -0
- package/dist/lib/otel-bridge.js +167 -0
- package/dist/lib/otel-bridge.js.map +1 -0
- package/dist/lib/playground.d.ts +76 -0
- package/dist/lib/playground.d.ts.map +1 -0
- package/dist/lib/playground.js +224 -0
- package/dist/lib/playground.js.map +1 -0
- package/dist/lib/quadtree.d.ts +114 -0
- package/dist/lib/quadtree.d.ts.map +1 -0
- package/dist/lib/quadtree.js +259 -0
- package/dist/lib/quadtree.js.map +1 -0
- package/dist/lib/shared-blackboard.d.ts +101 -0
- package/dist/lib/shared-blackboard.d.ts.map +1 -0
- package/dist/lib/shared-blackboard.js +249 -0
- package/dist/lib/shared-blackboard.js.map +1 -0
- package/dist/lib/speculative-executor.d.ts +89 -0
- package/dist/lib/speculative-executor.d.ts.map +1 -0
- package/dist/lib/speculative-executor.js +107 -0
- package/dist/lib/speculative-executor.js.map +1 -0
- package/dist/lib/swarm-transport.d.ts +150 -0
- package/dist/lib/swarm-transport.d.ts.map +1 -0
- package/dist/lib/swarm-transport.js +307 -0
- package/dist/lib/swarm-transport.js.map +1 -0
- package/dist/lib/task-decomposer.d.ts +41 -0
- package/dist/lib/task-decomposer.d.ts.map +1 -0
- package/dist/lib/task-decomposer.js +272 -0
- package/dist/lib/task-decomposer.js.map +1 -0
- package/dist/lib/timeline-scrubber.d.ts +84 -0
- package/dist/lib/timeline-scrubber.d.ts.map +1 -0
- package/dist/lib/timeline-scrubber.js +173 -0
- package/dist/lib/timeline-scrubber.js.map +1 -0
- package/dist/lib/topology.d.ts +361 -0
- package/dist/lib/topology.d.ts.map +1 -0
- package/dist/lib/topology.js +591 -0
- package/dist/lib/topology.js.map +1 -0
- package/dist/security.d.ts +95 -0
- package/dist/security.d.ts.map +1 -1
- package/dist/security.js +266 -4
- package/dist/security.js.map +1 -1
- package/package.json +7 -5
- package/types/agent-adapter.d.ts +5 -0
package/dist/index.d.ts
CHANGED
|
@@ -11,562 +11,20 @@
|
|
|
11
11
|
* @license MIT
|
|
12
12
|
*/
|
|
13
13
|
import { AdapterRegistry } from './adapters/adapter-registry';
|
|
14
|
-
import type { ConflictResolutionStrategy, AgentPriority, LockedBlackboardOptions } from './lib/locked-blackboard';
|
|
15
|
-
import type { BlackboardBackend } from './lib/blackboard-backend';
|
|
16
|
-
import type { ConsistencyLevel } from './lib/consistency';
|
|
17
14
|
import { QualityGateAgent } from './lib/blackboard-validator';
|
|
18
15
|
import type { ValidationConfig, AIReviewCallback } from './lib/blackboard-validator';
|
|
19
16
|
import type { IAgentAdapter, AdapterConfig } from './types/agent-adapter';
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
agentId: string;
|
|
32
|
-
/** Unique task identifier (optional) */
|
|
33
|
-
taskId?: string;
|
|
34
|
-
/** Session identifier for multi-turn interactions */
|
|
35
|
-
sessionId?: string;
|
|
36
|
-
/** Arbitrary metadata from the host system */
|
|
37
|
-
metadata?: Record<string, unknown>;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Unified result shape returned by every skill action.
|
|
41
|
-
* Includes structured error information with recovery hints.
|
|
42
|
-
*/
|
|
43
|
-
interface SkillResult {
|
|
44
|
-
/** Whether the action completed successfully */
|
|
45
|
-
success: boolean;
|
|
46
|
-
/** Result data (shape varies by action) */
|
|
47
|
-
data?: unknown;
|
|
48
|
-
/** Structured error when `success` is false */
|
|
49
|
-
error?: {
|
|
50
|
-
/** Machine-readable error code (e.g., `'AUTH_DENIED'`, `'GATEWAY_DENIED'`) */
|
|
51
|
-
code: string;
|
|
52
|
-
/** Human-readable error description */
|
|
53
|
-
message: string;
|
|
54
|
-
/** Whether the caller can retry or adjust and succeed */
|
|
55
|
-
recoverable: boolean;
|
|
56
|
-
/** Suggested remediation step */
|
|
57
|
-
suggestedAction?: string;
|
|
58
|
-
/** Trace metadata for debugging */
|
|
59
|
-
trace?: Record<string, unknown>;
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* A task to be delegated to an agent.
|
|
64
|
-
*
|
|
65
|
-
* @example
|
|
66
|
-
* ```typescript
|
|
67
|
-
* const payload: TaskPayload = {
|
|
68
|
-
* instruction: 'Analyze Q4 revenue trends',
|
|
69
|
-
* context: { department: 'finance' },
|
|
70
|
-
* constraints: ['read_only', 'no_pii'],
|
|
71
|
-
* expectedOutput: 'JSON summary with top-line metrics',
|
|
72
|
-
* };
|
|
73
|
-
* ```
|
|
74
|
-
*/
|
|
75
|
-
interface TaskPayload {
|
|
76
|
-
/** Natural-language instruction for the agent */
|
|
77
|
-
instruction: string;
|
|
78
|
-
/** Additional context data relevant to the task */
|
|
79
|
-
context?: Record<string, unknown>;
|
|
80
|
-
/** Restrictions or guardrails the agent must respect */
|
|
81
|
-
constraints?: string[];
|
|
82
|
-
/** Description of the expected output format */
|
|
83
|
-
expectedOutput?: string;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Internal message structure for agent-to-agent task handoffs.
|
|
87
|
-
* The orchestrator creates these when delegating work between agents.
|
|
88
|
-
*/
|
|
89
|
-
interface HandoffMessage {
|
|
90
|
-
/** Unique handoff identifier */
|
|
91
|
-
handoffId: string;
|
|
92
|
-
/** Agent initiating the handoff */
|
|
93
|
-
sourceAgent: string;
|
|
94
|
-
/** Agent receiving the task */
|
|
95
|
-
targetAgent: string;
|
|
96
|
-
/** How the target agent should process the task */
|
|
97
|
-
taskType: 'delegate' | 'collaborate' | 'validate';
|
|
98
|
-
/** The task to execute */
|
|
99
|
-
payload: TaskPayload;
|
|
100
|
-
/** Scheduling and priority metadata */
|
|
101
|
-
metadata: {
|
|
102
|
-
/** Priority level (0=low, 3=critical) */
|
|
103
|
-
priority: number;
|
|
104
|
-
/** Unix timestamp deadline */
|
|
105
|
-
deadline: number;
|
|
106
|
-
/** Parent task for sub-task tracking */
|
|
107
|
-
parentTaskId: string | null;
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Result of a permission request through the AuthGuardian.
|
|
112
|
-
* Contains the grant token (if approved) and any restrictions.
|
|
113
|
-
*/
|
|
114
|
-
interface PermissionGrant {
|
|
115
|
-
/** Whether permission was granted */
|
|
116
|
-
granted: boolean;
|
|
117
|
-
/** Opaque token to present when using the granted resource */
|
|
118
|
-
grantToken: string | null;
|
|
119
|
-
/** ISO 8601 expiration timestamp */
|
|
120
|
-
expiresAt: string | null;
|
|
121
|
-
/** Restrictions applied to this grant (e.g., `'read_only'`, `'max_records:100'`) */
|
|
122
|
-
restrictions: string[];
|
|
123
|
-
/** Human-readable denial reason (when `granted` is false) */
|
|
124
|
-
reason?: string;
|
|
125
|
-
}
|
|
126
|
-
/** Full snapshot of the swarm's runtime state. */
|
|
127
|
-
interface SwarmState {
|
|
128
|
-
/** ISO 8601 timestamp when the snapshot was taken */
|
|
129
|
-
timestamp: string;
|
|
130
|
-
/** All registered agents and their current status */
|
|
131
|
-
activeAgents: AgentStatus[];
|
|
132
|
-
/** Tasks currently pending or in progress */
|
|
133
|
-
pendingTasks: TaskRecord[];
|
|
134
|
-
/** Namespace-scoped blackboard entries visible to the querying agent */
|
|
135
|
-
blackboardSnapshot: Record<string, BlackboardEntry>;
|
|
136
|
-
/** Active permission grants */
|
|
137
|
-
permissionGrants: ActiveGrant[];
|
|
138
|
-
}
|
|
139
|
-
/** Runtime status of a registered agent. */
|
|
140
|
-
interface AgentStatus {
|
|
141
|
-
/** Unique agent identifier */
|
|
142
|
-
agentId: string;
|
|
143
|
-
/** Current operational state */
|
|
144
|
-
status: 'available' | 'busy' | 'waiting_auth' | 'offline';
|
|
145
|
-
/** ID of the task currently being executed, or null */
|
|
146
|
-
currentTask: string | null;
|
|
147
|
-
/** ISO 8601 timestamp of the last heartbeat */
|
|
148
|
-
lastHeartbeat: string;
|
|
149
|
-
}
|
|
150
|
-
interface TaskRecord {
|
|
151
|
-
taskId: string;
|
|
152
|
-
agentId: string;
|
|
153
|
-
status: 'pending' | 'in_progress' | 'completed' | 'failed';
|
|
154
|
-
startedAt: string;
|
|
155
|
-
description: string;
|
|
156
|
-
}
|
|
157
|
-
/** A single entry stored on the shared blackboard. */
|
|
158
|
-
interface BlackboardEntry {
|
|
159
|
-
/** Entry key (namespace-prefixed, e.g., `'task:analyze'`) */
|
|
160
|
-
key: string;
|
|
161
|
-
/** Stored value (any serializable data) */
|
|
162
|
-
value: unknown;
|
|
163
|
-
/** Agent that wrote this entry */
|
|
164
|
-
sourceAgent: string;
|
|
165
|
-
/** ISO 8601 timestamp of the write */
|
|
166
|
-
timestamp: string;
|
|
167
|
-
/** Time-to-live in seconds, or null for no expiry */
|
|
168
|
-
ttl: number | null;
|
|
169
|
-
}
|
|
170
|
-
/** An active permission grant held by an agent. */
|
|
171
|
-
interface ActiveGrant {
|
|
172
|
-
/** Opaque grant token */
|
|
173
|
-
grantToken: string;
|
|
174
|
-
/** Resource type this grant covers (e.g., `'FILE_SYSTEM'`, `'DATABASE'`) */
|
|
175
|
-
resourceType: string;
|
|
176
|
-
/** Agent holding the grant */
|
|
177
|
-
agentId: string;
|
|
178
|
-
/** ISO 8601 expiration timestamp */
|
|
179
|
-
expiresAt: string;
|
|
180
|
-
/** Restrictions bound to this grant */
|
|
181
|
-
restrictions: string[];
|
|
182
|
-
/** Optional scope narrowing (e.g., `'read'`, `'staging_only'`) */
|
|
183
|
-
scope?: string;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Configurable resource profile -- makes the system domain-agnostic.
|
|
187
|
-
* Users can define any resource type (coding, finance, devops, etc.)
|
|
188
|
-
*/
|
|
189
|
-
interface ResourceProfile {
|
|
190
|
-
/** Base risk score 0-1 */
|
|
191
|
-
baseRisk: number;
|
|
192
|
-
/** Default restrictions applied when access is granted */
|
|
193
|
-
defaultRestrictions: string[];
|
|
194
|
-
/** Human-readable description */
|
|
195
|
-
description?: string;
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Configuration for agent trust levels.
|
|
199
|
-
* Pass your own agents with their trust scores.
|
|
200
|
-
*/
|
|
201
|
-
interface AgentTrustConfig {
|
|
202
|
-
agentId: string;
|
|
203
|
-
trustLevel: number;
|
|
204
|
-
/** Namespace prefixes this agent can read from the blackboard */
|
|
205
|
-
allowedNamespaces?: string[];
|
|
206
|
-
/** Resource types this agent can request */
|
|
207
|
-
allowedResources?: string[];
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Options for creating a named blackboard via `orchestrator.getBlackboard(name)`.
|
|
211
|
-
* All fields are optional -- sensible defaults are applied automatically.
|
|
212
|
-
*/
|
|
213
|
-
export interface NamedBlackboardOptions {
|
|
214
|
-
/**
|
|
215
|
-
* Namespace prefixes the orchestrator agent is allowed to use on this board.
|
|
216
|
-
* Defaults to `['*']` (full access). Pass e.g. `['analysis:', 'result:']` to
|
|
217
|
-
* restrict the board to specific key prefixes.
|
|
218
|
-
*/
|
|
219
|
-
allowedNamespaces?: string[];
|
|
220
|
-
/**
|
|
221
|
-
* Custom validation config applied to writes on this board.
|
|
222
|
-
* Falls back to the orchestrator's global config when omitted.
|
|
223
|
-
*/
|
|
224
|
-
validationConfig?: Partial<ValidationConfig>;
|
|
225
|
-
/**
|
|
226
|
-
* Pluggable storage backend for this board.
|
|
227
|
-
*
|
|
228
|
-
* - Omit (default): `FileBackend` — persisted to disk at `<workspacePath>/boards/<name>/`
|
|
229
|
-
* - `new MemoryBackend()`: pure in-memory, no disk writes
|
|
230
|
-
* - Custom class implementing `BlackboardBackend`: Redis, CRDT, cloud KV, etc.
|
|
231
|
-
*
|
|
232
|
-
* @example
|
|
233
|
-
* ```typescript
|
|
234
|
-
* // Ephemeral board (testing / short-lived tasks)
|
|
235
|
-
* const board = orchestrator.getBlackboard('tmp', { backend: new MemoryBackend() });
|
|
236
|
-
*
|
|
237
|
-
* // Custom Redis backend
|
|
238
|
-
* const board = orchestrator.getBlackboard('prod', { backend: new RedisBackend(client) });
|
|
239
|
-
* ```
|
|
240
|
-
*/
|
|
241
|
-
backend?: BlackboardBackend;
|
|
242
|
-
/**
|
|
243
|
-
* Consistency level applied to this board's backend.
|
|
244
|
-
*
|
|
245
|
-
* When provided, the backend is automatically wrapped in a `ConsistentBackend`
|
|
246
|
-
* with the specified level. Omitting this (or passing `'eventual'`) leaves the
|
|
247
|
-
* backend unwrapped for maximum performance.
|
|
248
|
-
*
|
|
249
|
-
* - `'eventual'` (default): no wrapping — highest throughput
|
|
250
|
-
* - `'session'`: read-your-writes guarantee via a local session cache
|
|
251
|
-
* - `'strong'`: use `board.writeAsync()` to await `backend.flush()` confirmation
|
|
252
|
-
*
|
|
253
|
-
* @example
|
|
254
|
-
* ```typescript
|
|
255
|
-
* const board = orchestrator.getBlackboard('live', {
|
|
256
|
-
* backend: new RedisBackend(client),
|
|
257
|
-
* consistency: 'strong',
|
|
258
|
-
* });
|
|
259
|
-
* ```
|
|
260
|
-
*/
|
|
261
|
-
consistency?: ConsistencyLevel;
|
|
262
|
-
}
|
|
263
|
-
/** A single task within a parallel execution batch. */
|
|
264
|
-
interface ParallelTask {
|
|
265
|
-
/** Agent type or adapter-prefixed ID to route the task to */
|
|
266
|
-
agentType: string;
|
|
267
|
-
/** The task payload to execute */
|
|
268
|
-
taskPayload: TaskPayload;
|
|
269
|
-
}
|
|
270
|
-
/** Result of a parallel execution batch, including synthesis and metrics. */
|
|
271
|
-
interface ParallelExecutionResult {
|
|
272
|
-
/** Combined result produced by the synthesis strategy */
|
|
273
|
-
synthesizedResult: unknown;
|
|
274
|
-
/** Per-agent results with timing */
|
|
275
|
-
individualResults: Array<{
|
|
276
|
-
agentType: string;
|
|
277
|
-
success: boolean;
|
|
278
|
-
result: unknown;
|
|
279
|
-
/** Wall-clock execution time in milliseconds */
|
|
280
|
-
executionTime: number;
|
|
281
|
-
}>;
|
|
282
|
-
/** Aggregate execution metrics */
|
|
283
|
-
executionMetrics: {
|
|
284
|
-
/** Total wall-clock time in milliseconds */
|
|
285
|
-
totalTime: number;
|
|
286
|
-
/** Fraction of tasks that succeeded (0-1) */
|
|
287
|
-
successRate: number;
|
|
288
|
-
/** Strategy used to combine results */
|
|
289
|
-
synthesisStrategy: string;
|
|
290
|
-
};
|
|
291
|
-
}
|
|
292
|
-
/**
|
|
293
|
-
* Strategy for combining results from parallel agent executions.
|
|
294
|
-
* - `'merge'` — Combine all successful results into one object
|
|
295
|
-
* - `'vote'` — Pick the result with the highest confidence/size
|
|
296
|
-
* - `'chain'` — Use the final result in sequence
|
|
297
|
-
* - `'first-success'` — Return the first successful result
|
|
298
|
-
*/
|
|
299
|
-
type SynthesisStrategy = 'merge' | 'vote' | 'chain' | 'first-success';
|
|
300
|
-
declare const CONFIG: {
|
|
301
|
-
blackboardPath: string;
|
|
302
|
-
maxParallelAgents: number;
|
|
303
|
-
defaultTimeout: number;
|
|
304
|
-
enableTracing: boolean;
|
|
305
|
-
grantTokenTTL: number;
|
|
306
|
-
maxBlackboardValueSize: number;
|
|
307
|
-
auditLogPath: string;
|
|
308
|
-
trustConfigPath: string;
|
|
309
|
-
};
|
|
310
|
-
/**
|
|
311
|
-
* Namespace-scoped, identity-verified shared state for multi-agent coordination.
|
|
312
|
-
*
|
|
313
|
-
* Every write is identity-verified (agent token), namespace-checked,
|
|
314
|
-
* size-validated, input-sanitized, and atomically persisted through
|
|
315
|
-
* {@link LockedBlackboard}.
|
|
316
|
-
*
|
|
317
|
-
* @example
|
|
318
|
-
* ```typescript
|
|
319
|
-
* const bb = new SharedBlackboard('./workspace');
|
|
320
|
-
* bb.registerAgent('analyst', 'secret-token', ['task:', 'analytics:']);
|
|
321
|
-
* bb.write('task:revenue', { q4: 42_000 }, 'analyst', 3600, 'secret-token');
|
|
322
|
-
* const entry = bb.read('task:revenue');
|
|
323
|
-
* ```
|
|
324
|
-
*/
|
|
325
|
-
declare class SharedBlackboard {
|
|
326
|
-
private backend;
|
|
327
|
-
private agentTokens;
|
|
328
|
-
private agentNamespaces;
|
|
329
|
-
constructor(backendOrPath: string | BlackboardBackend);
|
|
330
|
-
/**
|
|
331
|
-
* Register a verified agent identity. Only agents with registered tokens
|
|
332
|
-
* can write to the blackboard. The orchestrator registers agents after
|
|
333
|
-
* verifying their identity through the AuthGuardian.
|
|
334
|
-
*/
|
|
335
|
-
registerAgent(agentId: string, verificationToken: string, allowedNamespaces?: string[]): void;
|
|
336
|
-
/**
|
|
337
|
-
* Check if an agent is allowed to access a key based on namespace rules.
|
|
338
|
-
*/
|
|
339
|
-
private canAccessKey;
|
|
340
|
-
/**
|
|
341
|
-
* Verify that the calling agent is who they claim to be.
|
|
342
|
-
*/
|
|
343
|
-
private verifyAgent;
|
|
344
|
-
/**
|
|
345
|
-
* Validate value size and structure before writing.
|
|
346
|
-
* Prevents DoS via oversized writes and circular data.
|
|
347
|
-
*/
|
|
348
|
-
private validateValue;
|
|
349
|
-
/**
|
|
350
|
-
* Sanitize a key to prevent markdown injection.
|
|
351
|
-
*/
|
|
352
|
-
private sanitizeKey;
|
|
353
|
-
/**
|
|
354
|
-
* Read an entry from the blackboard by key.
|
|
355
|
-
*
|
|
356
|
-
* @param key - The entry key to look up
|
|
357
|
-
* @returns The entry, or `null` if not found or expired
|
|
358
|
-
* @throws {@link ValidationError} if `key` is not a non-empty string
|
|
359
|
-
*/
|
|
360
|
-
read(key: string): BlackboardEntry | null;
|
|
361
|
-
/**
|
|
362
|
-
* Write to the blackboard with identity verification, namespace checks,
|
|
363
|
-
* value validation, and input sanitization. Uses LockedBlackboard for
|
|
364
|
-
* atomic file-system writes.
|
|
365
|
-
*
|
|
366
|
-
* @param key - The key to write
|
|
367
|
-
* @param value - The value (will be sanitized and size-checked)
|
|
368
|
-
* @param sourceAgent - Agent claiming to write (verified against registered token)
|
|
369
|
-
* @param ttl - Optional TTL in seconds
|
|
370
|
-
* @param agentToken - Optional verification token for identity check
|
|
371
|
-
*/
|
|
372
|
-
write(key: string, value: unknown, sourceAgent: string, ttl?: number, agentToken?: string): BlackboardEntry;
|
|
373
|
-
/**
|
|
374
|
-
* Check whether a key exists on the blackboard (not expired).
|
|
375
|
-
* @param key - The entry key to check
|
|
376
|
-
*/
|
|
377
|
-
exists(key: string): boolean;
|
|
378
|
-
/**
|
|
379
|
-
* Get a full snapshot of all blackboard entries.
|
|
380
|
-
*/
|
|
381
|
-
getSnapshot(): Record<string, BlackboardEntry>;
|
|
382
|
-
/**
|
|
383
|
-
* Get a namespace-scoped snapshot -- only returns keys an agent is allowed to see.
|
|
384
|
-
* Prevents data leakage between agents.
|
|
385
|
-
*/
|
|
386
|
-
getScopedSnapshot(agentId: string): Record<string, BlackboardEntry>;
|
|
387
|
-
/**
|
|
388
|
-
* Clear all entries (for testing).
|
|
389
|
-
*/
|
|
390
|
-
clear(): void;
|
|
391
|
-
}
|
|
392
|
-
/**
|
|
393
|
-
* Universal permission wall for multi-agent systems.
|
|
394
|
-
*
|
|
395
|
-
* Evaluates permission requests using a weighted formula of justification
|
|
396
|
-
* quality (40%), agent trust level (30%), and risk score (30%).
|
|
397
|
-
* Resource types, risk profiles, trust levels, and restrictions are all
|
|
398
|
-
* configurable — works for coding, finance, DevOps, or any domain.
|
|
399
|
-
*
|
|
400
|
-
* @example
|
|
401
|
-
* ```typescript
|
|
402
|
-
* const guardian = new AuthGuardian({
|
|
403
|
-
* trustLevels: [{ agentId: 'analyst', trustLevel: 0.8 }],
|
|
404
|
-
* resourceProfiles: { CUSTOM_API: { baseRisk: 0.5, defaultRestrictions: ['audit_required'] } },
|
|
405
|
-
* });
|
|
406
|
-
*
|
|
407
|
-
* const grant = await guardian.requestPermission(
|
|
408
|
-
* 'analyst', 'CUSTOM_API', 'Need to fetch Q4 revenue data for report', 'read'
|
|
409
|
-
* );
|
|
410
|
-
* if (grant.granted) {
|
|
411
|
-
* // Use grant.grantToken to prove authorization
|
|
412
|
-
* }
|
|
413
|
-
* ```
|
|
414
|
-
*/
|
|
415
|
-
declare class AuthGuardian {
|
|
416
|
-
private activeGrants;
|
|
417
|
-
private agentTrustLevels;
|
|
418
|
-
private agentTrustConfigs;
|
|
419
|
-
private resourceProfiles;
|
|
420
|
-
private auditLog;
|
|
421
|
-
private auditLogPath;
|
|
422
|
-
private trustConfigPath;
|
|
423
|
-
private readonly signingAlgorithm;
|
|
424
|
-
private readonly hmacSecret;
|
|
425
|
-
private readonly ed25519PrivateKey;
|
|
426
|
-
private readonly ed25519PublicKey;
|
|
427
|
-
constructor(options?: {
|
|
428
|
-
trustLevels?: AgentTrustConfig[];
|
|
429
|
-
resourceProfiles?: Record<string, ResourceProfile>;
|
|
430
|
-
auditLogPath?: string;
|
|
431
|
-
trustConfigPath?: string;
|
|
432
|
-
/** Signing algorithm for grant tokens. Default: 'hmac-sha256'. */
|
|
433
|
-
algorithm?: 'hmac-sha256' | 'ed25519';
|
|
434
|
-
/** HMAC secret (only used when algorithm is 'hmac-sha256'). Auto-generated if omitted. */
|
|
435
|
-
hmacSecret?: string;
|
|
436
|
-
});
|
|
437
|
-
/**
|
|
438
|
-
* Register a new resource type at runtime.
|
|
439
|
-
* Makes the system extensible for any domain.
|
|
440
|
-
*/
|
|
441
|
-
registerResourceType(name: string, profile: ResourceProfile): void;
|
|
442
|
-
/**
|
|
443
|
-
* Register or update an agent's trust configuration at runtime.
|
|
444
|
-
*/
|
|
445
|
-
registerAgentTrust(config: AgentTrustConfig): void;
|
|
446
|
-
/**
|
|
447
|
-
* Request permission to access a resource.
|
|
448
|
-
* resourceType is now a free string -- validated against registered profiles.
|
|
449
|
-
*/
|
|
450
|
-
requestPermission(agentId: string, resourceType: string, justification: string, scope?: string): Promise<PermissionGrant>;
|
|
451
|
-
/**
|
|
452
|
-
* Validate a grant token and return `true` if it is active and not expired.
|
|
453
|
-
*
|
|
454
|
-
* @param token - The grant token to validate
|
|
455
|
-
* @returns `true` if the token is valid, `false` otherwise
|
|
456
|
-
*/
|
|
457
|
-
validateToken(token: string): boolean;
|
|
458
|
-
/**
|
|
459
|
-
* Validate a token and return the bound restrictions and scope.
|
|
460
|
-
* Used to enforce restrictions at the point of use.
|
|
461
|
-
*/
|
|
462
|
-
/**
|
|
463
|
-
* Validate a token and return the full grant object (including restrictions
|
|
464
|
-
* and scope) for point-of-use enforcement.
|
|
465
|
-
*
|
|
466
|
-
* @param token - The grant token to validate
|
|
467
|
-
* @returns The grant details, or `null` if invalid/expired
|
|
468
|
-
*/
|
|
469
|
-
validateTokenWithGrant(token: string): ActiveGrant | null;
|
|
470
|
-
/**
|
|
471
|
-
* Enforce restrictions on an operation. Returns an error string if
|
|
472
|
-
* the operation violates any restriction, or null if allowed.
|
|
473
|
-
*/
|
|
474
|
-
/**
|
|
475
|
-
* Enforce restrictions on an operation. Returns an error string if
|
|
476
|
-
* the operation violates any restriction, or `null` if all restrictions pass.
|
|
477
|
-
*
|
|
478
|
-
* @param grantToken - The grant token authorizing the operation
|
|
479
|
-
* @param operation - Description of the operation to check against restrictions
|
|
480
|
-
* @returns Error message string if a restriction is violated, or `null` if allowed
|
|
481
|
-
*/
|
|
482
|
-
enforceRestrictions(grantToken: string, operation: {
|
|
483
|
-
type?: string;
|
|
484
|
-
recordCount?: number;
|
|
485
|
-
hasAttachments?: boolean;
|
|
486
|
-
targetPath?: string;
|
|
487
|
-
command?: string;
|
|
488
|
-
}): string | null;
|
|
489
|
-
/**
|
|
490
|
-
* Revoke a grant token, immediately invalidating it.
|
|
491
|
-
* Silently no-ops if the token doesn't exist.
|
|
492
|
-
*
|
|
493
|
-
* @param token - The grant token to revoke
|
|
494
|
-
*/
|
|
495
|
-
revokeToken(token: string): void;
|
|
496
|
-
private evaluateRequest;
|
|
497
|
-
/**
|
|
498
|
-
* Improved justification scoring with resource-relevance checking.
|
|
499
|
-
* Prevents trivial gaming by verifying the justification mentions
|
|
500
|
-
* concepts relevant to the requested resource.
|
|
501
|
-
*/
|
|
502
|
-
private scoreJustification;
|
|
503
|
-
private assessRisk;
|
|
504
|
-
private generateGrantToken;
|
|
505
|
-
/**
|
|
506
|
-
* Verify a grant token's cryptographic signature.
|
|
507
|
-
* For Ed25519 tokens, this can be done by any party holding the public key.
|
|
508
|
-
* For HMAC tokens, only the issuing AuthGuardian can verify.
|
|
509
|
-
*
|
|
510
|
-
* @param token - The grant token to verify
|
|
511
|
-
* @returns `true` if the signature is valid
|
|
512
|
-
*/
|
|
513
|
-
verifyTokenSignature(token: string): boolean;
|
|
514
|
-
/**
|
|
515
|
-
* Get the signing algorithm used by this AuthGuardian instance.
|
|
516
|
-
*/
|
|
517
|
-
getSigningAlgorithm(): 'hmac-sha256' | 'ed25519';
|
|
518
|
-
/**
|
|
519
|
-
* Export the Ed25519 public key in PEM format for third-party verification.
|
|
520
|
-
* Returns `null` if the instance uses HMAC signing.
|
|
521
|
-
*/
|
|
522
|
-
exportPublicKey(): string | null;
|
|
523
|
-
private log;
|
|
524
|
-
/**
|
|
525
|
-
* Get all active (non-expired) permission grants.
|
|
526
|
-
* Automatically cleans up expired grants before returning.
|
|
527
|
-
*/
|
|
528
|
-
getActiveGrants(): ActiveGrant[];
|
|
529
|
-
/**
|
|
530
|
-
* Get the full audit log of permission decisions.
|
|
531
|
-
* Returns a defensive copy.
|
|
532
|
-
*/
|
|
533
|
-
getAuditLog(): typeof this.auditLog;
|
|
534
|
-
/**
|
|
535
|
-
* Get all registered resource profiles.
|
|
536
|
-
*/
|
|
537
|
-
getResourceProfiles(): Record<string, ResourceProfile>;
|
|
538
|
-
/**
|
|
539
|
-
* Get the allowed namespaces for an agent (used by blackboard scoping).
|
|
540
|
-
*/
|
|
541
|
-
getAgentNamespaces(agentId: string): string[];
|
|
542
|
-
private loadTrustFromDisk;
|
|
543
|
-
private persistTrustToDisk;
|
|
544
|
-
private loadAuditFromDisk;
|
|
545
|
-
}
|
|
546
|
-
/**
|
|
547
|
-
* Decomposes complex tasks into parallel sub-agent executions.
|
|
548
|
-
*
|
|
549
|
-
* Supports four synthesis strategies (`merge`, `vote`, `chain`, `first-success`)
|
|
550
|
-
* and caches results on the blackboard to avoid redundant work.
|
|
551
|
-
* Routes each sub-task through the {@link AdapterRegistry} so any
|
|
552
|
-
* registered framework can participate.
|
|
553
|
-
*/
|
|
554
|
-
declare class TaskDecomposer {
|
|
555
|
-
private blackboard;
|
|
556
|
-
private authGuardian;
|
|
557
|
-
private adapterRegistry;
|
|
558
|
-
constructor(blackboard: SharedBlackboard, authGuardian: AuthGuardian, adapterRegistry: AdapterRegistry);
|
|
559
|
-
/**
|
|
560
|
-
* Decomposes a complex task into parallel sub-agent calls
|
|
561
|
-
* This is the "Wall Breaker" - transforms impossible monolithic tasks
|
|
562
|
-
* into manageable parallel executions
|
|
563
|
-
*/
|
|
564
|
-
executeParallel(tasks: ParallelTask[], synthesisStrategy: SynthesisStrategy | undefined, context: SkillContext): Promise<ParallelExecutionResult>;
|
|
565
|
-
private executeSingleTask;
|
|
566
|
-
private synthesize;
|
|
567
|
-
private generateMergeSummary;
|
|
568
|
-
private hashPayload;
|
|
569
|
-
}
|
|
17
|
+
import { SharedBlackboard } from './lib/shared-blackboard';
|
|
18
|
+
import { ExplainabilityTracer } from './lib/explainability';
|
|
19
|
+
import { OrchestratorEventBus } from './lib/event-bus';
|
|
20
|
+
import { AgentConversationLog } from './lib/agent-conversation';
|
|
21
|
+
import { OTelBridge } from './lib/otel-bridge';
|
|
22
|
+
import { createOrchestratorMetrics } from './lib/metrics';
|
|
23
|
+
import { CostHeatmap } from './lib/cost-heatmap';
|
|
24
|
+
import { AnomalyDetector } from './lib/anomaly-detector';
|
|
25
|
+
import { OrchestratorLifecycleHooks } from './lib/lifecycle-hooks';
|
|
26
|
+
import { CONFIG } from './lib/orchestrator-types';
|
|
27
|
+
import type { OpenClawSkill, SkillContext, SkillResult, AgentStatus, ResourceProfile, AgentTrustConfig, NamedBlackboardOptions } from './lib/orchestrator-types';
|
|
570
28
|
/**
|
|
571
29
|
* The main orchestrator class — coordinates agents, permissions, blackboard,
|
|
572
30
|
* quality gates, and adapter routing in a single entry point.
|
|
@@ -598,6 +56,15 @@ export declare class SwarmOrchestrator implements OpenClawSkill {
|
|
|
598
56
|
private agentRegistry;
|
|
599
57
|
private gateway;
|
|
600
58
|
private qualityGate;
|
|
59
|
+
private injectionShield;
|
|
60
|
+
readonly tracer: ExplainabilityTracer;
|
|
61
|
+
readonly eventBus: OrchestratorEventBus;
|
|
62
|
+
readonly conversationLog: AgentConversationLog;
|
|
63
|
+
readonly otel: OTelBridge;
|
|
64
|
+
readonly metrics: ReturnType<typeof createOrchestratorMetrics>;
|
|
65
|
+
readonly heatmap: CostHeatmap;
|
|
66
|
+
readonly anomalyDetector: AnomalyDetector;
|
|
67
|
+
readonly lifecycleHooks: OrchestratorLifecycleHooks;
|
|
601
68
|
/** Named isolated blackboards, keyed by board name */
|
|
602
69
|
private namedBlackboards;
|
|
603
70
|
/** Root workspace path -- used as the parent for named board subdirectories */
|
|
@@ -704,8 +171,63 @@ export declare class SwarmOrchestrator implements OpenClawSkill {
|
|
|
704
171
|
updateAgentStatus(agentId: string, status: AgentStatus['status'], currentTask?: string): void;
|
|
705
172
|
}
|
|
706
173
|
export default SwarmOrchestrator;
|
|
707
|
-
export { SharedBlackboard
|
|
708
|
-
export {
|
|
174
|
+
export { SharedBlackboard } from './lib/shared-blackboard';
|
|
175
|
+
export { AuthGuardian } from './lib/auth-guardian';
|
|
176
|
+
export { TaskDecomposer } from './lib/task-decomposer';
|
|
177
|
+
export { ExplainabilityTracer } from './lib/explainability';
|
|
178
|
+
export type { DecisionCard, DecisionFactor } from './lib/explainability';
|
|
179
|
+
export { OrchestratorEventBus } from './lib/event-bus';
|
|
180
|
+
export type { BusEvent, StateSnapshot, ReplayOptions, ReplayResult, EventSource, EventSeverity } from './lib/event-bus';
|
|
181
|
+
export { AgentConversationLog } from './lib/agent-conversation';
|
|
182
|
+
export type { AgentTurn, AgentStats, AgentConversation } from './lib/agent-conversation';
|
|
183
|
+
export { OTelBridge, SpanStatus } from './lib/otel-bridge';
|
|
184
|
+
export type { OTelSpan, OTelTracer, OTelSpanOptions } from './lib/otel-bridge';
|
|
185
|
+
export { MetricsRegistry, Counter, Gauge, Histogram, createOrchestratorMetrics } from './lib/metrics';
|
|
186
|
+
export type { Labels, HistogramBuckets } from './lib/metrics';
|
|
187
|
+
export { CostHeatmap } from './lib/cost-heatmap';
|
|
188
|
+
export type { HeatmapCell, HeatmapSnapshot, CostRate, ExecutionSample } from './lib/cost-heatmap';
|
|
189
|
+
export { TimelineScrubber } from './lib/timeline-scrubber';
|
|
190
|
+
export type { TimelineFrame, TimelineRange } from './lib/timeline-scrubber';
|
|
191
|
+
export { AnomalyDetector } from './lib/anomaly-detector';
|
|
192
|
+
export type { Anomaly, AnomalyMetric, BaselineSummary } from './lib/anomaly-detector';
|
|
193
|
+
export { CostGovernor, LookupCostModel } from './lib/cost-governor';
|
|
194
|
+
export type { DAGCostPrediction, NodeCostEstimate, CostModel, CostDAGNode, CostBudget } from './lib/cost-governor';
|
|
195
|
+
export { DryRunSimulator } from './lib/dry-run';
|
|
196
|
+
export type { DryRunReport, SimulatedNode, DryRunNode, DryRunBudget } from './lib/dry-run';
|
|
197
|
+
export { ConfigWatcher } from './lib/config-watcher';
|
|
198
|
+
export type { ReloadableConfig, TrustEntry, BudgetOverrides, ConfigTargets, ReloadEvent, ReloadError } from './lib/config-watcher';
|
|
199
|
+
export { OrchestratorLifecycleHooks } from './lib/lifecycle-hooks';
|
|
200
|
+
export type { LifecyclePhase, BeforeSpawnContext, AfterCompleteContext, OnFailureContext, LifecycleHandler, LifecycleHookEntry } from './lib/lifecycle-hooks';
|
|
201
|
+
export { AgentMemory, EpisodicMemory, ProceduralMemory, SharedLongTermMemory } from './lib/agent-memory';
|
|
202
|
+
export type { MemoryEntry, EpisodicEntry, ProceduralEntry, SharedEntry, RecallOptions } from './lib/agent-memory';
|
|
203
|
+
export { LearningLoop } from './lib/learning-loop';
|
|
204
|
+
export type { DAGPattern, PatternStep, DAGOutcome, PatternMatch } from './lib/learning-loop';
|
|
205
|
+
export { SpeculativeExecutor } from './lib/speculative-executor';
|
|
206
|
+
export type { SpeculativeCandidate, SpeculativeResult, SpeculativeOutcome, SpeculativeOptions, SpeculativeExecutorFn } from './lib/speculative-executor';
|
|
207
|
+
export { AgentDebate } from './lib/agent-debate';
|
|
208
|
+
export type { DebateTurn, DebateConfig, DebateOutcome, CritiqueResult, RevisionResult, ProposerFn, CriticFn } from './lib/agent-debate';
|
|
209
|
+
export { ApprovalInbox } from './lib/approval-inbox';
|
|
210
|
+
export type { ApprovalEntry, ApprovalInboxOptions, ApprovalStatus, InboxEvent, InboxEventType, InboxStats } from './lib/approval-inbox';
|
|
211
|
+
export { createAdapterTestSuite } from './lib/adapter-test-harness';
|
|
212
|
+
export type { AdapterTestSuiteConfig, AdapterTestResult, AssertFn, SectionFn } from './lib/adapter-test-harness';
|
|
213
|
+
export { SwarmTransportServer, SwarmTransportClient } from './lib/swarm-transport';
|
|
214
|
+
export type { TransportEnvelope, TransportMeta, TransportResponse, TransportServerConfig, TransportClientConfig, TransportHandler } from './lib/swarm-transport';
|
|
215
|
+
export { JobQueue, FileJobStore } from './lib/job-queue';
|
|
216
|
+
export type { JobRecord, JobCreateOptions, JobHandler, JobQueueConfig, JobQueueStats, JobStatus, JobPriority, IJobStore } from './lib/job-queue';
|
|
217
|
+
export { startPlayground, MockAgentRegistry } from './lib/playground';
|
|
218
|
+
export type { PlaygroundConfig, PlaygroundInstance } from './lib/playground';
|
|
219
|
+
export { parseGoal, goalFromObject, validateGoal, compileGoal } from './lib/goal-dsl';
|
|
220
|
+
export type { GoalDefinition, GoalTask, GoalConstraints, GoalOutput, GoalValidationError, GoalValidationResult, ExecutionLayer, CompiledGoal } from './lib/goal-dsl';
|
|
221
|
+
export { AgentVCR } from './lib/agent-vcr';
|
|
222
|
+
export type { VCRMode, VCRInteraction, VCRCassette, VCRConfig, VCRHandler, VCRMatchResult } from './lib/agent-vcr';
|
|
223
|
+
export { CoverageReporter } from './lib/coverage-reporter';
|
|
224
|
+
export type { FileCoverage, CoverageReport, CoverageThresholds, CoverageReporterConfig } from './lib/coverage-reporter';
|
|
225
|
+
export { ComparisonRunner } from './lib/comparison-runner';
|
|
226
|
+
export type { ComparisonHandler, ComparisonOutput, ComparisonConfig, ComparisonInput, RunResult, SideResult, ComparisonResult } from './lib/comparison-runner';
|
|
227
|
+
export { NoOpAuthValidator } from './lib/auth-validator';
|
|
228
|
+
export type { IAuthValidator, PermissionRequest, PermissionResult, AgentTrust } from './lib/auth-validator';
|
|
229
|
+
export { BlackboardValidator, QualityGateAgent, validateJsonSchema } from './lib/blackboard-validator';
|
|
230
|
+
export type { JsonSchema } from './lib/blackboard-validator';
|
|
709
231
|
export type { ValidationResult, ValidationIssue, ValidationConfig, QualityGateResult, GateDecision, AIReviewCallback, CustomValidationRule, } from './lib/blackboard-validator';
|
|
710
232
|
export { AdapterRegistry } from './adapters/adapter-registry';
|
|
711
233
|
export type { AdapterFactory } from './adapters/adapter-registry';
|
|
@@ -716,10 +238,12 @@ export { AutoGenAdapter } from './adapters/autogen-adapter';
|
|
|
716
238
|
export { CrewAIAdapter } from './adapters/crewai-adapter';
|
|
717
239
|
export { MCPAdapter } from './adapters/mcp-adapter';
|
|
718
240
|
export { CustomAdapter } from './adapters/custom-adapter';
|
|
719
|
-
export
|
|
241
|
+
export { MCPToolConsumer, StdioClientTransport, HttpClientTransport } from './lib/mcp-tool-consumer';
|
|
242
|
+
export type { MCPConsumerOptions, RemoteToolInfo, MCPClientTransport, JsonRpcRequest, JsonRpcResponse, ToolCallResult } from './lib/mcp-tool-consumer';
|
|
243
|
+
export type { TaskPayload, HandoffMessage, PermissionGrant, SwarmState, AgentStatus, TaskRecord, BlackboardEntry, ActiveGrant, ParallelTask, ParallelExecutionResult, SynthesisStrategy, ResourceProfile, AgentTrustConfig, NamedBlackboardOptions, } from './lib/orchestrator-types';
|
|
720
244
|
export type { IAgentAdapter, AgentPayload, AgentContext, AgentResult, AgentInfo, AdapterConfig, AdapterCapabilities, } from './types/agent-adapter';
|
|
721
|
-
export type { OpenClawSkill, SkillContext, SkillResult };
|
|
722
|
-
export type { ConflictResolutionStrategy, AgentPriority, LockedBlackboardOptions };
|
|
245
|
+
export type { OpenClawSkill, SkillContext, SkillResult } from './lib/orchestrator-types';
|
|
246
|
+
export type { ConflictResolutionStrategy, AgentPriority, LockedBlackboardOptions } from './lib/locked-blackboard';
|
|
723
247
|
export { FileBackend, MemoryBackend } from './lib/blackboard-backend';
|
|
724
248
|
export type { BlackboardBackend } from './lib/blackboard-backend';
|
|
725
249
|
export { RedisBackend } from './lib/blackboard-backend-redis';
|
|
@@ -735,7 +259,7 @@ export { McpBlackboardBridge, McpBridgeClient, McpBridgeRouter, McpInProcessTran
|
|
|
735
259
|
export type { McpJsonRpcRequest, McpJsonRpcResponse, McpJsonRpcError, McpListToolsResult, McpCallToolResult, McpContentBlock, McpTransport, McpBlackboardBridgeOptions, } from './lib/mcp-bridge';
|
|
736
260
|
export { Logger, LogLevel } from './lib/logger';
|
|
737
261
|
export type { LogEntry, LogTransport, LoggerConfig } from './lib/logger';
|
|
738
|
-
export { NetworkAIError, IdentityVerificationError, NamespaceViolationError, ValidationError, LockAcquisitionError, ConflictError, AdapterAlreadyRegisteredError, AdapterNotFoundError, AdapterNotInitializedError, ParallelLimitError, TimeoutError, } from './lib/errors';
|
|
262
|
+
export { NetworkAIError, IdentityVerificationError, NamespaceViolationError, ValidationError, LockAcquisitionError, ConflictError, AdapterAlreadyRegisteredError, AdapterNotFoundError, AdapterNotInitializedError, ParallelLimitError, TimeoutError, mapErrorToSkillResult, } from './lib/errors';
|
|
739
263
|
export { JourneyFSM, ToolAuthorizationMatrix, ComplianceMiddleware, ComplianceViolationError, createDeliveryPipelineFSM, WORKFLOW_STATES, } from './lib/fsm-journey';
|
|
740
264
|
export type { WorkflowStateDefinition, StateTransition, TransitionResult, ComplianceCheckResult, JourneyFSMOptions, } from './lib/fsm-journey';
|
|
741
265
|
export { ComplianceMonitor } from './lib/compliance-monitor';
|
|
@@ -762,6 +286,12 @@ export { AgentPool, WorkloadPartitioner, StrategyAgent, adaptiveStrategy, } from
|
|
|
762
286
|
export type { AgentTemplate, ManagedAgent, WorkChunk, StrategyPlan, SystemSnapshot, PoolStatus, StrategyFunction, StrategyEvents, StrategyAgentOptions, } from './lib/strategy-agent';
|
|
763
287
|
export { GoalDecomposer, TeamRunner, runTeam, createLLMPlanner, validateDAG, topologicalLayers, parsePlanJSON, } from './lib/goal-decomposer';
|
|
764
288
|
export type { TaskNode, TaskDAG, TeamAgent, PlannedTask, PlannerFunction, ExecutorFunction, RunTeamOptions, TeamResult, TeamRunnerEvents, } from './lib/goal-decomposer';
|
|
289
|
+
export { TopologyTracker } from './lib/topology';
|
|
290
|
+
export type { AgentNode, AgentNodeStatus, AgentRole, TopologyEdge, EdgeType, TopologyEvent, TopologyEventType, TopologySnapshot, TopologyTrackerEvents, TopologyTrackerOptions, PhaseMilestone, PhaseProgress, AttentionItem, AttentionPanel, TimelineSpan, AgentCluster, TopologyDelta, } from './lib/topology';
|
|
291
|
+
export { DashboardServer } from './lib/dashboard-server';
|
|
292
|
+
export type { DashboardServerOptions } from './lib/dashboard-server';
|
|
293
|
+
export { QuadTree } from './lib/quadtree';
|
|
294
|
+
export type { QTPoint, QTBounds, QTMass } from './lib/quadtree';
|
|
765
295
|
export { BlackboardMCPTools, registerBlackboardTools, BLACKBOARD_TOOL_DEFINITIONS, } from './lib/mcp-blackboard-tools';
|
|
766
296
|
export type { MCPToolDefinition, MCPJsonSchema, BlackboardToolResult, IBlackboard, } from './lib/mcp-blackboard-tools';
|
|
767
297
|
/**
|
|
@@ -849,5 +379,19 @@ export { MiniMaxAdapter } from './adapters/minimax-adapter';
|
|
|
849
379
|
export type { MiniMaxAgentConfig, MiniMaxChatClient } from './adapters/minimax-adapter';
|
|
850
380
|
export { NemoClawAdapter } from './adapters/nemoclaw-adapter';
|
|
851
381
|
export type { NemoClawAgentConfig, OpenShellExecutor, BlueprintAction, BlueprintRunResult, SandboxState, SandboxStatus, NetworkPolicy, PolicyEndpoint, } from './adapters/nemoclaw-adapter';
|
|
382
|
+
export { CopilotAdapter } from './adapters/copilot-adapter';
|
|
383
|
+
export type { CopilotTaskType, CopilotOptions, CopilotConnection } from './adapters/copilot-adapter';
|
|
384
|
+
export { LangGraphAdapter } from './adapters/langgraph-adapter';
|
|
385
|
+
export type { LangGraphRunnable, LangGraphStreamable, LangGraphAgentConfig } from './adapters/langgraph-adapter';
|
|
386
|
+
export { AnthropicComputerUseAdapter } from './adapters/anthropic-computer-use-adapter';
|
|
387
|
+
export type { ComputerAction, ComputerToolCall, ComputerToolResult, ComputerActionHandler, AnthropicMessagesClient, ComputerUseAgentConfig } from './adapters/anthropic-computer-use-adapter';
|
|
388
|
+
export { OpenAIAgentsAdapter } from './adapters/openai-agents-adapter';
|
|
389
|
+
export type { OAIAgentTool, OAIAgentRunResult, OAIAgentRunner, OAIAgentsConfig } from './adapters/openai-agents-adapter';
|
|
390
|
+
export { VertexAIAdapter } from './adapters/vertex-ai-adapter';
|
|
391
|
+
export type { VertexFunctionDeclaration, VertexContentPart, VertexGenerateResponse, VertexGenerativeClient, VertexFunctionExecutor, VertexAIAgentConfig } from './adapters/vertex-ai-adapter';
|
|
392
|
+
export { PydanticAIAdapter } from './adapters/pydantic-ai-adapter';
|
|
393
|
+
export type { PydanticAIRunResult, PydanticAIRunner, PydanticAIHttpConfig, PydanticAIAgentConfig } from './adapters/pydantic-ai-adapter';
|
|
394
|
+
export { BrowserAgentAdapter } from './adapters/browser-agent-adapter';
|
|
395
|
+
export type { BrowserMode, BrowserStep, BrowserActionResult, BrowserDriver, BrowserAgentConfig } from './adapters/browser-agent-adapter';
|
|
852
396
|
export type { StreamingChunk, IStreamingAdapter, StreamCollector } from './types/streaming-adapter';
|
|
853
397
|
//# sourceMappingURL=index.d.ts.map
|