orquesta-agent 0.2.274 → 0.2.276
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/bridge-auth.d.ts +17 -0
- package/dist/bridge-auth.d.ts.map +1 -0
- package/dist/bridge-auth.js +97 -0
- package/dist/bridge-auth.js.map +1 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +8 -0
- package/dist/daemon.js.map +1 -1
- package/dist/executor.d.ts +1 -0
- package/dist/executor.d.ts.map +1 -1
- package/dist/executor.js +15 -4
- package/dist/executor.js.map +1 -1
- package/dist/git-hardening.d.ts +26 -0
- package/dist/git-hardening.d.ts.map +1 -0
- package/dist/git-hardening.js +66 -0
- package/dist/git-hardening.js.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/local-server.d.ts +2 -0
- package/dist/local-server.d.ts.map +1 -1
- package/dist/local-server.js +30 -7
- package/dist/local-server.js.map +1 -1
- package/package.json +1 -1
package/dist/local-server.js
CHANGED
|
@@ -5,17 +5,29 @@
|
|
|
5
5
|
// in-container RPC URL+token, and drive it via curl. Without this bridge the
|
|
6
6
|
// child has no way to start a session associated with the running prompt.
|
|
7
7
|
//
|
|
8
|
-
// 127.0.0.1-bound
|
|
9
|
-
//
|
|
10
|
-
//
|
|
8
|
+
// 127.0.0.1-bound AND authenticated (since 0.2.276): every endpoint except
|
|
9
|
+
// GET /health requires this process's random secret (see bridge-auth.ts). The
|
|
10
|
+
// agent's own children get it as $ORQUESTA_BRIDGE_TOKEN; other agents on the same
|
|
11
|
+
// host (sharing the loopback through --share-net) do not have it and get 401.
|
|
11
12
|
import { createServer } from 'node:http';
|
|
12
13
|
import * as logger from './logger.js';
|
|
13
14
|
import { getActivePromptId } from './executor.js';
|
|
14
15
|
import { startBrowserSession, endBrowserSession } from './browser.js';
|
|
16
|
+
import { BRIDGE_TOKEN_ENV, generateBridgeSecret, isBridgeAuthorized, writeBridgeSecretFile, removeBridgeSecretFile, } from './bridge-auth.js';
|
|
15
17
|
export const LOCAL_SERVER_PORT = 7790; // default, actual port may differ (dynamic)
|
|
16
18
|
let actualPort = LOCAL_SERVER_PORT;
|
|
17
19
|
const ctx = { channel: null, channelName: null };
|
|
18
20
|
let server = null;
|
|
21
|
+
let bridgeSecret = '';
|
|
22
|
+
let bridgeSecretFile = null;
|
|
23
|
+
/** The per-process bridge secret (generated on first start). */
|
|
24
|
+
export function getBridgeSecret() { return bridgeSecret; }
|
|
25
|
+
function onListening(port) {
|
|
26
|
+
actualPort = port;
|
|
27
|
+
process.env.ORQUESTA_LOCAL_PORT = String(port);
|
|
28
|
+
bridgeSecretFile = writeBridgeSecretFile(port, bridgeSecret);
|
|
29
|
+
}
|
|
30
|
+
process.once('exit', () => removeBridgeSecretFile(bridgeSecretFile, bridgeSecret));
|
|
19
31
|
export function setLocalServerContext(channel, channelName) {
|
|
20
32
|
ctx.channel = channel;
|
|
21
33
|
ctx.channelName = channelName;
|
|
@@ -52,6 +64,13 @@ export function startLocalServer(preferredPort) {
|
|
|
52
64
|
: LOCAL_SERVER_PORT;
|
|
53
65
|
if (server)
|
|
54
66
|
return Promise.resolve();
|
|
67
|
+
if (!bridgeSecret) {
|
|
68
|
+
bridgeSecret = generateBridgeSecret();
|
|
69
|
+
// Inherited by every child (claude -p, interactive sessions): ORQUESTA_* passes
|
|
70
|
+
// the strict-sandbox env allowlist. Mutating process.env does not change this
|
|
71
|
+
// process's /proc/<pid>/environ.
|
|
72
|
+
process.env[BRIDGE_TOKEN_ENV] = bridgeSecret;
|
|
73
|
+
}
|
|
55
74
|
return new Promise((resolve, reject) => {
|
|
56
75
|
server = createServer(async (req, res) => {
|
|
57
76
|
try {
|
|
@@ -60,6 +79,10 @@ export function startLocalServer(preferredPort) {
|
|
|
60
79
|
send(res, 200, { ok: true, activePromptId: getActivePromptId() });
|
|
61
80
|
return;
|
|
62
81
|
}
|
|
82
|
+
if (!isBridgeAuthorized(bridgeSecret, req.headers, req.url)) {
|
|
83
|
+
send(res, 401, { error: 'unauthorized: send Authorization: Bearer $ORQUESTA_BRIDGE_TOKEN' });
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
63
86
|
if (req.method !== 'POST') {
|
|
64
87
|
send(res, 404, { error: 'not found' });
|
|
65
88
|
return;
|
|
@@ -145,8 +168,7 @@ export function startLocalServer(preferredPort) {
|
|
|
145
168
|
// Another agent has the default port — use dynamic port
|
|
146
169
|
server.listen(0, '127.0.0.1', () => {
|
|
147
170
|
const addr = server.address();
|
|
148
|
-
|
|
149
|
-
process.env.ORQUESTA_LOCAL_PORT = String(actualPort);
|
|
171
|
+
onListening(addr.port);
|
|
150
172
|
logger.info(`[local-server] port ${wantedPort} busy, using dynamic port ${actualPort}`);
|
|
151
173
|
resolve();
|
|
152
174
|
});
|
|
@@ -158,8 +180,7 @@ export function startLocalServer(preferredPort) {
|
|
|
158
180
|
}
|
|
159
181
|
});
|
|
160
182
|
server.listen(wantedPort, '127.0.0.1', () => {
|
|
161
|
-
|
|
162
|
-
process.env.ORQUESTA_LOCAL_PORT = String(actualPort);
|
|
183
|
+
onListening(server.address().port);
|
|
163
184
|
logger.info(`[local-server] listening on 127.0.0.1:${actualPort}`);
|
|
164
185
|
resolve();
|
|
165
186
|
});
|
|
@@ -171,6 +192,8 @@ export function stopLocalServer() {
|
|
|
171
192
|
return new Promise(resolve => {
|
|
172
193
|
if (!server)
|
|
173
194
|
return resolve();
|
|
195
|
+
removeBridgeSecretFile(bridgeSecretFile, bridgeSecret);
|
|
196
|
+
bridgeSecretFile = null;
|
|
174
197
|
server.close(() => { server = null; resolve(); });
|
|
175
198
|
});
|
|
176
199
|
}
|
package/dist/local-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-server.js","sourceRoot":"","sources":["../src/local-server.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,uEAAuE;AACvE,6EAA6E;AAC7E,0EAA0E;AAC1E,EAAE;AACF,2EAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"local-server.js","sourceRoot":"","sources":["../src/local-server.ts"],"names":[],"mappings":"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"}
|