network-ai 5.0.0 → 5.1.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 +4 -4
- package/QUICKSTART.md +4 -4
- package/README.md +15 -12
- package/dist/adapters/custom-adapter.d.ts +1 -1
- package/dist/adapters/custom-adapter.js +1 -1
- package/dist/adapters/index.d.ts +2 -0
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +4 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/langchain-adapter.js +1 -1
- package/dist/adapters/langchain-adapter.js.map +1 -1
- package/dist/adapters/mcp-adapter.d.ts +1 -1
- package/dist/adapters/mcp-adapter.js +3 -3
- package/dist/adapters/mcp-adapter.js.map +1 -1
- package/dist/adapters/openclaw-adapter.d.ts +1 -1
- package/dist/adapters/openclaw-adapter.js +3 -3
- package/dist/adapters/openclaw-adapter.js.map +1 -1
- package/dist/adapters/orchestrator-adapter.d.ts +118 -0
- package/dist/adapters/orchestrator-adapter.d.ts.map +1 -0
- package/dist/adapters/orchestrator-adapter.js +219 -0
- package/dist/adapters/orchestrator-adapter.js.map +1 -0
- package/dist/demo-control-plane.d.ts +12 -0
- package/dist/demo-control-plane.d.ts.map +1 -0
- package/dist/demo-control-plane.js +147 -0
- package/dist/demo-control-plane.js.map +1 -0
- package/dist/demo-worktree-dashboard.d.ts +2 -0
- package/dist/demo-worktree-dashboard.d.ts.map +1 -0
- package/dist/demo-worktree-dashboard.js +131 -0
- package/dist/demo-worktree-dashboard.js.map +1 -0
- package/dist/examples/01-hello-swarm.d.ts +13 -0
- package/dist/examples/01-hello-swarm.d.ts.map +1 -0
- package/dist/examples/01-hello-swarm.js +165 -0
- package/dist/examples/01-hello-swarm.js.map +1 -0
- package/dist/examples/02-fsm-pipeline.d.ts +20 -0
- package/dist/examples/02-fsm-pipeline.d.ts.map +1 -0
- package/dist/examples/02-fsm-pipeline.js +189 -0
- package/dist/examples/02-fsm-pipeline.js.map +1 -0
- package/dist/examples/03-parallel-agents.d.ts +21 -0
- package/dist/examples/03-parallel-agents.d.ts.map +1 -0
- package/dist/examples/03-parallel-agents.js +192 -0
- package/dist/examples/03-parallel-agents.js.map +1 -0
- package/dist/examples/05-code-review-swarm.d.ts +21 -0
- package/dist/examples/05-code-review-swarm.d.ts.map +1 -0
- package/dist/examples/05-code-review-swarm.js +1177 -0
- package/dist/examples/05-code-review-swarm.js.map +1 -0
- package/dist/examples/06-ai-pipeline-demo.d.ts +24 -0
- package/dist/examples/06-ai-pipeline-demo.d.ts.map +1 -0
- package/dist/examples/06-ai-pipeline-demo.js +263 -0
- package/dist/examples/06-ai-pipeline-demo.js.map +1 -0
- package/dist/examples/07-full-showcase.d.ts +27 -0
- package/dist/examples/07-full-showcase.d.ts.map +1 -0
- package/dist/examples/07-full-showcase.js +946 -0
- package/dist/examples/07-full-showcase.js.map +1 -0
- package/dist/examples/08-control-plane-stress-demo.d.ts +19 -0
- package/dist/examples/08-control-plane-stress-demo.d.ts.map +1 -0
- package/dist/examples/08-control-plane-stress-demo.js +186 -0
- package/dist/examples/08-control-plane-stress-demo.js.map +1 -0
- package/dist/examples/09-real-langchain.d.ts +19 -0
- package/dist/examples/09-real-langchain.d.ts.map +1 -0
- package/dist/examples/09-real-langchain.js +231 -0
- package/dist/examples/09-real-langchain.js.map +1 -0
- package/dist/examples/10-nemoclaw-sandbox-swarm.d.ts +16 -0
- package/dist/examples/10-nemoclaw-sandbox-swarm.d.ts.map +1 -0
- package/dist/examples/10-nemoclaw-sandbox-swarm.js +270 -0
- package/dist/examples/10-nemoclaw-sandbox-swarm.js.map +1 -0
- package/dist/examples/demo-runner.d.ts +2 -0
- package/dist/examples/demo-runner.d.ts.map +1 -0
- package/dist/examples/demo-runner.js +119 -0
- package/dist/examples/demo-runner.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/auth-guardian.js.map +1 -1
- package/dist/lib/control-plane.d.ts +128 -0
- package/dist/lib/control-plane.d.ts.map +1 -0
- package/dist/lib/control-plane.js +527 -0
- package/dist/lib/control-plane.js.map +1 -0
- package/dist/lib/coverage-reporter.js.map +1 -1
- package/dist/lib/goal-dsl.d.ts.map +1 -1
- package/dist/lib/goal-dsl.js +0 -1
- package/dist/lib/goal-dsl.js.map +1 -1
- package/dist/lib/work-tree-dashboard.d.ts +130 -0
- package/dist/lib/work-tree-dashboard.d.ts.map +1 -0
- package/dist/lib/work-tree-dashboard.js +583 -0
- package/dist/lib/work-tree-dashboard.js.map +1 -0
- package/dist/lib/work-tree-ui.d.ts +107 -0
- package/dist/lib/work-tree-ui.d.ts.map +1 -0
- package/dist/lib/work-tree-ui.js +333 -0
- package/dist/lib/work-tree-ui.js.map +1 -0
- package/dist/lib/work-tree.d.ts +184 -0
- package/dist/lib/work-tree.d.ts.map +1 -0
- package/dist/lib/work-tree.js +480 -0
- package/dist/lib/work-tree.js.map +1 -0
- package/dist/security.d.ts.map +1 -1
- package/dist/security.js +3 -2
- package/dist/security.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"07-full-showcase.js","sourceRoot":"","sources":["../../examples/07-full-showcase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 08-control-plane-stress-demo.ts
|
|
3
|
+
* ───────────────────────────────
|
|
4
|
+
* Control-plane focused demo (no API key required):
|
|
5
|
+
*
|
|
6
|
+
* - LockedBlackboard atomic workflow: propose → validate → commit
|
|
7
|
+
* - Priority preemption with conflictResolution='priority-wins'
|
|
8
|
+
* - AuthGuardian permission gate: blocked → justified → granted
|
|
9
|
+
* - JourneyFSM state governance + timeout detection
|
|
10
|
+
* - ComplianceMonitor real-time violations (tool abuse, turn-taking, response timeout, journey timeout)
|
|
11
|
+
* - FederatedBudget spend enforcement snapshot
|
|
12
|
+
*
|
|
13
|
+
* Run:
|
|
14
|
+
* npx ts-node examples/08-control-plane-stress-demo.ts
|
|
15
|
+
*
|
|
16
|
+
* Demo video: https://www.youtube.com/watch?v=niVRZJu1MEo
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=08-control-plane-stress-demo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"08-control-plane-stress-demo.d.ts","sourceRoot":"","sources":["../../examples/08-control-plane-stress-demo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 08-control-plane-stress-demo.ts
|
|
4
|
+
* ───────────────────────────────
|
|
5
|
+
* Control-plane focused demo (no API key required):
|
|
6
|
+
*
|
|
7
|
+
* - LockedBlackboard atomic workflow: propose → validate → commit
|
|
8
|
+
* - Priority preemption with conflictResolution='priority-wins'
|
|
9
|
+
* - AuthGuardian permission gate: blocked → justified → granted
|
|
10
|
+
* - JourneyFSM state governance + timeout detection
|
|
11
|
+
* - ComplianceMonitor real-time violations (tool abuse, turn-taking, response timeout, journey timeout)
|
|
12
|
+
* - FederatedBudget spend enforcement snapshot
|
|
13
|
+
*
|
|
14
|
+
* Run:
|
|
15
|
+
* npx ts-node examples/08-control-plane-stress-demo.ts
|
|
16
|
+
*
|
|
17
|
+
* Demo video: https://www.youtube.com/watch?v=niVRZJu1MEo
|
|
18
|
+
*/
|
|
19
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
26
|
+
}) : (function(o, m, k, k2) {
|
|
27
|
+
if (k2 === undefined) k2 = k;
|
|
28
|
+
o[k2] = m[k];
|
|
29
|
+
}));
|
|
30
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
31
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
32
|
+
}) : function(o, v) {
|
|
33
|
+
o["default"] = v;
|
|
34
|
+
});
|
|
35
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
36
|
+
var ownKeys = function(o) {
|
|
37
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
38
|
+
var ar = [];
|
|
39
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
40
|
+
return ar;
|
|
41
|
+
};
|
|
42
|
+
return ownKeys(o);
|
|
43
|
+
};
|
|
44
|
+
return function (mod) {
|
|
45
|
+
if (mod && mod.__esModule) return mod;
|
|
46
|
+
var result = {};
|
|
47
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
48
|
+
__setModuleDefault(result, mod);
|
|
49
|
+
return result;
|
|
50
|
+
};
|
|
51
|
+
})();
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
const path = __importStar(require("node:path"));
|
|
54
|
+
const __1 = require("..");
|
|
55
|
+
const federated_budget_1 = require("../lib/federated-budget");
|
|
56
|
+
const locked_blackboard_1 = require("../lib/locked-blackboard");
|
|
57
|
+
const c = {
|
|
58
|
+
reset: '\x1b[0m',
|
|
59
|
+
bold: '\x1b[1m',
|
|
60
|
+
dim: '\x1b[2m',
|
|
61
|
+
cyan: '\x1b[36m',
|
|
62
|
+
green: '\x1b[32m',
|
|
63
|
+
yellow: '\x1b[33m',
|
|
64
|
+
red: '\x1b[31m',
|
|
65
|
+
magenta: '\x1b[35m',
|
|
66
|
+
};
|
|
67
|
+
function banner(title) {
|
|
68
|
+
const line = '═'.repeat(64);
|
|
69
|
+
console.log(`\n${c.bold}${c.cyan}${line}${c.reset}`);
|
|
70
|
+
console.log(`${c.bold}${c.cyan} ${title}${c.reset}`);
|
|
71
|
+
console.log(`${c.bold}${c.cyan}${line}${c.reset}\n`);
|
|
72
|
+
}
|
|
73
|
+
function tag(scope, msg, color = c.green) {
|
|
74
|
+
console.log(` ${color}${c.bold}[${scope.padEnd(18)}]${c.reset} ${msg}`);
|
|
75
|
+
}
|
|
76
|
+
function sleep(ms) {
|
|
77
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
78
|
+
}
|
|
79
|
+
async function main() {
|
|
80
|
+
banner('Network-AI — Control Plane Stress Demo');
|
|
81
|
+
const basePath = path.join(__dirname, '..', 'data', 'demo-08-control-plane');
|
|
82
|
+
const bb = new locked_blackboard_1.LockedBlackboard(basePath, { conflictResolution: 'priority-wins' });
|
|
83
|
+
const budget = new federated_budget_1.FederatedBudget({ ceiling: 5_000 });
|
|
84
|
+
const fsm = new __1.JourneyFSM({
|
|
85
|
+
states: [
|
|
86
|
+
{ name: __1.WORKFLOW_STATES.INTAKE, authorizedAgents: ['orchestrator'], description: 'Task intake' },
|
|
87
|
+
{ name: __1.WORKFLOW_STATES.EXECUTE, authorizedAgents: ['executor', 'debugger'], description: 'Execution', timeoutMs: 700 },
|
|
88
|
+
{ name: __1.WORKFLOW_STATES.REVIEW, authorizedAgents: ['reviewer'], description: 'Review stage' },
|
|
89
|
+
{ name: __1.WORKFLOW_STATES.DELIVER, authorizedAgents: ['orchestrator'], description: 'Delivery' },
|
|
90
|
+
],
|
|
91
|
+
transitions: [
|
|
92
|
+
{ from: __1.WORKFLOW_STATES.INTAKE, event: 'start_exec', to: __1.WORKFLOW_STATES.EXECUTE, allowedBy: 'orchestrator' },
|
|
93
|
+
{ from: __1.WORKFLOW_STATES.EXECUTE, event: 'exec_done', to: __1.WORKFLOW_STATES.REVIEW, allowedBy: 'executor' },
|
|
94
|
+
{ from: __1.WORKFLOW_STATES.REVIEW, event: 'approved', to: __1.WORKFLOW_STATES.DELIVER, allowedBy: 'reviewer' },
|
|
95
|
+
],
|
|
96
|
+
initialState: __1.WORKFLOW_STATES.INTAKE,
|
|
97
|
+
onTransition: t => tag('FSM', `${t.previousState} → ${t.currentState}`, c.yellow),
|
|
98
|
+
});
|
|
99
|
+
// Track first occurrence per violation type+agent — suppress duplicates for clean output
|
|
100
|
+
const seenViolations = new Map();
|
|
101
|
+
const monitor = new __1.ComplianceMonitor({
|
|
102
|
+
pollIntervalMs: 200,
|
|
103
|
+
fsm,
|
|
104
|
+
agentConfigs: [
|
|
105
|
+
{ agentId: 'executor', responseTimeoutMs: 500, maxToolCallsPerWindow: 3, toolRateWindowMs: 1000 },
|
|
106
|
+
{ agentId: 'debugger', responseTimeoutMs: 500, maxToolCallsPerWindow: 2, toolRateWindowMs: 1000 },
|
|
107
|
+
],
|
|
108
|
+
onViolation: v => {
|
|
109
|
+
const key = `${v.type}|${v.agentId}`;
|
|
110
|
+
const count = seenViolations.get(key) ?? 0;
|
|
111
|
+
seenViolations.set(key, count + 1);
|
|
112
|
+
if (count === 0) {
|
|
113
|
+
tag('COMPLIANCE', `${v.type} | ${v.agentId} | ${v.message}`, c.red);
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
monitor.start();
|
|
118
|
+
banner('Phase 1 — Priority Preemption (LockedBlackboard)');
|
|
119
|
+
const lowChange = bb.propose('task:invoice-42', { status: 'queued', owner: 'agent_low' }, 'agent_low', undefined, 0);
|
|
120
|
+
tag('blackboard', `low priority change proposed: ${lowChange}`, c.dim);
|
|
121
|
+
const lowValid = bb.validate(lowChange, 'orchestrator');
|
|
122
|
+
const lowCommit = lowValid ? bb.commit(lowChange) : { success: false, message: 'validate failed' };
|
|
123
|
+
tag('blackboard', `low change validate=${lowValid} commit=${lowCommit.success}`, lowCommit.success ? c.green : c.red);
|
|
124
|
+
const highChange = bb.propose('task:invoice-42', { status: 'approved', owner: 'agent_high' }, 'agent_high', undefined, 3);
|
|
125
|
+
tag('blackboard', `high priority change proposed: ${highChange}`, c.dim);
|
|
126
|
+
const highValid = bb.validate(highChange, 'orchestrator');
|
|
127
|
+
const highCommit = highValid ? bb.commit(highChange) : { success: false, message: 'validate failed' };
|
|
128
|
+
tag('blackboard', `high change validate=${highValid} commit=${highCommit.success}`, highCommit.success ? c.green : c.red);
|
|
129
|
+
const entry = bb.read('task:invoice-42');
|
|
130
|
+
tag('blackboard', `final value: ${JSON.stringify(entry?.value ?? null)}`, c.magenta);
|
|
131
|
+
banner('Phase 2 — Permission Gate (AuthGuardian)');
|
|
132
|
+
const guardian = new __1.AuthGuardian({
|
|
133
|
+
trustLevels: [
|
|
134
|
+
{ agentId: 'executor', trustLevel: 0.5, allowedResources: ['FILESYSTEM', 'PAYMENTS'] },
|
|
135
|
+
],
|
|
136
|
+
});
|
|
137
|
+
// Attempt 1: weak justification → BLOCKED
|
|
138
|
+
const denied = await guardian.requestPermission('executor', 'PAYMENTS', 'need it', 'read');
|
|
139
|
+
tag('auth', `executor → PAYMENTS: ${denied.granted ? 'GRANTED' : 'BLOCKED'} — "${denied.reason}"`, c.red);
|
|
140
|
+
// Attempt 2: strong justification → GRANTED
|
|
141
|
+
const granted = await guardian.requestPermission('executor', 'PAYMENTS', 'Processing invoice-42 settlement: need to read the PAYMENTS transaction ledger in order to verify the exact balance before committing blackboard state.', 'read');
|
|
142
|
+
if (granted.granted) {
|
|
143
|
+
tag('auth', `executor → PAYMENTS: GRANTED (token=${granted.grantToken?.slice(0, 16)}… expires=${granted.expiresAt?.slice(11, 19)} UTC)`, c.green);
|
|
144
|
+
tag('auth', `restrictions: ${JSON.stringify(granted.restrictions)}`, c.dim);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
tag('auth', `executor → PAYMENTS: DENIED — ${granted.reason}`, c.red);
|
|
148
|
+
}
|
|
149
|
+
banner('Phase 3 — FSM + Compliance Violations');
|
|
150
|
+
fsm.transition('start_exec', 'orchestrator');
|
|
151
|
+
for (let i = 1; i <= 6; i++) {
|
|
152
|
+
monitor.recordAction({ agentId: 'executor', action: `tool_call_${i}`, tool: 'write_file' });
|
|
153
|
+
}
|
|
154
|
+
tag('executor', 'Recorded 6 rapid write_file calls (tool abuse expected)', c.yellow);
|
|
155
|
+
for (let i = 1; i <= 5; i++) {
|
|
156
|
+
monitor.recordAction({ agentId: 'executor', action: `consecutive_${i}` });
|
|
157
|
+
}
|
|
158
|
+
tag('executor', 'Recorded 5 consecutive actions (turn-taking violation expected)', c.yellow);
|
|
159
|
+
await sleep(300);
|
|
160
|
+
monitor.recordAction({ agentId: 'debugger', action: 'single_action', tool: 'read_file' });
|
|
161
|
+
tag('debugger', 'Waiting to trigger response/journey timeouts...', c.yellow);
|
|
162
|
+
await sleep(1200);
|
|
163
|
+
const spendExec = budget.spend('executor', 1200);
|
|
164
|
+
const spendDbg = budget.spend('debugger', 800);
|
|
165
|
+
tag('budget', `executor spend allowed=${spendExec.allowed}`, spendExec.allowed ? c.green : c.red);
|
|
166
|
+
tag('budget', `debugger spend allowed=${spendDbg.allowed}`, spendDbg.allowed ? c.green : c.red);
|
|
167
|
+
banner('Phase 4 — Summary');
|
|
168
|
+
const summary = monitor.getSummary();
|
|
169
|
+
tag('summary', `violations total=${summary.total}`, c.magenta);
|
|
170
|
+
tag('summary', `byType=${JSON.stringify(summary.byType)}`, c.dim);
|
|
171
|
+
tag('summary', `byAgent=${JSON.stringify(summary.byAgent)}`, c.dim);
|
|
172
|
+
const suppressed = [...seenViolations.entries()].filter(([, n]) => n > 1).map(([k, n]) => `${k.split('|')[0]}×${n}`).join(', ');
|
|
173
|
+
if (suppressed)
|
|
174
|
+
tag('summary', `duplicate violations suppressed: ${suppressed}`, c.dim);
|
|
175
|
+
const keys = bb.listKeys();
|
|
176
|
+
tag('blackboard', `keys=${JSON.stringify(keys)}`, c.dim);
|
|
177
|
+
tag('blackboard', `lockStatus=${JSON.stringify(bb.getLockStatus())}`, c.dim);
|
|
178
|
+
tag('fsm', `currentState=${fsm.state} timedOut=${fsm.isTimedOut} elapsedMs=${fsm.timeInCurrentState}`, c.dim);
|
|
179
|
+
monitor.stop();
|
|
180
|
+
console.log(`\n${c.bold}${c.green}✓ Control-plane stress demo complete.${c.reset}\n`);
|
|
181
|
+
}
|
|
182
|
+
main().catch(err => {
|
|
183
|
+
console.error(`\n${c.red}Demo failed:${c.reset}`, err?.message ?? err);
|
|
184
|
+
process.exit(1);
|
|
185
|
+
});
|
|
186
|
+
//# sourceMappingURL=08-control-plane-stress-demo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"08-control-plane-stress-demo.js","sourceRoot":"","sources":["../../examples/08-control-plane-stress-demo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example 09 — Real LangChain Integration
|
|
3
|
+
*
|
|
4
|
+
* Shows how to wire an actual LangChain Runnable (chain, agent, or graph)
|
|
5
|
+
* into Network-AI's LangChainAdapter, then run it inside the orchestrator
|
|
6
|
+
* with AuthGuardian permission gating and blackboard persistence.
|
|
7
|
+
*
|
|
8
|
+
* Prerequisites:
|
|
9
|
+
* npm install @langchain/openai @langchain/core
|
|
10
|
+
* export OPENAI_API_KEY=sk-...
|
|
11
|
+
*
|
|
12
|
+
* Or with any other LangChain-compatible provider — swap ChatOpenAI for
|
|
13
|
+
* ChatAnthropic, ChatGroq, ChatOllama, etc. without changing anything else.
|
|
14
|
+
*
|
|
15
|
+
* Run:
|
|
16
|
+
* npx ts-node examples/09-real-langchain.ts
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=09-real-langchain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"09-real-langchain.d.ts","sourceRoot":"","sources":["../../examples/09-real-langchain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Example 09 — Real LangChain Integration
|
|
4
|
+
*
|
|
5
|
+
* Shows how to wire an actual LangChain Runnable (chain, agent, or graph)
|
|
6
|
+
* into Network-AI's LangChainAdapter, then run it inside the orchestrator
|
|
7
|
+
* with AuthGuardian permission gating and blackboard persistence.
|
|
8
|
+
*
|
|
9
|
+
* Prerequisites:
|
|
10
|
+
* npm install @langchain/openai @langchain/core
|
|
11
|
+
* export OPENAI_API_KEY=sk-...
|
|
12
|
+
*
|
|
13
|
+
* Or with any other LangChain-compatible provider — swap ChatOpenAI for
|
|
14
|
+
* ChatAnthropic, ChatGroq, ChatOllama, etc. without changing anything else.
|
|
15
|
+
*
|
|
16
|
+
* Run:
|
|
17
|
+
* npx ts-node examples/09-real-langchain.ts
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
// ─── Step 1: Import Network-AI pieces ────────────────────────────────────────
|
|
21
|
+
const index_1 = require("../index");
|
|
22
|
+
// ─── Step 2: Import real LangChain objects ───────────────────────────────────
|
|
23
|
+
// These are your existing chains/agents — Network-AI never instantiates them,
|
|
24
|
+
// you bring your own and hand them to the adapter.
|
|
25
|
+
//
|
|
26
|
+
// Uncomment when @langchain/openai and @langchain/core are installed:
|
|
27
|
+
//
|
|
28
|
+
// import { ChatOpenAI } from '@langchain/openai';
|
|
29
|
+
// import { ChatPromptTemplate } from '@langchain/core/prompts';
|
|
30
|
+
// import { StringOutputParser } from '@langchain/core/output_parsers';
|
|
31
|
+
// import { RunnableSequence } from '@langchain/core/runnables';
|
|
32
|
+
// ─── Simulation helpers (remove once real imports above are uncommented) ─────
|
|
33
|
+
/** Simulates the shape of a LangChain Runnable for offline demo purposes. */
|
|
34
|
+
function mockRunnable(name, mockOutput) {
|
|
35
|
+
return {
|
|
36
|
+
invoke: async (input, _config) => {
|
|
37
|
+
console.log(` [${name}] invoking with:`, JSON.stringify(input).slice(0, 120));
|
|
38
|
+
await new Promise(r => setTimeout(r, 80)); // simulate LLM latency
|
|
39
|
+
return mockOutput(input);
|
|
40
|
+
},
|
|
41
|
+
// Real LangChain chains also expose .stream() — used by LangChainStreamingAdapter
|
|
42
|
+
stream: async function* (input, _config) {
|
|
43
|
+
const full = await mockOutput(input);
|
|
44
|
+
const text = full?.output ?? String(full);
|
|
45
|
+
const words = text.split(' ');
|
|
46
|
+
for (const word of words) {
|
|
47
|
+
yield word + ' ';
|
|
48
|
+
await new Promise(r => setTimeout(r, 10));
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
// ─── Colors ──────────────────────────────────────────────────────────────────
|
|
54
|
+
const c = {
|
|
55
|
+
bold: '\x1b[1m',
|
|
56
|
+
cyan: '\x1b[36m',
|
|
57
|
+
green: '\x1b[32m',
|
|
58
|
+
yellow: '\x1b[33m',
|
|
59
|
+
dim: '\x1b[2m',
|
|
60
|
+
reset: '\x1b[0m',
|
|
61
|
+
};
|
|
62
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
63
|
+
// MAIN
|
|
64
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
65
|
+
async function main() {
|
|
66
|
+
console.log(`\n${c.bold}${c.cyan}Example 09 — Real LangChain Integration${c.reset}`);
|
|
67
|
+
console.log(`${c.dim}Wire your own Runnables into Network-AI with zero boilerplate${c.reset}\n`);
|
|
68
|
+
// ── 1. Build your LangChain chains ──────────────────────────────────────────
|
|
69
|
+
// Replace mockRunnable() with your real chain:
|
|
70
|
+
//
|
|
71
|
+
// const llm = new ChatOpenAI({ model: 'gpt-4o', temperature: 0 });
|
|
72
|
+
// const prompt = ChatPromptTemplate.fromMessages([
|
|
73
|
+
// ['system', 'You are a senior financial analyst.'],
|
|
74
|
+
// ['human', '{input}'],
|
|
75
|
+
// ]);
|
|
76
|
+
// const analysisChain = RunnableSequence.from([prompt, llm, new StringOutputParser()]);
|
|
77
|
+
//
|
|
78
|
+
const analysisChain = mockRunnable('analyst-chain', (input) => {
|
|
79
|
+
const inp = input;
|
|
80
|
+
return {
|
|
81
|
+
output: `Revenue grew 18% YoY. Key drivers: ${inp.input ?? 'Q4 revenue data'}. ` +
|
|
82
|
+
`Recommendation: increase marketing budget by 12%.`,
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
// const summaryChain = RunnableSequence.from([summaryPrompt, llm, new StringOutputParser()]);
|
|
86
|
+
const summaryChain = mockRunnable('summary-chain', (input) => {
|
|
87
|
+
const inp = input;
|
|
88
|
+
const analysis = (inp.analysis ?? inp.input ?? '');
|
|
89
|
+
return {
|
|
90
|
+
output: `Executive summary: ${analysis.slice(0, 60)}... Action required.`,
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
// ── 2. Register them in a LangChainAdapter ───────────────────────────────────
|
|
94
|
+
// This is the ONLY Network-AI-specific step. Pass your real Runnable object
|
|
95
|
+
// directly — the adapter calls .invoke() using LangChain's own interface.
|
|
96
|
+
const langchainAdapter = new index_1.LangChainAdapter();
|
|
97
|
+
await langchainAdapter.initialize({});
|
|
98
|
+
langchainAdapter.registerAgent('analyst', analysisChain, {
|
|
99
|
+
description: 'Financial analysis chain (GPT-4o)',
|
|
100
|
+
capabilities: ['analysis', 'finance'],
|
|
101
|
+
});
|
|
102
|
+
langchainAdapter.registerAgent('summarizer', summaryChain, {
|
|
103
|
+
description: 'Executive summary chain (GPT-4o)',
|
|
104
|
+
capabilities: ['summarization'],
|
|
105
|
+
});
|
|
106
|
+
console.log(`${c.green}[✓]${c.reset} Registered 2 LangChain agents (analyst, summarizer)`);
|
|
107
|
+
// ── 3. Add a plain CustomAdapter agent for comparison ───────────────────────
|
|
108
|
+
// Mix any other adapter type in the same registry — no restrictions.
|
|
109
|
+
const customAdapter = new index_1.CustomAdapter();
|
|
110
|
+
await customAdapter.initialize({});
|
|
111
|
+
customAdapter.registerHandler('formatter', async (payload) => {
|
|
112
|
+
const instruction = payload.handoff?.instruction ?? '';
|
|
113
|
+
return {
|
|
114
|
+
report: `[FORMATTED REPORT] ${instruction}`,
|
|
115
|
+
generatedAt: new Date().toISOString(),
|
|
116
|
+
};
|
|
117
|
+
});
|
|
118
|
+
console.log(`${c.green}[✓]${c.reset} Registered 1 Custom agent (formatter)`);
|
|
119
|
+
// ── 4. Create the orchestrator with both adapters ───────────────────────────
|
|
120
|
+
const registry = new index_1.AdapterRegistry();
|
|
121
|
+
await registry.addAdapter(langchainAdapter);
|
|
122
|
+
await registry.addAdapter(customAdapter);
|
|
123
|
+
const orchestrator = (0, index_1.createSwarmOrchestrator)({
|
|
124
|
+
adapterRegistry: registry,
|
|
125
|
+
// Trust levels — analyst needs DATABASE access for the permission gate demo
|
|
126
|
+
trustLevels: [
|
|
127
|
+
{ agentId: 'orchestrator', trustLevel: 0.9, allowedNamespaces: ['*'], allowedResources: ['*'] },
|
|
128
|
+
{ agentId: 'analyst', trustLevel: 0.8, allowedNamespaces: ['task:', 'analytics:'], allowedResources: ['DATABASE', 'FINANCIAL_API'] },
|
|
129
|
+
{ agentId: 'summarizer', trustLevel: 0.8, allowedNamespaces: ['task:', 'analytics:'], allowedResources: ['DATA_EXPORT'] },
|
|
130
|
+
{ agentId: 'formatter', trustLevel: 0.7, allowedNamespaces: ['task:', 'report:'], allowedResources: ['DATA_EXPORT'] },
|
|
131
|
+
],
|
|
132
|
+
});
|
|
133
|
+
console.log(`${c.green}[✓]${c.reset} Orchestrator created with LangChain + Custom adapters\n`);
|
|
134
|
+
// ── 5. AuthGuardian permission gate ─────────────────────────────────────────
|
|
135
|
+
console.log(`${c.cyan}${c.bold}Phase 1 — Permission gate${c.reset}`);
|
|
136
|
+
const permResult = await orchestrator.execute('request_permission', {
|
|
137
|
+
resourceType: 'FINANCIAL_API',
|
|
138
|
+
justification: 'Need access to Q4 financial data for annual revenue analysis task-2026',
|
|
139
|
+
scope: 'read',
|
|
140
|
+
}, { agentId: 'analyst', taskId: 'task-q4-2026' });
|
|
141
|
+
const grantToken = permResult.data?.grantToken;
|
|
142
|
+
console.log(` Permission: ${permResult.success ? `${c.green}GRANTED${c.reset}` : `\x1b[31mDENIED${c.reset}`}`);
|
|
143
|
+
if (grantToken) {
|
|
144
|
+
console.log(` Token: ${c.dim}${grantToken.slice(0, 20)}...${c.reset}`);
|
|
145
|
+
}
|
|
146
|
+
// ── 6. Delegate to the real LangChain analyst chain ─────────────────────────
|
|
147
|
+
console.log(`\n${c.cyan}${c.bold}Phase 2 — LangChain analyst chain${c.reset}`);
|
|
148
|
+
const analysisResult = await orchestrator.execute('delegate_task', {
|
|
149
|
+
targetAgent: 'langchain:analyst',
|
|
150
|
+
taskPayload: {
|
|
151
|
+
instruction: 'Analyze Q4 2026 revenue data and identify key growth drivers',
|
|
152
|
+
context: { quarter: 'Q4', year: 2026, grantToken },
|
|
153
|
+
expectedOutput: 'JSON with revenue metrics and recommendations',
|
|
154
|
+
},
|
|
155
|
+
}, { agentId: 'orchestrator', taskId: 'task-q4-2026' });
|
|
156
|
+
const analysis = analysisResult.success
|
|
157
|
+
? analysisResult.data?.result?.data
|
|
158
|
+
: null;
|
|
159
|
+
console.log(` Result: ${analysisResult.success ? c.green + 'OK' + c.reset : '\x1b[31mFAIL\x1b[0m'}`);
|
|
160
|
+
if (analysis) {
|
|
161
|
+
const text = typeof analysis === 'string' ? analysis : JSON.stringify(analysis);
|
|
162
|
+
console.log(` Output: ${c.dim}${text.slice(0, 100)}...${c.reset}`);
|
|
163
|
+
}
|
|
164
|
+
// ── 7. Pipe the analysis result into the summarizer chain ───────────────────
|
|
165
|
+
console.log(`\n${c.cyan}${c.bold}Phase 3 — LangChain summarizer chain${c.reset}`);
|
|
166
|
+
const summaryResult = await orchestrator.execute('delegate_task', {
|
|
167
|
+
targetAgent: 'langchain:summarizer',
|
|
168
|
+
taskPayload: {
|
|
169
|
+
instruction: typeof analysis === 'string'
|
|
170
|
+
? analysis
|
|
171
|
+
: 'Summarize the Q4 2026 revenue analysis for the board',
|
|
172
|
+
context: { previousAgent: 'analyst' },
|
|
173
|
+
expectedOutput: 'One-paragraph executive summary',
|
|
174
|
+
},
|
|
175
|
+
}, { agentId: 'orchestrator', taskId: 'task-q4-2026' });
|
|
176
|
+
const summary = summaryResult.success
|
|
177
|
+
? summaryResult.data?.result?.data
|
|
178
|
+
: null;
|
|
179
|
+
console.log(` Result: ${summaryResult.success ? c.green + 'OK' + c.reset : '\x1b[31mFAIL\x1b[0m'}`);
|
|
180
|
+
if (summary) {
|
|
181
|
+
const text = typeof summary === 'string' ? summary : JSON.stringify(summary);
|
|
182
|
+
console.log(` Output: ${c.dim}${text.slice(0, 100)}...${c.reset}`);
|
|
183
|
+
}
|
|
184
|
+
// ── 8. Persist the final report via the formatter (CustomAdapter) ───────────
|
|
185
|
+
console.log(`\n${c.cyan}${c.bold}Phase 4 — Custom formatter agent (cross-framework)${c.reset}`);
|
|
186
|
+
const formatResult = await orchestrator.execute('delegate_task', {
|
|
187
|
+
targetAgent: 'custom:formatter',
|
|
188
|
+
taskPayload: {
|
|
189
|
+
instruction: typeof summary === 'string' ? summary : 'Q4 analysis complete',
|
|
190
|
+
expectedOutput: 'Formatted report string',
|
|
191
|
+
},
|
|
192
|
+
}, { agentId: 'orchestrator', taskId: 'task-q4-2026' });
|
|
193
|
+
const report = formatResult.success
|
|
194
|
+
? formatResult.data?.result?.data
|
|
195
|
+
: null;
|
|
196
|
+
console.log(` Result: ${formatResult.success ? c.green + 'OK' + c.reset : '\x1b[31mFAIL\x1b[0m'}`);
|
|
197
|
+
if (report) {
|
|
198
|
+
const text = typeof report === 'string' ? report : JSON.stringify(report);
|
|
199
|
+
console.log(` Output: ${c.dim}${text.slice(0, 120)}${c.reset}`);
|
|
200
|
+
}
|
|
201
|
+
// ── 9. Write final result to the shared blackboard ──────────────────────────
|
|
202
|
+
console.log(`\n${c.cyan}${c.bold}Phase 5 — Write to shared blackboard${c.reset}`);
|
|
203
|
+
const bbWrite = await orchestrator.execute('update_blackboard', {
|
|
204
|
+
key: 'report:q4-2026',
|
|
205
|
+
value: {
|
|
206
|
+
analysis,
|
|
207
|
+
summary,
|
|
208
|
+
report,
|
|
209
|
+
agents: ['analyst', 'summarizer', 'formatter'],
|
|
210
|
+
completedAt: new Date().toISOString(),
|
|
211
|
+
},
|
|
212
|
+
ttl: 3600,
|
|
213
|
+
}, { agentId: 'orchestrator' });
|
|
214
|
+
console.log(` Blackboard write: ${bbWrite.success ? c.green + 'OK' + c.reset : '\x1b[31mFAIL\x1b[0m'}`);
|
|
215
|
+
// ── Summary ──────────────────────────────────────────────────────────────────
|
|
216
|
+
console.log(`\n${c.bold}${'─'.repeat(58)}${c.reset}`);
|
|
217
|
+
console.log(`${c.bold} Done.${c.reset}`);
|
|
218
|
+
console.log(` • 2 LangChain Runnables + 1 Custom handler`);
|
|
219
|
+
console.log(` • AuthGuardian permission gate → analysis chain → summary chain → formatter`);
|
|
220
|
+
console.log(` • Final result persisted to blackboard key ${c.cyan}report:q4-2026${c.reset}`);
|
|
221
|
+
console.log(`\n${c.dim}To use real LangChain objects:${c.reset}`);
|
|
222
|
+
console.log(` ${c.dim}1. npm install @langchain/openai @langchain/core${c.reset}`);
|
|
223
|
+
console.log(` ${c.dim}2. Replace mockRunnable() calls with your real chains${c.reset}`);
|
|
224
|
+
console.log(` ${c.dim}3. Set OPENAI_API_KEY (or any other provider)${c.reset}`);
|
|
225
|
+
console.log(`${c.bold}${'─'.repeat(58)}${c.reset}\n`);
|
|
226
|
+
}
|
|
227
|
+
main().catch(err => {
|
|
228
|
+
console.error('\nFatal:', err instanceof Error ? err.message : err);
|
|
229
|
+
process.exit(1);
|
|
230
|
+
});
|
|
231
|
+
//# sourceMappingURL=09-real-langchain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"09-real-langchain.js","sourceRoot":"","sources":["../../examples/09-real-langchain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 10-nemoclaw-sandbox-swarm.ts
|
|
3
|
+
* ────────────────────────────
|
|
4
|
+
* Demonstrates three agents running in isolated NemoClaw sandboxes,
|
|
5
|
+
* coordinating through a shared blackboard. Each agent has its own
|
|
6
|
+
* deny-by-default network policy — only the endpoints it needs are
|
|
7
|
+
* accessible.
|
|
8
|
+
*
|
|
9
|
+
* No API key needed — uses mock sandbox executor for demo purposes.
|
|
10
|
+
* In production, replace the mock executor with a real OpenShell CLI.
|
|
11
|
+
*
|
|
12
|
+
* Run:
|
|
13
|
+
* npx ts-node examples/10-nemoclaw-sandbox-swarm.ts
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=10-nemoclaw-sandbox-swarm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"10-nemoclaw-sandbox-swarm.d.ts","sourceRoot":"","sources":["../../examples/10-nemoclaw-sandbox-swarm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|