@selesai/code 0.13.12 → 0.13.14
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/CHANGELOG.md +9 -0
- package/dist/extensions/pi-subagents/CHANGELOG.md +77 -1
- package/dist/extensions/pi-subagents/VISION.md +12 -1
- package/dist/extensions/pi-subagents/docs/agents.md +13 -6
- package/dist/extensions/pi-subagents/docs/configuration.md +35 -9
- package/dist/extensions/pi-subagents/docs/extension-api.md +1 -1
- package/dist/extensions/pi-subagents/docs/missions.md +1 -1
- package/dist/extensions/pi-subagents/docs/models.md +6 -6
- package/dist/extensions/pi-subagents/docs/observability.md +6 -3
- package/dist/extensions/pi-subagents/docs/tool-reference.md +3 -3
- package/dist/extensions/pi-subagents/docs/watchdog.md +92 -114
- package/dist/extensions/pi-subagents/docs/workflows.md +1 -1
- package/dist/extensions/pi-subagents/install.mjs +1 -2
- package/dist/extensions/pi-subagents/package.json +1 -1
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/constraints-and-recipes.md +1 -1
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/execution-controls.md +6 -6
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/management-authoring-rpc.md +2 -2
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/multi-lane-orchestration.md +1 -1
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/prompting-and-roles.md +4 -4
- package/dist/extensions/pi-subagents/skills/pi-subagents/references/review-and-validation.md +1 -1
- package/dist/extensions/pi-subagents/src/agents/agent-management.ts +41 -4
- package/dist/extensions/pi-subagents/src/agents/agent-serializer.ts +3 -0
- package/dist/extensions/pi-subagents/src/agents/agents.ts +120 -124
- package/dist/extensions/pi-subagents/src/agents/runtime-agent-registry.ts +5 -1
- package/dist/extensions/pi-subagents/src/api/preflight.ts +4 -0
- package/dist/extensions/pi-subagents/src/api/shared-types.ts +3 -0
- package/dist/extensions/pi-subagents/src/extension/config.ts +20 -0
- package/dist/extensions/pi-subagents/src/extension/public-execution.ts +1 -0
- package/dist/extensions/pi-subagents/src/extension/schemas.ts +6 -2
- package/dist/extensions/pi-subagents/src/extension/tool-description.ts +1 -1
- package/dist/extensions/pi-subagents/src/inspectors/herdr/inspector-runner.ts +19 -13
- package/dist/extensions/pi-subagents/src/runs/background/active-async-capacity.ts +26 -8
- package/dist/extensions/pi-subagents/src/runs/background/async-execution.ts +103 -23
- package/dist/extensions/pi-subagents/src/runs/background/async-resume.ts +6 -2
- package/dist/extensions/pi-subagents/src/runs/background/async-status.ts +18 -2
- package/dist/extensions/pi-subagents/src/runs/background/notify.ts +54 -3
- package/dist/extensions/pi-subagents/src/runs/background/process-terminal.ts +16 -0
- package/dist/extensions/pi-subagents/src/runs/background/run-status.ts +22 -2
- package/dist/extensions/pi-subagents/src/runs/background/scheduled-runs.ts +63 -6
- package/dist/extensions/pi-subagents/src/runs/background/steering.ts +4 -1
- package/dist/extensions/pi-subagents/src/runs/background/subagent-runner.ts +69 -12
- package/dist/extensions/pi-subagents/src/runs/background/wait-completions.ts +13 -0
- package/dist/extensions/pi-subagents/src/runs/background/wait-tool.ts +3 -1
- package/dist/extensions/pi-subagents/src/runs/foreground/execution.ts +21 -8
- package/dist/extensions/pi-subagents/src/runs/foreground/subagent-executor.ts +59 -6
- package/dist/extensions/pi-subagents/src/runs/shared/acceptance.ts +95 -18
- package/dist/extensions/pi-subagents/src/runs/shared/async-status-projection.ts +11 -43
- package/dist/extensions/pi-subagents/src/runs/shared/capability-ceiling.ts +1 -0
- package/dist/extensions/pi-subagents/src/runs/shared/dynamic-fanout.ts +1 -1
- package/dist/extensions/pi-subagents/src/runs/shared/lane-metadata.ts +24 -3
- package/dist/extensions/pi-subagents/src/runs/shared/parallel-handoff.ts +4 -0
- package/dist/extensions/pi-subagents/src/runs/shared/parallel-utils.ts +2 -6
- package/dist/extensions/pi-subagents/src/runs/shared/permissions.ts +1 -0
- package/dist/extensions/pi-subagents/src/runs/shared/pi-args.ts +33 -18
- package/dist/extensions/pi-subagents/src/runs/shared/pi-spawn.ts +73 -37
- package/dist/extensions/pi-subagents/src/runs/shared/structured-output.ts +33 -6
- package/dist/extensions/pi-subagents/src/runs/shared/subagent-control.ts +4 -2
- package/dist/extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.ts +20 -3
- package/dist/extensions/pi-subagents/src/runs/shared/task-intent.ts +21 -7
- package/dist/extensions/pi-subagents/src/runs/shared/tool-timeout.ts +1 -1
- package/dist/extensions/pi-subagents/src/runs/shared/worktree.ts +467 -63
- package/dist/extensions/pi-subagents/src/shared/atomic-json.ts +3 -1
- package/dist/extensions/pi-subagents/src/shared/fork-context.ts +0 -12
- package/dist/extensions/pi-subagents/src/shared/fork-session-cwd.ts +27 -0
- package/dist/extensions/pi-subagents/src/shared/launch-contract.ts +3 -0
- package/dist/extensions/pi-subagents/src/shared/types.ts +42 -4
- package/dist/extensions/pi-subagents/src/shared/utils.ts +18 -7
- package/dist/extensions/pi-subagents/src/slash/slash-commands.ts +1 -1
- package/dist/extensions/pi-subagents/src/slash/subagents-admin.ts +26 -12
- package/dist/extensions/pi-subagents/src/tui/fleet-status.ts +61 -2
- package/dist/extensions/pi-subagents/src/tui/fleet.ts +12 -7
- package/dist/extensions/pi-subagents/src/tui/render.ts +227 -14
- package/dist/extensions/pi-subagents/src/watchdog/child-status.ts +56 -34
- package/dist/extensions/pi-subagents/src/watchdog/diff-tool.ts +77 -0
- package/dist/extensions/pi-subagents/src/watchdog/emission-guard.ts +5 -3
- package/dist/extensions/pi-subagents/src/watchdog/guidance.ts +20 -0
- package/dist/extensions/pi-subagents/src/watchdog/register-child.ts +16 -13
- package/dist/extensions/pi-subagents/src/watchdog/register-main.ts +10 -9
- package/dist/extensions/pi-subagents/src/watchdog/render.ts +4 -5
- package/dist/extensions/pi-subagents/src/watchdog/review.ts +15 -4
- package/dist/extensions/pi-subagents/src/watchdog/rules.ts +70 -0
- package/dist/extensions/pi-subagents/src/watchdog/runtime.ts +75 -92
- package/dist/extensions/pi-subagents/src/watchdog/scope.ts +2 -1
- package/dist/extensions/pi-subagents/src/watchdog/settings.ts +48 -104
- package/dist/extensions/pi-subagents/src/watchdog/types.ts +18 -32
- package/dist/extensions/pi-subagents/src/watchdog/warning-format.ts +0 -1
- package/dist/extensions/pi-subagents/src/workflows/chat-progress.ts +3 -2
- package/dist/extensions/pi-subagents/src/workflows/workflow-checklist.ts +439 -0
- package/dist/extensions/pi-subagents/src/workflows/workflow-preflight.ts +28 -1
- package/dist/extensions/pi-subagents/test/integration/async-execution.test.ts +335 -21
- package/dist/extensions/pi-subagents/test/integration/async-job-tracker.test.ts +4 -1
- package/dist/extensions/pi-subagents/test/integration/async-status.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/integration/fork-context-execution.test.ts +22 -18
- package/dist/extensions/pi-subagents/test/integration/intercom-result-delivery.test.ts +0 -1
- package/dist/extensions/pi-subagents/test/integration/render-widget.test.ts +21 -18
- package/dist/extensions/pi-subagents/test/integration/single-execution.test.ts +307 -22
- package/dist/extensions/pi-subagents/test/integration/slash-commands.test.ts +1 -0
- package/dist/extensions/pi-subagents/test/support/helpers.ts +25 -0
- package/dist/extensions/pi-subagents/test/support/isolated-temp-root.mjs +15 -4
- package/dist/extensions/pi-subagents/test/support/mock-pi-script.mjs +17 -2
- package/dist/extensions/pi-subagents/test/unit/acceptance.test.ts +96 -15
- package/dist/extensions/pi-subagents/test/unit/active-async-capacity.test.ts +53 -5
- package/dist/extensions/pi-subagents/test/unit/agent-frontmatter.test.ts +20 -0
- package/dist/extensions/pi-subagents/test/unit/agent-management.test.ts +221 -8
- package/dist/extensions/pi-subagents/test/unit/agent-overrides.test.ts +45 -24
- package/dist/extensions/pi-subagents/test/unit/agent-scan-dirs.test.ts +133 -0
- package/dist/extensions/pi-subagents/test/unit/async-execution.test.ts +28 -2
- package/dist/extensions/pi-subagents/test/unit/async-interrupt-action.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/async-resume.test.ts +2 -0
- package/dist/extensions/pi-subagents/test/unit/async-retention.test.ts +4 -1
- package/dist/extensions/pi-subagents/test/unit/async-status-projection.test.ts +18 -4
- package/dist/extensions/pi-subagents/test/unit/atomic-json.test.ts +16 -0
- package/dist/extensions/pi-subagents/test/unit/completion-guard.test.ts +38 -0
- package/dist/extensions/pi-subagents/test/unit/default-extensions.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/fleet-status.test.ts +21 -0
- package/dist/extensions/pi-subagents/test/unit/fleet.test.ts +19 -6
- package/dist/extensions/pi-subagents/test/unit/get-final-output.test.ts +26 -0
- package/dist/extensions/pi-subagents/test/unit/herdr-inspector.test.ts +22 -1
- package/dist/extensions/pi-subagents/test/unit/index-child-registration.test.ts +2 -6
- package/dist/extensions/pi-subagents/test/unit/notify.test.ts +66 -1
- package/dist/extensions/pi-subagents/test/unit/pi-args-permission-system.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/pi-args.test.ts +116 -10
- package/dist/extensions/pi-subagents/test/unit/pi-spawn.test.ts +136 -18
- package/dist/extensions/pi-subagents/test/unit/preflight.test.ts +20 -0
- package/dist/extensions/pi-subagents/test/unit/process-terminal.test.ts +22 -0
- package/dist/extensions/pi-subagents/test/unit/profiles.test.ts +1 -0
- package/dist/extensions/pi-subagents/test/unit/project-panes-public-api.test.ts +8 -0
- package/dist/extensions/pi-subagents/test/unit/render-helpers.test.ts +127 -48
- package/dist/extensions/pi-subagents/test/unit/run-status.test.ts +68 -0
- package/dist/extensions/pi-subagents/test/unit/runtime-agent-registration.test.ts +17 -0
- package/dist/extensions/pi-subagents/test/unit/scheduled-runs.test.ts +88 -0
- package/dist/extensions/pi-subagents/test/unit/schemas.test.ts +4 -2
- package/dist/extensions/pi-subagents/test/unit/scripted-workflow.test.ts +9 -9
- package/dist/extensions/pi-subagents/test/unit/steering-action.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/steering.test.ts +9 -3
- package/dist/extensions/pi-subagents/test/unit/subagent-control.test.ts +22 -9
- package/dist/extensions/pi-subagents/test/unit/subagent-prompt-runtime.test.ts +91 -8
- package/dist/extensions/pi-subagents/test/unit/task-intent.test.ts +27 -0
- package/dist/extensions/pi-subagents/test/unit/temp-paths.test.ts +50 -0
- package/dist/extensions/pi-subagents/test/unit/tool-description.test.ts +0 -1
- package/dist/extensions/pi-subagents/test/unit/tool-timeout.test.ts +2 -2
- package/dist/extensions/pi-subagents/test/unit/wait-completions.test.ts +34 -0
- package/dist/extensions/pi-subagents/test/unit/wait-subscriptions.test.ts +1 -2
- package/dist/extensions/pi-subagents/test/unit/watchdog-child-status.test.ts +73 -13
- package/dist/extensions/pi-subagents/test/unit/watchdog-diff-tool.test.ts +79 -0
- package/dist/extensions/pi-subagents/test/unit/watchdog-permission-arbiter.test.ts +2 -4
- package/dist/extensions/pi-subagents/test/unit/watchdog-render.test.ts +7 -8
- package/dist/extensions/pi-subagents/test/unit/watchdog-review.test.ts +48 -3
- package/dist/extensions/pi-subagents/test/unit/watchdog-rules.test.ts +37 -0
- package/dist/extensions/pi-subagents/test/unit/watchdog-runtime.test.ts +36 -118
- package/dist/extensions/pi-subagents/test/unit/watchdog-scope.test.ts +1 -1
- package/dist/extensions/pi-subagents/test/unit/watchdog-settings.test.ts +37 -14
- package/dist/extensions/pi-subagents/test/unit/workflow-chat-progress.test.ts +45 -26
- package/dist/extensions/pi-subagents/test/unit/workflow-checklist.test.ts +223 -0
- package/dist/extensions/pi-subagents/test/unit/workflow-launch-params.test.ts +50 -1
- package/dist/extensions/pi-subagents/test/unit/workflow-preflight.test.ts +22 -0
- package/dist/extensions/pi-subagents/test/unit/worktree.test.ts +136 -4
- package/dist/extensions/pi-zentui/README.md +19 -5
- package/dist/extensions/pi-zentui/docs/configuration.md +37 -9
- package/dist/extensions/pi-zentui/extensions/zentui/config.ts +29 -0
- package/dist/extensions/pi-zentui/extensions/zentui/index.ts +31 -2
- package/dist/extensions/pi-zentui/extensions/zentui/prototype-patch-registry.ts +55 -11
- package/dist/extensions/pi-zentui/extensions/zentui/settings-command.ts +115 -3
- package/dist/extensions/pi-zentui/extensions/zentui/settings-previews.ts +119 -2
- package/dist/extensions/pi-zentui/extensions/zentui/thinking-experimental.ts +1768 -0
- package/dist/extensions/pi-zentui/extensions/zentui/thinking-status.ts +69 -0
- package/dist/extensions/pi-zentui/extensions/zentui/thinking-steps.ts +155 -0
- package/dist/extensions/pi-zentui/extensions/zentui/ui.ts +2 -1
- package/dist/extensions/pi-zentui/extensions/zentui/user-message-osc.ts +16 -2
- package/dist/extensions/pi-zentui/extensions/zentui/user-message-styles.ts +1 -1
- package/dist/extensions/pi-zentui/test/config-load-lifecycle.test.ts +124 -0
- package/dist/extensions/pi-zentui/test/config.test.ts +82 -2
- package/dist/extensions/pi-zentui/test/editor-viewport-indicators.test.ts +19 -4
- package/dist/extensions/pi-zentui/test/extension-compliance.test.ts +58 -9
- package/dist/extensions/pi-zentui/test/package-contents.mjs +33 -0
- package/dist/extensions/pi-zentui/test/prototype-patch-registry.test.ts +131 -0
- package/dist/extensions/pi-zentui/test/responsive-dependencies.test.ts +4 -4
- package/dist/extensions/pi-zentui/test/settings-command.test.ts +289 -7
- package/dist/extensions/pi-zentui/test/settings-previews.test.ts +106 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental-docs.test.ts +51 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental-loader-diagnostics.mjs +54 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental-missing-export.test.ts +44 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental-rows.test.ts +297 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental-tui.mjs +2329 -0
- package/dist/extensions/pi-zentui/test/thinking-experimental.test.ts +1668 -0
- package/dist/extensions/pi-zentui/test/thinking-status.test.ts +85 -0
- package/dist/extensions/pi-zentui/test/thinking-steps.test.ts +122 -0
- package/dist/extensions/pi-zentui/test/user-message-osc.test.ts +58 -0
- package/dist/skills/brandkit/SKILL.md +0 -2
- package/dist/skills/{industrial-brutalist-ui → brutalist}/SKILL.md +1 -3
- package/dist/skills/gpt-taste/SKILL.md +0 -2
- package/dist/skills/image-to-code/SKILL.md +0 -2
- package/dist/skills/imagegen-frontend-mobile/SKILL.md +0 -2
- package/dist/skills/imagegen-frontend-web/SKILL.md +0 -2
- package/dist/skills/{minimalist-ui → minimalist}/SKILL.md +1 -3
- package/dist/skills/{full-output-enforcement → output}/SKILL.md +1 -3
- package/dist/skills/{redesign-existing-projects → redesign}/SKILL.md +1 -3
- package/dist/skills/{high-end-visual-design → soft}/SKILL.md +1 -3
- package/dist/skills/stitch/DESIGN.md +121 -0
- package/dist/skills/{stitch-design-taste → stitch}/SKILL.md +1 -3
- package/dist/skills/{design-taste-frontend → taste}/SKILL.md +1 -3
- package/dist/skills/{design-taste-frontend-v1 → taste-v1}/SKILL.md +2 -4
- package/package.json +1 -1
|
@@ -1,17 +1,62 @@
|
|
|
1
1
|
import type { Theme } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import { truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
|
|
2
|
+
import { Markdown, truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
|
|
3
3
|
import { renderAccentRailEditorFrame } from "./accent-rail-editor";
|
|
4
4
|
import type { PolishedTuiConfig } from "./config";
|
|
5
5
|
import { sanitizeEditorMetadataText } from "./editor-metadata-format";
|
|
6
6
|
import { renderMinimalistFrame } from "./minimalist-editor";
|
|
7
7
|
import { safeThemeFg } from "./style";
|
|
8
|
+
import { createThinkingStepsRows } from "./thinking-experimental";
|
|
9
|
+
import { formatThinkingStatus, thinkingStatusLabels } from "./thinking-status";
|
|
10
|
+
import { parseThinkingSteps } from "./thinking-steps";
|
|
8
11
|
import { renderPolishedEditorFrame } from "./ui";
|
|
9
|
-
import { renderUserMessageStyle } from "./user-message-styles";
|
|
12
|
+
import { makeMarkdownTheme, renderUserMessageStyle } from "./user-message-styles";
|
|
10
13
|
|
|
11
14
|
export const SETTINGS_PREVIEW_MAX_WIDTH = 72;
|
|
12
15
|
export const SETTINGS_PREVIEW_MAX_ROWS = 10;
|
|
13
16
|
export const EDITOR_PREVIEW_INPUT = "Explain this change safely.";
|
|
14
17
|
export const USER_MESSAGE_PREVIEW_MARKDOWN = "Please review **this change** safely.";
|
|
18
|
+
export const THINKING_STEPS_PREVIEW_MARKDOWN = [
|
|
19
|
+
"# Inspect the change",
|
|
20
|
+
"# Map the affected surface",
|
|
21
|
+
"# Parse structural labels",
|
|
22
|
+
"# Check narrow widths",
|
|
23
|
+
"# Preserve [literal] labels",
|
|
24
|
+
"# Validate rendered output",
|
|
25
|
+
"# Verify compatibility",
|
|
26
|
+
].join("\n");
|
|
27
|
+
type ThinkingPreviewState = Readonly<{
|
|
28
|
+
available: boolean;
|
|
29
|
+
rendererAvailable?: boolean;
|
|
30
|
+
streamingAvailable?: boolean;
|
|
31
|
+
streamingPoisoned?: boolean;
|
|
32
|
+
active: boolean;
|
|
33
|
+
activeMode?: "rail" | "tree" | "streaming";
|
|
34
|
+
startup: Readonly<{ enabled: boolean; mode: "rail" | "tree" | "streaming" }>;
|
|
35
|
+
restartRequired: boolean;
|
|
36
|
+
reason?: string;
|
|
37
|
+
}>;
|
|
38
|
+
|
|
39
|
+
type ThinkingPreviewCapability =
|
|
40
|
+
| boolean
|
|
41
|
+
| Readonly<{ available: boolean }>
|
|
42
|
+
| Readonly<{ readonly state: ThinkingPreviewState }>;
|
|
43
|
+
|
|
44
|
+
function wrapPreviewText(text: string, width: number): string[] {
|
|
45
|
+
if (width <= 0) return [];
|
|
46
|
+
const rows: string[] = [];
|
|
47
|
+
for (const fact of text.split(" · ")) {
|
|
48
|
+
const candidate = rows.length > 0 ? `${rows.at(-1)} · ${fact}` : fact;
|
|
49
|
+
if (visibleWidth(candidate) <= width) {
|
|
50
|
+
if (rows.length > 0) rows[rows.length - 1] = candidate;
|
|
51
|
+
else rows.push(candidate);
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
if (rows.length === 0 || rows.at(-1) !== fact) rows.push(fact);
|
|
55
|
+
}
|
|
56
|
+
return rows.flatMap((row) =>
|
|
57
|
+
visibleWidth(row) <= width ? [row] : [truncateToWidth(row, width, "")],
|
|
58
|
+
);
|
|
59
|
+
}
|
|
15
60
|
|
|
16
61
|
function boundedRows(rows: string[], width: number): string[] {
|
|
17
62
|
const safeWidth = Math.max(0, Math.min(SETTINGS_PREVIEW_MAX_WIDTH, width));
|
|
@@ -126,3 +171,75 @@ export function renderUserMessageSettingsPreview(
|
|
|
126
171
|
const frame = renderUserMessageStyle({ text, width: previewWidth, theme, config: safeConfig });
|
|
127
172
|
return boundedRows(frame, previewWidth);
|
|
128
173
|
}
|
|
174
|
+
|
|
175
|
+
export function renderThinkingStepsSettingsPreview(
|
|
176
|
+
config: PolishedTuiConfig,
|
|
177
|
+
theme: Theme,
|
|
178
|
+
width: number,
|
|
179
|
+
capability: ThinkingPreviewCapability = true,
|
|
180
|
+
): string[] {
|
|
181
|
+
const previewWidth = Math.max(0, Math.min(SETTINGS_PREVIEW_MAX_WIDTH, width));
|
|
182
|
+
if (previewWidth <= 0) return [];
|
|
183
|
+
const thinkingSteps = config.components.thinkingSteps;
|
|
184
|
+
const state: ThinkingPreviewState =
|
|
185
|
+
typeof capability === "boolean"
|
|
186
|
+
? {
|
|
187
|
+
available: capability,
|
|
188
|
+
active: false,
|
|
189
|
+
startup: { enabled: false, mode: "tree" },
|
|
190
|
+
restartRequired: capability,
|
|
191
|
+
}
|
|
192
|
+
: "state" in capability
|
|
193
|
+
? capability.state
|
|
194
|
+
: {
|
|
195
|
+
available: capability.available,
|
|
196
|
+
active: false,
|
|
197
|
+
startup: { enabled: false, mode: "tree" },
|
|
198
|
+
restartRequired: false,
|
|
199
|
+
};
|
|
200
|
+
const status = formatThinkingStatus(thinkingStatusLabels(thinkingSteps, state));
|
|
201
|
+
const statusRows = wrapPreviewText(status, previewWidth).map((row) =>
|
|
202
|
+
safeThemeFg(theme, "muted", row),
|
|
203
|
+
);
|
|
204
|
+
if (thinkingSteps.mode === "streaming") {
|
|
205
|
+
return boundedRows(
|
|
206
|
+
[
|
|
207
|
+
...statusRows,
|
|
208
|
+
safeThemeFg(theme, "thinkingText", "Thinking 7.1s (configured thinking toggle to expand)"),
|
|
209
|
+
safeThemeFg(theme, "thinkingText", "Inspect the host-rendered reasoning tail."),
|
|
210
|
+
safeThemeFg(theme, "thinkingText", "Preserve native Markdown and wrapping."),
|
|
211
|
+
],
|
|
212
|
+
previewWidth,
|
|
213
|
+
);
|
|
214
|
+
}
|
|
215
|
+
const markdownTheme = makeMarkdownTheme(theme);
|
|
216
|
+
const defaultTextStyle = {
|
|
217
|
+
color: (text: string) => theme.fg("thinkingText", text),
|
|
218
|
+
italic: true,
|
|
219
|
+
};
|
|
220
|
+
const native = new Markdown(
|
|
221
|
+
THINKING_STEPS_PREVIEW_MARKDOWN,
|
|
222
|
+
0,
|
|
223
|
+
0,
|
|
224
|
+
markdownTheme,
|
|
225
|
+
defaultTextStyle,
|
|
226
|
+
);
|
|
227
|
+
const steps = parseThinkingSteps(THINKING_STEPS_PREVIEW_MARKDOWN);
|
|
228
|
+
const rows = steps
|
|
229
|
+
? createThinkingStepsRows(
|
|
230
|
+
native,
|
|
231
|
+
{
|
|
232
|
+
text: THINKING_STEPS_PREVIEW_MARKDOWN,
|
|
233
|
+
paddingX: 0,
|
|
234
|
+
paddingY: 0,
|
|
235
|
+
theme: markdownTheme,
|
|
236
|
+
defaultTextStyle,
|
|
237
|
+
},
|
|
238
|
+
steps,
|
|
239
|
+
thinkingSteps.mode,
|
|
240
|
+
true,
|
|
241
|
+
() => theme,
|
|
242
|
+
).render(previewWidth)
|
|
243
|
+
: native.render(previewWidth);
|
|
244
|
+
return boundedRows([...statusRows, ...rows], previewWidth);
|
|
245
|
+
}
|