aicodeman 1.1.13 → 1.1.15
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/web/public/api-client.c9b1cddc.js.gz +0 -0
- package/dist/web/public/{app.a24e7b65.js → app.61e2966f.js} +13 -12
- package/dist/web/public/app.61e2966f.js.br +0 -0
- package/dist/web/public/app.61e2966f.js.gz +0 -0
- package/dist/web/public/constants.1c779517.js.gz +0 -0
- package/dist/web/public/image-input.0ea86695.js.gz +0 -0
- package/dist/web/public/index.html +7 -7
- package/dist/web/public/index.html.br +0 -0
- package/dist/web/public/index.html.gz +0 -0
- package/dist/web/public/input-cjk.4e950e0a.js.gz +0 -0
- package/dist/web/public/keyboard-accessory.3f91acef.js.gz +0 -0
- package/dist/web/public/mobile-handlers.b5a667ef.js.gz +0 -0
- package/dist/web/public/mobile.38346326.css.gz +0 -0
- package/dist/web/public/{notification-manager.9c984ac2.js → notification-manager.ca9dc40d.js} +1 -1
- package/dist/web/public/notification-manager.ca9dc40d.js.br +0 -0
- package/dist/web/public/{notification-manager.9c984ac2.js.gz → notification-manager.ca9dc40d.js.gz} +0 -0
- package/dist/web/public/orchestrator-panel.js +2 -2
- package/dist/web/public/orchestrator-panel.js.br +0 -0
- package/dist/web/public/orchestrator-panel.js.gz +0 -0
- package/dist/web/public/{panels-ui.f3f08e26.js → panels-ui.aedcf302.js} +17 -17
- package/dist/web/public/panels-ui.aedcf302.js.br +0 -0
- package/dist/web/public/panels-ui.aedcf302.js.gz +0 -0
- package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
- package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
- package/dist/web/public/respawn-ui.2d249da9.js.gz +0 -0
- package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
- package/dist/web/public/{session-ui.1463b824.js → session-ui.0ee6c334.js} +5 -5
- package/dist/web/public/{session-ui.1463b824.js.br → session-ui.0ee6c334.js.br} +0 -0
- package/dist/web/public/{session-ui.1463b824.js.gz → session-ui.0ee6c334.js.gz} +0 -0
- package/dist/web/public/settings-ui.38feb956.js.gz +0 -0
- package/dist/web/public/{styles.e0388c26.css → styles.4d2984bd.css} +1 -1
- package/dist/web/public/styles.4d2984bd.css.br +0 -0
- package/dist/web/public/styles.4d2984bd.css.gz +0 -0
- package/dist/web/public/{subagent-windows.07e139f2.js → subagent-windows.69b60c35.js} +8 -4
- package/dist/web/public/subagent-windows.69b60c35.js.br +0 -0
- package/dist/web/public/subagent-windows.69b60c35.js.gz +0 -0
- package/dist/web/public/sw.js.gz +0 -0
- package/dist/web/public/terminal-ui.70596bbd.js.gz +0 -0
- package/dist/web/public/ultracode-panel.js +13 -23
- package/dist/web/public/ultracode-panel.js.br +0 -0
- package/dist/web/public/ultracode-panel.js.gz +0 -0
- package/dist/web/public/ultracode-windows.js +449 -12
- package/dist/web/public/ultracode-windows.js.br +0 -0
- package/dist/web/public/ultracode-windows.js.gz +0 -0
- package/dist/web/public/upload.html.gz +0 -0
- package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
- package/dist/web/public/vendor/marked.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-zerolag-input.137ad9f0.js.gz +0 -0
- package/dist/web/public/vendor/xterm.css.gz +0 -0
- package/dist/web/public/vendor/xterm.min.js.gz +0 -0
- package/dist/web/public/voice-input.085e9e73.js.gz +0 -0
- package/package.json +1 -1
- package/dist/web/public/app.a24e7b65.js.br +0 -0
- package/dist/web/public/app.a24e7b65.js.gz +0 -0
- package/dist/web/public/notification-manager.9c984ac2.js.br +0 -0
- package/dist/web/public/panels-ui.f3f08e26.js.br +0 -0
- package/dist/web/public/panels-ui.f3f08e26.js.gz +0 -0
- package/dist/web/public/styles.e0388c26.css.br +0 -0
- package/dist/web/public/styles.e0388c26.css.gz +0 -0
- package/dist/web/public/subagent-windows.07e139f2.js.br +0 -0
- package/dist/web/public/subagent-windows.07e139f2.js.gz +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -33,10 +33,10 @@ Object.assign(CodemanApp.prototype, {
|
|
|
33
33
|
const truncatedName = displayName.length > 25 ? displayName.substring(0, 25) + '…' : displayName;
|
|
34
34
|
const statusClass = agent?.status || 'idle';
|
|
35
35
|
agentItems.push(`
|
|
36
|
-
<div class="subagent-dropdown-item" onclick="event.stopPropagation(); app.restoreMinimizedSubagent(
|
|
36
|
+
<div class="subagent-dropdown-item" onclick="event.stopPropagation(); app.restoreMinimizedSubagent(${escapeHtml(JSON.stringify(agentId))}, ${escapeHtml(JSON.stringify(sessionId))})" title="Click to restore">
|
|
37
37
|
<span class="subagent-dropdown-status ${statusClass}"></span>
|
|
38
38
|
<span class="subagent-dropdown-name">${escapeHtml(truncatedName)}</span>
|
|
39
|
-
<span class="subagent-dropdown-close" onclick="event.stopPropagation(); app.permanentlyCloseMinimizedSubagent(
|
|
39
|
+
<span class="subagent-dropdown-close" onclick="event.stopPropagation(); app.permanentlyCloseMinimizedSubagent(${escapeHtml(JSON.stringify(agentId))}, ${escapeHtml(JSON.stringify(sessionId))})" title="Dismiss">×</span>
|
|
40
40
|
</div>
|
|
41
41
|
`);
|
|
42
42
|
}
|
|
@@ -461,6 +461,10 @@ Object.assign(CodemanApp.prototype, {
|
|
|
461
461
|
if (typeof this._appendUltracodeConnectionLines === 'function') {
|
|
462
462
|
this._appendUltracodeConnectionLines(svg, rects);
|
|
463
463
|
}
|
|
464
|
+
// Agent-transcript windows → their run window / tab (ultracode-windows.js).
|
|
465
|
+
if (typeof this._appendUltracodeAgentConnectionLines === 'function') {
|
|
466
|
+
this._appendUltracodeAgentConnectionLines(svg, rects);
|
|
467
|
+
}
|
|
464
468
|
},
|
|
465
469
|
|
|
466
470
|
// ═══════════════════════════════════════════════════════════════
|
|
@@ -695,7 +699,7 @@ Object.assign(CodemanApp.prototype, {
|
|
|
695
699
|
parentSessionId && parentSessionName
|
|
696
700
|
? `<div class="subagent-window-parent" data-parent-session="${parentSessionId}">
|
|
697
701
|
<span class="parent-label">from</span>
|
|
698
|
-
<span class="parent-name" onclick="app.selectSession(
|
|
702
|
+
<span class="parent-name" onclick="app.selectSession(${escapeHtml(JSON.stringify(parentSessionId))})">${escapeHtml(parentSessionName)}</span>
|
|
699
703
|
</div>`
|
|
700
704
|
: '';
|
|
701
705
|
|
|
@@ -716,7 +720,7 @@ Object.assign(CodemanApp.prototype, {
|
|
|
716
720
|
<span class="status ${agent.status}">${agent.status}</span>
|
|
717
721
|
</div>
|
|
718
722
|
<div class="subagent-window-actions">
|
|
719
|
-
<button onclick="app.closeSubagentWindow(
|
|
723
|
+
<button onclick="app.closeSubagentWindow(${escapeHtml(JSON.stringify(agentId))})" title="Minimize to tab">─</button>
|
|
720
724
|
</div>
|
|
721
725
|
</div>
|
|
722
726
|
${parentHeader}
|
|
Binary file
|
|
Binary file
|
package/dist/web/public/sw.js.gz
CHANGED
|
Binary file
|
|
Binary file
|
|
@@ -131,12 +131,15 @@ Object.assign(CodemanApp.prototype, {
|
|
|
131
131
|
}
|
|
132
132
|
},
|
|
133
133
|
|
|
134
|
-
// Phase 4:
|
|
134
|
+
// Phase 4: fetch an agent's live transcript by agentId. The workflow agent's
|
|
135
135
|
// agentId is byte-identical to the agent-<id>.jsonl stem already tracked by
|
|
136
136
|
// subagent-watcher, so we reuse the existing transcript route — no watcher edits.
|
|
137
|
-
//
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
// Returns { formatted: string[], entryCount } or null when nothing is available
|
|
138
|
+
// (queued / aged out of tracking / tracking disabled). Rendering into a connected
|
|
139
|
+
// in-page floating window lives in ultracode-windows.js (openUltracodeAgentWindow) —
|
|
140
|
+
// we no longer spawn a detached browser popup.
|
|
141
|
+
async _fetchWorkflowAgentTranscript(agentId) {
|
|
142
|
+
if (!agentId) return null;
|
|
140
143
|
let data = null;
|
|
141
144
|
try {
|
|
142
145
|
const res = await fetch(`/api/subagents/${encodeURIComponent(agentId)}/transcript?format=formatted`);
|
|
@@ -147,21 +150,8 @@ Object.assign(CodemanApp.prototype, {
|
|
|
147
150
|
const ok = data && data.success && data.data;
|
|
148
151
|
const formatted = ok ? data.data.formatted : null;
|
|
149
152
|
const entryCount = ok ? data.data.entryCount || 0 : 0;
|
|
150
|
-
if (!formatted || !entryCount)
|
|
151
|
-
|
|
152
|
-
'No transcript available for this agent yet — it may be queued, aged out of tracking, or subagent tracking is disabled.'
|
|
153
|
-
);
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
|
-
const win = window.open('', '_blank', 'width=860,height=640');
|
|
157
|
-
if (!win) return; // popup blocked
|
|
158
|
-
win.document.write(
|
|
159
|
-
`<html><head><title>Workflow agent ${escapeHtml(agentId)} transcript</title>` +
|
|
160
|
-
`<style>body{background:#1a1a2e;color:#eee;font-family:monospace;padding:20px}pre{white-space:pre-wrap;word-wrap:break-word}</style>` +
|
|
161
|
-
`</head><body><h2>Workflow agent ${escapeHtml(agentId)} (${entryCount} entries)</h2>` +
|
|
162
|
-
`<pre>${escapeHtml(formatted.join('\n'))}</pre></body></html>`
|
|
163
|
-
);
|
|
164
|
-
win.document.close();
|
|
153
|
+
if (!formatted || !entryCount) return null;
|
|
154
|
+
return { formatted, entryCount };
|
|
165
155
|
},
|
|
166
156
|
|
|
167
157
|
// ----- Render (debounced) -----
|
|
@@ -214,7 +204,7 @@ Object.assign(CodemanApp.prototype, {
|
|
|
214
204
|
phasesHtml = `<div class="ultracode-phase-list">${chips.join('')}</div>`;
|
|
215
205
|
}
|
|
216
206
|
return (
|
|
217
|
-
`<div class="ultracode-run-item${active ? ' selected' : ''}" onclick="app.selectWorkflowRun(
|
|
207
|
+
`<div class="ultracode-run-item${active ? ' selected' : ''}" onclick="app.selectWorkflowRun(${escapeHtml(JSON.stringify(r.runId))})">` +
|
|
218
208
|
`<div class="ultracode-run-head"><span class="ultracode-run-name">${name}</span>` +
|
|
219
209
|
`<span class="ultracode-status ${statusCls}">${escapeHtml(status || '—')}</span></div>` +
|
|
220
210
|
`<div class="ultracode-run-stats">${escapeHtml(stats)}</div>` +
|
|
@@ -262,13 +252,13 @@ Object.assign(CodemanApp.prototype, {
|
|
|
262
252
|
const header =
|
|
263
253
|
`<div class="ultracode-phase-header"><span>${escapeHtml(title)}</span>` +
|
|
264
254
|
`<span class="ultracode-phase-sub">${this._fmtNum(tok)} tok · ${tools} tools</span></div>`;
|
|
265
|
-
return header + group.map((a) => this._workflowAgentCardHtml(a)).join('');
|
|
255
|
+
return header + group.map((a) => this._workflowAgentCardHtml(a, runId)).join('');
|
|
266
256
|
})
|
|
267
257
|
.join('');
|
|
268
258
|
detail.innerHTML = html;
|
|
269
259
|
},
|
|
270
260
|
|
|
271
|
-
_workflowAgentCardHtml(a) {
|
|
261
|
+
_workflowAgentCardHtml(a, runId) {
|
|
272
262
|
const state = String(a.state || 'start');
|
|
273
263
|
const stateCls = this._workflowAgentStateClass(state);
|
|
274
264
|
const stateLabel = state === 'start' ? 'queued' : state === 'progress' ? 'running' : state;
|
|
@@ -289,7 +279,7 @@ Object.assign(CodemanApp.prototype, {
|
|
|
289
279
|
const cardStateCls = state === 'done' ? ' uw-state-done' : state === 'progress' ? ' uw-state-working' : '';
|
|
290
280
|
const cardAttrs = clickable
|
|
291
281
|
? ` class="ultracode-agent-card ultracode-agent-card--clickable${cardStateCls}" role="button" tabindex="0"` +
|
|
292
|
-
` title="View transcript" onclick="app.
|
|
282
|
+
` title="View transcript" onclick="app.openUltracodeAgentWindow(${escapeHtml(JSON.stringify(a.agentId))},${escapeHtml(JSON.stringify(runId || ''))})"`
|
|
293
283
|
: ` class="ultracode-agent-card${cardStateCls}"`;
|
|
294
284
|
return (
|
|
295
285
|
`<div${cardAttrs}>` +
|
|
Binary file
|
|
Binary file
|