@jungjaehoon/mama-os 0.31.5 → 0.32.1
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/dist/agent/agent-loop.d.ts +5 -1
- package/dist/agent/agent-loop.d.ts.map +1 -1
- package/dist/agent/agent-loop.js +117 -50
- package/dist/agent/agent-loop.js.map +1 -1
- package/dist/agent/claude-cli-wrapper.d.ts +2 -17
- package/dist/agent/claude-cli-wrapper.d.ts.map +1 -1
- package/dist/agent/claude-cli-wrapper.js.map +1 -1
- package/dist/agent/code-act/completed-terminal-result.d.ts +5 -0
- package/dist/agent/code-act/completed-terminal-result.d.ts.map +1 -0
- package/dist/agent/code-act/completed-terminal-result.js +83 -0
- package/dist/agent/code-act/completed-terminal-result.js.map +1 -0
- package/dist/agent/code-act/host-bridge.d.ts +1 -0
- package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
- package/dist/agent/code-act/host-bridge.js +101 -97
- package/dist/agent/code-act/host-bridge.js.map +1 -1
- package/dist/agent/code-act/run-context-registry.d.ts +36 -0
- package/dist/agent/code-act/run-context-registry.d.ts.map +1 -0
- package/dist/agent/code-act/run-context-registry.js +143 -0
- package/dist/agent/code-act/run-context-registry.js.map +1 -0
- package/dist/agent/gateway-tool-catalog.d.ts +14 -0
- package/dist/agent/gateway-tool-catalog.d.ts.map +1 -0
- package/dist/agent/gateway-tool-catalog.js +41 -0
- package/dist/agent/gateway-tool-catalog.js.map +1 -0
- package/dist/agent/gateway-tool-executor.d.ts +12 -1
- package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
- package/dist/agent/gateway-tool-executor.js +212 -18
- package/dist/agent/gateway-tool-executor.js.map +1 -1
- package/dist/agent/gateway-tools.md +5 -7
- package/dist/agent/model-runner.d.ts +6 -18
- package/dist/agent/model-runner.d.ts.map +1 -1
- package/dist/agent/model-runner.js +3 -1
- package/dist/agent/model-runner.js.map +1 -1
- package/dist/agent/persistent-cli-adapter.d.ts +3 -10
- package/dist/agent/persistent-cli-adapter.d.ts.map +1 -1
- package/dist/agent/persistent-cli-adapter.js +73 -2
- package/dist/agent/persistent-cli-adapter.js.map +1 -1
- package/dist/agent/persistent-cli-process.d.ts +21 -16
- package/dist/agent/persistent-cli-process.d.ts.map +1 -1
- package/dist/agent/persistent-cli-process.js +275 -29
- package/dist/agent/persistent-cli-process.js.map +1 -1
- package/dist/agent/tool-registry.d.ts +6 -4
- package/dist/agent/tool-registry.d.ts.map +1 -1
- package/dist/agent/tool-registry.js +62 -30
- package/dist/agent/tool-registry.js.map +1 -1
- package/dist/agent/types.d.ts +62 -3
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js +31 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/graph-api-types.d.ts +8 -0
- package/dist/api/graph-api-types.d.ts.map +1 -1
- package/dist/api/graph-api.d.ts.map +1 -1
- package/dist/api/graph-api.js +14 -0
- package/dist/api/graph-api.js.map +1 -1
- package/dist/api/index.d.ts +10 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +7 -16
- package/dist/api/index.js.map +1 -1
- package/dist/cli/commands/connector.d.ts +6 -1
- package/dist/cli/commands/connector.d.ts.map +1 -1
- package/dist/cli/commands/connector.js +61 -45
- package/dist/cli/commands/connector.js.map +1 -1
- package/dist/cli/commands/start.d.ts +16 -9
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +177 -91
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/config/types.d.ts.map +1 -1
- package/dist/cli/config/types.js +0 -4
- package/dist/cli/config/types.js.map +1 -1
- package/dist/cli/runtime/api-routes-init.d.ts +38 -1
- package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-routes-init.js +150 -30
- package/dist/cli/runtime/api-routes-init.js.map +1 -1
- package/dist/cli/runtime/api-server-init.d.ts +4 -0
- package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-server-init.js +3 -1
- package/dist/cli/runtime/api-server-init.js.map +1 -1
- package/dist/cli/runtime/code-act-executor.d.ts +14 -0
- package/dist/cli/runtime/code-act-executor.d.ts.map +1 -0
- package/dist/cli/runtime/code-act-executor.js +103 -0
- package/dist/cli/runtime/code-act-executor.js.map +1 -0
- package/dist/cli/runtime/connector-bootstrap.d.ts +8 -0
- package/dist/cli/runtime/connector-bootstrap.d.ts.map +1 -0
- package/dist/cli/runtime/connector-bootstrap.js +14 -0
- package/dist/cli/runtime/connector-bootstrap.js.map +1 -0
- package/dist/cli/runtime/connector-init.d.ts +4 -1
- package/dist/cli/runtime/connector-init.d.ts.map +1 -1
- package/dist/cli/runtime/connector-init.js +2 -8
- package/dist/cli/runtime/connector-init.js.map +1 -1
- package/dist/cli/runtime/envelope-bootstrap.d.ts +2 -1
- package/dist/cli/runtime/envelope-bootstrap.d.ts.map +1 -1
- package/dist/cli/runtime/envelope-bootstrap.js +7 -15
- package/dist/cli/runtime/envelope-bootstrap.js.map +1 -1
- package/dist/connectors/index.d.ts +4 -1
- package/dist/connectors/index.d.ts.map +1 -1
- package/dist/connectors/index.js +3 -2
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/private-connector-policy.d.ts +150 -0
- package/dist/connectors/private-connector-policy.d.ts.map +1 -0
- package/dist/connectors/private-connector-policy.js +289 -0
- package/dist/connectors/private-connector-policy.js.map +1 -0
- package/dist/connectors/private-prompt-overlay.d.ts +17 -0
- package/dist/connectors/private-prompt-overlay.d.ts.map +1 -0
- package/dist/connectors/private-prompt-overlay.js +156 -0
- package/dist/connectors/private-prompt-overlay.js.map +1 -0
- package/dist/db/migrations/operator-task-external-lifecycle.d.ts +8 -0
- package/dist/db/migrations/operator-task-external-lifecycle.d.ts.map +1 -0
- package/dist/db/migrations/operator-task-external-lifecycle.js +169 -0
- package/dist/db/migrations/operator-task-external-lifecycle.js.map +1 -0
- package/dist/envelope/enforcer.js +8 -7
- package/dist/envelope/enforcer.js.map +1 -1
- package/dist/envelope/reactive-config.d.ts.map +1 -1
- package/dist/envelope/reactive-config.js +2 -1
- package/dist/envelope/reactive-config.js.map +1 -1
- package/dist/envelope/tool-connector-scope.d.ts.map +1 -1
- package/dist/envelope/tool-connector-scope.js +4 -0
- package/dist/envelope/tool-connector-scope.js.map +1 -1
- package/dist/gateways/message-router.d.ts +11 -1
- package/dist/gateways/message-router.d.ts.map +1 -1
- package/dist/gateways/message-router.js +121 -41
- package/dist/gateways/message-router.js.map +1 -1
- package/dist/gateways/telegram-message-ledger.d.ts +8 -1
- package/dist/gateways/telegram-message-ledger.d.ts.map +1 -1
- package/dist/gateways/telegram-message-ledger.js +141 -24
- package/dist/gateways/telegram-message-ledger.js.map +1 -1
- package/dist/gateways/telegram.d.ts +2 -0
- package/dist/gateways/telegram.d.ts.map +1 -1
- package/dist/gateways/telegram.js +19 -12
- package/dist/gateways/telegram.js.map +1 -1
- package/dist/mcp/code-act-api-client.d.ts +12 -0
- package/dist/mcp/code-act-api-client.d.ts.map +1 -1
- package/dist/mcp/code-act-api-client.js.map +1 -1
- package/dist/mcp/code-act-server.js +9 -27
- package/dist/mcp/code-act-server.js.map +1 -1
- package/dist/mcp/code-act-terminal-transport.d.ts +27 -0
- package/dist/mcp/code-act-terminal-transport.d.ts.map +1 -1
- package/dist/mcp/code-act-terminal-transport.js +70 -7
- package/dist/mcp/code-act-terminal-transport.js.map +1 -1
- package/dist/multi-agent/agent-process-manager.d.ts +9 -1
- package/dist/multi-agent/agent-process-manager.d.ts.map +1 -1
- package/dist/multi-agent/agent-process-manager.js +48 -20
- package/dist/multi-agent/agent-process-manager.js.map +1 -1
- package/dist/multi-agent/dashboard-agent-persona.d.ts +3 -3
- package/dist/multi-agent/dashboard-agent-persona.d.ts.map +1 -1
- package/dist/multi-agent/dashboard-agent-persona.js +10 -13
- package/dist/multi-agent/dashboard-agent-persona.js.map +1 -1
- package/dist/multi-agent/memory-agent-persona.d.ts +1 -1
- package/dist/multi-agent/memory-agent-persona.d.ts.map +1 -1
- package/dist/multi-agent/memory-agent-persona.js +1 -1
- package/dist/multi-agent/wiki-agent-persona.d.ts +2 -2
- package/dist/multi-agent/wiki-agent-persona.js +2 -2
- package/dist/operator/board-slot-instructions.d.ts +1 -1
- package/dist/operator/board-slot-instructions.js +2 -2
- package/dist/operator/board-slot-instructions.js.map +1 -1
- package/dist/operator/briefs.d.ts +3 -0
- package/dist/operator/briefs.d.ts.map +1 -1
- package/dist/operator/briefs.js +64 -3
- package/dist/operator/briefs.js.map +1 -1
- package/dist/operator/console-brief.d.ts +6 -3
- package/dist/operator/console-brief.d.ts.map +1 -1
- package/dist/operator/console-brief.js +39 -9
- package/dist/operator/console-brief.js.map +1 -1
- package/dist/operator/external-lifecycle-candidates.d.ts +56 -0
- package/dist/operator/external-lifecycle-candidates.d.ts.map +1 -0
- package/dist/operator/external-lifecycle-candidates.js +415 -0
- package/dist/operator/external-lifecycle-candidates.js.map +1 -0
- package/dist/operator/external-lifecycle.d.ts +82 -0
- package/dist/operator/external-lifecycle.d.ts.map +1 -0
- package/dist/operator/external-lifecycle.js +27 -0
- package/dist/operator/external-lifecycle.js.map +1 -0
- package/dist/operator/file-coordination.d.ts +7 -0
- package/dist/operator/file-coordination.d.ts.map +1 -0
- package/dist/operator/file-coordination.js +84 -0
- package/dist/operator/file-coordination.js.map +1 -0
- package/dist/operator/operator-trigger-loop.d.ts +19 -4
- package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
- package/dist/operator/operator-trigger-loop.js +151 -23
- package/dist/operator/operator-trigger-loop.js.map +1 -1
- package/dist/operator/pending-report-store.d.ts +62 -3
- package/dist/operator/pending-report-store.d.ts.map +1 -1
- package/dist/operator/pending-report-store.js +297 -40
- package/dist/operator/pending-report-store.js.map +1 -1
- package/dist/operator/report-carry-delivery.d.ts +35 -0
- package/dist/operator/report-carry-delivery.d.ts.map +1 -0
- package/dist/operator/report-carry-delivery.js +55 -0
- package/dist/operator/report-carry-delivery.js.map +1 -0
- package/dist/operator/report-carry.d.ts +50 -30
- package/dist/operator/report-carry.d.ts.map +1 -1
- package/dist/operator/report-carry.js +323 -71
- package/dist/operator/report-carry.js.map +1 -1
- package/dist/operator/report-run.d.ts.map +1 -1
- package/dist/operator/report-run.js +38 -97
- package/dist/operator/report-run.js.map +1 -1
- package/dist/operator/situation-report.d.ts +30 -11
- package/dist/operator/situation-report.d.ts.map +1 -1
- package/dist/operator/situation-report.js +42 -13
- package/dist/operator/situation-report.js.map +1 -1
- package/dist/operator/task-ledger.d.ts +101 -0
- package/dist/operator/task-ledger.d.ts.map +1 -1
- package/dist/operator/task-ledger.js +599 -124
- package/dist/operator/task-ledger.js.map +1 -1
- package/dist/operator/temporal-worker.js +1 -1
- package/dist/operator/worker-run.d.ts +1 -1
- package/dist/operator/worker-run.d.ts.map +1 -1
- package/dist/operator/worker-run.js +17 -5
- package/dist/operator/worker-run.js.map +1 -1
- package/dist/operator/workorder-consumer.d.ts +12 -1
- package/dist/operator/workorder-consumer.d.ts.map +1 -1
- package/dist/operator/workorder-consumer.js +133 -7
- package/dist/operator/workorder-consumer.js.map +1 -1
- package/dist/operator/workorder-hooks.d.ts +7 -2
- package/dist/operator/workorder-hooks.d.ts.map +1 -1
- package/dist/operator/workorder-hooks.js +22 -0
- package/dist/operator/workorder-hooks.js.map +1 -1
- package/dist/operator/workorder-publishers.d.ts +9 -2
- package/dist/operator/workorder-publishers.d.ts.map +1 -1
- package/dist/operator/workorder-publishers.js +167 -5
- package/dist/operator/workorder-publishers.js.map +1 -1
- package/package.json +2 -2
- package/scripts/generate-gateway-tools.ts +13 -3
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runContextRegistry = exports.RunContextRegistry = exports.RunContextRegistryError = void 0;
|
|
4
|
+
exports.createProcessContextKey = createProcessContextKey;
|
|
5
|
+
exports.isProcessContextKey = isProcessContextKey;
|
|
6
|
+
const crypto_1 = require("crypto");
|
|
7
|
+
const expiry_js_1 = require("../../envelope/expiry.js");
|
|
8
|
+
const PROCESS_CONTEXT_KEY_BYTES = 32;
|
|
9
|
+
const PROCESS_CONTEXT_KEY_PATTERN = /^[A-Za-z0-9_-]{43}$/;
|
|
10
|
+
const DEFAULT_LEGACY_HARD_CAP_MS = 30 * 60 * 1_000;
|
|
11
|
+
class RunContextRegistryError extends Error {
|
|
12
|
+
code;
|
|
13
|
+
constructor(code, message) {
|
|
14
|
+
super(message);
|
|
15
|
+
this.code = code;
|
|
16
|
+
this.name = 'RunContextRegistryError';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.RunContextRegistryError = RunContextRegistryError;
|
|
20
|
+
function createProcessContextKey(randomBytes = crypto_1.randomBytes) {
|
|
21
|
+
const key = randomBytes(PROCESS_CONTEXT_KEY_BYTES).toString('base64url');
|
|
22
|
+
if (!PROCESS_CONTEXT_KEY_PATTERN.test(key)) {
|
|
23
|
+
throw new RunContextRegistryError('RUN_CONTEXT_KEY_INVALID', 'Process context key generation returned an invalid value');
|
|
24
|
+
}
|
|
25
|
+
return key;
|
|
26
|
+
}
|
|
27
|
+
function isProcessContextKey(value) {
|
|
28
|
+
return typeof value === 'string' && PROCESS_CONTEXT_KEY_PATTERN.test(value);
|
|
29
|
+
}
|
|
30
|
+
class RunContextRegistry {
|
|
31
|
+
entries = new Map();
|
|
32
|
+
now;
|
|
33
|
+
hardCapMs;
|
|
34
|
+
createLeaseId;
|
|
35
|
+
constructor(options = {}) {
|
|
36
|
+
this.now = options.now ?? Date.now;
|
|
37
|
+
this.hardCapMs = options.hardCapMs ?? DEFAULT_LEGACY_HARD_CAP_MS;
|
|
38
|
+
this.createLeaseId = options.createLeaseId ?? crypto_1.randomUUID;
|
|
39
|
+
}
|
|
40
|
+
register(contextKey, context) {
|
|
41
|
+
this.assertContextKey(contextKey);
|
|
42
|
+
const now = this.now();
|
|
43
|
+
const current = this.entries.get(contextKey);
|
|
44
|
+
if (current && !this.isExpired(current, now)) {
|
|
45
|
+
throw new RunContextRegistryError('RUN_CONTEXT_LEASE_CONFLICT', 'A live run context lease already exists for this process generation');
|
|
46
|
+
}
|
|
47
|
+
if (current) {
|
|
48
|
+
this.beginClosing(contextKey, current);
|
|
49
|
+
if (current.activePins > 0) {
|
|
50
|
+
throw new RunContextRegistryError('RUN_CONTEXT_LEASE_CONFLICT', 'An expired run context lease is still draining active executions');
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const expiresAt = context.envelope
|
|
54
|
+
? (0, expiry_js_1.parseEnvelopeExpiresAt)(context.envelope.expires_at)
|
|
55
|
+
: now + this.hardCapMs;
|
|
56
|
+
if (expiresAt <= now) {
|
|
57
|
+
throw new RunContextRegistryError('RUN_CONTEXT_LEASE_EXPIRED', 'Cannot register an already-expired run context');
|
|
58
|
+
}
|
|
59
|
+
const leaseId = this.createLeaseId();
|
|
60
|
+
const lease = {
|
|
61
|
+
leaseId,
|
|
62
|
+
context,
|
|
63
|
+
expiresAt,
|
|
64
|
+
activePins: 0,
|
|
65
|
+
closing: false,
|
|
66
|
+
timer: setTimeout(() => {
|
|
67
|
+
const live = this.entries.get(contextKey);
|
|
68
|
+
if (live?.leaseId !== leaseId) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
this.beginClosing(contextKey, live);
|
|
72
|
+
}, expiresAt - now),
|
|
73
|
+
};
|
|
74
|
+
lease.timer.unref?.();
|
|
75
|
+
this.entries.set(contextKey, lease);
|
|
76
|
+
return leaseId;
|
|
77
|
+
}
|
|
78
|
+
acquire(contextKey) {
|
|
79
|
+
if (!isProcessContextKey(contextKey)) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
const lease = this.entries.get(contextKey);
|
|
83
|
+
if (!lease) {
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
if (lease.closing || this.isExpired(lease, this.now())) {
|
|
87
|
+
this.beginClosing(contextKey, lease);
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
lease.activePins += 1;
|
|
91
|
+
let released = false;
|
|
92
|
+
return {
|
|
93
|
+
context: lease.context,
|
|
94
|
+
releasePin: () => {
|
|
95
|
+
if (released) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
released = true;
|
|
99
|
+
lease.activePins = Math.max(0, lease.activePins - 1);
|
|
100
|
+
if (lease.closing && lease.activePins === 0) {
|
|
101
|
+
this.removeIfCurrent(contextKey, lease);
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
close(contextKey, leaseId) {
|
|
107
|
+
const lease = this.entries.get(contextKey);
|
|
108
|
+
if (!lease || lease.leaseId !== leaseId) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
this.beginClosing(contextKey, lease);
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
has(contextKey) {
|
|
115
|
+
return this.entries.has(contextKey);
|
|
116
|
+
}
|
|
117
|
+
assertContextKey(contextKey) {
|
|
118
|
+
if (!isProcessContextKey(contextKey)) {
|
|
119
|
+
throw new RunContextRegistryError('RUN_CONTEXT_KEY_INVALID', 'Run context key must be a 32-byte base64url value');
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
isExpired(lease, now) {
|
|
123
|
+
return lease.expiresAt <= now;
|
|
124
|
+
}
|
|
125
|
+
beginClosing(contextKey, lease) {
|
|
126
|
+
if (!lease.closing) {
|
|
127
|
+
lease.closing = true;
|
|
128
|
+
clearTimeout(lease.timer);
|
|
129
|
+
}
|
|
130
|
+
if (lease.activePins === 0) {
|
|
131
|
+
this.removeIfCurrent(contextKey, lease);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
removeIfCurrent(contextKey, lease) {
|
|
135
|
+
if (this.entries.get(contextKey) === lease) {
|
|
136
|
+
clearTimeout(lease.timer);
|
|
137
|
+
this.entries.delete(contextKey);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
exports.RunContextRegistry = RunContextRegistry;
|
|
142
|
+
exports.runContextRegistry = new RunContextRegistry();
|
|
143
|
+
//# sourceMappingURL=run-context-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-context-registry.js","sourceRoot":"","sources":["../../../src/agent/code-act/run-context-registry.ts"],"names":[],"mappings":";;;AA0BA,0DASC;AAED,kDAEC;AAvCD,mCAAsE;AAEtE,wDAAkE;AAGlE,MAAM,yBAAyB,GAAG,EAAE,CAAC;AACrC,MAAM,2BAA2B,GAAG,qBAAqB,CAAC;AAC1D,MAAM,0BAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;AASnD,MAAa,uBAAwB,SAAQ,KAAK;IAE9B;IADlB,YACkB,IAAiC,EACjD,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAA6B;QAIjD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AARD,0DAQC;AAED,SAAgB,uBAAuB,CAAC,cAA2B,oBAAiB;IAClF,MAAM,GAAG,GAAG,WAAW,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,EACzB,0DAA0D,CAC3D,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,mBAAmB,CAAC,KAAc;IAChD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAsBD,MAAa,kBAAkB;IACZ,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC7C,GAAG,CAAe;IAClB,SAAS,CAAS;IAClB,aAAa,CAAe;IAE7C,YAAY,UAAqC,EAAE;QACjD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,0BAA0B,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,mBAAU,CAAC;IAC3D,CAAC;IAED,QAAQ,CAAC,UAAkB,EAAE,OAAoC;QAC/D,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,uBAAuB,CAC/B,4BAA4B,EAC5B,qEAAqE,CACtE,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvC,IAAI,OAAO,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,uBAAuB,CAC/B,4BAA4B,EAC5B,kEAAkE,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ;YAChC,CAAC,CAAC,IAAA,kCAAsB,EAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YACrD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QACzB,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,uBAAuB,CAC/B,2BAA2B,EAC3B,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACrC,MAAM,KAAK,GAAoB;YAC7B,OAAO;YACP,OAAO;YACP,SAAS;YACT,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE;gBACrB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC1C,IAAI,IAAI,EAAE,OAAO,KAAK,OAAO,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACtC,CAAC,EAAE,SAAS,GAAG,GAAG,CAAC;SACpB,CAAC;QACF,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,CAAC,UAAkB;QACxB,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QACtB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,GAAG,EAAE;gBACf,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBACD,QAAQ,GAAG,IAAI,CAAC;gBAChB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACrD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAkB,EAAE,OAAe;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,UAAkB;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAEO,gBAAgB,CAAC,UAAkB;QACzC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,EACzB,mDAAmD,CACpD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,KAAsB,EAAE,GAAW;QACnD,OAAO,KAAK,CAAC,SAAS,IAAI,GAAG,CAAC;IAChC,CAAC;IAEO,YAAY,CAAC,UAAkB,EAAE,KAAsB;QAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,UAAkB,EAAE,KAAsB;QAChE,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC;YAC3C,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;CACF;AAtID,gDAsIC;AAEY,QAAA,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type ConnectorCapabilitySurface, type PrivateConnectorPolicy } from '../connectors/private-connector-policy.js';
|
|
2
|
+
export interface GatewayToolCatalogInput {
|
|
3
|
+
surface: ConnectorCapabilitySurface;
|
|
4
|
+
allowedTools?: readonly string[];
|
|
5
|
+
blockedTools?: readonly string[];
|
|
6
|
+
privateConnectorPolicy: PrivateConnectorPolicy;
|
|
7
|
+
}
|
|
8
|
+
export interface GatewayToolCatalog {
|
|
9
|
+
cacheKey: string;
|
|
10
|
+
toolNames: readonly string[];
|
|
11
|
+
prompt: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function buildGatewayToolCatalog(input: GatewayToolCatalogInput): GatewayToolCatalog;
|
|
14
|
+
//# sourceMappingURL=gateway-tool-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-tool-catalog.d.ts","sourceRoot":"","sources":["../../src/agent/gateway-tool-catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC5B,MAAM,2CAA2C,CAAC;AAInD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,0BAA0B,CAAC;IACpC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,sBAAsB,EAAE,sBAAsB,CAAC;CAChD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAiBD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,kBAAkB,CA6B1F"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildGatewayToolCatalog = buildGatewayToolCatalog;
|
|
4
|
+
const minimatch_1 = require("minimatch");
|
|
5
|
+
const private_connector_policy_js_1 = require("../connectors/private-connector-policy.js");
|
|
6
|
+
const private_prompt_overlay_js_1 = require("../connectors/private-prompt-overlay.js");
|
|
7
|
+
const tool_registry_js_1 = require("./tool-registry.js");
|
|
8
|
+
const catalogCache = new Map();
|
|
9
|
+
function canonicalPatterns(patterns, fallback) {
|
|
10
|
+
return [...new Set(patterns ?? fallback)].sort();
|
|
11
|
+
}
|
|
12
|
+
function buildCacheKey(input) {
|
|
13
|
+
return JSON.stringify({
|
|
14
|
+
surface: input.surface,
|
|
15
|
+
allowedTools: canonicalPatterns(input.allowedTools, ['*']),
|
|
16
|
+
blockedTools: canonicalPatterns(input.blockedTools, []),
|
|
17
|
+
privateConnectorPolicyFingerprint: input.privateConnectorPolicy.fingerprint,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function buildGatewayToolCatalog(input) {
|
|
21
|
+
const cacheKey = buildCacheKey(input);
|
|
22
|
+
const cached = catalogCache.get(cacheKey);
|
|
23
|
+
if (cached) {
|
|
24
|
+
return cached;
|
|
25
|
+
}
|
|
26
|
+
const expandedAllowed = tool_registry_js_1.ToolRegistry.expandToolPatterns(input.allowedTools);
|
|
27
|
+
const projected = (0, private_connector_policy_js_1.projectPrivateToolPolicy)(input.surface, {
|
|
28
|
+
allowedTools: expandedAllowed,
|
|
29
|
+
blockedTools: input.blockedTools === undefined ? [] : [...input.blockedTools],
|
|
30
|
+
}, input.privateConnectorPolicy);
|
|
31
|
+
const toolNames = Object.freeze(tool_registry_js_1.ToolRegistry.expandToolPatterns(projected.allowedTools).filter((name) => !projected.blockedTools.some((pattern) => (0, minimatch_1.minimatch)(name, pattern))));
|
|
32
|
+
const catalogPrompt = tool_registry_js_1.ToolRegistry.generatePrompt(toolNames);
|
|
33
|
+
const overlay = input.privateConnectorPolicy.promptOverlayFor(input.surface).trim();
|
|
34
|
+
const prompt = overlay
|
|
35
|
+
? `${catalogPrompt}\n\n${(0, private_prompt_overlay_js_1.wrapPrivatePromptOverlay)(overlay)}`
|
|
36
|
+
: catalogPrompt;
|
|
37
|
+
const catalog = Object.freeze({ cacheKey, toolNames, prompt });
|
|
38
|
+
catalogCache.set(cacheKey, catalog);
|
|
39
|
+
return catalog;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=gateway-tool-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-tool-catalog.js","sourceRoot":"","sources":["../../src/agent/gateway-tool-catalog.ts"],"names":[],"mappings":";;AAsCA,0DA6BC;AAnED,yCAAsC;AAEtC,2FAImD;AACnD,uFAAmF;AACnF,yDAAkD;AAelD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA8B,CAAC;AAE3D,SAAS,iBAAiB,CAAC,QAAuC,EAAE,QAA2B;IAC7F,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,aAAa,CAAC,KAA8B;IACnD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,YAAY,EAAE,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;QAC1D,YAAY,EAAE,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;QACvD,iCAAiC,EAAE,KAAK,CAAC,sBAAsB,CAAC,WAAW;KAC5E,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,uBAAuB,CAAC,KAA8B;IACpE,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,eAAe,GAAG,+BAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAA,sDAAwB,EACxC,KAAK,CAAC,OAAO,EACb;QACE,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;KAC9E,EACD,KAAK,CAAC,sBAAsB,CAC7B,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAC7B,+BAAY,CAAC,kBAAkB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,MAAM,CAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,qBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAC9E,CACF,CAAC;IACF,MAAM,aAAa,GAAG,+BAAY,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACpF,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAC,GAAG,aAAa,OAAO,IAAA,oDAAwB,EAAC,OAAO,CAAC,EAAE;QAC5D,CAAC,CAAC,aAAa,CAAC;IAClB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -16,6 +16,10 @@ import type { AgentEventBus } from '../multi-agent/agent-event-bus.js';
|
|
|
16
16
|
import type { SQLiteDatabase } from '../sqlite.js';
|
|
17
17
|
import { type WikiPublishAdapter } from '../wiki-artifacts/wiki-publish-adapter.js';
|
|
18
18
|
import type { WikiPagePublisher } from '../wiki-artifacts/types.js';
|
|
19
|
+
import { type PrivateConnectorPolicy } from '../connectors/private-connector-policy.js';
|
|
20
|
+
type PrivateAwareGatewayToolExecutorOptions = GatewayToolExecutorOptions & {
|
|
21
|
+
privateConnectorPolicy?: PrivateConnectorPolicy;
|
|
22
|
+
};
|
|
19
23
|
type GatewayExecutionContext = GatewayToolExecutionContext;
|
|
20
24
|
type GatewayContextSnapshot = {
|
|
21
25
|
agentId: string;
|
|
@@ -62,6 +66,7 @@ export declare class GatewayToolExecutor {
|
|
|
62
66
|
private slackGateway;
|
|
63
67
|
private telegramGateway;
|
|
64
68
|
private roleManager;
|
|
69
|
+
private readonly privateConnectorPolicy;
|
|
65
70
|
private readonly executionContextStorage;
|
|
66
71
|
private readonly envelopeEnforcer;
|
|
67
72
|
private readonly channelGrantProvider;
|
|
@@ -136,7 +141,7 @@ export declare class GatewayToolExecutor {
|
|
|
136
141
|
/** Check if a memory agent is available for routing memory writes. */
|
|
137
142
|
hasMemoryAgent(): boolean;
|
|
138
143
|
/** Check if delegate tool support is available (multi-agent wired). */
|
|
139
|
-
constructor(options?:
|
|
144
|
+
constructor(options?: PrivateAwareGatewayToolExecutorOptions);
|
|
140
145
|
beginRuntimeModelRun(input: BeginModelRunInput): Promise<ModelRunRecord>;
|
|
141
146
|
commitRuntimeModelRun(modelRunId: string, summary?: string): Promise<ModelRunRecord>;
|
|
142
147
|
failRuntimeModelRun(modelRunId: string, errorSummary: string): Promise<ModelRunRecord>;
|
|
@@ -167,6 +172,7 @@ export declare class GatewayToolExecutor {
|
|
|
167
172
|
* @returns Object with allowed status and optional error message
|
|
168
173
|
*/
|
|
169
174
|
private checkToolPermission;
|
|
175
|
+
projectPrivateAgentContext(context: AgentContext): AgentContext;
|
|
170
176
|
/**
|
|
171
177
|
* Check if a path is allowed for the current context
|
|
172
178
|
* @param path - File path to check
|
|
@@ -185,6 +191,11 @@ export declare class GatewayToolExecutor {
|
|
|
185
191
|
* @throws AgentError on tool errors or permission denial
|
|
186
192
|
*/
|
|
187
193
|
execute(toolName: string, input: GatewayToolInput, executionContext?: GatewayExecutionContext): Promise<GatewayToolResult>;
|
|
194
|
+
/**
|
|
195
|
+
* External lifecycle decisions are only valid while the host-created model run that owns the
|
|
196
|
+
* claimed board attempt is still running. Tool input cannot name either authority.
|
|
197
|
+
*/
|
|
198
|
+
private requireExternalLifecycleModelRun;
|
|
188
199
|
private beginTraceIfNeeded;
|
|
189
200
|
private requireTraceApi;
|
|
190
201
|
private appendToolTraceIfNeeded;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-tool-executor.d.ts","sourceRoot":"","sources":["../../src/agent/gateway-tool-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA2BH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EAcjB,0BAA0B,EAG1B,eAAe,EACf,YAAY,EAIZ,2BAA2B,EAE3B,kBAAkB,EAClB,cAAc,
|
|
1
|
+
{"version":3,"file":"gateway-tool-executor.d.ts","sourceRoot":"","sources":["../../src/agent/gateway-tool-executor.ts"],"names":[],"mappings":"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"}
|