@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
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Agent Isolation Boundaries
3
+ *
4
+ * Enforces security boundaries between parent and child agents.
5
+ * Controls what capabilities a child agent inherits from its parent,
6
+ * limits spawn depth to prevent unbounded agent trees, and optionally
7
+ * isolates semantic memory between agents.
8
+ *
9
+ * Security Model:
10
+ * - Each parent-child relationship has an explicit IsolationBoundary
11
+ * - sharedScopes defines the maximum capabilities a child can access
12
+ * - maxSpawnDepth prevents exponential agent proliferation
13
+ * - memoryIsolated prevents children from reading parent memories
14
+ */
15
+ import type { CapabilityScope } from './sandbox.js';
16
+ export interface IsolationBoundary {
17
+ /** Parent agent ID */
18
+ parentId: string;
19
+ /** Child agent ID */
20
+ childId: string;
21
+ /** Scopes the child can access from parent */
22
+ sharedScopes: CapabilityScope[];
23
+ /** Maximum spawn depth for this child and its descendants */
24
+ maxSpawnDepth: number;
25
+ /** Whether the child is memory-isolated from the parent */
26
+ memoryIsolated: boolean;
27
+ }
28
+ export declare class AgentIsolationManager {
29
+ /** Boundaries keyed by childId for O(1) lookup */
30
+ private boundaries;
31
+ /**
32
+ * Create an isolation boundary between a parent and child agent.
33
+ *
34
+ * Config fields override defaults:
35
+ * - sharedScopes defaults to ['read', 'write', 'execute', 'memory', 'broadcast']
36
+ * - maxSpawnDepth defaults to 3
37
+ * - memoryIsolated defaults to true
38
+ */
39
+ createBoundary(parentId: string, childId: string, config?: Partial<IsolationBoundary>): IsolationBoundary;
40
+ /**
41
+ * Check if a child agent has access to a given scope and resource.
42
+ *
43
+ * Returns false if:
44
+ * - No boundary exists for the child
45
+ * - The requested scope is not in the child's sharedScopes
46
+ * - The scope is 'memory' and the child is memory-isolated
47
+ */
48
+ checkAccess(childId: string, scope: CapabilityScope, resource: string): boolean;
49
+ /**
50
+ * Get the spawn depth of an agent by walking the parent chain.
51
+ * Root agents (no boundary) have depth 0.
52
+ */
53
+ getSpawnDepth(agentId: string): number;
54
+ /**
55
+ * Check if an agent can spawn children.
56
+ *
57
+ * An agent can spawn if its current depth is less than its maxSpawnDepth.
58
+ * If maxDepth is provided, it overrides the boundary's maxSpawnDepth.
59
+ * Root agents (no boundary) can always spawn.
60
+ */
61
+ canSpawn(agentId: string, maxDepth?: number): boolean;
62
+ /**
63
+ * Remove the boundary for a child agent.
64
+ */
65
+ removeBoundary(childId: string): void;
66
+ /**
67
+ * Get the boundary for a child agent, if it exists.
68
+ */
69
+ getBoundary(childId: string): IsolationBoundary | undefined;
70
+ /**
71
+ * Get the maximum spawn depth for an agent from its boundary.
72
+ * Returns DEFAULT_MAX_SPAWN_DEPTH if no boundary exists.
73
+ */
74
+ getMaxSpawnDepth(agentId: string): number;
75
+ }
76
+ //# sourceMappingURL=isolation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isolation.d.ts","sourceRoot":"","sources":["../../src/security/isolation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAMpD,MAAM,WAAW,iBAAiB;IAChC,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,cAAc,EAAE,OAAO,CAAC;CACzB;AAcD,qBAAa,qBAAqB;IAChC,kDAAkD;IAClD,OAAO,CAAC,UAAU,CAA6C;IAE/D;;;;;;;OAOG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,OAAO,CAAC,iBAAiB,CAAM,GACtC,iBAAiB;IAapB;;;;;;;OAOG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAa/E;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IActC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO;IAYrD;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3D;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAI1C"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Agent Isolation Boundaries
3
+ *
4
+ * Enforces security boundaries between parent and child agents.
5
+ * Controls what capabilities a child agent inherits from its parent,
6
+ * limits spawn depth to prevent unbounded agent trees, and optionally
7
+ * isolates semantic memory between agents.
8
+ *
9
+ * Security Model:
10
+ * - Each parent-child relationship has an explicit IsolationBoundary
11
+ * - sharedScopes defines the maximum capabilities a child can access
12
+ * - maxSpawnDepth prevents exponential agent proliferation
13
+ * - memoryIsolated prevents children from reading parent memories
14
+ */
15
+ // ============================================================================
16
+ // ISOLATION MANAGER
17
+ // ============================================================================
18
+ /** Default maximum spawn depth if not specified */
19
+ const DEFAULT_MAX_SPAWN_DEPTH = 3;
20
+ /** Default shared scopes for child agents */
21
+ const DEFAULT_SHARED_SCOPES = [
22
+ 'read', 'write', 'execute', 'memory', 'broadcast',
23
+ ];
24
+ export class AgentIsolationManager {
25
+ /** Boundaries keyed by childId for O(1) lookup */
26
+ boundaries = new Map();
27
+ /**
28
+ * Create an isolation boundary between a parent and child agent.
29
+ *
30
+ * Config fields override defaults:
31
+ * - sharedScopes defaults to ['read', 'write', 'execute', 'memory', 'broadcast']
32
+ * - maxSpawnDepth defaults to 3
33
+ * - memoryIsolated defaults to true
34
+ */
35
+ createBoundary(parentId, childId, config = {}) {
36
+ const boundary = {
37
+ parentId,
38
+ childId,
39
+ sharedScopes: config.sharedScopes ?? [...DEFAULT_SHARED_SCOPES],
40
+ maxSpawnDepth: config.maxSpawnDepth ?? DEFAULT_MAX_SPAWN_DEPTH,
41
+ memoryIsolated: config.memoryIsolated ?? true,
42
+ };
43
+ this.boundaries.set(childId, boundary);
44
+ return boundary;
45
+ }
46
+ /**
47
+ * Check if a child agent has access to a given scope and resource.
48
+ *
49
+ * Returns false if:
50
+ * - No boundary exists for the child
51
+ * - The requested scope is not in the child's sharedScopes
52
+ * - The scope is 'memory' and the child is memory-isolated
53
+ */
54
+ checkAccess(childId, scope, resource) {
55
+ const boundary = this.boundaries.get(childId);
56
+ if (!boundary)
57
+ return false;
58
+ // Memory isolation check
59
+ if (scope === 'memory' && boundary.memoryIsolated) {
60
+ return false;
61
+ }
62
+ // Scope check
63
+ return boundary.sharedScopes.includes(scope);
64
+ }
65
+ /**
66
+ * Get the spawn depth of an agent by walking the parent chain.
67
+ * Root agents (no boundary) have depth 0.
68
+ */
69
+ getSpawnDepth(agentId) {
70
+ let depth = 0;
71
+ let currentId = agentId;
72
+ while (currentId) {
73
+ const boundary = this.boundaries.get(currentId);
74
+ if (!boundary)
75
+ break;
76
+ depth++;
77
+ currentId = boundary.parentId;
78
+ }
79
+ return depth;
80
+ }
81
+ /**
82
+ * Check if an agent can spawn children.
83
+ *
84
+ * An agent can spawn if its current depth is less than its maxSpawnDepth.
85
+ * If maxDepth is provided, it overrides the boundary's maxSpawnDepth.
86
+ * Root agents (no boundary) can always spawn.
87
+ */
88
+ canSpawn(agentId, maxDepth) {
89
+ const boundary = this.boundaries.get(agentId);
90
+ // Root agents can always spawn (they have no boundary constraining them)
91
+ if (!boundary)
92
+ return true;
93
+ const effectiveMaxDepth = maxDepth ?? boundary.maxSpawnDepth;
94
+ const currentDepth = this.getSpawnDepth(agentId);
95
+ return currentDepth < effectiveMaxDepth;
96
+ }
97
+ /**
98
+ * Remove the boundary for a child agent.
99
+ */
100
+ removeBoundary(childId) {
101
+ this.boundaries.delete(childId);
102
+ }
103
+ /**
104
+ * Get the boundary for a child agent, if it exists.
105
+ */
106
+ getBoundary(childId) {
107
+ return this.boundaries.get(childId);
108
+ }
109
+ /**
110
+ * Get the maximum spawn depth for an agent from its boundary.
111
+ * Returns DEFAULT_MAX_SPAWN_DEPTH if no boundary exists.
112
+ */
113
+ getMaxSpawnDepth(agentId) {
114
+ const boundary = this.boundaries.get(agentId);
115
+ return boundary?.maxSpawnDepth ?? DEFAULT_MAX_SPAWN_DEPTH;
116
+ }
117
+ }
118
+ //# sourceMappingURL=isolation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isolation.js","sourceRoot":"","sources":["../../src/security/isolation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAqBH,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,mDAAmD;AACnD,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,6CAA6C;AAC7C,MAAM,qBAAqB,GAAsB;IAC/C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW;CAClD,CAAC;AAEF,MAAM,OAAO,qBAAqB;IAChC,kDAAkD;IAC1C,UAAU,GAAmC,IAAI,GAAG,EAAE,CAAC;IAE/D;;;;;;;OAOG;IACH,cAAc,CACZ,QAAgB,EAChB,OAAe,EACf,SAAqC,EAAE;QAEvC,MAAM,QAAQ,GAAsB;YAClC,QAAQ;YACR,OAAO;YACP,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,CAAC,GAAG,qBAAqB,CAAC;YAC/D,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,uBAAuB;YAC9D,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;SAC9C,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACH,WAAW,CAAC,OAAe,EAAE,KAAsB,EAAE,QAAgB;QACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE5B,yBAAyB;QACzB,IAAI,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,cAAc;QACd,OAAO,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,OAAe;QAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,SAAS,GAAuB,OAAO,CAAC;QAE5C,OAAO,SAAS,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,CAAC,QAAQ;gBAAE,MAAM;YACrB,KAAK,EAAE,CAAC;YACR,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAChC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,OAAe,EAAE,QAAiB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE9C,yEAAyE;QACzE,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,iBAAiB,GAAG,QAAQ,IAAI,QAAQ,CAAC,aAAa,CAAC;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAEjD,OAAO,YAAY,GAAG,iBAAiB,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,OAAe;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,OAAe;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,OAAO,QAAQ,EAAE,aAAa,IAAI,uBAAuB,CAAC;IAC5D,CAAC;CACF"}
@@ -132,10 +132,26 @@ export declare function generateCapabilityToken(): string;
132
132
  * Hash a capability token for storage
133
133
  */
134
134
  export declare function hashCapabilityToken(token: string): string;
135
+ export interface AuditEntry {
136
+ /** Timestamp of the check */
137
+ timestamp: number;
138
+ /** Truncated capability token */
139
+ token: string;
140
+ /** Scope that was checked */
141
+ scope: CapabilityScope;
142
+ /** Resource that was checked */
143
+ resource: string;
144
+ /** Result of the check */
145
+ result: 'allowed' | 'denied';
146
+ /** Reason for denial (if denied) */
147
+ reason?: string;
148
+ }
135
149
  export declare class IsomorphicSandbox {
136
150
  private capabilities;
137
151
  private violations;
138
152
  private rootCapability;
153
+ private auditLog;
154
+ private auditEnabled;
139
155
  constructor();
140
156
  /**
141
157
  * Create the root capability (admin only)
@@ -145,6 +161,22 @@ export declare class IsomorphicSandbox {
145
161
  * Get the root capability token (for initial setup only)
146
162
  */
147
163
  getRootToken(): string;
164
+ /**
165
+ * Enable audit logging of all capability checks.
166
+ */
167
+ enableAudit(): void;
168
+ /**
169
+ * Disable audit logging (default state). Stops recording new entries.
170
+ */
171
+ disableAudit(): void;
172
+ /**
173
+ * Get audit log entries. Optionally limit to the most recent N entries.
174
+ */
175
+ getAuditLog(limit?: number): AuditEntry[];
176
+ /**
177
+ * Clear the audit log.
178
+ */
179
+ clearAuditLog(): void;
148
180
  /**
149
181
  * Attenuate a capability to create a more restricted child
150
182
  */
@@ -159,12 +191,17 @@ export declare class IsomorphicSandbox {
159
191
  */
160
192
  isValid(token: string): boolean;
161
193
  /**
162
- * Check if a capability grants a specific scope for a resource
194
+ * Check if a capability grants a specific scope for a resource.
195
+ * Records an audit entry when auditing is enabled.
163
196
  */
164
197
  check(token: string, scope: CapabilityScope, resource: string): {
165
198
  allowed: boolean;
166
199
  violation?: BoundaryViolation;
167
200
  };
201
+ /**
202
+ * Record an audit entry if auditing is enabled.
203
+ */
204
+ private recordAudit;
168
205
  /**
169
206
  * Check content for injection attempts
170
207
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/security/sandbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,eAAe,6FAS1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,eAAe;IAC1B,gDAAgD;;IAEhD,+CAA+C;;;;;;;;EAE/C,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,UAAU;IACrB,8BAA8B;;IAE9B,wCAAwC;;IAExC,mDAAmD;;QAZnD,gDAAgD;;QAEhD,+CAA+C;;;;;;;;;IAY/C,sDAAsD;;IAEtD,kDAAkD;;IAElD,+CAA+C;;IAE/C,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAMpD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAa5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AA2BlE;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAGhD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAMD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,YAAY,CAAsC;IAC1D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAAa;;IAQnC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,SAAS,CACP,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE;QACP,MAAM,EAAE,eAAe,EAAE,CAAC;QAC1B,SAAS,EAAE,eAAe,EAAE,CAAC;QAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;KAChB,GACA,UAAU,GAAG,IAAI;IA8BpB;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAc/B;;OAEG;IACH,KAAK,CACH,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,MAAM,GACf;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,iBAAiB,CAAA;KAAE;IAsGtD;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,iBAAiB,CAAA;KAAE;IAajF;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAc3B;;OAEG;IACH,aAAa,IAAI,iBAAiB,EAAE;IAIpC;;OAEG;IACH,eAAe,IAAI,IAAI;IAIvB;;OAEG;IACH,OAAO,CAAC,YAAY;CAWrB"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/security/sandbox.ts"],"names":[],"mappings":"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"}
@@ -127,6 +127,8 @@ export class IsomorphicSandbox {
127
127
  capabilities = new Map();
128
128
  violations = [];
129
129
  rootCapability;
130
+ auditLog = [];
131
+ auditEnabled = false;
130
132
  constructor() {
131
133
  // Create root capability with all permissions
132
134
  this.rootCapability = this.createRootCapability();
@@ -156,6 +158,36 @@ export class IsomorphicSandbox {
156
158
  getRootToken() {
157
159
  return this.rootCapability.token;
158
160
  }
161
+ // ==========================================================================
162
+ // AUDIT CONTROL
163
+ // ==========================================================================
164
+ /**
165
+ * Enable audit logging of all capability checks.
166
+ */
167
+ enableAudit() {
168
+ this.auditEnabled = true;
169
+ }
170
+ /**
171
+ * Disable audit logging (default state). Stops recording new entries.
172
+ */
173
+ disableAudit() {
174
+ this.auditEnabled = false;
175
+ }
176
+ /**
177
+ * Get audit log entries. Optionally limit to the most recent N entries.
178
+ */
179
+ getAuditLog(limit) {
180
+ if (limit !== undefined && limit > 0) {
181
+ return this.auditLog.slice(-limit);
182
+ }
183
+ return [...this.auditLog];
184
+ }
185
+ /**
186
+ * Clear the audit log.
187
+ */
188
+ clearAuditLog() {
189
+ this.auditLog = [];
190
+ }
159
191
  /**
160
192
  * Attenuate a capability to create a more restricted child
161
193
  */
@@ -205,20 +237,23 @@ export class IsomorphicSandbox {
205
237
  return true;
206
238
  }
207
239
  /**
208
- * Check if a capability grants a specific scope for a resource
240
+ * Check if a capability grants a specific scope for a resource.
241
+ * Records an audit entry when auditing is enabled.
209
242
  */
210
243
  check(token, scope, resource) {
211
244
  const cap = this.capabilities.get(token);
245
+ const truncatedToken = token.slice(0, 8) + '...';
212
246
  // Capability not found
213
247
  if (!cap) {
214
248
  const violation = {
215
249
  type: 'capability_revoked',
216
250
  message: 'Capability not found',
217
- capability: token.slice(0, 8) + '...',
251
+ capability: truncatedToken,
218
252
  resource,
219
253
  timestamp: Date.now(),
220
254
  };
221
255
  this.violations.push(violation);
256
+ this.recordAudit(truncatedToken, scope, resource, 'denied', 'Capability not found');
222
257
  return { allowed: false, violation };
223
258
  }
224
259
  // Capability revoked
@@ -226,11 +261,12 @@ export class IsomorphicSandbox {
226
261
  const violation = {
227
262
  type: 'capability_revoked',
228
263
  message: 'Capability has been revoked',
229
- capability: token.slice(0, 8) + '...',
264
+ capability: truncatedToken,
230
265
  resource,
231
266
  timestamp: Date.now(),
232
267
  };
233
268
  this.violations.push(violation);
269
+ this.recordAudit(truncatedToken, scope, resource, 'denied', 'Capability has been revoked');
234
270
  return { allowed: false, violation };
235
271
  }
236
272
  // Capability expired
@@ -238,11 +274,12 @@ export class IsomorphicSandbox {
238
274
  const violation = {
239
275
  type: 'capability_expired',
240
276
  message: 'Capability has expired',
241
- capability: token.slice(0, 8) + '...',
277
+ capability: truncatedToken,
242
278
  resource,
243
279
  timestamp: Date.now(),
244
280
  };
245
281
  this.violations.push(violation);
282
+ this.recordAudit(truncatedToken, scope, resource, 'denied', 'Capability has expired');
246
283
  return { allowed: false, violation };
247
284
  }
248
285
  // Scope not granted
@@ -250,11 +287,12 @@ export class IsomorphicSandbox {
250
287
  const violation = {
251
288
  type: 'scope_denied',
252
289
  message: `Scope '${scope}' not granted by capability`,
253
- capability: token.slice(0, 8) + '...',
290
+ capability: truncatedToken,
254
291
  resource,
255
292
  timestamp: Date.now(),
256
293
  };
257
294
  this.violations.push(violation);
295
+ this.recordAudit(truncatedToken, scope, resource, 'denied', `Scope '${scope}' not granted`);
258
296
  return { allowed: false, violation };
259
297
  }
260
298
  // Check resource patterns
@@ -265,11 +303,12 @@ export class IsomorphicSandbox {
265
303
  const violation = {
266
304
  type: 'resource_denied',
267
305
  message: `Resource '${resource}' denied by pattern '${pattern.pattern}'`,
268
- capability: token.slice(0, 8) + '...',
306
+ capability: truncatedToken,
269
307
  resource,
270
308
  timestamp: Date.now(),
271
309
  };
272
310
  this.violations.push(violation);
311
+ this.recordAudit(truncatedToken, scope, resource, 'denied', `Denied by pattern '${pattern.pattern}'`);
273
312
  return { allowed: false, violation };
274
313
  }
275
314
  allowed = true;
@@ -279,11 +318,12 @@ export class IsomorphicSandbox {
279
318
  const violation = {
280
319
  type: 'resource_denied',
281
320
  message: `Resource '${resource}' not matched by any allow pattern`,
282
- capability: token.slice(0, 8) + '...',
321
+ capability: truncatedToken,
283
322
  resource,
284
323
  timestamp: Date.now(),
285
324
  };
286
325
  this.violations.push(violation);
326
+ this.recordAudit(truncatedToken, scope, resource, 'denied', 'No matching allow pattern');
287
327
  return { allowed: false, violation };
288
328
  }
289
329
  // Check ancestor chain
@@ -291,15 +331,35 @@ export class IsomorphicSandbox {
291
331
  const violation = {
292
332
  type: 'capability_revoked',
293
333
  message: 'Parent capability is no longer valid',
294
- capability: token.slice(0, 8) + '...',
334
+ capability: truncatedToken,
295
335
  resource,
296
336
  timestamp: Date.now(),
297
337
  };
298
338
  this.violations.push(violation);
339
+ this.recordAudit(truncatedToken, scope, resource, 'denied', 'Parent capability invalid');
299
340
  return { allowed: false, violation };
300
341
  }
342
+ this.recordAudit(truncatedToken, scope, resource, 'allowed');
301
343
  return { allowed: true };
302
344
  }
345
+ /**
346
+ * Record an audit entry if auditing is enabled.
347
+ */
348
+ recordAudit(token, scope, resource, result, reason) {
349
+ if (!this.auditEnabled)
350
+ return;
351
+ const entry = {
352
+ timestamp: Date.now(),
353
+ token,
354
+ scope,
355
+ resource,
356
+ result,
357
+ };
358
+ if (reason !== undefined) {
359
+ entry.reason = reason;
360
+ }
361
+ this.auditLog.push(entry);
362
+ }
303
363
  /**
304
364
  * Check content for injection attempts
305
365
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/security/sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/security/sandbox.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@terminals-tech/agent-zero",
3
- "version": "1.0.0",
4
- "description": "Secure primitives for autonomous systems. Kuramoto coherence, thermodynamic routing, capability-based security, encrypted vault. Built by systems intelligence.",
3
+ "version": "2.0.0",
4
+ "description": "Secure primitives for autonomous systems. Kuramoto coherence, thermodynamic routing, capability-based security, encrypted vault, session persistence, multi-model mesh, protocol interop. Built by systems intelligence.",
5
5
  "type": "module",
6
6
  "main": "dist/primitives/index.js",
7
7
  "types": "dist/primitives/index.d.ts",
@@ -25,6 +25,10 @@
25
25
  "./routing": {
26
26
  "import": "./dist/routing/index.js",
27
27
  "types": "./dist/routing/index.d.ts"
28
+ },
29
+ "./interop": {
30
+ "import": "./dist/interop/index.js",
31
+ "types": "./dist/interop/index.d.ts"
28
32
  }
29
33
  },
30
34
  "bin": {
@@ -34,6 +38,7 @@
34
38
  "dist",
35
39
  "bin",
36
40
  "README.md",
41
+ "THEORY.md",
37
42
  "LICENSE"
38
43
  ],
39
44
  "scripts": {
@@ -55,7 +60,12 @@
55
60
  "phase-synchronization",
56
61
  "agent-coordination",
57
62
  "terminals-tech",
58
- "agent-zero"
63
+ "agent-zero",
64
+ "a2a",
65
+ "mcp",
66
+ "multi-model",
67
+ "session-persistence",
68
+ "context-engineering"
59
69
  ],
60
70
  "author": "terminals.tech",
61
71
  "license": "MIT",