@agimon-ai/po-runner 0.0.0-alpha.2 → 0.0.0-alpha.21
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/LICENSE +149 -21
- package/README.md +17 -17
- package/dist/ansiScrub.mjs +1 -2
- package/dist/apiContracts.cjs +1 -1
- package/dist/apiContracts.cjs.map +1 -1
- package/dist/apiContracts.mjs +1 -1
- package/dist/apiContracts.mjs.map +1 -1
- package/dist/{bashResult-bIVSzoj-.mjs → bashResult-BqDa7sbC.mjs} +10 -9
- package/dist/bashResult-BqDa7sbC.mjs.map +1 -0
- package/dist/{bashResult-DNgtahGR.cjs → bashResult-C2iKhHpD.cjs} +10 -9
- package/dist/bashResult-C2iKhHpD.cjs.map +1 -0
- package/dist/{bashRunService-CJ02XaAq.mjs → bashRunService-Cl3pYccr.mjs} +2 -2
- package/dist/bashRunService-Cl3pYccr.mjs.map +1 -0
- package/dist/{bashRunService-DyqxOSlx.cjs → bashRunService-DjOH5kye.cjs} +2 -2
- package/dist/bashRunService-DjOH5kye.cjs.map +1 -0
- package/dist/bashRunService.cjs +1 -1
- package/dist/bashRunService.d.mts +3 -3
- package/dist/bashRunService.mjs +1 -2
- package/dist/bashSchema.cjs +1 -1
- package/dist/bashSchema.mjs +1 -2
- package/dist/{bashTool-C-k7fmyh.mjs → bashTool-BvC3YOgG.mjs} +2 -2
- package/dist/{bashTool-C-k7fmyh.mjs.map → bashTool-BvC3YOgG.mjs.map} +1 -1
- package/dist/{bashTool-CdgtqVFD.cjs → bashTool-euL6zMDl.cjs} +2 -2
- package/dist/{bashTool-CdgtqVFD.cjs.map → bashTool-euL6zMDl.cjs.map} +1 -1
- package/dist/bashTool.cjs +3 -3
- package/dist/bashTool.d.mts +1 -1
- package/dist/bashTool.mjs +3 -3
- package/dist/bin/cli.cjs +6 -6
- package/dist/bin/cli.cjs.map +1 -1
- package/dist/bin/cli.mjs +7 -7
- package/dist/bin/cli.mjs.map +1 -1
- package/dist/bin/logSink.cjs +6 -6
- package/dist/bin/logSink.cjs.map +1 -1
- package/dist/bin/logSink.mjs +7 -7
- package/dist/bin/logSink.mjs.map +1 -1
- package/dist/bin/runnerHost.cjs +4 -4
- package/dist/bin/runnerHost.cjs.map +1 -1
- package/dist/bin/runnerHost.mjs +5 -5
- package/dist/bin/runnerHost.mjs.map +1 -1
- package/dist/{cliApp-Dj9nwaOv.cjs → cliApp-T8Fx_-1j.cjs} +6 -6
- package/dist/cliApp-T8Fx_-1j.cjs.map +1 -0
- package/dist/{cliApp-v8Z3rMCi.mjs → cliApp-q97eVh4E.mjs} +6 -6
- package/dist/cliApp-q97eVh4E.mjs.map +1 -0
- package/dist/cliApp.cjs +1 -1
- package/dist/cliApp.d.mts +1 -1
- package/dist/cliApp.mjs +1 -2
- package/dist/clock.mjs +1 -2
- package/dist/{compaction-4QSUsBxq.cjs → compaction-Cduebib_.cjs} +3 -3
- package/dist/compaction-Cduebib_.cjs.map +1 -0
- package/dist/{compaction-DCw80VZj.mjs → compaction-nNlE6e5I.mjs} +3 -3
- package/dist/compaction-nNlE6e5I.mjs.map +1 -0
- package/dist/compaction.cjs +1 -1
- package/dist/compaction.d.mts +1 -1
- package/dist/compaction.mjs +1 -2
- package/dist/config.cjs +1 -1
- package/dist/config.d.mts +1 -1
- package/dist/config.mjs +1 -2
- package/dist/extensions/mcp-ui.mjs.map +1 -1
- package/dist/extensions/mcp.cjs +8 -7
- package/dist/extensions/mcp.cjs.map +1 -1
- package/dist/extensions/mcp.d.mts +1 -1
- package/dist/extensions/mcp.mjs +7 -6
- package/dist/extensions/mcp.mjs.map +1 -1
- package/dist/extensions/native.mjs +1 -1
- package/dist/extensions/native.mjs.map +1 -1
- package/dist/extensions/server.cjs +233 -119
- package/dist/extensions/server.cjs.map +1 -1
- package/dist/extensions/server.d.mts +2 -2
- package/dist/extensions/server.d.mts.map +1 -1
- package/dist/extensions/server.mjs +233 -119
- package/dist/extensions/server.mjs.map +1 -1
- package/dist/extensions/web.mjs +88 -62
- package/dist/extensions/web.mjs.map +1 -1
- package/dist/{headless-BGYfIlNk.mjs → headless-DOlCixyf.mjs} +5 -5
- package/dist/headless-DOlCixyf.mjs.map +1 -0
- package/dist/{headless-CHUsBGhg.cjs → headless-Dko_yBiy.cjs} +5 -5
- package/dist/headless-Dko_yBiy.cjs.map +1 -0
- package/dist/{index-Dhi8asLH.d.mts → index--xF7DvsE.d.mts} +4 -4
- package/dist/{index-Dhi8asLH.d.mts.map → index--xF7DvsE.d.mts.map} +1 -1
- package/dist/{index-BZL7keVW.d.mts → index-BCCF1sGD.d.mts} +2 -2
- package/dist/{index-BZL7keVW.d.mts.map → index-BCCF1sGD.d.mts.map} +1 -1
- package/dist/{index-BwB_jTI9.d.mts → index-BzeXJk6V.d.mts} +5 -5
- package/dist/index-BzeXJk6V.d.mts.map +1 -0
- package/dist/{index-D9-IXax4.d.mts → index-C-IC35d9.d.mts} +2 -2
- package/dist/{index-D9-IXax4.d.mts.map → index-C-IC35d9.d.mts.map} +1 -1
- package/dist/{index-DBz0DxnL.d.mts → index-CzCF_OP9.d.mts} +3 -4
- package/dist/index-CzCF_OP9.d.mts.map +1 -0
- package/dist/index.cjs +5 -5
- package/dist/index.d.mts +5 -5
- package/dist/index.mjs +5 -5
- package/dist/{launcher-BDm6-DiQ.mjs → launcher-CCYsFBM9.mjs} +3 -3
- package/dist/{launcher-BDm6-DiQ.mjs.map → launcher-CCYsFBM9.mjs.map} +1 -1
- package/dist/{launcher-SlyE8R3b.cjs → launcher-ZgDdyXpq.cjs} +8 -2
- package/dist/{launcher-SlyE8R3b.cjs.map → launcher-ZgDdyXpq.cjs.map} +1 -1
- package/dist/launcher.cjs +1 -1
- package/dist/launcher.d.mts +1 -1
- package/dist/launcher.mjs +1 -2
- package/dist/{lifeline-BZaQA0rm.mjs → lifeline-Bm-bHIjS.mjs} +6 -6
- package/dist/lifeline-Bm-bHIjS.mjs.map +1 -0
- package/dist/{lifeline-BuV_erib.cjs → lifeline-m7laIzIP.cjs} +6 -6
- package/dist/lifeline-m7laIzIP.cjs.map +1 -0
- package/dist/lifeline.cjs +1 -1
- package/dist/lifeline.d.mts +1 -1
- package/dist/lifeline.mjs +1 -1
- package/dist/{logFile-CNvepZh0.cjs → logFile-CnPKtxPy.cjs} +2 -2
- package/dist/{logFile-CNvepZh0.cjs.map → logFile-CnPKtxPy.cjs.map} +1 -1
- package/dist/{logFile-KKPbkC-a.mjs → logFile-XcDHBwu1.mjs} +2 -2
- package/dist/{logFile-KKPbkC-a.mjs.map → logFile-XcDHBwu1.mjs.map} +1 -1
- package/dist/logFile.cjs +1 -1
- package/dist/logFile.d.mts +1 -1
- package/dist/logFile.mjs +1 -2
- package/dist/{logReader-B6J7L7Ua.cjs → logReader-DHCK2BEr.cjs} +4 -4
- package/dist/{logReader-B6J7L7Ua.cjs.map → logReader-DHCK2BEr.cjs.map} +1 -1
- package/dist/{logReader-UfbDbwQl.mjs → logReader-mq9uVurh.mjs} +4 -4
- package/dist/{logReader-UfbDbwQl.mjs.map → logReader-mq9uVurh.mjs.map} +1 -1
- package/dist/logReader.cjs +1 -1
- package/dist/logReader.mjs +1 -2
- package/dist/processControl.mjs +1 -2
- package/dist/{ptyHost-DlQtTB8F.mjs → ptyHost-CwbLLr90.mjs} +2 -2
- package/dist/{ptyHost-DlQtTB8F.mjs.map → ptyHost-CwbLLr90.mjs.map} +1 -1
- package/dist/{ptyHost-MI2Z6WTG.cjs → ptyHost-D35hNmtd.cjs} +2 -2
- package/dist/{ptyHost-MI2Z6WTG.cjs.map → ptyHost-D35hNmtd.cjs.map} +1 -1
- package/dist/ptyHost.cjs +1 -1
- package/dist/ptyHost.mjs +1 -2
- package/dist/{ptySpawner-DEi1KOnd.mjs → ptySpawner-C375NJnj.mjs} +2 -2
- package/dist/ptySpawner-C375NJnj.mjs.map +1 -0
- package/dist/{ptySpawner-ijw0g5_T.cjs → ptySpawner-C39IzbRo.cjs} +2 -2
- package/dist/ptySpawner-C39IzbRo.cjs.map +1 -0
- package/dist/ptySpawner.cjs +1 -1
- package/dist/ptySpawner.d.mts +1 -1
- package/dist/ptySpawner.mjs +1 -2
- package/dist/{reconcile-DMeNSxwn.mjs → reconcile-5cZ11jSD.cjs} +12 -42
- package/dist/reconcile-5cZ11jSD.cjs.map +1 -0
- package/dist/{reconcile-BugwYFbV.cjs → reconcile-wNYQJZF-.mjs} +2 -62
- package/dist/reconcile-wNYQJZF-.mjs.map +1 -0
- package/dist/reconcile.cjs +1 -2
- package/dist/reconcile.d.mts +2 -9
- package/dist/reconcile.d.mts.map +1 -1
- package/dist/reconcile.mjs +1 -2
- package/dist/responseEnvelope.cjs +2 -2
- package/dist/responseEnvelope.d.mts +3 -3
- package/dist/responseEnvelope.mjs +2 -2
- package/dist/{rmuxBackend-DlxgqRZ1.cjs → rmuxBackend-Dh0CYVAL.cjs} +5 -5
- package/dist/rmuxBackend-Dh0CYVAL.cjs.map +1 -0
- package/dist/{rmuxBackend-DfyQwJrc.mjs → rmuxBackend-rjrVTG6K.mjs} +4 -4
- package/dist/rmuxBackend-rjrVTG6K.mjs.map +1 -0
- package/dist/rmuxBackend.cjs +1 -1
- package/dist/rmuxBackend.d.mts +1 -1
- package/dist/rmuxBackend.mjs +1 -2
- package/dist/{rtkProcessor-Bc4L4o_8.cjs → rtkProcessor-DSGbM-Cm.cjs} +4 -4
- package/dist/rtkProcessor-DSGbM-Cm.cjs.map +1 -0
- package/dist/{rtkProcessor-B9KPdyzr.mjs → rtkProcessor-Iw9gP5Xp.mjs} +3 -3
- package/dist/rtkProcessor-Iw9gP5Xp.mjs.map +1 -0
- package/dist/rtkProcessor.cjs +1 -1
- package/dist/rtkProcessor.d.mts +1 -1
- package/dist/rtkProcessor.mjs +1 -1
- package/dist/{runnerConfig-D2tGq5ZM.cjs → runnerConfig-BoLMinlx.cjs} +11 -11
- package/dist/runnerConfig-BoLMinlx.cjs.map +1 -0
- package/dist/{runnerConfig-BjtulXBI.d.mts → runnerConfig-DuWL6TJx.d.mts} +10 -10
- package/dist/{runnerConfig-BjtulXBI.d.mts.map → runnerConfig-DuWL6TJx.d.mts.map} +1 -1
- package/dist/{runnerConfig-BQBlVAXn.mjs → runnerConfig-XXMq4VQA.mjs} +11 -11
- package/dist/runnerConfig-XXMq4VQA.mjs.map +1 -0
- package/dist/{runnerDependencies-DruByBGS.mjs → runnerDependencies-7h_cxOva.mjs} +17 -17
- package/dist/runnerDependencies-7h_cxOva.mjs.map +1 -0
- package/dist/{runnerDependencies-KMZigIxB.cjs → runnerDependencies-DSun3xO-.cjs} +17 -17
- package/dist/runnerDependencies-DSun3xO-.cjs.map +1 -0
- package/dist/runnerDependencies.cjs +1 -1
- package/dist/runnerDependencies.d.mts +1 -1
- package/dist/runnerDependencies.mjs +1 -2
- package/dist/runnerNamer.d.mts +1 -1
- package/dist/runnerNamer.mjs +1 -2
- package/dist/{runnerPaths-BTEuzxw0.cjs → runnerPaths-B41rMOY6.cjs} +20 -38
- package/dist/runnerPaths-B41rMOY6.cjs.map +1 -0
- package/dist/{runnerPaths-B_dAAeco.mjs → runnerPaths-Dibbvyx_.mjs} +20 -38
- package/dist/runnerPaths-Dibbvyx_.mjs.map +1 -0
- package/dist/runnerPaths.cjs +1 -1
- package/dist/runnerPaths.d.mts +5 -7
- package/dist/runnerPaths.d.mts.map +1 -1
- package/dist/runnerPaths.mjs +1 -2
- package/dist/{runnerRegistry-CeOHEjBv.mjs → runnerRegistry-BgaR5O86.mjs} +12 -11
- package/dist/runnerRegistry-BgaR5O86.mjs.map +1 -0
- package/dist/{runnerRegistry-CtJiD02R.d.mts → runnerRegistry-V-Ocaf4N.d.mts} +1 -3
- package/dist/{runnerRegistry-CtJiD02R.d.mts.map → runnerRegistry-V-Ocaf4N.d.mts.map} +1 -1
- package/dist/{runnerRegistry-BmkZTJHi.cjs → runnerRegistry-dQYlMSpQ.cjs} +23 -10
- package/dist/runnerRegistry-dQYlMSpQ.cjs.map +1 -0
- package/dist/runnerRegistry.cjs +1 -1
- package/dist/runnerRegistry.d.mts +2 -2
- package/dist/runnerRegistry.mjs +1 -2
- package/dist/services/lifeline/client.cjs +2 -2
- package/dist/services/lifeline/client.cjs.map +1 -1
- package/dist/services/lifeline/client.d.mts +1 -1
- package/dist/services/lifeline/client.mjs +2 -2
- package/dist/services/lifeline/client.mjs.map +1 -1
- package/dist/{session-Chsb_Nh2.mjs → session-BKYnH4R6.mjs} +2 -2
- package/dist/{session-Chsb_Nh2.mjs.map → session-BKYnH4R6.mjs.map} +1 -1
- package/dist/{session-BC43uEyG.cjs → session-BvqzhXZY.cjs} +2 -2
- package/dist/{session-BC43uEyG.cjs.map → session-BvqzhXZY.cjs.map} +1 -1
- package/dist/session.cjs +1 -1
- package/dist/session.mjs +1 -1
- package/dist/spawner.mjs +1 -2
- package/dist/{type-C31e1gla.d.mts → type-Do0YxwVQ.d.mts} +4 -4
- package/dist/{type-C31e1gla.d.mts.map → type-Do0YxwVQ.d.mts.map} +1 -1
- package/dist/{type-BXM03qSw.d.mts → type-DwMZoINK.d.mts} +8 -8
- package/dist/{type-BXM03qSw.d.mts.map → type-DwMZoINK.d.mts.map} +1 -1
- package/dist/types.d.mts +1 -1
- package/package.json +31 -34
- package/skills/{doom-runner → po-runner}/SKILL.md +15 -15
- package/src/prompts/po-use-runner/SKILL.md +11 -11
- package/dist/bashResult-DNgtahGR.cjs.map +0 -1
- package/dist/bashResult-bIVSzoj-.mjs.map +0 -1
- package/dist/bashRunService-CJ02XaAq.mjs.map +0 -1
- package/dist/bashRunService-DyqxOSlx.cjs.map +0 -1
- package/dist/cliApp-Dj9nwaOv.cjs.map +0 -1
- package/dist/cliApp-v8Z3rMCi.mjs.map +0 -1
- package/dist/compaction-4QSUsBxq.cjs.map +0 -1
- package/dist/compaction-DCw80VZj.mjs.map +0 -1
- package/dist/headless-BGYfIlNk.mjs.map +0 -1
- package/dist/headless-CHUsBGhg.cjs.map +0 -1
- package/dist/index-BwB_jTI9.d.mts.map +0 -1
- package/dist/index-DBz0DxnL.d.mts.map +0 -1
- package/dist/lifeline-BZaQA0rm.mjs.map +0 -1
- package/dist/lifeline-BuV_erib.cjs.map +0 -1
- package/dist/ptySpawner-DEi1KOnd.mjs.map +0 -1
- package/dist/ptySpawner-ijw0g5_T.cjs.map +0 -1
- package/dist/reconcile-BugwYFbV.cjs.map +0 -1
- package/dist/reconcile-DMeNSxwn.mjs.map +0 -1
- package/dist/rmuxBackend-DfyQwJrc.mjs.map +0 -1
- package/dist/rmuxBackend-DlxgqRZ1.cjs.map +0 -1
- package/dist/rtkProcessor-B9KPdyzr.mjs.map +0 -1
- package/dist/rtkProcessor-Bc4L4o_8.cjs.map +0 -1
- package/dist/runnerConfig-BQBlVAXn.mjs.map +0 -1
- package/dist/runnerConfig-D2tGq5ZM.cjs.map +0 -1
- package/dist/runnerDependencies-DruByBGS.mjs.map +0 -1
- package/dist/runnerDependencies-KMZigIxB.cjs.map +0 -1
- package/dist/runnerPaths-BTEuzxw0.cjs.map +0 -1
- package/dist/runnerPaths-B_dAAeco.mjs.map +0 -1
- package/dist/runnerRegistry-BmkZTJHi.cjs.map +0 -1
- package/dist/runnerRegistry-CeOHEjBv.mjs.map +0 -1
package/dist/extensions/web.mjs
CHANGED
|
@@ -179,7 +179,7 @@ const COMMAND_ROWS = 3;
|
|
|
179
179
|
const INTERACTIVE_FIELD_ID = "runner-launch-interactive-field";
|
|
180
180
|
function FieldLabel({ children }) {
|
|
181
181
|
return /* @__PURE__ */ jsx("span", {
|
|
182
|
-
className: "text-base font-medium text-
|
|
182
|
+
className: "text-base font-medium text-po-text",
|
|
183
183
|
children
|
|
184
184
|
});
|
|
185
185
|
}
|
|
@@ -264,28 +264,28 @@ function LaunchRunnerDialog({ sessionId, sendSessionFrame, defaultCwd, onClose }
|
|
|
264
264
|
onCheckedChange: (checked) => setInteractive(checked === true)
|
|
265
265
|
}), /* @__PURE__ */ jsx("label", {
|
|
266
266
|
htmlFor: INTERACTIVE_FIELD_ID,
|
|
267
|
-
className: "text-base text-
|
|
267
|
+
className: "text-base text-po-dim",
|
|
268
268
|
children: "needs a terminal, for a command that prompts (requires rmux or tmux)"
|
|
269
269
|
})]
|
|
270
270
|
}),
|
|
271
271
|
/* @__PURE__ */ jsxs("div", {
|
|
272
|
-
className: "flex flex-col gap-1 rounded-md border border-
|
|
272
|
+
className: "flex flex-col gap-1 rounded-md border border-po-border bg-po-deep px-3 py-2",
|
|
273
273
|
children: [/* @__PURE__ */ jsx(FieldLabel, { children: "Sent to the session" }), /* @__PURE__ */ jsx("pre", {
|
|
274
274
|
"data-testid": "runner-launch-line",
|
|
275
|
-
className: "whitespace-pre-wrap break-words font-mono text-sm text-
|
|
275
|
+
className: "whitespace-pre-wrap break-words font-mono text-sm text-po-green",
|
|
276
276
|
children: line
|
|
277
277
|
})]
|
|
278
278
|
}),
|
|
279
279
|
problems.length > 0 ? /* @__PURE__ */ jsx("p", {
|
|
280
280
|
"data-testid": "runner-launch-problem",
|
|
281
|
-
className: "text-base text-
|
|
281
|
+
className: "text-base text-po-red",
|
|
282
282
|
children: problems.join(" ")
|
|
283
283
|
}) : null,
|
|
284
284
|
/* @__PURE__ */ jsxs(DialogFooter, {
|
|
285
285
|
className: "flex-wrap sm:flex-nowrap",
|
|
286
286
|
children: [
|
|
287
287
|
/* @__PURE__ */ jsx("span", {
|
|
288
|
-
className: "w-full text-sm text-
|
|
288
|
+
className: "w-full text-sm text-po-dim sm:w-auto",
|
|
289
289
|
children: "it appears above once the runtime starts it"
|
|
290
290
|
}),
|
|
291
291
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
@@ -557,10 +557,10 @@ function MetaRow({ label, value }) {
|
|
|
557
557
|
return /* @__PURE__ */ jsxs("span", {
|
|
558
558
|
className: "flex min-w-0 gap-2.5",
|
|
559
559
|
children: [/* @__PURE__ */ jsx("span", {
|
|
560
|
-
className: "w-14 shrink-0 text-base text-
|
|
560
|
+
className: "w-14 shrink-0 text-base text-po-dim",
|
|
561
561
|
children: label
|
|
562
562
|
}), /* @__PURE__ */ jsx("span", {
|
|
563
|
-
className: "min-w-0 flex-1 break-all font-mono text-sm text-
|
|
563
|
+
className: "min-w-0 flex-1 break-all font-mono text-sm text-po-dim",
|
|
564
564
|
children: value
|
|
565
565
|
})]
|
|
566
566
|
});
|
|
@@ -580,17 +580,17 @@ function LogRow({ number, line, matched }) {
|
|
|
580
580
|
className: "flex min-w-0 gap-2",
|
|
581
581
|
children: [
|
|
582
582
|
number === void 0 ? null : /* @__PURE__ */ jsx("span", {
|
|
583
|
-
className: "w-12 shrink-0 select-none text-right text-xs leading-relaxed text-
|
|
583
|
+
className: "w-12 shrink-0 select-none text-right text-xs leading-relaxed text-po-faint",
|
|
584
584
|
children: number
|
|
585
585
|
}),
|
|
586
586
|
/* @__PURE__ */ jsx("span", {
|
|
587
587
|
"aria-hidden": true,
|
|
588
|
-
className: `w-4 shrink-0 select-none text-xs leading-relaxed ${matched ? "text-
|
|
588
|
+
className: `w-4 shrink-0 select-none text-xs leading-relaxed ${matched ? "text-po-yellow" : "text-po-faint"}`,
|
|
589
589
|
children: matched ? ">>" : ""
|
|
590
590
|
}),
|
|
591
591
|
/* @__PURE__ */ jsx(AnsiLine, {
|
|
592
592
|
line,
|
|
593
|
-
className: `min-w-0 flex-1 whitespace-pre-wrap break-words font-mono text-xs leading-relaxed ${matched ? "text-
|
|
593
|
+
className: `min-w-0 flex-1 whitespace-pre-wrap break-words font-mono text-xs leading-relaxed ${matched ? "text-po-text" : "text-po-dim"}`
|
|
594
594
|
})
|
|
595
595
|
]
|
|
596
596
|
});
|
|
@@ -711,11 +711,11 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
711
711
|
className: "flex min-h-0 flex-1 flex-col",
|
|
712
712
|
children: [
|
|
713
713
|
/* @__PURE__ */ jsxs("div", {
|
|
714
|
-
className: "flex min-h-11 shrink-0 flex-wrap items-center gap-2 border-b border-
|
|
714
|
+
className: "flex min-h-11 shrink-0 flex-wrap items-center gap-2 border-b border-po-border-soft px-3 py-2 sm:h-11 sm:flex-nowrap sm:gap-2.5 sm:px-[26px] sm:py-0",
|
|
715
715
|
children: [
|
|
716
716
|
/* @__PURE__ */ jsx("span", {
|
|
717
717
|
"data-testid": "runner-log-name",
|
|
718
|
-
className: "shrink-0 truncate text-base font-semibold text-
|
|
718
|
+
className: "shrink-0 truncate text-base font-semibold text-po-hi",
|
|
719
719
|
children: run?.name ?? runId
|
|
720
720
|
}),
|
|
721
721
|
/* @__PURE__ */ jsx(StatusBadge, {
|
|
@@ -724,14 +724,14 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
724
724
|
children: badge.label
|
|
725
725
|
}),
|
|
726
726
|
run ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
|
|
727
|
-
className: "shrink-0 text-sm text-
|
|
727
|
+
className: "shrink-0 text-sm text-po-dim",
|
|
728
728
|
children: elapsed
|
|
729
729
|
}), /* @__PURE__ */ jsx("span", {
|
|
730
|
-
className: "shrink-0 text-sm text-
|
|
730
|
+
className: "shrink-0 text-sm text-po-dim",
|
|
731
731
|
children: `pid ${String(run.pid)} · ${run.backend}${run.interactive ? " · tty" : ""}`
|
|
732
732
|
})] }) : /* @__PURE__ */ jsx("span", {
|
|
733
733
|
"data-testid": "runner-log-gone",
|
|
734
|
-
className: "text-sm text-
|
|
734
|
+
className: "text-sm text-po-dim",
|
|
735
735
|
children: "no longer listed; its log stays readable"
|
|
736
736
|
}),
|
|
737
737
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
@@ -748,7 +748,7 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
748
748
|
]
|
|
749
749
|
}),
|
|
750
750
|
run ? /* @__PURE__ */ jsxs("div", {
|
|
751
|
-
className: "flex shrink-0 flex-col gap-1.5 border-b border-
|
|
751
|
+
className: "flex shrink-0 flex-col gap-1.5 border-b border-po-border-soft px-3 py-2.5 sm:px-[26px]",
|
|
752
752
|
children: [/* @__PURE__ */ jsx(MetaRow, {
|
|
753
753
|
label: "command",
|
|
754
754
|
value: run.command
|
|
@@ -758,11 +758,11 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
758
758
|
})]
|
|
759
759
|
}) : null,
|
|
760
760
|
/* @__PURE__ */ jsxs("div", {
|
|
761
|
-
className: "flex min-h-10 shrink-0 flex-wrap items-center gap-2 border-b border-
|
|
761
|
+
className: "flex min-h-10 shrink-0 flex-wrap items-center gap-2 border-b border-po-border-soft px-3 py-2 sm:h-10 sm:flex-nowrap sm:gap-2.5 sm:px-[26px] sm:py-0",
|
|
762
762
|
children: [
|
|
763
763
|
/* @__PURE__ */ jsxs("span", {
|
|
764
764
|
className: "relative flex min-w-0 flex-1 items-center sm:w-[300px] sm:flex-none",
|
|
765
|
-
children: [/* @__PURE__ */ jsx(SearchIcon, { className: "pointer-events-none absolute left-2.5 h-3 w-3 text-
|
|
765
|
+
children: [/* @__PURE__ */ jsx(SearchIcon, { className: "pointer-events-none absolute left-2.5 h-3 w-3 text-po-faint" }), /* @__PURE__ */ jsx(Input, {
|
|
766
766
|
size: "sm",
|
|
767
767
|
"data-testid": "runner-log-search",
|
|
768
768
|
value: typed,
|
|
@@ -794,7 +794,7 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
794
794
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
795
795
|
/* @__PURE__ */ jsxs("span", {
|
|
796
796
|
"data-testid": "runner-log-stats",
|
|
797
|
-
className: "min-w-0 basis-full truncate text-sm text-
|
|
797
|
+
className: "min-w-0 basis-full truncate text-sm text-po-dim sm:basis-auto",
|
|
798
798
|
children: [slice === void 0 ? "reading…" : filtering ? `${String(slice.lineCount)} matching of ${slice.totalLines.toLocaleString("en-US")} lines` : `${live ? "tailing" : "showing"} last ${String(view.lines.length)} of ${slice.totalLines.toLocaleString("en-US")} lines`, view.hidden > 0 ? ` · ${view.hidden.toLocaleString("en-US")} older hidden` : ""]
|
|
799
799
|
}),
|
|
800
800
|
/* @__PURE__ */ jsx(Button, {
|
|
@@ -816,20 +816,20 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
816
816
|
ref: body,
|
|
817
817
|
onScroll,
|
|
818
818
|
"data-testid": "runner-log-body",
|
|
819
|
-
className: "h-full overflow-auto bg-
|
|
819
|
+
className: "h-full overflow-auto bg-po-deep px-3 py-3 sm:px-[26px]",
|
|
820
820
|
children: [error !== void 0 ? /* @__PURE__ */ jsx("p", {
|
|
821
821
|
"data-testid": "runner-log-error",
|
|
822
|
-
className: "text-base text-
|
|
822
|
+
className: "text-base text-po-red",
|
|
823
823
|
children: error
|
|
824
824
|
}) : slice === void 0 ? /* @__PURE__ */ jsx("p", {
|
|
825
825
|
"data-testid": "runner-log-reading",
|
|
826
|
-
className: "text-sm text-
|
|
826
|
+
className: "text-sm text-po-dim",
|
|
827
827
|
children: "reading…"
|
|
828
828
|
}) : slice.exists === false ? /* @__PURE__ */ jsx("p", {
|
|
829
|
-
className: "text-sm text-
|
|
829
|
+
className: "text-sm text-po-dim",
|
|
830
830
|
children: "this runner has not written a log yet"
|
|
831
831
|
}) : view.lines.length === 0 ? /* @__PURE__ */ jsx("p", {
|
|
832
|
-
className: "text-sm text-
|
|
832
|
+
className: "text-sm text-po-dim",
|
|
833
833
|
children: filtering ? "nothing matched" : "the log is empty"
|
|
834
834
|
}) : view.lines.map((line, index) => {
|
|
835
835
|
const number = numbers[index];
|
|
@@ -838,7 +838,7 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
838
838
|
return /* @__PURE__ */ jsxs(Fragment, { children: [gap ? /* @__PURE__ */ jsx("div", {
|
|
839
839
|
"data-testid": "runner-log-gap",
|
|
840
840
|
"aria-hidden": true,
|
|
841
|
-
className: "select-none py-0.5 pl-12 text-xs leading-relaxed text-
|
|
841
|
+
className: "select-none py-0.5 pl-12 text-xs leading-relaxed text-po-faint",
|
|
842
842
|
children: "⋯"
|
|
843
843
|
}) : null, /* @__PURE__ */ jsx(LogRow, {
|
|
844
844
|
number,
|
|
@@ -860,13 +860,13 @@ function RunnerLogPanel({ sessionId, runId, sendSessionFrame }) {
|
|
|
860
860
|
}) : null]
|
|
861
861
|
}),
|
|
862
862
|
/* @__PURE__ */ jsxs("div", {
|
|
863
|
-
className: "flex h-8 shrink-0 items-center gap-2.5 border-t border-
|
|
863
|
+
className: "flex h-8 shrink-0 items-center gap-2.5 border-t border-po-border-soft px-3 sm:px-[26px]",
|
|
864
864
|
children: [/* @__PURE__ */ jsx("span", {
|
|
865
865
|
"data-testid": "runner-log-path",
|
|
866
|
-
className: "min-w-0 flex-1 truncate font-mono text-sm text-
|
|
866
|
+
className: "min-w-0 flex-1 truncate font-mono text-sm text-po-dim",
|
|
867
867
|
children: run?.logPath ?? slice?.path ?? ""
|
|
868
868
|
}), slice !== void 0 ? /* @__PURE__ */ jsx("span", {
|
|
869
|
-
className: "shrink-0 text-sm text-
|
|
869
|
+
className: "shrink-0 text-sm text-po-dim",
|
|
870
870
|
children: formatSize$1(slice.fileSize)
|
|
871
871
|
}) : null]
|
|
872
872
|
})
|
|
@@ -1026,11 +1026,11 @@ function RunnerShellPanel({ sessionId, runId }) {
|
|
|
1026
1026
|
className: "flex min-h-0 flex-1 flex-col",
|
|
1027
1027
|
children: [
|
|
1028
1028
|
/* @__PURE__ */ jsxs("div", {
|
|
1029
|
-
className: "flex min-h-11 shrink-0 items-center gap-2.5 border-b border-
|
|
1029
|
+
className: "flex min-h-11 shrink-0 items-center gap-2.5 border-b border-po-border-soft px-3 sm:h-11 sm:px-[26px]",
|
|
1030
1030
|
children: [
|
|
1031
1031
|
/* @__PURE__ */ jsx("span", {
|
|
1032
1032
|
"data-testid": "runner-shell-name",
|
|
1033
|
-
className: "shrink-0 truncate text-base font-semibold text-
|
|
1033
|
+
className: "shrink-0 truncate text-base font-semibold text-po-hi",
|
|
1034
1034
|
children: run?.name ?? runId
|
|
1035
1035
|
}),
|
|
1036
1036
|
/* @__PURE__ */ jsx(StatusBadge, {
|
|
@@ -1041,7 +1041,7 @@ function RunnerShellPanel({ sessionId, runId }) {
|
|
|
1041
1041
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
1042
1042
|
lost ? /* @__PURE__ */ jsx("span", {
|
|
1043
1043
|
"data-testid": "runner-shell-lost",
|
|
1044
|
-
className: "shrink-0 text-base text-
|
|
1044
|
+
className: "shrink-0 text-base text-po-red",
|
|
1045
1045
|
children: "the connection to this pane dropped"
|
|
1046
1046
|
}) : null,
|
|
1047
1047
|
live ? /* @__PURE__ */ jsx(Button, {
|
|
@@ -1056,7 +1056,7 @@ function RunnerShellPanel({ sessionId, runId }) {
|
|
|
1056
1056
|
]
|
|
1057
1057
|
}),
|
|
1058
1058
|
/* @__PURE__ */ jsxs("div", {
|
|
1059
|
-
className: "relative min-h-0 flex-1 overflow-hidden bg-
|
|
1059
|
+
className: "relative min-h-0 flex-1 overflow-hidden bg-po-deep px-3 py-2 sm:px-[26px]",
|
|
1060
1060
|
children: [/* @__PURE__ */ jsx(TerminalView, {
|
|
1061
1061
|
ref: terminal,
|
|
1062
1062
|
"data-testid": "runner-shell-terminal",
|
|
@@ -1064,14 +1064,14 @@ function RunnerShellPanel({ sessionId, runId }) {
|
|
|
1064
1064
|
onReady: () => setReady(true)
|
|
1065
1065
|
}), ready ? null : /* @__PURE__ */ jsx("p", {
|
|
1066
1066
|
"data-testid": "runner-shell-reading",
|
|
1067
|
-
className: "text-sm text-
|
|
1067
|
+
className: "text-sm text-po-dim",
|
|
1068
1068
|
children: "attaching…"
|
|
1069
1069
|
})]
|
|
1070
1070
|
}),
|
|
1071
1071
|
/* @__PURE__ */ jsx("div", {
|
|
1072
|
-
className: "flex h-8 shrink-0 items-center border-t border-
|
|
1072
|
+
className: "flex h-8 shrink-0 items-center border-t border-po-border-soft px-3 sm:px-[26px]",
|
|
1073
1073
|
children: /* @__PURE__ */ jsx("span", {
|
|
1074
|
-
className: "min-w-0 flex-1 truncate text-sm text-
|
|
1074
|
+
className: "min-w-0 flex-1 truncate text-sm text-po-dim",
|
|
1075
1075
|
children: live ? "typing goes straight to the runner" : "this runner is no longer accepting input"
|
|
1076
1076
|
})
|
|
1077
1077
|
})
|
|
@@ -1175,7 +1175,7 @@ function runnersTab() {
|
|
|
1175
1175
|
*
|
|
1176
1176
|
* Running runners only, the same rule the rail follows. A finished run leaves
|
|
1177
1177
|
* the moment it exits, because this answers "what is happening"; its log stays
|
|
1178
|
-
* readable from its own tab, and `
|
|
1178
|
+
* readable from its own tab, and `po-runner list` is where history lives.
|
|
1179
1179
|
*/
|
|
1180
1180
|
function RunnersPanel({ sessionId, sendSessionFrame, openTransientTab }) {
|
|
1181
1181
|
const session = useStore(runners.store, (state) => runners.select(state, sessionId));
|
|
@@ -1213,15 +1213,15 @@ function RunnersPanel({ sessionId, sendSessionFrame, openTransientTab }) {
|
|
|
1213
1213
|
className: "flex min-h-0 flex-1 flex-col overflow-auto",
|
|
1214
1214
|
children: [
|
|
1215
1215
|
/* @__PURE__ */ jsxs("div", {
|
|
1216
|
-
className: "flex min-h-11 shrink-0 items-center gap-2.5 border-b border-
|
|
1216
|
+
className: "flex min-h-11 shrink-0 items-center gap-2.5 border-b border-po-border-soft px-3 sm:h-11 sm:px-[26px]",
|
|
1217
1217
|
children: [
|
|
1218
1218
|
/* @__PURE__ */ jsx("span", {
|
|
1219
|
-
className: "text-lg font-semibold text-
|
|
1219
|
+
className: "text-lg font-semibold text-po-hi",
|
|
1220
1220
|
children: "runners"
|
|
1221
1221
|
}),
|
|
1222
1222
|
/* @__PURE__ */ jsx("span", {
|
|
1223
1223
|
"data-testid": "runners-panel-count",
|
|
1224
|
-
className: "text-sm text-
|
|
1224
|
+
className: "text-sm text-po-dim",
|
|
1225
1225
|
children: running.length === 0 ? "nothing running" : `${String(running.length)} running`
|
|
1226
1226
|
}),
|
|
1227
1227
|
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1" }),
|
|
@@ -1233,7 +1233,7 @@ function RunnersPanel({ sessionId, sendSessionFrame, openTransientTab }) {
|
|
|
1233
1233
|
"data-testid": "runners-panel-launch",
|
|
1234
1234
|
title: "launch a runner",
|
|
1235
1235
|
"aria-label": "launch a runner",
|
|
1236
|
-
className: "text-
|
|
1236
|
+
className: "text-po-faint hover:text-po-hi",
|
|
1237
1237
|
children: /* @__PURE__ */ jsx(PlusIcon, { className: "h-3 w-3" })
|
|
1238
1238
|
})
|
|
1239
1239
|
}), /* @__PURE__ */ jsxs(DropdownMenuContent, {
|
|
@@ -1293,7 +1293,7 @@ function RunnerCard({ run, now, stopRequested, sessionId, sendSessionFrame, open
|
|
|
1293
1293
|
const tail = useRunnerTail(sessionId, run.id, run.state === "running");
|
|
1294
1294
|
return /* @__PURE__ */ jsxs("div", {
|
|
1295
1295
|
"data-testid": `runners-card-${run.id}`,
|
|
1296
|
-
className: "flex min-w-0 flex-col gap-1.5 rounded-md border border-
|
|
1296
|
+
className: "flex min-w-0 flex-col gap-1.5 rounded-md border border-po-border-soft bg-po-panel p-2.5",
|
|
1297
1297
|
children: [
|
|
1298
1298
|
/* @__PURE__ */ jsxs("div", {
|
|
1299
1299
|
className: "flex min-w-0 items-center gap-1.5",
|
|
@@ -1303,27 +1303,27 @@ function RunnerCard({ run, now, stopRequested, sessionId, sendSessionFrame, open
|
|
|
1303
1303
|
pulse: true
|
|
1304
1304
|
}),
|
|
1305
1305
|
/* @__PURE__ */ jsx("span", {
|
|
1306
|
-
className: "min-w-0 flex-1 truncate text-base font-semibold text-
|
|
1306
|
+
className: "min-w-0 flex-1 truncate text-base font-semibold text-po-hi",
|
|
1307
1307
|
children: run.name
|
|
1308
1308
|
}),
|
|
1309
1309
|
/* @__PURE__ */ jsxs("span", {
|
|
1310
|
-
className: "shrink-0 text-sm text-
|
|
1310
|
+
className: "shrink-0 text-sm text-po-dim",
|
|
1311
1311
|
children: [formatRunnerUptime(run.startedAt, now), run.interactive ? " · tty" : ""]
|
|
1312
1312
|
})
|
|
1313
1313
|
]
|
|
1314
1314
|
}),
|
|
1315
1315
|
/* @__PURE__ */ jsx("span", {
|
|
1316
|
-
className: "min-w-0 break-all font-mono text-sm leading-normal text-
|
|
1316
|
+
className: "min-w-0 break-all font-mono text-sm leading-normal text-po-dim",
|
|
1317
1317
|
children: run.command
|
|
1318
1318
|
}),
|
|
1319
1319
|
/* @__PURE__ */ jsx("span", {
|
|
1320
|
-
className: "min-w-0 truncate font-mono text-sm text-
|
|
1320
|
+
className: "min-w-0 truncate font-mono text-sm text-po-dim",
|
|
1321
1321
|
children: run.cwd
|
|
1322
1322
|
}),
|
|
1323
1323
|
/* @__PURE__ */ jsx("span", {
|
|
1324
1324
|
"data-testid": `runners-card-detail-${run.id}`,
|
|
1325
1325
|
"data-detail": tail === void 0 ? "command" : "tail",
|
|
1326
|
-
className: "min-w-0 truncate text-sm text-
|
|
1326
|
+
className: "min-w-0 truncate text-sm text-po-dim",
|
|
1327
1327
|
children: tail ?? "…"
|
|
1328
1328
|
}),
|
|
1329
1329
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -1368,7 +1368,7 @@ function RunnerCard({ run, now, stopRequested, sessionId, sendSessionFrame, open
|
|
|
1368
1368
|
var runners_web_default = defineActivityGroup({
|
|
1369
1369
|
keys: "r l",
|
|
1370
1370
|
icon: PlayCircleIcon,
|
|
1371
|
-
statusKey: "
|
|
1371
|
+
statusKey: "po-runner-runners",
|
|
1372
1372
|
activeSource: runnerActivitySource,
|
|
1373
1373
|
transientTab: runnersTab,
|
|
1374
1374
|
order: 20
|
|
@@ -1386,7 +1386,7 @@ const TICK_MS = 1e4;
|
|
|
1386
1386
|
* Only running runners are listed. A finished one leaves the moment it exits,
|
|
1387
1387
|
* because the dock answers "what is happening", and a rail that keeps ten
|
|
1388
1388
|
* completed playwright calls around buries the one command still working. The
|
|
1389
|
-
* runtime keeps every record; `
|
|
1389
|
+
* runtime keeps every record; `po-runner list` and the run's own log tab are
|
|
1390
1390
|
* where a finished run is read.
|
|
1391
1391
|
*/
|
|
1392
1392
|
function RunnersActivitySection({ sessionId, sendSessionFrame, openTransientTab }) {
|
|
@@ -1401,13 +1401,13 @@ function RunnersActivitySection({ sessionId, sendSessionFrame, openTransientTab
|
|
|
1401
1401
|
className: "flex flex-wrap items-center gap-x-4 gap-y-1",
|
|
1402
1402
|
children: [/* @__PURE__ */ jsx("p", {
|
|
1403
1403
|
"data-testid": "activity-summary-runners",
|
|
1404
|
-
className: "text-sm text-
|
|
1404
|
+
className: "text-sm text-po-dim",
|
|
1405
1405
|
children: "Idle"
|
|
1406
1406
|
}), sessionId === null ? null : /* @__PURE__ */ jsxs(Button, {
|
|
1407
1407
|
variant: "link",
|
|
1408
1408
|
size: "sm",
|
|
1409
1409
|
"data-testid": "activity-runner-launch",
|
|
1410
|
-
className: "h-auto gap-1 px-0 text-
|
|
1410
|
+
className: "h-auto gap-1 px-0 text-po-green",
|
|
1411
1411
|
onClick: () => openTransientTab(runnersTab()),
|
|
1412
1412
|
children: ["Launch a runner", /* @__PURE__ */ jsx(ArrowRightIcon, {
|
|
1413
1413
|
"aria-hidden": true,
|
|
@@ -1445,7 +1445,7 @@ function RunnerRow({ run, now, stopRequested, sessionId, sendSessionFrame, openT
|
|
|
1445
1445
|
if (sessionId === null) return;
|
|
1446
1446
|
openTransientTab(runnerLogTab(run));
|
|
1447
1447
|
},
|
|
1448
|
-
className: "min-w-0 gap-0.5 rounded-md px-1 py-1 hover:bg-
|
|
1448
|
+
className: "min-w-0 gap-0.5 rounded-md px-1 py-1 hover:bg-po-panel",
|
|
1449
1449
|
children: [/* @__PURE__ */ jsxs("span", {
|
|
1450
1450
|
className: "flex min-w-0 items-center gap-1.5",
|
|
1451
1451
|
children: [
|
|
@@ -1454,11 +1454,11 @@ function RunnerRow({ run, now, stopRequested, sessionId, sendSessionFrame, openT
|
|
|
1454
1454
|
pulse: true
|
|
1455
1455
|
}),
|
|
1456
1456
|
/* @__PURE__ */ jsx("span", {
|
|
1457
|
-
className: "min-w-0 flex-1 truncate text-left text-base font-semibold text-
|
|
1457
|
+
className: "min-w-0 flex-1 truncate text-left text-base font-semibold text-po-hi",
|
|
1458
1458
|
children: run.name
|
|
1459
1459
|
}),
|
|
1460
1460
|
/* @__PURE__ */ jsxs("span", {
|
|
1461
|
-
className: "shrink-0 text-sm text-
|
|
1461
|
+
className: "shrink-0 text-sm text-po-dim",
|
|
1462
1462
|
children: [formatRunnerUptime(run.startedAt, now), run.interactive ? " · tty" : ""]
|
|
1463
1463
|
}),
|
|
1464
1464
|
sessionId !== null ? /* @__PURE__ */ jsx(Button, {
|
|
@@ -1490,7 +1490,7 @@ function RunnerRow({ run, now, stopRequested, sessionId, sendSessionFrame, openT
|
|
|
1490
1490
|
}), /* @__PURE__ */ jsx("span", {
|
|
1491
1491
|
"data-testid": `activity-runner-detail-${run.id}`,
|
|
1492
1492
|
"data-detail": tail === void 0 ? "command" : "tail",
|
|
1493
|
-
className: "truncate pl-3 text-left text-sm text-
|
|
1493
|
+
className: "truncate pl-3 text-left text-sm text-po-dim",
|
|
1494
1494
|
children: tail ?? run.command
|
|
1495
1495
|
})]
|
|
1496
1496
|
});
|
|
@@ -1671,8 +1671,9 @@ function BashToolMessage({ sessionId, args, result, output, running, isError, se
|
|
|
1671
1671
|
const command = formatBashCommand(rawCommand);
|
|
1672
1672
|
const flags = formatBashFlags(args);
|
|
1673
1673
|
const stoppable = sessionId !== null && runnerId !== void 0 && run !== void 0 && run.exit === void 0;
|
|
1674
|
+
const background = runnerId === void 0 ? void 0 : backgroundOutcome(run);
|
|
1674
1675
|
return /* @__PURE__ */ jsx(MessageItem, {
|
|
1675
|
-
tone: toolTone({
|
|
1676
|
+
tone: background?.tone ?? toolTone({
|
|
1676
1677
|
running,
|
|
1677
1678
|
isError
|
|
1678
1679
|
}),
|
|
@@ -1687,15 +1688,16 @@ function BashToolMessage({ sessionId, args, result, output, running, isError, se
|
|
|
1687
1688
|
});
|
|
1688
1689
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs(MessageItemHeader, {
|
|
1689
1690
|
title: "bash",
|
|
1691
|
+
...background ? { badge: background.badge } : {},
|
|
1690
1692
|
children: [
|
|
1691
1693
|
/* @__PURE__ */ jsxs("span", {
|
|
1692
1694
|
"data-testid": "tool-call-bash",
|
|
1693
1695
|
className: "flex min-w-0 flex-1 items-center gap-2",
|
|
1694
1696
|
children: [/* @__PURE__ */ jsx("span", {
|
|
1695
|
-
className: "min-w-0 flex-1 truncate font-mono text-
|
|
1697
|
+
className: "min-w-0 flex-1 truncate font-mono text-po-text",
|
|
1696
1698
|
children: command
|
|
1697
1699
|
}), flags.length > 0 ? /* @__PURE__ */ jsxs("span", {
|
|
1698
|
-
className: "hidden shrink-0 text-
|
|
1700
|
+
className: "hidden shrink-0 text-po-dim sm:inline",
|
|
1699
1701
|
children: ["· ", flags.join(" · ")]
|
|
1700
1702
|
}) : null]
|
|
1701
1703
|
}),
|
|
@@ -1734,12 +1736,12 @@ function BashToolMessage({ sessionId, args, result, output, running, isError, se
|
|
|
1734
1736
|
"data-testid": "tool-result-bash-command",
|
|
1735
1737
|
grammar: "shell",
|
|
1736
1738
|
text: rawCommand,
|
|
1737
|
-
className: "max-h-40 overflow-auto text-
|
|
1739
|
+
className: "max-h-40 overflow-auto text-po-text"
|
|
1738
1740
|
}) : null,
|
|
1739
1741
|
view.lines.length > 0 ? /* @__PURE__ */ jsx(AnsiText, {
|
|
1740
1742
|
"data-testid": "tool-result-bash-output",
|
|
1741
1743
|
text: view.lines.join("\n"),
|
|
1742
|
-
className: "max-h-96 overflow-auto whitespace-pre-wrap break-words [overflow-wrap:anywhere] border-
|
|
1744
|
+
className: "max-h-96 overflow-auto whitespace-pre-wrap break-words [overflow-wrap:anywhere] border-po-border-soft border-t pt-2 font-mono text-po-dim"
|
|
1743
1745
|
}) : null,
|
|
1744
1746
|
view.status ? /* @__PURE__ */ jsx(MessageItemStatus, {
|
|
1745
1747
|
"data-testid": "tool-result-bash-status",
|
|
@@ -1753,9 +1755,9 @@ function BashToolMessage({ sessionId, args, result, output, running, isError, se
|
|
|
1753
1755
|
}) : null,
|
|
1754
1756
|
details.logPath !== void 0 ? /* @__PURE__ */ jsxs("span", {
|
|
1755
1757
|
"data-testid": "tool-result-bash-log",
|
|
1756
|
-
className: "min-w-0 break-all text-
|
|
1758
|
+
className: "min-w-0 break-all text-po-dim",
|
|
1757
1759
|
children: ["full log · ", /* @__PURE__ */ jsx("span", {
|
|
1758
|
-
className: "text-
|
|
1760
|
+
className: "text-po-dim",
|
|
1759
1761
|
children: details.logPath
|
|
1760
1762
|
})]
|
|
1761
1763
|
}) : null
|
|
@@ -1764,6 +1766,30 @@ function BashToolMessage({ sessionId, args, result, output, running, isError, se
|
|
|
1764
1766
|
}
|
|
1765
1767
|
});
|
|
1766
1768
|
}
|
|
1769
|
+
function backgroundOutcome(run) {
|
|
1770
|
+
if (run === void 0) return {
|
|
1771
|
+
tone: "info",
|
|
1772
|
+
badge: "In background"
|
|
1773
|
+
};
|
|
1774
|
+
if (run.exit === void 0) return {
|
|
1775
|
+
tone: "running",
|
|
1776
|
+
badge: "In background"
|
|
1777
|
+
};
|
|
1778
|
+
const { reason, code } = run.exit;
|
|
1779
|
+
const exit = code === null ? "" : ` · exit ${code}`;
|
|
1780
|
+
if (reason === "completed") return {
|
|
1781
|
+
tone: "ok",
|
|
1782
|
+
badge: `Completed${exit}`
|
|
1783
|
+
};
|
|
1784
|
+
if (reason === "stopped") return {
|
|
1785
|
+
tone: "neutral",
|
|
1786
|
+
badge: "Stopped"
|
|
1787
|
+
};
|
|
1788
|
+
return {
|
|
1789
|
+
tone: "error",
|
|
1790
|
+
badge: `Failed${exit}`
|
|
1791
|
+
};
|
|
1792
|
+
}
|
|
1767
1793
|
//#endregion
|
|
1768
1794
|
//#region src/extensions/workspaces/sessions/(frontend)/tool/bash.web.tsx
|
|
1769
1795
|
var bash_web_default = defineToolRenderer({ message: BashToolMessage });
|