@action-llama/action-llama 0.14.1 → 0.15.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.
- package/dist/agents/feedback-monitor.d.ts +56 -0
- package/dist/agents/feedback-monitor.d.ts.map +1 -0
- package/dist/agents/feedback-monitor.js +176 -0
- package/dist/agents/feedback-monitor.js.map +1 -0
- package/dist/agents/feedback-runner.d.ts +28 -0
- package/dist/agents/feedback-runner.d.ts.map +1 -0
- package/dist/agents/feedback-runner.js +138 -0
- package/dist/agents/feedback-runner.js.map +1 -0
- package/dist/agents/runner.d.ts +4 -0
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +11 -0
- package/dist/agents/runner.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +46 -0
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/start.js +1 -1
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/gateway/routes/control.d.ts +2 -0
- package/dist/gateway/routes/control.d.ts.map +1 -1
- package/dist/gateway/routes/control.js +56 -0
- package/dist/gateway/routes/control.js.map +1 -1
- package/dist/gateway/routes/dashboard.d.ts.map +1 -1
- package/dist/gateway/routes/dashboard.js +89 -3
- package/dist/gateway/routes/dashboard.js.map +1 -1
- package/dist/gateway/views/agent-detail-page.d.ts +2 -0
- package/dist/gateway/views/agent-detail-page.d.ts.map +1 -1
- package/dist/gateway/views/agent-detail-page.js +115 -2
- package/dist/gateway/views/agent-detail-page.js.map +1 -1
- package/dist/gateway/views/dashboard-page.d.ts.map +1 -1
- package/dist/gateway/views/dashboard-page.js +36 -2
- package/dist/gateway/views/dashboard-page.js.map +1 -1
- package/dist/gateway/views/instance-detail-page.d.ts +6 -0
- package/dist/gateway/views/instance-detail-page.d.ts.map +1 -1
- package/dist/gateway/views/instance-detail-page.js +95 -12
- package/dist/gateway/views/instance-detail-page.js.map +1 -1
- package/dist/gateway/views/project-config-page.d.ts +12 -0
- package/dist/gateway/views/project-config-page.d.ts.map +1 -0
- package/dist/gateway/views/project-config-page.js +199 -0
- package/dist/gateway/views/project-config-page.js.map +1 -0
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +18 -0
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +74 -0
- package/dist/scheduler/index.js.map +1 -1
- package/dist/shared/config.d.ts +26 -0
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +51 -2
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/default-feedback-agent.d.ts +10 -0
- package/dist/shared/default-feedback-agent.d.ts.map +1 -0
- package/dist/shared/default-feedback-agent.js +114 -0
- package/dist/shared/default-feedback-agent.js.map +1 -0
- package/dist/shared/usage.d.ts.map +1 -1
- package/dist/shared/usage.js +52 -7
- package/dist/shared/usage.js.map +1 -1
- package/dist/tui/App.d.ts +2 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +132 -5
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/render.d.ts +1 -1
- package/dist/tui/render.d.ts.map +1 -1
- package/dist/tui/render.js +2 -2
- package/dist/tui/render.js.map +1 -1
- package/dist/tui/status-tracker.d.ts +12 -0
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +21 -0
- package/dist/tui/status-tracker.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-detail-page.js","sourceRoot":"","sources":["../../../src/gateway/views/agent-detail-page.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent-detail-page.js","sourceRoot":"","sources":["../../../src/gateway/views/agent-detail-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard-page.d.ts","sourceRoot":"","sources":["../../../src/gateway/views/dashboard-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"dashboard-page.d.ts","sourceRoot":"","sources":["../../../src/gateway/views/dashboard-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAqGvF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,CAoN7H"}
|
|
@@ -48,6 +48,7 @@ function renderAgentRow(agent, totalSessionTokens) {
|
|
|
48
48
|
<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">${agent.lastRunDuration != null ? formatDuration(agent.lastRunDuration) : "\u2014"}</td>
|
|
49
49
|
<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">${formatTime(agent.nextRunAt)}</td>
|
|
50
50
|
<td class="px-3 py-2.5" style="min-width:120px">${renderTokenBar(agent, totalSessionTokens)}</td>
|
|
51
|
+
<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">${agent.locks && agent.locks.length > 0 ? agent.locks.map(l => escapeHtml(l.resourceKey.replace(/^[^:]+:\/\//, ""))).join(", ") : "\u2014"}</td>
|
|
51
52
|
<td class="px-3 py-2.5 whitespace-nowrap">
|
|
52
53
|
<button class="px-2 py-1 text-xs rounded font-bold bg-green-600 hover:bg-green-700 text-white transition-colors mr-1" onclick="triggerAgent('${escapeHtml(agent.name)}')">Run</button>
|
|
53
54
|
<button class="px-2 py-1 text-xs rounded font-bold bg-red-600 hover:bg-red-700 text-white transition-colors mr-1" onclick="killAgent('${escapeHtml(agent.name)}')">Kill</button>
|
|
@@ -93,6 +94,7 @@ export function renderDashboardPage(agents, schedulerInfo, recentLogs) {
|
|
|
93
94
|
<div class="flex flex-wrap items-center justify-between gap-3 mb-6">
|
|
94
95
|
<h1 class="text-xl sm:text-2xl font-bold text-slate-900 dark:text-white">Dashboard</h1>
|
|
95
96
|
<div class="flex items-center gap-2">
|
|
97
|
+
<a href="/dashboard/config" class="px-3 py-1.5 text-sm rounded-md font-bold border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-800 hover:bg-slate-50 dark:hover:bg-slate-700 text-slate-700 dark:text-slate-200 transition-colors">Config</a>
|
|
96
98
|
<button id="pause-btn" class="px-3 py-1.5 text-sm rounded-md font-bold border border-yellow-500 bg-yellow-500 hover:bg-yellow-600 text-white transition-colors" onclick="togglePause()">${schedulerInfo?.paused ? "Resume" : "Pause"}</button>
|
|
97
99
|
</div>
|
|
98
100
|
</div>
|
|
@@ -113,11 +115,12 @@ export function renderDashboardPage(agents, schedulerInfo, recentLogs) {
|
|
|
113
115
|
<th class="text-left px-3 py-2 text-xs text-slate-500 dark:text-slate-400 uppercase tracking-wider font-medium">Duration</th>
|
|
114
116
|
<th class="text-left px-3 py-2 text-xs text-slate-500 dark:text-slate-400 uppercase tracking-wider font-medium">Next Run</th>
|
|
115
117
|
<th class="text-left px-3 py-2 text-xs text-slate-500 dark:text-slate-400 uppercase tracking-wider font-medium">Tokens Used</th>
|
|
118
|
+
<th class="text-left px-3 py-2 text-xs text-slate-500 dark:text-slate-400 uppercase tracking-wider font-medium">Locks</th>
|
|
116
119
|
<th class="text-left px-3 py-2 text-xs text-slate-500 dark:text-slate-400 uppercase tracking-wider font-medium">Actions</th>
|
|
117
120
|
</tr>
|
|
118
121
|
</thead>
|
|
119
122
|
<tbody id="agent-table-body" class="divide-y divide-slate-100 dark:divide-slate-800">
|
|
120
|
-
${agents.length > 0 ? agents.map((a) => renderAgentRow(a, sessionTokens)).join("\n") : '<tr><td colspan="
|
|
123
|
+
${agents.length > 0 ? agents.map((a) => renderAgentRow(a, sessionTokens)).join("\n") : '<tr><td colspan="8" class="px-3 py-8 text-center text-slate-400 italic">No agents registered</td></tr>'}
|
|
121
124
|
</tbody>
|
|
122
125
|
</table>
|
|
123
126
|
</div>
|
|
@@ -181,6 +184,7 @@ export function renderDashboardPage(agents, schedulerInfo, recentLogs) {
|
|
|
181
184
|
'<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">' + (a.lastRunDuration != null ? fmtDur(a.lastRunDuration) : "\\u2014") + '</td>' +
|
|
182
185
|
'<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">' + fmtTime(a.nextRunAt) + '</td>' +
|
|
183
186
|
'<td class="px-3 py-2.5" style="min-width:120px">' + tokenBar(a, totalTok) + '</td>' +
|
|
187
|
+
'<td class="px-3 py-2.5 text-sm text-slate-600 dark:text-slate-300">' + (a.locks && a.locks.length > 0 ? a.locks.map(function(l) { return esc(l.resourceKey.replace(/^[^:]+:\\/\\//, "")); }).join(", ") : "\\u2014") + '</td>' +
|
|
184
188
|
'<td class="px-3 py-2.5 whitespace-nowrap">' +
|
|
185
189
|
'<button class="px-2 py-1 text-xs rounded font-bold bg-green-600 hover:bg-green-700 text-white transition-colors mr-1" onclick="triggerAgent(\\'' + esc(a.name) + '\\')">Run</button>' +
|
|
186
190
|
'<button class="px-2 py-1 text-xs rounded font-bold bg-red-600 hover:bg-red-700 text-white transition-colors mr-1" onclick="killAgent(\\'' + esc(a.name) + '\\')">Kill</button>' +
|
|
@@ -217,7 +221,7 @@ export function renderDashboardPage(agents, schedulerInfo, recentLogs) {
|
|
|
217
221
|
if (data.agents.length > 0) {
|
|
218
222
|
tbody.innerHTML = data.agents.map(renderRow).join("");
|
|
219
223
|
} else {
|
|
220
|
-
tbody.innerHTML = '<tr><td colspan="
|
|
224
|
+
tbody.innerHTML = '<tr><td colspan="8" class="px-3 py-8 text-center text-slate-400 italic">No agents registered</td></tr>';
|
|
221
225
|
}
|
|
222
226
|
var cards = document.getElementById("agent-cards");
|
|
223
227
|
if (data.agents.length > 0) {
|
|
@@ -245,6 +249,36 @@ export function renderDashboardPage(agents, schedulerInfo, recentLogs) {
|
|
|
245
249
|
}
|
|
246
250
|
};
|
|
247
251
|
|
|
252
|
+
// Fetch locks periodically
|
|
253
|
+
async function fetchLocks() {
|
|
254
|
+
try {
|
|
255
|
+
var res = await fetch("/dashboard/api/locks");
|
|
256
|
+
if (res.ok) {
|
|
257
|
+
var data = await res.json();
|
|
258
|
+
if (data.locks && _cachedAgents) {
|
|
259
|
+
// Group locks by agent
|
|
260
|
+
var locksByAgent = {};
|
|
261
|
+
for (var i = 0; i < data.locks.length; i++) {
|
|
262
|
+
var lock = data.locks[i];
|
|
263
|
+
if (!locksByAgent[lock.agentName]) locksByAgent[lock.agentName] = [];
|
|
264
|
+
locksByAgent[lock.agentName].push(lock);
|
|
265
|
+
}
|
|
266
|
+
// Update agent locks
|
|
267
|
+
for (var j = 0; j < _cachedAgents.length; j++) {
|
|
268
|
+
_cachedAgents[j].locks = locksByAgent[_cachedAgents[j].name] || [];
|
|
269
|
+
}
|
|
270
|
+
// Re-render table
|
|
271
|
+
var tbody = document.getElementById("agent-table-body");
|
|
272
|
+
if (_cachedAgents.length > 0) {
|
|
273
|
+
tbody.innerHTML = _cachedAgents.map(renderRow).join("");
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
} catch(e) {}
|
|
278
|
+
}
|
|
279
|
+
setInterval(fetchLocks, 2000);
|
|
280
|
+
fetchLocks(); // Initial fetch
|
|
281
|
+
|
|
248
282
|
var schedulerPaused = ${schedulerInfo?.paused ? "true" : "false"};
|
|
249
283
|
|
|
250
284
|
function triggerAgent(name) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard-page.js","sourceRoot":"","sources":["../../../src/gateway/views/dashboard-page.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dashboard-page.js","sourceRoot":"","sources":["../../../src/gateway/views/dashboard-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,12 @@ export interface InstanceDetailData {
|
|
|
19
19
|
turn_count: number;
|
|
20
20
|
error_message?: string;
|
|
21
21
|
} | null;
|
|
22
|
+
runningInstance?: {
|
|
23
|
+
id: string;
|
|
24
|
+
status: string;
|
|
25
|
+
startedAt: Date;
|
|
26
|
+
trigger: string;
|
|
27
|
+
} | null;
|
|
22
28
|
}
|
|
23
29
|
export declare function renderInstanceDetailPage(data: InstanceDetailData): string;
|
|
24
30
|
//# sourceMappingURL=instance-detail-page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-detail-page.d.ts","sourceRoot":"","sources":["../../../src/gateway/views/instance-detail-page.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE;QACH,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"instance-detail-page.d.ts","sourceRoot":"","sources":["../../../src/gateway/views/instance-detail-page.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE;QACH,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,IAAI,CAAC;IACT,eAAe,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;KAAE,GAAG,IAAI,CAAC;CAC5F;AAqBD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,CAgIzE"}
|
|
@@ -17,23 +17,61 @@ function statRow(label, value) {
|
|
|
17
17
|
</div>`;
|
|
18
18
|
}
|
|
19
19
|
export function renderInstanceDetailPage(data) {
|
|
20
|
-
const { agentName, instanceId, run } = data;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
<
|
|
25
|
-
|
|
20
|
+
const { agentName, instanceId, run, runningInstance } = data;
|
|
21
|
+
let notFoundContent;
|
|
22
|
+
if (!run && runningInstance) {
|
|
23
|
+
notFoundContent = `
|
|
24
|
+
<div class="text-center py-12">
|
|
25
|
+
<div class="text-slate-400 text-lg mb-2">Telemetry data will be available once the run completes</div>
|
|
26
|
+
<p class="text-sm text-slate-500">Instance <code class="font-mono">${escapeHtml(instanceId)}</code> is currently running. Stats and telemetry data will be shown here after the run finishes.</p>
|
|
27
|
+
</div>`;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
notFoundContent = `
|
|
31
|
+
<div class="text-center py-12">
|
|
32
|
+
<div class="text-slate-400 text-lg mb-2">Instance not found or data has been pruned</div>
|
|
33
|
+
<p class="text-sm text-slate-500">The instance <code class="font-mono">${escapeHtml(instanceId)}</code> was not found in the stats database. The data may have been pruned or the instance never existed.</p>
|
|
34
|
+
</div>`;
|
|
35
|
+
}
|
|
26
36
|
if (!run) {
|
|
27
37
|
// Even without stats data, show the log viewer — the instance may be running
|
|
38
|
+
let headerContent;
|
|
39
|
+
if (runningInstance) {
|
|
40
|
+
const startedAt = runningInstance.startedAt.toLocaleString();
|
|
41
|
+
headerContent = `
|
|
42
|
+
<div class="flex flex-wrap items-center justify-between gap-3 mb-6">
|
|
43
|
+
<h1 class="text-xl sm:text-2xl font-bold text-slate-900 dark:text-white font-mono">${escapeHtml(instanceId)}</h1>
|
|
44
|
+
<div class="flex items-center gap-2">
|
|
45
|
+
<button class="px-3 py-1.5 text-sm rounded-md font-bold bg-red-600 hover:bg-red-700 text-white transition-colors" onclick="killThisInstance()">Kill</button>
|
|
46
|
+
<span class="inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-blue-100 dark:bg-blue-900/40 text-blue-700 dark:text-blue-400">running</span>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
<div class="bg-slate-50 dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-4 mb-6">
|
|
50
|
+
<h3 class="text-sm font-semibold text-slate-900 dark:text-white mb-3 uppercase tracking-wide">Running Instance</h3>
|
|
51
|
+
${statRow("Instance ID", instanceId)}
|
|
52
|
+
${statRow("Status", runningInstance.status)}
|
|
53
|
+
${statRow("Started", startedAt)}
|
|
54
|
+
${statRow("Trigger", runningInstance.trigger)}
|
|
55
|
+
</div>`;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
headerContent = `
|
|
59
|
+
<div class="flex flex-wrap items-center justify-between gap-3 mb-6">
|
|
60
|
+
<h1 class="text-xl sm:text-2xl font-bold text-slate-900 dark:text-white font-mono">${escapeHtml(instanceId)}</h1>
|
|
61
|
+
<div class="flex items-center gap-2">
|
|
62
|
+
<span class="inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-gray-100 dark:bg-gray-900/40 text-gray-700 dark:text-gray-400">unknown</span>
|
|
63
|
+
</div>
|
|
64
|
+
</div>`;
|
|
65
|
+
}
|
|
28
66
|
const content = `
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
67
|
+
${headerContent}
|
|
68
|
+
${notFoundContent}
|
|
69
|
+
<div id="locks-section" class="mt-6">
|
|
70
|
+
<h3 class="text-base font-semibold text-slate-900 dark:text-white mb-3">Resource Locks</h3>
|
|
71
|
+
<div id="locks-container" class="bg-slate-50 dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-4">
|
|
72
|
+
<div class="text-sm text-slate-400 italic">Loading...</div>
|
|
34
73
|
</div>
|
|
35
74
|
</div>
|
|
36
|
-
${notFoundContent}
|
|
37
75
|
<h2 class="text-base font-semibold text-slate-900 dark:text-white mb-3 mt-8">Logs</h2>
|
|
38
76
|
${logViewerHtml(agentName, instanceId)}`;
|
|
39
77
|
return renderLayout({
|
|
@@ -82,6 +120,13 @@ export function renderInstanceDetailPage(data) {
|
|
|
82
120
|
</div>
|
|
83
121
|
</div>
|
|
84
122
|
|
|
123
|
+
<div id="locks-section" class="mt-6">
|
|
124
|
+
<h3 class="text-base font-semibold text-slate-900 dark:text-white mb-3">Resource Locks</h3>
|
|
125
|
+
<div id="locks-container" class="bg-slate-50 dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-4">
|
|
126
|
+
<div class="text-sm text-slate-400 italic">Loading...</div>
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
|
|
85
130
|
<h2 class="text-base font-semibold text-slate-900 dark:text-white mb-3">Logs</h2>
|
|
86
131
|
${logViewerHtml(agentName, instanceId)}`;
|
|
87
132
|
return renderLayout({
|
|
@@ -245,6 +290,44 @@ function logViewerScript(agentName, instanceId) {
|
|
|
245
290
|
fetchLogs(true);
|
|
246
291
|
setInterval(function() { fetchLogs(false); }, 1500);
|
|
247
292
|
|
|
293
|
+
// Fetch locks for this instance
|
|
294
|
+
async function fetchInstanceLocks() {
|
|
295
|
+
try {
|
|
296
|
+
var res = await fetch("/dashboard/api/locks");
|
|
297
|
+
if (res.ok) {
|
|
298
|
+
var data = await res.json();
|
|
299
|
+
var instanceLocks = [];
|
|
300
|
+
if (data.locks) {
|
|
301
|
+
for (var i = 0; i < data.locks.length; i++) {
|
|
302
|
+
var lock = data.locks[i];
|
|
303
|
+
// Check if holder matches this instance
|
|
304
|
+
if (lock.holder && lock.holder.includes(instanceId)) {
|
|
305
|
+
instanceLocks.push(lock);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
// Update locks display
|
|
310
|
+
var container = document.getElementById("locks-container");
|
|
311
|
+
if (instanceLocks.length > 0) {
|
|
312
|
+
var html = "<div class='space-y-2'>";
|
|
313
|
+
for (var j = 0; j < instanceLocks.length; j++) {
|
|
314
|
+
var l = instanceLocks[j];
|
|
315
|
+
var since = new Date(l.heldSince).toLocaleString();
|
|
316
|
+
html += "<div class='flex justify-between py-2 border-b border-slate-100 dark:border-slate-800'>" +
|
|
317
|
+
"<span class='text-sm font-mono text-slate-700 dark:text-slate-300'>" + esc(l.resourceKey) + "</span>" +
|
|
318
|
+
"<span class='text-xs text-slate-500'>Since " + since + "</span></div>";
|
|
319
|
+
}
|
|
320
|
+
html += "</div>";
|
|
321
|
+
container.innerHTML = html;
|
|
322
|
+
} else {
|
|
323
|
+
container.innerHTML = "<div class='text-sm text-slate-400 italic'>No locks held</div>";
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
} catch(e) {}
|
|
327
|
+
}
|
|
328
|
+
setInterval(fetchInstanceLocks, 2000);
|
|
329
|
+
fetchInstanceLocks(); // Initial fetch
|
|
330
|
+
|
|
248
331
|
// Scroll up to load older logs
|
|
249
332
|
var loadingOlder = false;
|
|
250
333
|
var oldestTime = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-detail-page.js","sourceRoot":"","sources":["../../../src/gateway/views/instance-detail-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"instance-detail-page.js","sourceRoot":"","sources":["../../../src/gateway/views/instance-detail-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface ProjectConfigData {
|
|
2
|
+
projectName?: string;
|
|
3
|
+
projectScale: number;
|
|
4
|
+
gatewayPort?: number;
|
|
5
|
+
webhooksActive: boolean;
|
|
6
|
+
feedbackEnabled: boolean;
|
|
7
|
+
feedbackAgent?: string;
|
|
8
|
+
feedbackErrorPatterns: string[];
|
|
9
|
+
feedbackContextLines: number;
|
|
10
|
+
}
|
|
11
|
+
export declare function renderProjectConfigPage(data: ProjectConfigData): string;
|
|
12
|
+
//# sourceMappingURL=project-config-page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-config-page.d.ts","sourceRoot":"","sources":["../../../src/gateway/views/project-config-page.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAuMvE"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { escapeHtml, renderLayout } from "./layout.js";
|
|
2
|
+
export function renderProjectConfigPage(data) {
|
|
3
|
+
const { projectName, projectScale, gatewayPort, webhooksActive } = data;
|
|
4
|
+
const content = `
|
|
5
|
+
<div class="flex flex-wrap items-center justify-between gap-3 mb-6">
|
|
6
|
+
<div class="flex items-center gap-3">
|
|
7
|
+
<h1 class="text-xl sm:text-2xl font-bold text-slate-900 dark:text-white">Project Configuration</h1>
|
|
8
|
+
</div>
|
|
9
|
+
</div>
|
|
10
|
+
|
|
11
|
+
<!-- Global Settings -->
|
|
12
|
+
<div class="bg-white dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-6 mb-6">
|
|
13
|
+
<h2 class="text-lg font-semibold text-slate-900 dark:text-white mb-4">Global Settings</h2>
|
|
14
|
+
|
|
15
|
+
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
|
|
16
|
+
<!-- Project Scale -->
|
|
17
|
+
<div>
|
|
18
|
+
<label class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">Project Scale</label>
|
|
19
|
+
<div class="flex items-center gap-3">
|
|
20
|
+
<input id="project-scale-input" type="number" min="1" max="50" value="${projectScale}" class="px-3 py-2 border border-slate-300 dark:border-slate-600 rounded-md bg-white dark:bg-slate-800 text-slate-900 dark:text-white w-24">
|
|
21
|
+
<button id="update-project-scale-btn" class="px-4 py-2 text-sm rounded-md font-semibold bg-blue-600 hover:bg-blue-700 text-white transition-colors" onclick="updateProjectScale()">Update</button>
|
|
22
|
+
</div>
|
|
23
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-2">Maximum number of concurrent agent runs across all agents in this project</p>
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<!-- Gateway Info (read-only) -->
|
|
27
|
+
<div>
|
|
28
|
+
<label class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">Gateway Status</label>
|
|
29
|
+
<div class="space-y-2">
|
|
30
|
+
${gatewayPort ? `<div class="text-sm text-slate-600 dark:text-slate-300">Port: ${gatewayPort}</div>` : ""}
|
|
31
|
+
<div class="text-sm text-slate-600 dark:text-slate-300">Webhooks: ${webhooksActive ? "Active" : "Inactive"}</div>
|
|
32
|
+
${projectName ? `<div class="text-sm text-slate-600 dark:text-slate-300">Project: ${escapeHtml(projectName)}</div>` : ""}
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
<!-- Feedback Configuration -->
|
|
39
|
+
<div class="bg-white dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-6 mb-6">
|
|
40
|
+
<h2 class="text-lg font-semibold text-slate-900 dark:text-white mb-4">Feedback Configuration</h2>
|
|
41
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mb-4">Automatically trigger feedback agents when other agents encounter errors</p>
|
|
42
|
+
|
|
43
|
+
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6">
|
|
44
|
+
<!-- Enable/Disable Feedback -->
|
|
45
|
+
<div>
|
|
46
|
+
<label class="flex items-center gap-3">
|
|
47
|
+
<input id="feedback-enabled" type="checkbox" ${data.feedbackEnabled ? 'checked' : ''} class="w-4 h-4 text-blue-600 bg-slate-100 border-slate-300 rounded focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-slate-800 dark:bg-slate-700 dark:border-slate-600">
|
|
48
|
+
<span class="text-sm font-medium text-slate-700 dark:text-slate-300">Enable Feedback Monitoring</span>
|
|
49
|
+
</label>
|
|
50
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-2 ml-7">Monitor agent logs for errors and trigger feedback agents to fix SKILL.md files</p>
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
<!-- Feedback Agent -->
|
|
54
|
+
<div>
|
|
55
|
+
<label class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">Feedback Agent</label>
|
|
56
|
+
<input id="feedback-agent" type="text" value="${escapeHtml(data.feedbackAgent || '')}" placeholder="default (built-in)" class="w-full px-3 py-2 border border-slate-300 dark:border-slate-600 rounded-md bg-white dark:bg-slate-800 text-slate-900 dark:text-white">
|
|
57
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-2">Agent to use for feedback (leave empty for built-in agent)</p>
|
|
58
|
+
</div>
|
|
59
|
+
|
|
60
|
+
<!-- Error Patterns -->
|
|
61
|
+
<div>
|
|
62
|
+
<label class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">Error Patterns</label>
|
|
63
|
+
<input id="error-patterns" type="text" value="${escapeHtml(data.feedbackErrorPatterns.join(', '))}" placeholder="error, fail" class="w-full px-3 py-2 border border-slate-300 dark:border-slate-600 rounded-md bg-white dark:bg-slate-800 text-slate-900 dark:text-white">
|
|
64
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-2">Comma-separated patterns to detect errors in logs (regex supported)</p>
|
|
65
|
+
</div>
|
|
66
|
+
|
|
67
|
+
<!-- Context Lines -->
|
|
68
|
+
<div>
|
|
69
|
+
<label class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">Context Lines</label>
|
|
70
|
+
<input id="context-lines" type="number" min="0" max="10" value="${data.feedbackContextLines}" class="w-24 px-3 py-2 border border-slate-300 dark:border-slate-600 rounded-md bg-white dark:bg-slate-800 text-slate-900 dark:text-white">
|
|
71
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-2">Number of lines around the error to include in feedback context</p>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
|
|
75
|
+
<div class="mt-6">
|
|
76
|
+
<button id="update-feedback-btn" class="px-4 py-2 text-sm rounded-md font-semibold bg-blue-600 hover:bg-blue-700 text-white transition-colors" onclick="updateFeedbackConfig()">Update Feedback Configuration</button>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
|
|
80
|
+
<!-- Actions -->
|
|
81
|
+
<div class="bg-white dark:bg-slate-900 rounded-lg border border-slate-200 dark:border-slate-800 p-6">
|
|
82
|
+
<h2 class="text-lg font-semibold text-slate-900 dark:text-white mb-4">Actions</h2>
|
|
83
|
+
|
|
84
|
+
<div class="flex flex-wrap gap-3">
|
|
85
|
+
<button class="px-4 py-2 text-sm rounded-md font-semibold border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-800 hover:bg-slate-50 dark:hover:bg-slate-700 text-slate-700 dark:text-slate-200 transition-colors" onclick="pauseScheduler()">Pause All Agents</button>
|
|
86
|
+
<button class="px-4 py-2 text-sm rounded-md font-semibold border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-800 hover:bg-slate-50 dark:hover:bg-slate-700 text-slate-700 dark:text-slate-200 transition-colors" onclick="resumeScheduler()">Resume All Agents</button>
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
<p class="text-sm text-slate-500 dark:text-slate-400 mt-3">These actions affect all agents in the project temporarily (until restart)</p>
|
|
90
|
+
</div>
|
|
91
|
+
`;
|
|
92
|
+
const scripts = `<script>
|
|
93
|
+
function ctrlPost(path) {
|
|
94
|
+
fetch(path, { method: "POST", credentials: "same-origin" })
|
|
95
|
+
.then(function(r) {
|
|
96
|
+
if (r.ok) {
|
|
97
|
+
return r.json();
|
|
98
|
+
} else {
|
|
99
|
+
throw new Error("HTTP " + r.status);
|
|
100
|
+
}
|
|
101
|
+
})
|
|
102
|
+
.then(function(data) {
|
|
103
|
+
if (data.message) alert(data.message);
|
|
104
|
+
})
|
|
105
|
+
.catch(function(err) {
|
|
106
|
+
alert("Error: " + err);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function updateProjectScale() {
|
|
111
|
+
var input = document.getElementById("project-scale-input");
|
|
112
|
+
var btn = document.getElementById("update-project-scale-btn");
|
|
113
|
+
var scale = parseInt(input.value);
|
|
114
|
+
if (!scale || scale < 1 || scale > 50) {
|
|
115
|
+
alert("Scale must be between 1 and 50");
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
btn.disabled = true;
|
|
119
|
+
btn.textContent = "Updating...";
|
|
120
|
+
fetch("/control/project/scale", {
|
|
121
|
+
method: "POST",
|
|
122
|
+
credentials: "same-origin",
|
|
123
|
+
headers: { "Content-Type": "application/json" },
|
|
124
|
+
body: JSON.stringify({ scale: scale })
|
|
125
|
+
}).then(function(r) {
|
|
126
|
+
if (r.ok) {
|
|
127
|
+
alert("Project scale updated to " + scale);
|
|
128
|
+
} else {
|
|
129
|
+
r.text().then(function(text) { alert("Error: " + text); });
|
|
130
|
+
}
|
|
131
|
+
}).catch(function(err) {
|
|
132
|
+
alert("Error: " + err);
|
|
133
|
+
}).finally(function() {
|
|
134
|
+
btn.disabled = false;
|
|
135
|
+
btn.textContent = "Update";
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function pauseScheduler() {
|
|
140
|
+
if (!confirm("Pause all agents? This will stop all scheduled and webhook-triggered runs.")) return;
|
|
141
|
+
ctrlPost("/control/pause");
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function resumeScheduler() {
|
|
145
|
+
ctrlPost("/control/resume");
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
function updateFeedbackConfig() {
|
|
149
|
+
var btn = document.getElementById("update-feedback-btn");
|
|
150
|
+
var enabled = document.getElementById("feedback-enabled").checked;
|
|
151
|
+
var agent = document.getElementById("feedback-agent").value.trim();
|
|
152
|
+
var patterns = document.getElementById("error-patterns").value.trim();
|
|
153
|
+
var contextLines = parseInt(document.getElementById("context-lines").value);
|
|
154
|
+
|
|
155
|
+
if (isNaN(contextLines) || contextLines < 0 || contextLines > 10) {
|
|
156
|
+
alert("Context lines must be between 0 and 10");
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
btn.disabled = true;
|
|
161
|
+
btn.textContent = "Updating...";
|
|
162
|
+
|
|
163
|
+
var config = {
|
|
164
|
+
enabled: enabled,
|
|
165
|
+
agent: agent || undefined,
|
|
166
|
+
errorPatterns: patterns ? patterns.split(',').map(function(p) { return p.trim(); }).filter(function(p) { return p; }) : ["error", "fail"],
|
|
167
|
+
contextLines: contextLines
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
fetch("/control/feedback/config", {
|
|
171
|
+
method: "POST",
|
|
172
|
+
credentials: "same-origin",
|
|
173
|
+
headers: { "Content-Type": "application/json" },
|
|
174
|
+
body: JSON.stringify(config)
|
|
175
|
+
}).then(function(r) {
|
|
176
|
+
if (r.ok) {
|
|
177
|
+
alert("Feedback configuration updated");
|
|
178
|
+
} else {
|
|
179
|
+
r.text().then(function(text) { alert("Error: " + text); });
|
|
180
|
+
}
|
|
181
|
+
}).catch(function(err) {
|
|
182
|
+
alert("Error: " + err);
|
|
183
|
+
}).finally(function() {
|
|
184
|
+
btn.disabled = false;
|
|
185
|
+
btn.textContent = "Update Feedback Configuration";
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
</script>`;
|
|
189
|
+
return renderLayout({
|
|
190
|
+
title: "Project Configuration",
|
|
191
|
+
breadcrumbs: [
|
|
192
|
+
{ label: "Dashboard", href: "/dashboard" },
|
|
193
|
+
{ label: "Configuration" },
|
|
194
|
+
],
|
|
195
|
+
content,
|
|
196
|
+
scripts,
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=project-config-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-config-page.js","sourceRoot":"","sources":["../../../src/gateway/views/project-config-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAavD,MAAM,UAAU,uBAAuB,CAAC,IAAuB;IAC7D,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAExE,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;oFAgBkE,YAAY;;;;;;;;;;cAUlF,WAAW,CAAC,CAAC,CAAC,iEAAiE,WAAW,QAAQ,CAAC,CAAC,CAAC,EAAE;gFACrC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;cACxG,WAAW,CAAC,CAAC,CAAC,oEAAoE,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;2DAezE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;;;;;;;;;0DAStC,UAAU,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;;;;;;;0DAOpC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;;;;;;4EAO/B,IAAI,CAAC,oBAAoB;;;;;;;;;;;;;;;;;;;;;GAqBlG,CAAC;IAEF,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgGN,CAAC;IAEX,OAAO,YAAY,CAAC;QAClB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE;YACX,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE;YAC1C,EAAE,KAAK,EAAE,eAAe,EAAE;SAC3B;QACD,OAAO;QACP,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-setup.d.ts","sourceRoot":"","sources":["../../src/scheduler/gateway-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,cAAc,CAAC;IACtB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,QAAQ,EAAE,OAAO,YAAY,GAAG,OAAO,oBAAoB,CAAC;IAC5D,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"gateway-setup.d.ts","sourceRoot":"","sources":["../../src/scheduler/gateway-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,cAAc,CAAC;IACtB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,QAAQ,EAAE,OAAO,YAAY,GAAG,OAAO,oBAAoB,CAAC;IAC5D,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0I9B"}
|
|
@@ -126,6 +126,24 @@ export async function setupGateway(opts) {
|
|
|
126
126
|
}
|
|
127
127
|
process.exit(0);
|
|
128
128
|
},
|
|
129
|
+
updateProjectScale: async (scale) => {
|
|
130
|
+
const { updateProjectScale } = await import("../shared/config.js");
|
|
131
|
+
updateProjectScale(projectPath, scale);
|
|
132
|
+
logger.info({ scale }, "project scale updated");
|
|
133
|
+
return true;
|
|
134
|
+
},
|
|
135
|
+
updateAgentScale: async (name, scale) => {
|
|
136
|
+
const { updateAgentScale } = await import("../shared/config.js");
|
|
137
|
+
const config = agentConfigs.find((a) => a.name === name);
|
|
138
|
+
if (!config)
|
|
139
|
+
return false;
|
|
140
|
+
updateAgentScale(projectPath, name, scale);
|
|
141
|
+
if (statusTracker) {
|
|
142
|
+
statusTracker.updateAgentScale(name, scale);
|
|
143
|
+
}
|
|
144
|
+
logger.info({ agent: name, scale }, "agent scale updated");
|
|
145
|
+
return true;
|
|
146
|
+
},
|
|
129
147
|
workQueue: {
|
|
130
148
|
size: (agentName) => state.schedulerCtx?.workQueue.size(agentName) ?? 0,
|
|
131
149
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-setup.js","sourceRoot":"","sources":["../../src/scheduler/gateway-setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway-setup.js","sourceRoot":"","sources":["../../src/scheduler/gateway-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAS9D,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAShD,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAS9D,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAShD,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO;;;;;;;;;GA2N9J"}
|