@terminals-tech/agent-zero 1.0.0 → 2.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.
Files changed (130) hide show
  1. package/LICENSE +21 -0
  2. package/THEORY.md +207 -0
  3. package/dist/agency/commandRouter.d.ts +10 -0
  4. package/dist/agency/commandRouter.d.ts.map +1 -1
  5. package/dist/agency/commandRouter.js +206 -0
  6. package/dist/agency/commandRouter.js.map +1 -1
  7. package/dist/agency/runtime.d.ts +26 -0
  8. package/dist/agency/runtime.d.ts.map +1 -1
  9. package/dist/agency/runtime.js +138 -6
  10. package/dist/agency/runtime.js.map +1 -1
  11. package/dist/channels/gemini.d.ts +73 -0
  12. package/dist/channels/gemini.d.ts.map +1 -0
  13. package/dist/channels/gemini.js +246 -0
  14. package/dist/channels/gemini.js.map +1 -0
  15. package/dist/channels/sms.d.ts.map +1 -1
  16. package/dist/channels/sms.js +1 -2
  17. package/dist/channels/sms.js.map +1 -1
  18. package/dist/interop/a2a.d.ts +133 -0
  19. package/dist/interop/a2a.d.ts.map +1 -0
  20. package/dist/interop/a2a.js +357 -0
  21. package/dist/interop/a2a.js.map +1 -0
  22. package/dist/interop/index.d.ts +10 -0
  23. package/dist/interop/index.d.ts.map +1 -0
  24. package/dist/interop/index.js +10 -0
  25. package/dist/interop/index.js.map +1 -0
  26. package/dist/interop/mcp.d.ts +111 -0
  27. package/dist/interop/mcp.d.ts.map +1 -0
  28. package/dist/interop/mcp.js +337 -0
  29. package/dist/interop/mcp.js.map +1 -0
  30. package/dist/moltbook/approvalGate.d.ts +23 -0
  31. package/dist/moltbook/approvalGate.d.ts.map +1 -1
  32. package/dist/moltbook/approvalGate.js +45 -0
  33. package/dist/moltbook/approvalGate.js.map +1 -1
  34. package/dist/moltbook/attentionField.d.ts +14 -0
  35. package/dist/moltbook/attentionField.d.ts.map +1 -1
  36. package/dist/moltbook/attentionField.js +37 -1
  37. package/dist/moltbook/attentionField.js.map +1 -1
  38. package/dist/moltbook/daemon.d.ts +27 -0
  39. package/dist/moltbook/daemon.d.ts.map +1 -1
  40. package/dist/moltbook/daemon.js +184 -5
  41. package/dist/moltbook/daemon.js.map +1 -1
  42. package/dist/moltbook/responseComposer.d.ts +7 -2
  43. package/dist/moltbook/responseComposer.d.ts.map +1 -1
  44. package/dist/moltbook/responseComposer.js +36 -7
  45. package/dist/moltbook/responseComposer.js.map +1 -1
  46. package/dist/moltbook/strategicContext.d.ts +89 -0
  47. package/dist/moltbook/strategicContext.d.ts.map +1 -0
  48. package/dist/moltbook/strategicContext.js +283 -0
  49. package/dist/moltbook/strategicContext.js.map +1 -0
  50. package/dist/primitives/index.d.ts +6 -2
  51. package/dist/primitives/index.d.ts.map +1 -1
  52. package/dist/primitives/index.js +6 -2
  53. package/dist/primitives/index.js.map +1 -1
  54. package/dist/rail/persistence.d.ts +70 -1
  55. package/dist/rail/persistence.d.ts.map +1 -1
  56. package/dist/rail/persistence.js +270 -3
  57. package/dist/rail/persistence.js.map +1 -1
  58. package/dist/rail/plugin.d.ts +76 -0
  59. package/dist/rail/plugin.d.ts.map +1 -0
  60. package/dist/rail/plugin.js +141 -0
  61. package/dist/rail/plugin.js.map +1 -0
  62. package/dist/rail/server.d.ts +121 -30
  63. package/dist/rail/server.d.ts.map +1 -1
  64. package/dist/rail/server.js +404 -28
  65. package/dist/rail/server.js.map +1 -1
  66. package/dist/rail/wsServer.d.ts +7 -0
  67. package/dist/rail/wsServer.d.ts.map +1 -1
  68. package/dist/rail/wsServer.js +233 -11
  69. package/dist/rail/wsServer.js.map +1 -1
  70. package/dist/resonance/globalKuramoto.d.ts +20 -0
  71. package/dist/resonance/globalKuramoto.d.ts.map +1 -1
  72. package/dist/resonance/globalKuramoto.js +95 -2
  73. package/dist/resonance/globalKuramoto.js.map +1 -1
  74. package/dist/resonance/kuramoto.d.ts +6 -0
  75. package/dist/resonance/kuramoto.d.ts.map +1 -1
  76. package/dist/resonance/kuramoto.js +25 -0
  77. package/dist/resonance/kuramoto.js.map +1 -1
  78. package/dist/routing/index.d.ts +2 -0
  79. package/dist/routing/index.d.ts.map +1 -1
  80. package/dist/routing/index.js +1 -0
  81. package/dist/routing/index.js.map +1 -1
  82. package/dist/routing/modelRegistry.d.ts +54 -0
  83. package/dist/routing/modelRegistry.d.ts.map +1 -0
  84. package/dist/routing/modelRegistry.js +150 -0
  85. package/dist/routing/modelRegistry.js.map +1 -0
  86. package/dist/routing/thermodynamic.d.ts +14 -3
  87. package/dist/routing/thermodynamic.d.ts.map +1 -1
  88. package/dist/routing/thermodynamic.js +26 -12
  89. package/dist/routing/thermodynamic.js.map +1 -1
  90. package/dist/runtime/agent-zero.d.ts +38 -2
  91. package/dist/runtime/agent-zero.d.ts.map +1 -1
  92. package/dist/runtime/agent-zero.js +110 -7
  93. package/dist/runtime/agent-zero.js.map +1 -1
  94. package/dist/runtime/contextWindow.d.ts +62 -0
  95. package/dist/runtime/contextWindow.d.ts.map +1 -0
  96. package/dist/runtime/contextWindow.js +125 -0
  97. package/dist/runtime/contextWindow.js.map +1 -0
  98. package/dist/runtime/identity.d.ts +65 -0
  99. package/dist/runtime/identity.d.ts.map +1 -0
  100. package/dist/runtime/identity.js +199 -0
  101. package/dist/runtime/identity.js.map +1 -0
  102. package/dist/runtime/index.d.ts +6 -0
  103. package/dist/runtime/index.d.ts.map +1 -1
  104. package/dist/runtime/index.js +6 -0
  105. package/dist/runtime/index.js.map +1 -1
  106. package/dist/runtime/sessionStore.d.ts +70 -0
  107. package/dist/runtime/sessionStore.d.ts.map +1 -0
  108. package/dist/runtime/sessionStore.js +134 -0
  109. package/dist/runtime/sessionStore.js.map +1 -0
  110. package/dist/security/capabilities.d.ts +46 -0
  111. package/dist/security/capabilities.d.ts.map +1 -1
  112. package/dist/security/capabilities.js +176 -0
  113. package/dist/security/capabilities.js.map +1 -1
  114. package/dist/security/combinators.d.ts +89 -0
  115. package/dist/security/combinators.d.ts.map +1 -0
  116. package/dist/security/combinators.js +168 -0
  117. package/dist/security/combinators.js.map +1 -0
  118. package/dist/security/index.d.ts +7 -1
  119. package/dist/security/index.d.ts.map +1 -1
  120. package/dist/security/index.js +4 -1
  121. package/dist/security/index.js.map +1 -1
  122. package/dist/security/isolation.d.ts +76 -0
  123. package/dist/security/isolation.d.ts.map +1 -0
  124. package/dist/security/isolation.js +118 -0
  125. package/dist/security/isolation.js.map +1 -0
  126. package/dist/security/sandbox.d.ts +38 -1
  127. package/dist/security/sandbox.d.ts.map +1 -1
  128. package/dist/security/sandbox.js +68 -8
  129. package/dist/security/sandbox.js.map +1 -1
  130. package/package.json +13 -3
@@ -5,32 +5,32 @@
5
5
  * Deploy at: space.terminals.tech (or rail.terminals.tech)
6
6
  *
7
7
  * Architecture:
8
- * ┌─────────────────────────────────────────────────────────────────────────────┐
9
- * RESONANCE RAIL SERVER
10
- * (space.terminals.tech)
11
- * ├─────────────────────────────────────────────────────────────────────────────┤
12
- *
13
- * ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
14
- * Moltbot #1 │────▶│ │◀────│ Moltbot #2
15
- * (WhatsApp) RESONANCE (Telegram)
16
- * └───────────────┘ FIELD └───────────────┘
17
- *
18
- * ┌───────────────┐ ┌─────────┐ ┌───────────────┐
19
- * Moltbot #3 │────▶│ Kuramoto │◀────│ Moltbot #N
20
- * (Discord) Engine (Terminal)
21
- * └───────────────┘ └─────────┘ └───────────────┘
22
- *
23
- * └───────┬───────┘
24
- *
25
- * ┌────────────┴────────────┐
26
- *
27
- * ┌───────────────┐ ┌───────────────┐
28
- * Collective Migration
29
- * Memory Queue
30
- * (PGlite) terminals
31
- * └───────────────┘ └───────────────┘
32
- *
33
- * └─────────────────────────────────────────────────────────────────────────────┘
8
+ * +---------------------------------------------------------------------------+
9
+ * | RESONANCE RAIL SERVER |
10
+ * | (space.terminals.tech) |
11
+ * +------------------------------------------------------------------------- -+
12
+ * | |
13
+ * | +---------------+ +---------------+ +---------------+ |
14
+ * | | Moltbot #1 |---->| |<----| Moltbot #2 | |
15
+ * | | (WhatsApp) | | RESONANCE | | (Telegram) | |
16
+ * | +---------------+ | FIELD | +---------------+ |
17
+ * | | | |
18
+ * | +---------------+ | +---------+ | +---------------+ |
19
+ * | | Moltbot #3 |---->| | Kuramoto| |<----| Moltbot #N | |
20
+ * | | (Discord) | | | Engine | | | (Terminal) | |
21
+ * | +---------------+ | +---------+ | +---------------+ |
22
+ * | | | |
23
+ * | +-------+-------+ |
24
+ * | | |
25
+ * | +------------+------------+ |
26
+ * | v v |
27
+ * | +---------------+ +---------------+ |
28
+ * | | Collective | | Migration | |
29
+ * | | Memory | | Queue | |
30
+ * | | (PGlite) | | -> terminals | |
31
+ * | +---------------+ +---------------+ |
32
+ * | |
33
+ * +---------------------------------------------------------------------------+
34
34
  *
35
35
  * Purpose:
36
36
  * 1. Coordinate coherence across distributed Moltbot agents
@@ -44,6 +44,8 @@ import { ThermodynamicRouter } from '../routing/thermodynamic.js';
44
44
  import { RailAuthProtocol, type ReconnectToken } from './authProtocol.js';
45
45
  import { AbsorptionBridge } from './absorptionBridge.js';
46
46
  import type { AbsorptionProtocol } from '../coherence/absorption.js';
47
+ import type { PGliteRailPersistence, TraceRecord, MessageLogEntry } from './persistence.js';
48
+ import type { RailPluginManager } from './plugin.js';
47
49
  export interface RailClient {
48
50
  id: string;
49
51
  agentId: string;
@@ -57,7 +59,7 @@ export interface RailClient {
57
59
  coherenceContribution: number;
58
60
  }
59
61
  export interface RailMessage {
60
- type: 'heartbeat' | 'coherence' | 'message' | 'join' | 'leave' | 'migrate' | 'broadcast' | 'sync' | 'metadata';
62
+ type: 'heartbeat' | 'coherence' | 'message' | 'join' | 'leave' | 'migrate' | 'broadcast' | 'sync' | 'metadata' | 'trace' | 'search' | 'synthesize' | 'replay';
61
63
  agentId: string;
62
64
  agentName: string;
63
65
  payload: unknown;
@@ -70,6 +72,7 @@ export interface RailStats {
70
72
  messagesProcessed: number;
71
73
  migrationsPending: number;
72
74
  uptimeSeconds: number;
75
+ paused: boolean;
73
76
  }
74
77
  export interface RailEvents {
75
78
  'client:join': (client: RailClient) => void;
@@ -78,6 +81,20 @@ export interface RailEvents {
78
81
  'message:broadcast': (message: RailMessage) => void;
79
82
  'migration:request': (client: RailClient) => void;
80
83
  }
84
+ export interface PauseSnapshot {
85
+ phases: Map<string, number>;
86
+ coherence: number;
87
+ }
88
+ export interface SynthesisResult {
89
+ traces: Array<{
90
+ agentId: string;
91
+ agentName: string;
92
+ content: string;
93
+ similarity: number;
94
+ coherenceWeight: number;
95
+ }>;
96
+ summary: string;
97
+ }
81
98
  export declare class ResonanceRailServer extends EventEmitter<RailEvents> {
82
99
  private clients;
83
100
  private kuramoto;
@@ -86,20 +103,64 @@ export declare class ResonanceRailServer extends EventEmitter<RailEvents> {
86
103
  private migrationQueue;
87
104
  private startTime;
88
105
  private tickInterval?;
106
+ private tickRate;
89
107
  private authProtocol;
90
108
  private firewall;
91
109
  private securityMonitor;
92
110
  private authRequired;
93
111
  private absorptionBridge?;
112
+ /** Maximum queued messages during pause before dropping */
113
+ private static readonly MAX_QUEUE_SIZE;
114
+ private paused;
115
+ private pausedPhases;
116
+ private messageQueue;
117
+ private persistence?;
118
+ private pluginManager?;
119
+ private goAwayTimer?;
120
+ private messageSeq;
94
121
  constructor(absorptionProtocol?: AbsorptionProtocol);
95
122
  /**
96
123
  * Start the resonance rail server
97
124
  */
98
125
  start(tickRate?: number): void;
99
126
  /**
100
- * Stop the server
127
+ * Stop the server. Supports optional GoAway grace period (D1).
128
+ */
129
+ stop(gracePeriodMs?: number): void;
130
+ /**
131
+ * Force immediate stop without grace period.
132
+ */
133
+ private forceStop;
134
+ /**
135
+ * Pause the server. Kuramoto evolution stops, messages are queued,
136
+ * but connections stay alive. Heartbeats still process.
137
+ */
138
+ pause(): PauseSnapshot;
139
+ /**
140
+ * Resume the server. Restores phases, replays queued messages,
141
+ * restarts the tick loop.
142
+ */
143
+ resume(): void;
144
+ /**
145
+ * Check if server is currently paused.
146
+ */
147
+ isPaused(): boolean;
148
+ /**
149
+ * Set persistence layer for trace storage and pause state.
150
+ */
151
+ setPersistence(persistence: PGliteRailPersistence): void;
152
+ /**
153
+ * Get persistence layer.
154
+ */
155
+ getPersistence(): PGliteRailPersistence | undefined;
156
+ /**
157
+ * Set plugin manager for event notifications.
158
+ */
159
+ setPluginManager(manager: RailPluginManager): void;
160
+ /**
161
+ * Get plugin manager.
101
162
  */
102
- stop(): void;
163
+ getPluginManager(): RailPluginManager | undefined;
103
164
  /**
104
165
  * Handle client connection
105
166
  */
@@ -123,6 +184,36 @@ export declare class ResonanceRailServer extends EventEmitter<RailEvents> {
123
184
  * Handle migration request
124
185
  */
125
186
  handleMigration(message: RailMessage): void;
187
+ /**
188
+ * Handle incoming trace message — persist and notify plugins.
189
+ */
190
+ handleTrace(message: RailMessage): Promise<void>;
191
+ /**
192
+ * Handle search message — query traces by embedding or filters.
193
+ */
194
+ handleSearch(message: RailMessage): Promise<TraceRecord[]>;
195
+ /**
196
+ * Synthesize traces from multiple agents into a coherence-weighted summary.
197
+ * Local operation — no LLM call. Concatenates trace contents ordered by
198
+ * relevance with agent attribution and coherence weighting.
199
+ */
200
+ synthesize(query: {
201
+ embedding?: number[];
202
+ agentIds?: string[];
203
+ limit?: number;
204
+ }): Promise<SynthesisResult>;
205
+ /**
206
+ * Handle a replay request — return messages from a given sequence number.
207
+ */
208
+ handleReplay(message: RailMessage): Promise<MessageLogEntry[]>;
209
+ /**
210
+ * Get the current message sequence number.
211
+ */
212
+ getMessageSeq(): number;
213
+ /**
214
+ * Get the latest persisted sequence number.
215
+ */
216
+ getLatestSeq(): Promise<number>;
126
217
  /**
127
218
  * Process an incoming message
128
219
  */
@@ -134,7 +225,7 @@ export declare class ResonanceRailServer extends EventEmitter<RailEvents> {
134
225
  /**
135
226
  * Broadcast a message to all connected clients
136
227
  */
137
- private broadcast;
228
+ broadcast(message: RailMessage): void;
138
229
  /**
139
230
  * Sync coherence state to a specific client
140
231
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/rail/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/rail/server.ts"],"names":[],"mappings":"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"}