network-ai 4.0.16 → 4.0.17
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 +44 -36
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
# Network-AI
|
|
2
2
|
|
|
3
3
|
**TypeScript/Node.js multi-agent orchestrator — shared state, guardrails, budgets, and cross-framework coordination**
|
|
4
4
|
|
|
5
5
|
[](https://github.com/jovanSAPFIONEER/Network-AI/actions/workflows/ci.yml)
|
|
6
6
|
[](https://github.com/jovanSAPFIONEER/Network-AI/actions/workflows/codeql.yml)
|
|
7
|
-
[](https://github.com/jovanSAPFIONEER/Network-AI/releases)
|
|
8
8
|
[](https://www.npmjs.com/package/network-ai)
|
|
9
9
|
[](#testing)
|
|
10
10
|
[](#adapter-system)
|
|
@@ -44,31 +44,37 @@ Network-AI is a TypeScript/Node.js multi-agent orchestrator that adds coordinati
|
|
|
44
44
|
|
|
45
45
|
## Architecture
|
|
46
46
|
|
|
47
|
+
```mermaid
|
|
48
|
+
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#1e293b', 'primaryTextColor': '#e2e8f0', 'primaryBorderColor': '#475569', 'lineColor': '#94a3b8', 'clusterBkg': '#0f172a', 'clusterBorder': '#334155', 'edgeLabelBackground': '#1e293b', 'edgeLabelColor': '#cbd5e1', 'titleColor': '#e2e8f0'}}}%%
|
|
49
|
+
flowchart TD
|
|
50
|
+
classDef app fill:#1e3a5f,stroke:#3b82f6,color:#bfdbfe,font-weight:bold
|
|
51
|
+
classDef security fill:#451a03,stroke:#d97706,color:#fde68a
|
|
52
|
+
classDef routing fill:#14532d,stroke:#16a34a,color:#bbf7d0
|
|
53
|
+
classDef quality fill:#3b0764,stroke:#9333ea,color:#e9d5ff
|
|
54
|
+
classDef blackboard fill:#0c4a6e,stroke:#0284c7,color:#bae6fd
|
|
55
|
+
classDef adapters fill:#064e3b,stroke:#059669,color:#a7f3d0
|
|
56
|
+
classDef audit fill:#1e293b,stroke:#475569,color:#94a3b8
|
|
57
|
+
|
|
58
|
+
App["Your Application"]:::app
|
|
59
|
+
App -->|"createSwarmOrchestrator()"| SO
|
|
60
|
+
|
|
61
|
+
subgraph SO["SwarmOrchestrator"]
|
|
62
|
+
AG["AuthGuardian\n(permission gating)"]:::security
|
|
63
|
+
AR["AdapterRegistry\n(route tasks to frameworks)"]:::routing
|
|
64
|
+
QG["QualityGateAgent\n(validate blackboard writes)"]:::quality
|
|
65
|
+
BB["SharedBlackboard\n(shared agent state)\npropose → validate → commit\nfilesystem mutex"]:::blackboard
|
|
66
|
+
AD["Adapters — plug any framework in, swap freely\nLangChain · AutoGen · CrewAI · MCP · LlamaIndex · …"]:::adapters
|
|
67
|
+
|
|
68
|
+
AG -->|"grant / deny"| AR
|
|
69
|
+
AR -->|"tasks dispatched"| AD
|
|
70
|
+
AD -->|"writes results"| BB
|
|
71
|
+
QG -->|"validates"| BB
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
SO --> AUDIT["data/audit_log.jsonl"]:::audit
|
|
47
75
|
```
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
└──────────────────────────┬──────────────────────────────────┘
|
|
51
|
-
│ createSwarmOrchestrator()
|
|
52
|
-
┌──────────────────────────▼──────────────────────────────────┐
|
|
53
|
-
│ SwarmOrchestrator │
|
|
54
|
-
│ ┌──────────────┐ ┌───────────────┐ ┌─────────────────┐ │
|
|
55
|
-
│ │ AdapterRegistry│ │ AuthGuardian │ │ FederatedBudget │ │
|
|
56
|
-
│ │ (route tasks) │ │ (permissions) │ │ (token ceilings)│ │
|
|
57
|
-
│ └──────┬───────┘ └───────────────┘ └─────────────────┘ │
|
|
58
|
-
│ │ │
|
|
59
|
-
│ ┌──────▼──────────────────────────────────────────────┐ │
|
|
60
|
-
│ │ LockedBlackboard (shared state) │ │
|
|
61
|
-
│ │ propose → validate → commit (file-system mutex) │ │
|
|
62
|
-
│ └──────────────────────────────────────────────────────┘ │
|
|
63
|
-
│ │ │
|
|
64
|
-
│ ┌──────▼───────────────────────────────────────────────┐ │
|
|
65
|
-
│ │ Adapters (plug any framework in, swap out freely) │ │
|
|
66
|
-
│ │ LangChain │ AutoGen │ CrewAI │ MCP │ LlamaIndex │… │ │
|
|
67
|
-
│ └──────────────────────────────────────────────────────┘ │
|
|
68
|
-
└─────────────────────────────────────────────────────────────┘
|
|
69
|
-
│
|
|
70
|
-
HMAC-signed audit log
|
|
71
|
-
```
|
|
76
|
+
|
|
77
|
+
> `FederatedBudget` is a standalone export — instantiate it separately and optionally wire it to a blackboard backend for cross-node token budget enforcement.
|
|
72
78
|
|
|
73
79
|
→ [Full architecture, FSM journey, and handoff protocol](ARCHITECTURE.md)
|
|
74
80
|
|
|
@@ -129,13 +135,15 @@ Add budgets, permissions, and cross-framework agents with the same pattern. →
|
|
|
129
135
|
|
|
130
136
|
## Demo — Control-Plane Stress Test *(no API key)*
|
|
131
137
|
|
|
132
|
-
Runs in ~
|
|
138
|
+
Runs in ~3 seconds. Proves the coordination primitives without any LLM calls.
|
|
133
139
|
|
|
134
140
|
```bash
|
|
135
141
|
npm run demo -- --08
|
|
136
142
|
```
|
|
137
143
|
|
|
138
|
-
What it shows: atomic blackboard locking, priority preemption (priority-3 wins over priority-0 on same key), FSM hard-stop at 700 ms, live compliance violation capture (TOOL_ABUSE, TURN_TAKING, RESPONSE_TIMEOUT, JOURNEY_TIMEOUT), and `FederatedBudget` tracking — all without a single API call.
|
|
144
|
+
What it shows: atomic blackboard locking, priority preemption (priority-3 wins over priority-0 on same key), **AuthGuardian permission gate** (blocked → justified → granted with token), FSM hard-stop at 700 ms, live compliance violation capture (TOOL_ABUSE, TURN_TAKING, RESPONSE_TIMEOUT, JOURNEY_TIMEOUT), and `FederatedBudget` tracking — all without a single API call.
|
|
145
|
+
|
|
146
|
+
[](https://www.youtube.com/watch?v=niVRZJu1MEo)
|
|
139
147
|
|
|
140
148
|
**8-agent AI pipeline** (requires `OPENAI_API_KEY` — builds a Payment Processing Service end-to-end):
|
|
141
149
|
|
|
@@ -176,12 +184,12 @@ Extend `BaseAdapter` to add your own in minutes. See [references/adapter-system.
|
|
|
176
184
|
|
|
177
185
|
| Capability | Network-AI | LangGraph | CrewAI | AutoGen |
|
|
178
186
|
|---|---|---|---|---|
|
|
179
|
-
| Cross-framework agents in one swarm | ✅ 12 adapters |
|
|
180
|
-
| Atomic shared state (conflict-safe) | ✅ `propose → validate → commit` | ⚠️
|
|
181
|
-
| Hard
|
|
182
|
-
| Permission gating before sensitive ops | ✅ `AuthGuardian` |
|
|
183
|
-
|
|
|
184
|
-
| Encryption at rest | ✅ AES-256-GCM |
|
|
187
|
+
| Cross-framework agents in one swarm | ✅ 12 built-in adapters | ⚠️ Nodes can call any code; no adapter abstraction | ⚠️ Extensible via tools; CrewAI-native agents only | ⚠️ Extensible via plugins; AutoGen-native agents only |
|
|
188
|
+
| Atomic shared state (conflict-safe) | ✅ `propose → validate → commit` mutex | ⚠️ State passed between nodes; last-write-wins | ⚠️ Shared memory available; no conflict resolution | ⚠️ Shared context available; no conflict resolution |
|
|
189
|
+
| Hard token ceiling per agent | ✅ `FederatedBudget` (first-class API) | ⚠️ Via callbacks / custom middleware | ⚠️ Via callbacks / custom middleware | ⚠️ Built-in token tracking in v0.4+; no swarm-level ceiling |
|
|
190
|
+
| Permission gating before sensitive ops | ✅ `AuthGuardian` (built-in) | ⚠️ Possible via custom node logic | ⚠️ Possible via custom tools | ⚠️ Possible via custom middleware |
|
|
191
|
+
| Append-only audit log | ✅ plain JSONL (`data/audit_log.jsonl`) | ⚠️ Not built-in | ⚠️ Not built-in | ⚠️ Not built-in |
|
|
192
|
+
| Encryption at rest | ✅ AES-256-GCM (TypeScript layer) | ⚠️ Not built-in | ⚠️ Not built-in | ⚠️ Not built-in |
|
|
185
193
|
| Language | TypeScript / Node.js | Python | Python | Python |
|
|
186
194
|
|
|
187
195
|
---
|
|
@@ -249,8 +257,8 @@ npm run test:priority # Priority & preemption
|
|
|
249
257
|
MIT License — [LICENSE](LICENSE) · [CHANGELOG](CHANGELOG.md) · [CONTRIBUTING](CONTRIBUTING.md) · [](https://github.com/jovanSAPFIONEER/Network-AI/releases.atom)
|
|
250
258
|
|
|
251
259
|
<details>
|
|
252
|
-
<summary>Keywords
|
|
260
|
+
<summary>Keywords</summary>
|
|
253
261
|
|
|
254
|
-
|
|
262
|
+
multi-agent · agent orchestration · AI agents · agentic AI · agentic workflow · TypeScript · Node.js · LangGraph · CrewAI · AutoGen · MCP · model-context-protocol · LlamaIndex · Semantic Kernel · OpenAI Assistants · Haystack · DSPy · Agno · OpenClaw · ClawHub · shared state · blackboard pattern · atomic commits · guardrails · token budgets · permission gating · audit trail · agent coordination · agent handoffs · governance · cost-awareness
|
|
255
263
|
|
|
256
264
|
</details>
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "network-ai",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.17",
|
|
4
4
|
"description": "AI agent orchestration framework for TypeScript/Node.js - plug-and-play multi-agent coordination with 12 frameworks (LangChain, AutoGen, CrewAI, OpenAI Assistants, LlamaIndex, Semantic Kernel, Haystack, DSPy, Agno, MCP, OpenClaw). Built-in security, swarm intelligence, and agentic workflow patterns.",
|
|
5
5
|
"homepage": "https://github.com/jovanSAPFIONEER/Network-AI#readme",
|
|
6
6
|
"main": "dist/index.js",
|