@agentmark-ai/cli 0.10.0 → 0.10.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/README.md +143 -1
- package/dist/.next/BUILD_ID +1 -1
- package/dist/.next/app-build-manifest.json +3 -3
- package/dist/.next/build-manifest.json +2 -2
- package/dist/.next/cache/.previewinfo +1 -1
- package/dist/.next/cache/.rscinfo +1 -1
- package/dist/.next/cache/.tsbuildinfo +1 -1
- package/dist/.next/cache/config.json +3 -3
- package/dist/.next/cache/webpack/client-production/0.pack +0 -0
- package/dist/.next/cache/webpack/client-production/index.pack +0 -0
- package/dist/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/dist/.next/cache/webpack/server-production/0.pack +0 -0
- package/dist/.next/cache/webpack/server-production/index.pack +0 -0
- package/dist/.next/prerender-manifest.json +10 -10
- package/dist/.next/server/app/_not-found.html +1 -1
- package/dist/.next/server/app/_not-found.rsc +1 -1
- package/dist/.next/server/app/experiments/compare.html +1 -1
- package/dist/.next/server/app/experiments/compare.rsc +1 -1
- package/dist/.next/server/app/experiments.html +1 -1
- package/dist/.next/server/app/experiments.rsc +1 -1
- package/dist/.next/server/app/index.html +1 -1
- package/dist/.next/server/app/index.rsc +1 -1
- package/dist/.next/server/app/requests/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/requests.html +1 -1
- package/dist/.next/server/app/requests.rsc +2 -2
- package/dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/sessions.html +1 -1
- package/dist/.next/server/app/sessions.rsc +2 -2
- package/dist/.next/server/app/traces/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/traces.html +1 -1
- package/dist/.next/server/app/traces.rsc +2 -2
- package/dist/.next/server/chunks/478.js +2 -2
- package/dist/.next/server/pages/404.html +1 -1
- package/dist/.next/server/pages/500.html +1 -1
- package/dist/.next/server/server-reference-manifest.json +1 -1
- package/dist/.next/static/chunks/{41-8ba62a009d80b6dc.js → 41-f512c46d7ea943f6.js} +1 -1
- package/dist/.next/trace +56 -56
- package/dist/api-server.js +0 -1
- package/dist/api-server.js.map +1 -1
- package/dist/commands/deploy.d.ts +27 -0
- package/dist/commands/deploy.js +223 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +0 -1
- package/dist/commands/dev.js +79 -66
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/run-experiment.js +7 -28
- package/dist/commands/run-experiment.js.map +1 -1
- package/dist/commands/run-prompt.js +6 -27
- package/dist/commands/run-prompt.js.map +1 -1
- package/dist/config.d.ts +2 -12
- package/dist/config.js +4 -44
- package/dist/config.js.map +1 -1
- package/dist/connect/job-handler.d.ts +23 -0
- package/dist/connect/job-handler.js +187 -0
- package/dist/connect/job-handler.js.map +1 -0
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/runner-server.d.ts +0 -6
- package/dist/runner-server.js +3 -39
- package/dist/runner-server.js.map +1 -1
- package/package.json +3 -2
- package/dist/cloudflared/download.d.ts +0 -12
- package/dist/cloudflared/download.js +0 -130
- package/dist/cloudflared/download.js.map +0 -1
- package/dist/cloudflared/index.d.ts +0 -9
- package/dist/cloudflared/index.js +0 -20
- package/dist/cloudflared/index.js.map +0 -1
- package/dist/cloudflared/platform.d.ts +0 -20
- package/dist/cloudflared/platform.js +0 -79
- package/dist/cloudflared/platform.js.map +0 -1
- package/dist/cloudflared/tunnel.d.ts +0 -16
- package/dist/cloudflared/tunnel.js +0 -129
- package/dist/cloudflared/tunnel.js.map +0 -1
- package/dist/cloudflared/types.d.ts +0 -53
- package/dist/cloudflared/types.js +0 -8
- package/dist/cloudflared/types.js.map +0 -1
- package/dist/runner-server/middleware/signature-verification.d.ts +0 -37
- package/dist/runner-server/middleware/signature-verification.js +0 -55
- package/dist/runner-server/middleware/signature-verification.js.map +0 -1
- package/dist/tunnel.d.ts +0 -6
- package/dist/tunnel.js +0 -11
- package/dist/tunnel.js.map +0 -1
- /package/dist/.next/static/{p7ZqHwMUDueov4RV9Be-X → 2NZm040KzCzDPOX6MqoKG}/_buildManifest.js +0 -0
- /package/dist/.next/static/{p7ZqHwMUDueov4RV9Be-X → 2NZm040KzCzDPOX6MqoKG}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Job handler for the AgentMark Connect protocol.
|
|
4
|
+
*
|
|
5
|
+
* Receives job messages from the platform via the WebSocketClient,
|
|
6
|
+
* proxies execution to the local webhook server (which runs in a
|
|
7
|
+
* separate child process), and streams results back through the
|
|
8
|
+
* WebSocket connection.
|
|
9
|
+
*/
|
|
10
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
11
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
12
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
13
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
14
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
15
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
16
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.JobHandler = void 0;
|
|
21
|
+
class JobHandler {
|
|
22
|
+
constructor(wsClient, webhookUrl) {
|
|
23
|
+
this.activeJobs = new Map();
|
|
24
|
+
this.wsClient = wsClient;
|
|
25
|
+
this.webhookUrl = webhookUrl;
|
|
26
|
+
}
|
|
27
|
+
/** Returns the IDs of all currently active (in-progress) jobs. */
|
|
28
|
+
getActiveJobIds() {
|
|
29
|
+
return Array.from(this.activeJobs.keys());
|
|
30
|
+
}
|
|
31
|
+
/** Dispatches an incoming platform message to the appropriate handler. */
|
|
32
|
+
handleMessage(message) {
|
|
33
|
+
if (message.type === 'job-cancel') {
|
|
34
|
+
this.handleCancel(message);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
// Fire-and-forget; errors are sent back over the socket
|
|
38
|
+
this.handleJob(message).catch((err) => {
|
|
39
|
+
console.error('[connect] Unexpected error in job handler:', err instanceof Error ? err.message : String(err));
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
// ── Job execution ─────────────────────────────────────────────────────────
|
|
43
|
+
handleJob(message) {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const { jobId, request } = message;
|
|
46
|
+
const abortController = new AbortController();
|
|
47
|
+
this.activeJobs.set(jobId, { abortController });
|
|
48
|
+
try {
|
|
49
|
+
console.log(` [connect] Received ${request.type} job (${jobId.slice(0, 8)}...)`);
|
|
50
|
+
// Forward as an HTTP POST to the local webhook server, matching the
|
|
51
|
+
// same WebhookRequest shape that handleWebhookRequest expects.
|
|
52
|
+
const response = yield fetch(this.webhookUrl, {
|
|
53
|
+
method: 'POST',
|
|
54
|
+
headers: { 'Content-Type': 'application/json' },
|
|
55
|
+
body: JSON.stringify({
|
|
56
|
+
type: request.type,
|
|
57
|
+
data: request.data,
|
|
58
|
+
}),
|
|
59
|
+
signal: abortController.signal,
|
|
60
|
+
});
|
|
61
|
+
if (abortController.signal.aborted)
|
|
62
|
+
return;
|
|
63
|
+
// Check if response is streaming
|
|
64
|
+
const isStreaming = response.headers.get('AgentMark-Streaming') === 'true';
|
|
65
|
+
if (!response.ok && !isStreaming) {
|
|
66
|
+
const errorBody = yield response.text();
|
|
67
|
+
let errorMessage;
|
|
68
|
+
try {
|
|
69
|
+
const parsed = JSON.parse(errorBody);
|
|
70
|
+
errorMessage = parsed.message || parsed.error || errorBody;
|
|
71
|
+
}
|
|
72
|
+
catch (_a) {
|
|
73
|
+
errorMessage = errorBody || `HTTP ${response.status}`;
|
|
74
|
+
}
|
|
75
|
+
this.wsClient.send({
|
|
76
|
+
type: 'job-error',
|
|
77
|
+
jobId,
|
|
78
|
+
error: errorMessage,
|
|
79
|
+
details: `Webhook server returned ${response.status}`,
|
|
80
|
+
});
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (isStreaming && response.body) {
|
|
84
|
+
yield this.streamResponse(jobId, response.body, abortController.signal);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
// Non-streaming JSON response
|
|
88
|
+
const data = yield response.json();
|
|
89
|
+
this.wsClient.send({
|
|
90
|
+
type: 'job-result',
|
|
91
|
+
jobId,
|
|
92
|
+
result: {
|
|
93
|
+
type: data.type || 'text',
|
|
94
|
+
result: data.result,
|
|
95
|
+
traceId: data.traceId || '',
|
|
96
|
+
usage: data.usage,
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
console.log(` [connect] Job complete (${jobId.slice(0, 8)}...)`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
catch (err) {
|
|
103
|
+
if (abortController.signal.aborted) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
107
|
+
const stack = err instanceof Error ? err.stack : undefined;
|
|
108
|
+
this.wsClient.send({
|
|
109
|
+
type: 'job-error',
|
|
110
|
+
jobId,
|
|
111
|
+
error: message,
|
|
112
|
+
details: stack,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
finally {
|
|
116
|
+
this.activeJobs.delete(jobId);
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// ── Stream reading ────────────────────────────────────────────────────────
|
|
121
|
+
streamResponse(jobId, body, signal) {
|
|
122
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
const reader = body.getReader();
|
|
124
|
+
const decoder = new TextDecoder();
|
|
125
|
+
let lastTraceId = '';
|
|
126
|
+
try {
|
|
127
|
+
while (true) {
|
|
128
|
+
if (signal.aborted) {
|
|
129
|
+
reader.cancel();
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
const { done, value } = yield reader.read();
|
|
133
|
+
if (done)
|
|
134
|
+
break;
|
|
135
|
+
const text = decoder.decode(value, { stream: true });
|
|
136
|
+
// Filter out "done" events (extract traceId) and forward remaining lines
|
|
137
|
+
const lines = text.split('\n');
|
|
138
|
+
const forwardLines = [];
|
|
139
|
+
for (const line of lines) {
|
|
140
|
+
if (!line.trim()) {
|
|
141
|
+
forwardLines.push(line);
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
try {
|
|
145
|
+
const parsed = JSON.parse(line);
|
|
146
|
+
if (parsed.type === 'done' && parsed.traceId) {
|
|
147
|
+
lastTraceId = parsed.traceId;
|
|
148
|
+
continue; // Strip the "done" event from forwarded data
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
catch (_a) {
|
|
152
|
+
// Not valid JSON — forward as-is
|
|
153
|
+
}
|
|
154
|
+
forwardLines.push(line);
|
|
155
|
+
}
|
|
156
|
+
const filtered = forwardLines.join('\n');
|
|
157
|
+
if (filtered.trim()) {
|
|
158
|
+
this.wsClient.send({
|
|
159
|
+
type: 'job-stream-chunk',
|
|
160
|
+
jobId,
|
|
161
|
+
chunk: filtered,
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
this.wsClient.send({
|
|
166
|
+
type: 'job-stream-end',
|
|
167
|
+
jobId,
|
|
168
|
+
traceId: lastTraceId,
|
|
169
|
+
});
|
|
170
|
+
console.log(` [connect] Stream complete (${jobId.slice(0, 8)}...)`);
|
|
171
|
+
}
|
|
172
|
+
finally {
|
|
173
|
+
reader.releaseLock();
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
// ── Cancellation ──────────────────────────────────────────────────────────
|
|
178
|
+
handleCancel(message) {
|
|
179
|
+
const active = this.activeJobs.get(message.jobId);
|
|
180
|
+
if (active) {
|
|
181
|
+
console.log(` [connect] Cancelling job ${message.jobId.slice(0, 8)}... (${message.reason})`);
|
|
182
|
+
active.abortController.abort();
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
exports.JobHandler = JobHandler;
|
|
187
|
+
//# sourceMappingURL=job-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-handler.js","sourceRoot":"","sources":["../../cli-src/connect/job-handler.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -29,6 +29,7 @@ const build_1 = __importDefault(require("./commands/build"));
|
|
|
29
29
|
const login_1 = __importDefault(require("./commands/login"));
|
|
30
30
|
const logout_1 = __importDefault(require("./commands/logout"));
|
|
31
31
|
const link_1 = __importDefault(require("./commands/link"));
|
|
32
|
+
const deploy_1 = __importDefault(require("./commands/deploy"));
|
|
32
33
|
const update_notifier_1 = require("./update-notifier");
|
|
33
34
|
// Start async update check early (non-blocking)
|
|
34
35
|
const updateCheckPromise = (0, update_notifier_1.startUpdateCheck)();
|
|
@@ -43,8 +44,7 @@ commander_1.program
|
|
|
43
44
|
.option("--api-port <number>", "API server port (default: 9418)")
|
|
44
45
|
.option("--webhook-port <number>", "Webhook server port (default: 9417)")
|
|
45
46
|
.option("--app-port <number>", "AgentMark UI app port (default: 3000)")
|
|
46
|
-
.option("-r, --remote", "Connect to platform (
|
|
47
|
-
.option("-t, --tunnel", "Expose webhook server publicly via tunnel")
|
|
47
|
+
.option("-r, --remote", "Connect to platform (WebSocket + forwarding)")
|
|
48
48
|
.option("--no-forward", "Disable trace forwarding (only relevant with --remote)")
|
|
49
49
|
.description("Start development servers (API server + webhook + UI app)")
|
|
50
50
|
.action((options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -53,7 +53,6 @@ commander_1.program
|
|
|
53
53
|
webhookPort: options.webhookPort ? parseInt(options.webhookPort, 10) : undefined,
|
|
54
54
|
appPort: options.appPort ? parseInt(options.appPort, 10) : undefined,
|
|
55
55
|
remote: options.remote || false,
|
|
56
|
-
tunnel: options.tunnel || false,
|
|
57
56
|
forward: options.forward, // Commander.js --no-forward sets this to false; defaults to true
|
|
58
57
|
});
|
|
59
58
|
}));
|
|
@@ -183,6 +182,7 @@ commander_1.program
|
|
|
183
182
|
commander_1.program.error(error.message);
|
|
184
183
|
}
|
|
185
184
|
}));
|
|
185
|
+
commander_1.program.addCommand((0, deploy_1.default)());
|
|
186
186
|
// Parse and run command, then display update notification
|
|
187
187
|
// Using parseAsync ensures notification displays after command completes
|
|
188
188
|
commander_1.program.parseAsync(process.argv).then(() => __awaiter(void 0, void 0, void 0, function* () {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../cli-src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,gDAAgD;AAChD,mCAAgC;AAChC,IAAA,eAAM,GAAE,CAAC;AAET,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,yDAAiC;AACjC,+EAAsD;AACtD,iFAAwD;AACxD,yEAAgD;AAChD,uEAA8C;AAC9C,+EAAsD;AACtD,6DAAqC;AACrC,6DAAqC;AACrC,+DAAuC;AACvC,2DAAmC;AACnC,uDAAgF;AAEhF,gDAAgD;AAChD,MAAM,kBAAkB,GAAG,IAAA,kCAAgB,GAAE,CAAC;AAE9C,iCAAiC;AACjC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE1F,mBAAO;KACJ,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,4BAA4B,CAAC;KAC3E,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,mDAAmD,CAAC,CAAC;AAEpE,mBAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,MAAM,CAAC,qBAAqB,EAAE,iCAAiC,CAAC;KAChE,MAAM,CAAC,yBAAyB,EAAE,qCAAqC,CAAC;KACxE,MAAM,CAAC,qBAAqB,EAAE,uCAAuC,CAAC;KACtE,MAAM,CAAC,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../cli-src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/runner-server.d.ts
CHANGED
|
@@ -6,18 +6,12 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { Server } from 'node:http';
|
|
8
8
|
import type { WebhookHandler } from './runner-server/types';
|
|
9
|
-
import { type SignatureVerificationOptions } from './runner-server/middleware/signature-verification';
|
|
10
9
|
export type { WebhookHandler } from './runner-server/types';
|
|
11
10
|
export interface WebhookServerOptions {
|
|
12
11
|
port?: number;
|
|
13
12
|
handler: WebhookHandler;
|
|
14
13
|
apiServerUrl?: string;
|
|
15
14
|
templatesDirectory?: string;
|
|
16
|
-
/**
|
|
17
|
-
* Webhook signature verification options.
|
|
18
|
-
* If not provided, will check AGENTMARK_WEBHOOK_SECRET env var.
|
|
19
|
-
*/
|
|
20
|
-
signatureVerification?: SignatureVerificationOptions;
|
|
21
15
|
}
|
|
22
16
|
/**
|
|
23
17
|
* Creates an HTTP server that wraps a webhook handler instance.
|
package/dist/runner-server.js
CHANGED
|
@@ -24,8 +24,6 @@ const express_1 = __importDefault(require("express"));
|
|
|
24
24
|
const express_rate_limit_1 = __importDefault(require("express-rate-limit"));
|
|
25
25
|
const node_http_1 = require("node:http");
|
|
26
26
|
const core_1 = require("./runner-server/core");
|
|
27
|
-
const signature_verification_1 = require("./runner-server/middleware/signature-verification");
|
|
28
|
-
const config_1 = require("./config");
|
|
29
27
|
// Set up rate limiter: 100 requests per 15 minutes per IP
|
|
30
28
|
const limiter = (0, express_rate_limit_1.default)({
|
|
31
29
|
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
@@ -36,7 +34,7 @@ const limiter = (0, express_rate_limit_1.default)({
|
|
|
36
34
|
/**
|
|
37
35
|
* Creates an Express middleware handler for AgentMark webhook requests.
|
|
38
36
|
*/
|
|
39
|
-
function createMiddleware(handler
|
|
37
|
+
function createMiddleware(handler) {
|
|
40
38
|
return (req, res) => __awaiter(this, void 0, void 0, function* () {
|
|
41
39
|
try {
|
|
42
40
|
// Log incoming request
|
|
@@ -44,29 +42,6 @@ function createMiddleware(handler, signatureOptions) {
|
|
|
44
42
|
const clientIp = req.ip || req.socket.remoteAddress || 'unknown';
|
|
45
43
|
console.log(`\n[${timestamp}] ${req.method} ${req.path} - ${clientIp}`);
|
|
46
44
|
const body = req.body || {};
|
|
47
|
-
// Verify signature if configured
|
|
48
|
-
if (signatureOptions && !(0, signature_verification_1.shouldSkipVerification)(signatureOptions)) {
|
|
49
|
-
const headerName = signatureOptions.headerName || 'x-agentmark-signature-256';
|
|
50
|
-
const signature = req.headers[headerName.toLowerCase()];
|
|
51
|
-
if (!signature) {
|
|
52
|
-
console.error(' ❌ 401 Missing signature header');
|
|
53
|
-
console.error(` Expected header: ${headerName}`);
|
|
54
|
-
console.error(' Ensure the client is sending a signed request with AGENTMARK_WEBHOOK_SECRET.');
|
|
55
|
-
return res.status(401).json({
|
|
56
|
-
message: `Missing signature header: Expected ${headerName} header for webhook verification`
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
const bodyString = typeof body === 'string' ? body : JSON.stringify(body);
|
|
60
|
-
const isValid = yield (0, signature_verification_1.verifyWebhookSignature)(bodyString, signature, signatureOptions.secret);
|
|
61
|
-
if (!isValid) {
|
|
62
|
-
console.error(' ❌ 401 Invalid webhook signature');
|
|
63
|
-
console.error(' The signature in the request header does not match.');
|
|
64
|
-
return res.status(401).json({
|
|
65
|
-
message: 'Invalid webhook signature - signature verification failed'
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
console.log(' ✓ Signature verified');
|
|
69
|
-
}
|
|
70
45
|
// Call platform-agnostic core handler
|
|
71
46
|
const result = yield (0, core_1.handleWebhookRequest)(body, handler);
|
|
72
47
|
// Handle error responses
|
|
@@ -145,19 +120,8 @@ function createMiddleware(handler, signatureOptions) {
|
|
|
145
120
|
*/
|
|
146
121
|
function createWebhookServer(options) {
|
|
147
122
|
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
const { port = 9417, handler
|
|
149
|
-
// Setup signature verification options
|
|
150
|
-
let sigOptions = signatureVerification;
|
|
151
|
-
if (!sigOptions) {
|
|
152
|
-
// Check for env var
|
|
153
|
-
const secret = (0, config_1.getWebhookSecret)();
|
|
154
|
-
if (secret) {
|
|
155
|
-
sigOptions = { secret };
|
|
156
|
-
}
|
|
157
|
-
}
|
|
123
|
+
const { port = 9417, handler } = options;
|
|
158
124
|
const app = (0, express_1.default)();
|
|
159
|
-
// Trust first proxy hop (for tunnels like ngrok, cloudflare, etc.)
|
|
160
|
-
// Using 1 instead of true limits trust to single proxy, more secure for dev
|
|
161
125
|
app.set('trust proxy', 1);
|
|
162
126
|
// Parse JSON bodies (up to 10mb)
|
|
163
127
|
app.use(express_1.default.json({ limit: '10mb' }));
|
|
@@ -363,7 +327,7 @@ ${promptsList}
|
|
|
363
327
|
`.trim());
|
|
364
328
|
}));
|
|
365
329
|
// Mount the webhook handler middleware at POST /
|
|
366
|
-
app.post('/', limiter, createMiddleware(handler
|
|
330
|
+
app.post('/', limiter, createMiddleware(handler));
|
|
367
331
|
// Create HTTP server and start listening
|
|
368
332
|
const server = (0, node_http_1.createServer)(app);
|
|
369
333
|
yield new Promise(resolve => server.listen(port, resolve));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-server.js","sourceRoot":"","sources":["../cli-src/runner-server.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"runner-server.js","sourceRoot":"","sources":["../cli-src/runner-server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentmark-ai/cli",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.1",
|
|
4
4
|
"description": "Agentmark's CLI",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
"agentmark": "dist/index.js"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
+
"@agentmark-ai/connect": "0.1.0",
|
|
27
28
|
"@agentmark-ai/model-registry": "0.2.0",
|
|
28
|
-
"@agentmark-ai/prompt-core": "0.
|
|
29
|
+
"@agentmark-ai/prompt-core": "0.3.0",
|
|
29
30
|
"@agentmark-ai/shared-utils": "0.3.0",
|
|
30
31
|
"@agentmark-ai/templatedx": "0.2.0",
|
|
31
32
|
"@emotion/cache": "^11.14.0",
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cloudflared Binary Download Module
|
|
3
|
-
*
|
|
4
|
-
* Handles downloading and installing the cloudflared binary with user consent.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Ensures cloudflared binary is available, downloading if necessary.
|
|
8
|
-
* Prompts for user consent before downloading.
|
|
9
|
-
* @returns Path to the cloudflared binary
|
|
10
|
-
* @throws Error if user declines download or download fails
|
|
11
|
-
*/
|
|
12
|
-
export declare function ensureCloudflared(): Promise<string>;
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Cloudflared Binary Download Module
|
|
4
|
-
*
|
|
5
|
-
* Handles downloading and installing the cloudflared binary with user consent.
|
|
6
|
-
*/
|
|
7
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
8
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
9
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
10
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
11
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
12
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
13
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
-
};
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.ensureCloudflared = ensureCloudflared;
|
|
21
|
-
const fs_1 = __importDefault(require("fs"));
|
|
22
|
-
const path_1 = __importDefault(require("path"));
|
|
23
|
-
const https_1 = __importDefault(require("https"));
|
|
24
|
-
const child_process_1 = require("child_process");
|
|
25
|
-
const prompts_1 = __importDefault(require("prompts"));
|
|
26
|
-
const platform_1 = require("./platform");
|
|
27
|
-
const GITHUB_RELEASE_URL = 'https://github.com/cloudflare/cloudflared/releases/latest/download';
|
|
28
|
-
/**
|
|
29
|
-
* Ensures cloudflared binary is available, downloading if necessary.
|
|
30
|
-
* Prompts for user consent before downloading.
|
|
31
|
-
* @returns Path to the cloudflared binary
|
|
32
|
-
* @throws Error if user declines download or download fails
|
|
33
|
-
*/
|
|
34
|
-
function ensureCloudflared() {
|
|
35
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
36
|
-
const binaryPath = (0, platform_1.getBinaryPath)();
|
|
37
|
-
// Check if binary already exists
|
|
38
|
-
if (fs_1.default.existsSync(binaryPath)) {
|
|
39
|
-
return binaryPath;
|
|
40
|
-
}
|
|
41
|
-
// Check if download should be skipped
|
|
42
|
-
if (process.env.AGENTMARK_SKIP_CLOUDFLARED_DOWNLOAD === 'true') {
|
|
43
|
-
throw new Error('Cloudflared binary not found and automatic download is disabled.\n' +
|
|
44
|
-
'Install cloudflared manually or set AGENTMARK_SKIP_CLOUDFLARED_DOWNLOAD=false');
|
|
45
|
-
}
|
|
46
|
-
// Prompt for consent
|
|
47
|
-
const { consent } = yield (0, prompts_1.default)({
|
|
48
|
-
type: 'confirm',
|
|
49
|
-
name: 'consent',
|
|
50
|
-
message: 'Cloudflared binary not found. Download it now? (~30MB)',
|
|
51
|
-
initial: true
|
|
52
|
-
});
|
|
53
|
-
if (!consent) {
|
|
54
|
-
throw new Error('Cloudflared binary required for tunnel. Run with --tunnel to try again.');
|
|
55
|
-
}
|
|
56
|
-
yield downloadBinary();
|
|
57
|
-
return binaryPath;
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Downloads the cloudflared binary for the current platform.
|
|
62
|
-
*/
|
|
63
|
-
function downloadBinary() {
|
|
64
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
const { binaryName, isArchive } = (0, platform_1.getPlatformInfo)();
|
|
66
|
-
const cacheDir = (0, platform_1.getCacheDir)();
|
|
67
|
-
const downloadUrl = `${GITHUB_RELEASE_URL}/${binaryName}`;
|
|
68
|
-
// Create cache directory
|
|
69
|
-
fs_1.default.mkdirSync(cacheDir, { recursive: true });
|
|
70
|
-
console.log(`Downloading cloudflared from ${downloadUrl}...`);
|
|
71
|
-
const tempPath = path_1.default.join(cacheDir, binaryName);
|
|
72
|
-
yield downloadFile(downloadUrl, tempPath);
|
|
73
|
-
if (isArchive) {
|
|
74
|
-
// Extract .tgz on macOS
|
|
75
|
-
console.log('Extracting archive...');
|
|
76
|
-
(0, child_process_1.execSync)(`tar -xzf "${tempPath}" -C "${cacheDir}"`);
|
|
77
|
-
fs_1.default.unlinkSync(tempPath);
|
|
78
|
-
}
|
|
79
|
-
// Set executable permission on Unix
|
|
80
|
-
const binaryPath = (0, platform_1.getBinaryPath)();
|
|
81
|
-
if (process.platform !== 'win32') {
|
|
82
|
-
fs_1.default.chmodSync(binaryPath, 0o755);
|
|
83
|
-
}
|
|
84
|
-
console.log('Cloudflared installed successfully.');
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Downloads a file from a URL, following redirects.
|
|
89
|
-
* @param url URL to download from
|
|
90
|
-
* @param dest Destination file path
|
|
91
|
-
*/
|
|
92
|
-
function downloadFile(url, dest) {
|
|
93
|
-
return new Promise((resolve, reject) => {
|
|
94
|
-
const file = fs_1.default.createWriteStream(dest);
|
|
95
|
-
const request = https_1.default.get(url, (response) => {
|
|
96
|
-
// Follow redirects (GitHub uses 302 for release downloads)
|
|
97
|
-
if (response.statusCode === 302 || response.statusCode === 301) {
|
|
98
|
-
const redirectUrl = response.headers.location;
|
|
99
|
-
if (!redirectUrl) {
|
|
100
|
-
reject(new Error('Redirect without location header'));
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
file.close();
|
|
104
|
-
fs_1.default.unlinkSync(dest);
|
|
105
|
-
downloadFile(redirectUrl, dest).then(resolve).catch(reject);
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
if (response.statusCode !== 200) {
|
|
109
|
-
reject(new Error(`Download failed with status ${response.statusCode}`));
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
response.pipe(file);
|
|
113
|
-
file.on('finish', () => {
|
|
114
|
-
file.close();
|
|
115
|
-
resolve();
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
request.on('error', (err) => {
|
|
119
|
-
file.close();
|
|
120
|
-
fs_1.default.unlink(dest, () => { }); // Delete partial file
|
|
121
|
-
reject(new Error(`Download failed: ${err.message}`));
|
|
122
|
-
});
|
|
123
|
-
file.on('error', (err) => {
|
|
124
|
-
file.close();
|
|
125
|
-
fs_1.default.unlink(dest, () => { }); // Delete partial file
|
|
126
|
-
reject(new Error(`File write failed: ${err.message}`));
|
|
127
|
-
});
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=download.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../cli-src/cloudflared/download.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cloudflared Module
|
|
3
|
-
*
|
|
4
|
-
* Public exports for cloudflared tunnel functionality.
|
|
5
|
-
*/
|
|
6
|
-
export type { TunnelInfo, PlatformInfo, CloudflaredConfig, DownloadProgress } from './types';
|
|
7
|
-
export { createTunnel } from './tunnel';
|
|
8
|
-
export { ensureCloudflared } from './download';
|
|
9
|
-
export { getPlatformInfo, getCacheDir, getBinaryPath } from './platform';
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Cloudflared Module
|
|
4
|
-
*
|
|
5
|
-
* Public exports for cloudflared tunnel functionality.
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.getBinaryPath = exports.getCacheDir = exports.getPlatformInfo = exports.ensureCloudflared = exports.createTunnel = void 0;
|
|
9
|
-
// Tunnel management
|
|
10
|
-
var tunnel_1 = require("./tunnel");
|
|
11
|
-
Object.defineProperty(exports, "createTunnel", { enumerable: true, get: function () { return tunnel_1.createTunnel; } });
|
|
12
|
-
// Binary management
|
|
13
|
-
var download_1 = require("./download");
|
|
14
|
-
Object.defineProperty(exports, "ensureCloudflared", { enumerable: true, get: function () { return download_1.ensureCloudflared; } });
|
|
15
|
-
// Platform utilities
|
|
16
|
-
var platform_1 = require("./platform");
|
|
17
|
-
Object.defineProperty(exports, "getPlatformInfo", { enumerable: true, get: function () { return platform_1.getPlatformInfo; } });
|
|
18
|
-
Object.defineProperty(exports, "getCacheDir", { enumerable: true, get: function () { return platform_1.getCacheDir; } });
|
|
19
|
-
Object.defineProperty(exports, "getBinaryPath", { enumerable: true, get: function () { return platform_1.getBinaryPath; } });
|
|
20
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../cli-src/cloudflared/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAKH,oBAAoB;AACpB,mCAAwC;AAA/B,sGAAA,YAAY,OAAA;AAErB,oBAAoB;AACpB,uCAA+C;AAAtC,6GAAA,iBAAiB,OAAA;AAE1B,qBAAqB;AACrB,uCAAyE;AAAhE,2GAAA,eAAe,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,yGAAA,aAAa,OAAA"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Platform Detection Module
|
|
3
|
-
*
|
|
4
|
-
* Handles OS and architecture detection for cloudflared binary selection.
|
|
5
|
-
*/
|
|
6
|
-
import type { PlatformInfo } from './types';
|
|
7
|
-
/**
|
|
8
|
-
* Detects the current platform and returns binary information.
|
|
9
|
-
* @throws Error if the platform/architecture combination is not supported
|
|
10
|
-
*/
|
|
11
|
-
export declare function getPlatformInfo(): PlatformInfo;
|
|
12
|
-
/**
|
|
13
|
-
* Returns the cache directory for cloudflared binaries.
|
|
14
|
-
* Can be overridden with CLOUDFLARED_CACHE_DIR environment variable.
|
|
15
|
-
*/
|
|
16
|
-
export declare function getCacheDir(): string;
|
|
17
|
-
/**
|
|
18
|
-
* Returns the full path to the cloudflared binary.
|
|
19
|
-
*/
|
|
20
|
-
export declare function getBinaryPath(): string;
|