@pentoshi/clai 4.8.4 → 4.9.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/README.md +69 -3
- package/dist/agent/finalize-gate.js +0 -9
- package/dist/agent/finalize-gate.js.map +1 -1
- package/dist/agent/plan-mode-reminders.js +5 -5
- package/dist/agent/plan-mode-reminders.js.map +1 -1
- package/dist/agent/plan-tool.d.ts +1 -0
- package/dist/agent/plan-tool.js +50 -21
- package/dist/agent/plan-tool.js.map +1 -1
- package/dist/agent/reliability-policy.d.ts +9 -0
- package/dist/agent/reliability-policy.js +36 -1
- package/dist/agent/reliability-policy.js.map +1 -1
- package/dist/agent/runner.d.ts +4 -0
- package/dist/agent/runner.js +193 -116
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/task-analyzer.d.ts +8 -18
- package/dist/agent/task-analyzer.js +75 -182
- package/dist/agent/task-analyzer.js.map +1 -1
- package/dist/agent/task-evidence.js +10 -0
- package/dist/agent/task-evidence.js.map +1 -1
- package/dist/agent/tool-call-parser.js +14 -13
- package/dist/agent/tool-call-parser.js.map +1 -1
- package/dist/app/adapters/current-agent-adapter.d.ts +5 -1
- package/dist/app/adapters/current-agent-adapter.js +2 -1
- package/dist/app/adapters/current-agent-adapter.js.map +1 -1
- package/dist/app/commands/catalog.js +5 -0
- package/dist/app/commands/catalog.js.map +1 -1
- package/dist/app/controllers/session-compact-helper.js +3 -6
- package/dist/app/controllers/session-compact-helper.js.map +1 -1
- package/dist/app/ports/transcript-item.d.ts +4 -0
- package/dist/classic/app/ClassicApp.js +1 -1
- package/dist/classic/app/ClassicApp.js.map +1 -1
- package/dist/classic/app/action-handlers.js +4 -0
- package/dist/classic/app/action-handlers.js.map +1 -1
- package/dist/classic/app/app-wiring.js +1 -0
- package/dist/classic/app/app-wiring.js.map +1 -1
- package/dist/classic/app/wiring-lifecycle.js +1 -0
- package/dist/classic/app/wiring-lifecycle.js.map +1 -1
- package/dist/classic/blocks/compacted-lines.js +3 -0
- package/dist/classic/blocks/compacted-lines.js.map +1 -1
- package/dist/classic/blocks/thinking-lines.js +11 -2
- package/dist/classic/blocks/thinking-lines.js.map +1 -1
- package/dist/classic/bootstrap/start-classic.js +3 -0
- package/dist/classic/bootstrap/start-classic.js.map +1 -1
- package/dist/classic/chrome/Composer.d.ts +6 -0
- package/dist/classic/chrome/Composer.js +2 -3
- package/dist/classic/chrome/Composer.js.map +1 -1
- package/dist/classic/chrome/composer-controller.d.ts +6 -1
- package/dist/classic/chrome/composer-controller.js +18 -8
- package/dist/classic/chrome/composer-controller.js.map +1 -1
- package/dist/classic/chrome/editor-view.d.ts +2 -1
- package/dist/classic/chrome/editor-view.js +1 -1
- package/dist/classic/chrome/editor-view.js.map +1 -1
- package/dist/classic/chrome/status-rows.js +3 -2
- package/dist/classic/chrome/status-rows.js.map +1 -1
- package/dist/classic/panels/TextEditorPanel.d.ts +3 -0
- package/dist/classic/panels/TextEditorPanel.js +7 -0
- package/dist/classic/panels/TextEditorPanel.js.map +1 -0
- package/dist/classic/panels/panel-controller.js +28 -1
- package/dist/classic/panels/panel-controller.js.map +1 -1
- package/dist/classic/panels/panel-effect.d.ts +3 -0
- package/dist/classic/panels/panel-effect.js.map +1 -1
- package/dist/classic/panels/panel-effects.js +3 -0
- package/dist/classic/panels/panel-effects.js.map +1 -1
- package/dist/classic/panels/panel-host.js +3 -0
- package/dist/classic/panels/panel-host.js.map +1 -1
- package/dist/classic/panels/panel-types.d.ts +2 -0
- package/dist/classic/panels/secret-panel.d.ts +1 -1
- package/dist/classic/panels/secret-panel.js +4 -2
- package/dist/classic/panels/secret-panel.js.map +1 -1
- package/dist/classic/panels/text-editor-panel.d.ts +33 -0
- package/dist/classic/panels/text-editor-panel.js +101 -0
- package/dist/classic/panels/text-editor-panel.js.map +1 -0
- package/dist/llm/adapters/anthropic-tools.d.ts +2 -1
- package/dist/llm/adapters/anthropic-tools.js +55 -4
- package/dist/llm/adapters/anthropic-tools.js.map +1 -1
- package/dist/llm/anthropic.js +1 -1
- package/dist/llm/anthropic.js.map +1 -1
- package/dist/llm/aws-mantle.js +2 -0
- package/dist/llm/aws-mantle.js.map +1 -1
- package/dist/llm/meta.js +62 -68
- package/dist/llm/meta.js.map +1 -1
- package/dist/llm/provider.js +7 -7
- package/dist/llm/request-plan.js +7 -2
- package/dist/llm/request-plan.js.map +1 -1
- package/dist/llm/tool-protocol.d.ts +1 -0
- package/dist/llm/tool-protocol.js +7 -0
- package/dist/llm/tool-protocol.js.map +1 -1
- package/dist/mcp/client.d.ts +27 -0
- package/dist/mcp/client.js +119 -0
- package/dist/mcp/client.js.map +1 -0
- package/dist/mcp/config-file.d.ts +35 -0
- package/dist/mcp/config-file.js +217 -0
- package/dist/mcp/config-file.js.map +1 -0
- package/dist/mcp/discovery.d.ts +4 -0
- package/dist/mcp/discovery.js +409 -0
- package/dist/mcp/discovery.js.map +1 -0
- package/dist/mcp/format.d.ts +17 -0
- package/dist/mcp/format.js +122 -0
- package/dist/mcp/format.js.map +1 -0
- package/dist/mcp/index.d.ts +15 -0
- package/dist/mcp/index.js +16 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/jsonrpc.d.ts +40 -0
- package/dist/mcp/jsonrpc.js +175 -0
- package/dist/mcp/jsonrpc.js.map +1 -0
- package/dist/mcp/manager.d.ts +36 -0
- package/dist/mcp/manager.js +300 -0
- package/dist/mcp/manager.js.map +1 -0
- package/dist/mcp/mentions.d.ts +9 -0
- package/dist/mcp/mentions.js +44 -0
- package/dist/mcp/mentions.js.map +1 -0
- package/dist/mcp/names.d.ts +15 -0
- package/dist/mcp/names.js +59 -0
- package/dist/mcp/names.js.map +1 -0
- package/dist/mcp/results.d.ts +6 -0
- package/dist/mcp/results.js +182 -0
- package/dist/mcp/results.js.map +1 -0
- package/dist/mcp/runtime.d.ts +107 -0
- package/dist/mcp/runtime.js +505 -0
- package/dist/mcp/runtime.js.map +1 -0
- package/dist/mcp/substitution.d.ts +13 -0
- package/dist/mcp/substitution.js +74 -0
- package/dist/mcp/substitution.js.map +1 -0
- package/dist/mcp/transport-http.d.ts +53 -0
- package/dist/mcp/transport-http.js +433 -0
- package/dist/mcp/transport-http.js.map +1 -0
- package/dist/mcp/transport-stdio.d.ts +39 -0
- package/dist/mcp/transport-stdio.js +268 -0
- package/dist/mcp/transport-stdio.js.map +1 -0
- package/dist/mcp/transport.d.ts +20 -0
- package/dist/mcp/transport.js +44 -0
- package/dist/mcp/transport.js.map +1 -0
- package/dist/mcp/types.d.ts +179 -0
- package/dist/mcp/types.js +30 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/mcp/validation.d.ts +16 -0
- package/dist/mcp/validation.js +222 -0
- package/dist/mcp/validation.js.map +1 -0
- package/dist/modes/agent.d.ts +2 -0
- package/dist/modes/agent.js.map +1 -1
- package/dist/noninteractive/start-noninteractive.js +4 -0
- package/dist/noninteractive/start-noninteractive.js.map +1 -1
- package/dist/prompts/embedded.js +2 -2
- package/dist/prompts/embedded.js.map +1 -1
- package/dist/prompts/index.d.ts +3 -0
- package/dist/prompts/index.js +70 -55
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/system.agent.md +34 -10
- package/dist/prompts/system.ask.md +8 -0
- package/dist/safety/classifier.js +4 -0
- package/dist/safety/classifier.js.map +1 -1
- package/dist/store/logs.js +17 -6
- package/dist/store/logs.js.map +1 -1
- package/dist/store/plan.d.ts +2 -0
- package/dist/store/plan.js.map +1 -1
- package/dist/store/session-workspace.js +2 -1
- package/dist/store/session-workspace.js.map +1 -1
- package/dist/tools/definitions.js +18 -0
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/external-tools.d.ts +30 -0
- package/dist/tools/external-tools.js +52 -0
- package/dist/tools/external-tools.js.map +1 -0
- package/dist/tools/registry.js +36 -5
- package/dist/tools/registry.js.map +1 -1
- package/dist/tui-v2/bootstrap/start-tui-v2.js +3 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
- package/dist/tui-v2/components/completion/completion-menu.d.ts +4 -6
- package/dist/tui-v2/components/completion/completion-menu.js +34 -16
- package/dist/tui-v2/components/completion/completion-menu.js.map +1 -1
- package/dist/tui-v2/components/composer/composer-input-box.js +3 -1
- package/dist/tui-v2/components/composer/composer-input-box.js.map +1 -1
- package/dist/tui-v2/components/modal/secret-modal.js +6 -4
- package/dist/tui-v2/components/modal/secret-modal.js.map +1 -1
- package/dist/tui-v2/components/modal/text-editor-modal.d.ts +19 -0
- package/dist/tui-v2/components/modal/text-editor-modal.js +85 -0
- package/dist/tui-v2/components/modal/text-editor-modal.js.map +1 -0
- package/dist/tui-v2/components/overlay/overlay-host.js +2 -1
- package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js +12 -3
- package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/thinking-block.d.ts +9 -1
- package/dist/tui-v2/components/transcript/thinking-block.js +253 -49
- package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
- package/dist/tui-v2/components/transcript/thinking-presentation.d.ts +46 -0
- package/dist/tui-v2/components/transcript/thinking-presentation.js +84 -0
- package/dist/tui-v2/components/transcript/thinking-presentation.js.map +1 -0
- package/dist/tui-v2/components/transcript/transcript-row.d.ts +2 -0
- package/dist/tui-v2/components/transcript/transcript-row.js +7 -2
- package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-view.js +195 -83
- package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
- package/dist/tui-v2/composer/composer-editor.js +54 -39
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/composer/composer-highlight.d.ts +20 -0
- package/dist/tui-v2/composer/composer-highlight.js +97 -0
- package/dist/tui-v2/composer/composer-highlight.js.map +1 -0
- package/dist/tui-v2/composer/textarea-keybindings.d.ts +5 -0
- package/dist/tui-v2/composer/textarea-keybindings.js +12 -0
- package/dist/tui-v2/composer/textarea-keybindings.js.map +1 -1
- package/dist/ui/mentions.js +4 -1
- package/dist/ui/mentions.js.map +1 -1
- package/dist/ui-core/actions/action-id.d.ts +1 -1
- package/dist/ui-core/actions/action-id.js +1 -0
- package/dist/ui-core/actions/action-id.js.map +1 -1
- package/dist/ui-core/actions/format-shortcuts.js +5 -0
- package/dist/ui-core/actions/format-shortcuts.js.map +1 -1
- package/dist/ui-core/actions/keymap.js +3 -0
- package/dist/ui-core/actions/keymap.js.map +1 -1
- package/dist/ui-core/bootstrap/composition-root.d.ts +3 -0
- package/dist/ui-core/bootstrap/composition-root.js +5 -1
- package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
- package/dist/ui-core/commands/command-handlers.js +2 -0
- package/dist/ui-core/commands/command-handlers.js.map +1 -1
- package/dist/ui-core/commands/mcp-commands.d.ts +3 -0
- package/dist/ui-core/commands/mcp-commands.js +310 -0
- package/dist/ui-core/commands/mcp-commands.js.map +1 -0
- package/dist/ui-core/commands/picker-commands.d.ts +1 -1
- package/dist/ui-core/commands/picker-commands.js +2 -2
- package/dist/ui-core/commands/picker-commands.js.map +1 -1
- package/dist/ui-core/commands/session-commands.js +1 -0
- package/dist/ui-core/commands/session-commands.js.map +1 -1
- package/dist/ui-core/composer/completion-viewport.d.ts +40 -0
- package/dist/ui-core/composer/completion-viewport.js +105 -0
- package/dist/ui-core/composer/completion-viewport.js.map +1 -0
- package/dist/ui-core/controllers/overlay-controller.d.ts +24 -3
- package/dist/ui-core/controllers/overlay-controller.js +35 -4
- package/dist/ui-core/controllers/overlay-controller.js.map +1 -1
- package/dist/ui-core/rendering/artifact-pager-source.d.ts +1 -0
- package/dist/ui-core/rendering/artifact-pager-source.js +67 -1
- package/dist/ui-core/rendering/artifact-pager-source.js.map +1 -1
- package/dist/ui-core/rendering/duration.d.ts +3 -1
- package/dist/ui-core/rendering/duration.js +14 -0
- package/dist/ui-core/rendering/duration.js.map +1 -1
- package/dist/ui-core/rendering/exit-summary.js +4 -4
- package/dist/ui-core/rendering/format-help.js +4 -0
- package/dist/ui-core/rendering/format-help.js.map +1 -1
- package/dist/ui-core/rendering/intro-header.js +4 -4
- package/dist/ui-core/rendering/open-tool-output.js +90 -32
- package/dist/ui-core/rendering/open-tool-output.js.map +1 -1
- package/dist/ui-core/rendering/theme.d.ts +5 -3
- package/dist/ui-core/rendering/theme.js +8 -4
- package/dist/ui-core/rendering/theme.js.map +1 -1
- package/dist/ui-core/rendering/wordmark.d.ts +2 -2
- package/dist/ui-core/rendering/wordmark.js +62 -62
- package/dist/ui-core/rendering/wordmark.js.map +1 -1
- package/dist/ui-core/state/thinking-copy.d.ts +13 -0
- package/dist/ui-core/state/thinking-copy.js +33 -0
- package/dist/ui-core/state/thinking-copy.js.map +1 -0
- package/dist/ui-core/state/transcript-hydrate.js +20 -0
- package/dist/ui-core/state/transcript-hydrate.js.map +1 -1
- package/dist/ui-core/state/transcript-reducer.js +140 -62
- package/dist/ui-core/state/transcript-reducer.js.map +1 -1
- package/dist/ui-core/state/transcript-store.d.ts +10 -0
- package/dist/ui-core/state/transcript-store.js +235 -31
- package/dist/ui-core/state/transcript-store.js.map +1 -1
- package/dist/ui-core/state/transcript-types.d.ts +10 -0
- package/dist/ui-core/state/transcript-types.js +1 -0
- package/dist/ui-core/state/transcript-types.js.map +1 -1
- package/dist/ui-core/state/transcript-window.d.ts +32 -0
- package/dist/ui-core/state/transcript-window.js +63 -0
- package/dist/ui-core/state/transcript-window.js.map +1 -0
- package/dist/version.generated.d.ts +2 -2
- package/dist/version.generated.js +2 -2
- package/package.json +1 -1
- package/dist/tui-v2/composer/skill-highlight.d.ts +0 -3
- package/dist/tui-v2/composer/skill-highlight.js +0 -63
- package/dist/tui-v2/composer/skill-highlight.js.map +0 -1
|
@@ -12,9 +12,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
|
|
|
12
12
|
import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState, } from "react";
|
|
13
13
|
import { useKeyboard, useRenderer, useTerminalDimensions } from "@opentui/react";
|
|
14
14
|
import { chordFromKeyEvent } from "../../input/chord-from-opentui-key.js";
|
|
15
|
+
import { wheelChatDelta } from "../../composer/composer-wheel.js";
|
|
15
16
|
import { useTranscriptState } from "../../../ui-core/react/use-transcript-store.js";
|
|
16
17
|
import { useSessionState } from "../../../ui-core/react/use-session-state.js";
|
|
17
18
|
import { isFileDiffExpanded, isItemExpanded, transcriptItems, } from "../../../ui-core/state/transcript-types.js";
|
|
19
|
+
import { DEFAULT_TRANSCRIPT_MOUNT_ROWS, resolveTranscriptMountWindow, resolveTranscriptScrollIntent, shiftTranscriptWindowStart, transcriptWindowStartForItem, shouldPinTranscriptBottom, } from "../../../ui-core/state/transcript-window.js";
|
|
20
|
+
import { copyFocusedThinking } from "../../../ui-core/state/thinking-copy.js";
|
|
18
21
|
import { findMatches, nextMatchIndex, prevMatchIndex, } from "../../../ui-core/state/transcript-search.js";
|
|
19
22
|
import { TranscriptRow } from "./transcript-row.js";
|
|
20
23
|
import { SearchBar } from "./search-bar.js";
|
|
@@ -33,7 +36,7 @@ function maxScrollTop(sb) {
|
|
|
33
36
|
const vh = sb.viewport?.height ?? 0;
|
|
34
37
|
return Math.max(0, sb.scrollHeight - vh);
|
|
35
38
|
}
|
|
36
|
-
function isNearBottom(sb, slack =
|
|
39
|
+
function isNearBottom(sb, slack = 0) {
|
|
37
40
|
const max = maxScrollTop(sb);
|
|
38
41
|
if (max <= 0)
|
|
39
42
|
return true;
|
|
@@ -98,21 +101,33 @@ export function TranscriptView(props) {
|
|
|
98
101
|
const { width: termWidth } = useTerminalDimensions();
|
|
99
102
|
const paneWidth = Math.max(20, contentWidth ?? termWidth - 6);
|
|
100
103
|
const introWidth = Math.max(40, paneWidth);
|
|
104
|
+
const [windowStart, setWindowStart] = useState(undefined);
|
|
105
|
+
const mountWindow = useMemo(() => resolveTranscriptMountWindow(items.length, windowStart, DEFAULT_TRANSCRIPT_MOUNT_ROWS), [items.length, windowStart]);
|
|
106
|
+
const mountedItems = useMemo(() => items.slice(mountWindow.start, mountWindow.end), [items, mountWindow.start, mountWindow.end]);
|
|
101
107
|
const internalScrollRef = useRef(null);
|
|
102
108
|
const scrollRef = (externalScrollRef ?? internalScrollRef);
|
|
103
109
|
const closeOverlay = useRef(undefined);
|
|
104
|
-
const
|
|
110
|
+
const lastTailId = useRef(items.at(-1)?.id);
|
|
105
111
|
/**
|
|
106
112
|
* Product-level follow flag (force re-pin). OpenTUI sticky scroll is the
|
|
107
113
|
* primary follower; this tracks intentional scroll-away.
|
|
108
114
|
*/
|
|
109
115
|
const followBottom = useRef(true);
|
|
116
|
+
/**
|
|
117
|
+
* Render mirror of `followBottom`. The ref is mutated synchronously by
|
|
118
|
+
* scroll handlers, but `stickyScroll` is read during render, so re-engaging
|
|
119
|
+
* follow (End / Ctrl+D) must also re-render or native sticky stays off and
|
|
120
|
+
* the viewport never settles at a growing bottom.
|
|
121
|
+
*/
|
|
122
|
+
const [followSticky, setFollowSticky] = useState(true);
|
|
110
123
|
const wasRunning = useRef(false);
|
|
111
124
|
const dragPointer = useRef(undefined);
|
|
112
125
|
const dragFrame = useRef(undefined);
|
|
113
126
|
const pointerGestureActive = useRef(false);
|
|
114
127
|
const copySemanticOnRelease = useRef(false);
|
|
115
128
|
const scrollSnapshot = useRef(undefined);
|
|
129
|
+
const windowShiftPending = useRef(false);
|
|
130
|
+
const pendingWindowJump = useRef(undefined);
|
|
116
131
|
const followKey = useTranscriptFollowKey(state, session.running);
|
|
117
132
|
const [searchOpen, setSearchOpen] = useState(false);
|
|
118
133
|
/** Sticky query kept after Enter so n/N + highlights work (pager model). */
|
|
@@ -185,7 +200,7 @@ export function TranscriptView(props) {
|
|
|
185
200
|
function updateTranscriptDrag(x, y) {
|
|
186
201
|
const pointer = { x, y };
|
|
187
202
|
selection.onMouseDrag(pointer);
|
|
188
|
-
|
|
203
|
+
setFollowing(false);
|
|
189
204
|
const sb = scrollRef.current;
|
|
190
205
|
if (!sb)
|
|
191
206
|
return;
|
|
@@ -248,11 +263,14 @@ export function TranscriptView(props) {
|
|
|
248
263
|
if (event.defaultPrevented)
|
|
249
264
|
return;
|
|
250
265
|
stopDragRefresh();
|
|
266
|
+
// A press anywhere outside a thinking card releases its wheel focus.
|
|
267
|
+
// Presses inside a card body arrive defaultPrevented and return above.
|
|
268
|
+
services.transcript.blurThinking();
|
|
251
269
|
pointerGestureActive.current = true;
|
|
252
270
|
copySemanticOnRelease.current = false;
|
|
253
271
|
selection.onMouseDown(event);
|
|
254
272
|
services.focus.focusRegion("transcript");
|
|
255
|
-
|
|
273
|
+
setFollowing(false);
|
|
256
274
|
}
|
|
257
275
|
function onTranscriptMouseDrag(event) {
|
|
258
276
|
updateTranscriptDrag(event.x, event.y);
|
|
@@ -272,13 +290,21 @@ export function TranscriptView(props) {
|
|
|
272
290
|
scrollRef.current?.stopAutoScroll();
|
|
273
291
|
}
|
|
274
292
|
/** Scroll to the true bottom after layout settles (double-rAF). */
|
|
275
|
-
function pinToBottom() {
|
|
276
|
-
|
|
277
|
-
return;
|
|
278
|
-
const sb = scrollRef.current;
|
|
279
|
-
if (!sb)
|
|
280
|
-
return;
|
|
293
|
+
function pinToBottom(options) {
|
|
294
|
+
const forced = options?.forced === true;
|
|
281
295
|
const go = () => {
|
|
296
|
+
if (!followBottom.current)
|
|
297
|
+
return;
|
|
298
|
+
if (!shouldPinTranscriptBottom({
|
|
299
|
+
following: followBottom.current,
|
|
300
|
+
pointerGestureActive: pointerGestureActive.current,
|
|
301
|
+
forced,
|
|
302
|
+
})) {
|
|
303
|
+
return;
|
|
304
|
+
}
|
|
305
|
+
const sb = scrollRef.current;
|
|
306
|
+
if (!sb)
|
|
307
|
+
return;
|
|
282
308
|
const next = maxScrollTop(sb);
|
|
283
309
|
if (sb.scrollTop === next)
|
|
284
310
|
return;
|
|
@@ -291,19 +317,79 @@ export function TranscriptView(props) {
|
|
|
291
317
|
requestAnimationFrame(go);
|
|
292
318
|
});
|
|
293
319
|
}
|
|
294
|
-
function setFollowing(on) {
|
|
320
|
+
function setFollowing(on, options) {
|
|
295
321
|
followBottom.current = on;
|
|
296
|
-
|
|
297
|
-
|
|
322
|
+
setFollowSticky(on);
|
|
323
|
+
if (!on) {
|
|
324
|
+
setWindowStart((current) => current ?? mountWindow.start);
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
const tail = resolveTranscriptMountWindow(items.length, undefined, DEFAULT_TRANSCRIPT_MOUNT_ROWS);
|
|
328
|
+
if (mountWindow.start !== tail.start) {
|
|
329
|
+
pendingWindowJump.current = { edge: "bottom" };
|
|
330
|
+
windowShiftPending.current = true;
|
|
331
|
+
}
|
|
332
|
+
else {
|
|
333
|
+
pendingWindowJump.current = undefined;
|
|
334
|
+
windowShiftPending.current = false;
|
|
335
|
+
}
|
|
336
|
+
setWindowStart(undefined);
|
|
337
|
+
pinToBottom(options);
|
|
298
338
|
}
|
|
299
|
-
|
|
300
|
-
|
|
339
|
+
function updateFollowingFromPosition(atLiveBottom) {
|
|
340
|
+
setFollowing(atLiveBottom && mountWindow.newerCount === 0);
|
|
341
|
+
}
|
|
342
|
+
function changeWindow(nextStart, jump) {
|
|
343
|
+
const resolved = resolveTranscriptMountWindow(items.length, nextStart, DEFAULT_TRANSCRIPT_MOUNT_ROWS);
|
|
344
|
+
if (resolved.start === mountWindow.start)
|
|
345
|
+
return false;
|
|
346
|
+
pendingWindowJump.current = jump;
|
|
347
|
+
windowShiftPending.current = true;
|
|
348
|
+
setWindowStart(resolved.start);
|
|
349
|
+
followBottom.current = false;
|
|
350
|
+
return true;
|
|
351
|
+
}
|
|
352
|
+
function showOlderWindow() {
|
|
353
|
+
if (mountWindow.olderCount === 0 || windowShiftPending.current)
|
|
354
|
+
return false;
|
|
355
|
+
const next = shiftTranscriptWindowStart(items.length, mountWindow.start, "older", DEFAULT_TRANSCRIPT_MOUNT_ROWS);
|
|
356
|
+
const itemId = mountedItems[0]?.id;
|
|
357
|
+
return changeWindow(next, itemId ? { itemId } : { edge: "bottom" });
|
|
358
|
+
}
|
|
359
|
+
function showNewerWindow() {
|
|
360
|
+
if (mountWindow.newerCount === 0 || windowShiftPending.current)
|
|
361
|
+
return false;
|
|
362
|
+
const next = shiftTranscriptWindowStart(items.length, mountWindow.start, "newer", DEFAULT_TRANSCRIPT_MOUNT_ROWS);
|
|
363
|
+
const itemId = mountedItems.at(-1)?.id;
|
|
364
|
+
return changeWindow(next, itemId ? { itemId } : { edge: "top" });
|
|
365
|
+
}
|
|
366
|
+
useLayoutEffect(() => {
|
|
367
|
+
const jump = pendingWindowJump.current;
|
|
368
|
+
if (!jump)
|
|
369
|
+
return;
|
|
370
|
+
const frame = requestAnimationFrame(() => {
|
|
371
|
+
const sb = scrollRef.current;
|
|
372
|
+
if (sb) {
|
|
373
|
+
if (jump.itemId)
|
|
374
|
+
sb.scrollChildIntoView(jump.itemId);
|
|
375
|
+
else if (jump.edge === "top")
|
|
376
|
+
sb.scrollTo(0);
|
|
377
|
+
else if (jump.edge === "bottom")
|
|
378
|
+
sb.scrollTo(maxScrollTop(sb));
|
|
379
|
+
publishScrollRemainder(sb);
|
|
380
|
+
}
|
|
381
|
+
pendingWindowJump.current = undefined;
|
|
382
|
+
windowShiftPending.current = false;
|
|
383
|
+
});
|
|
384
|
+
return () => cancelAnimationFrame(frame);
|
|
385
|
+
}, [mountWindow.start, mountWindow.end]);
|
|
386
|
+
const sessionFingerprint = session.sessionId;
|
|
301
387
|
const lastSessionFp = useRef(sessionFingerprint);
|
|
302
388
|
useEffect(() => {
|
|
303
389
|
if (sessionFingerprint === lastSessionFp.current)
|
|
304
390
|
return;
|
|
305
391
|
lastSessionFp.current = sessionFingerprint;
|
|
306
|
-
|
|
392
|
+
lastTailId.current = items.at(-1)?.id;
|
|
307
393
|
setFollowing(true);
|
|
308
394
|
}, [sessionFingerprint, items.length]);
|
|
309
395
|
// New agent turn: always re-engage follow so the live stream is visible.
|
|
@@ -315,27 +401,24 @@ export function TranscriptView(props) {
|
|
|
315
401
|
wasRunning.current = running;
|
|
316
402
|
}, [session.running, state.runningStatus]);
|
|
317
403
|
useEffect(() => {
|
|
318
|
-
const
|
|
319
|
-
|
|
404
|
+
const tailId = items.at(-1)?.id;
|
|
405
|
+
const tailChanged = tailId !== lastTailId.current;
|
|
406
|
+
lastTailId.current = tailId;
|
|
320
407
|
if (pointerGestureActive.current)
|
|
321
408
|
return;
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
const last = items[items.length - 1];
|
|
409
|
+
if (tailChanged) {
|
|
410
|
+
const last = items.at(-1);
|
|
325
411
|
if (last?.kind === "user") {
|
|
326
|
-
|
|
412
|
+
setFollowing(true);
|
|
327
413
|
}
|
|
328
414
|
}
|
|
329
|
-
// While a turn is live, keep following unless the user has scrolled away.
|
|
330
|
-
// (followBottom is cleared by wheel/keys; stickyScroll also respects that.)
|
|
331
415
|
if (followBottom.current) {
|
|
332
416
|
pinToBottom();
|
|
333
417
|
return;
|
|
334
418
|
}
|
|
335
|
-
if (
|
|
419
|
+
if (tailChanged) {
|
|
336
420
|
const sb = scrollRef.current;
|
|
337
421
|
if (!sb || isNearBottom(sb)) {
|
|
338
|
-
// Near bottom → re-engage follow.
|
|
339
422
|
setFollowing(true);
|
|
340
423
|
}
|
|
341
424
|
}
|
|
@@ -358,37 +441,49 @@ export function TranscriptView(props) {
|
|
|
358
441
|
sb.verticalScrollBar.visible = false;
|
|
359
442
|
sb.horizontalScrollBar.visible = false;
|
|
360
443
|
}, [items.length, introWidth]);
|
|
444
|
+
function scrollMainBy(dy) {
|
|
445
|
+
if (!Number.isFinite(dy) || dy === 0)
|
|
446
|
+
return;
|
|
447
|
+
if (dy < 0)
|
|
448
|
+
setFollowing(false);
|
|
449
|
+
clearNativeSelection();
|
|
450
|
+
const sb = scrollRef.current;
|
|
451
|
+
if (!sb)
|
|
452
|
+
return;
|
|
453
|
+
const intent = resolveTranscriptScrollIntent(sb.scrollTop, maxScrollTop(sb), dy);
|
|
454
|
+
if (intent.reachedOlderEdge && showOlderWindow())
|
|
455
|
+
return;
|
|
456
|
+
if (intent.reachedNewerEdge && showNewerWindow())
|
|
457
|
+
return;
|
|
458
|
+
sb.scrollTo(intent.nextScrollTop);
|
|
459
|
+
if (!intent.leaveTail)
|
|
460
|
+
updateFollowingFromPosition(intent.atBottom);
|
|
461
|
+
publishScrollRemainder(sb);
|
|
462
|
+
}
|
|
361
463
|
// App + composer forward every free wheel event here so trackpad never
|
|
362
464
|
// lands on the focused textarea and walks prompt history instead.
|
|
363
465
|
useEffect(() => {
|
|
364
|
-
return registerTranscriptScrollPort(
|
|
365
|
-
|
|
366
|
-
const sb = scrollRef.current;
|
|
367
|
-
if (!sb)
|
|
368
|
-
return;
|
|
369
|
-
const max = maxScrollTop(sb);
|
|
370
|
-
const next = Math.max(0, Math.min(max, sb.scrollTop + dy));
|
|
371
|
-
sb.scrollTo(next);
|
|
372
|
-
followBottom.current = next >= max - 1;
|
|
373
|
-
publishScrollRemainder(sb);
|
|
374
|
-
});
|
|
375
|
-
}, []);
|
|
466
|
+
return registerTranscriptScrollPort(scrollMainBy);
|
|
467
|
+
}, [items.length, mountWindow.start, mountWindow.end]);
|
|
376
468
|
// g / G absolute jumps (also reachable from App when transcript is focused).
|
|
377
469
|
useEffect(() => {
|
|
378
470
|
return registerTranscriptJumpHandlers(() => {
|
|
379
471
|
clearNativeSelection();
|
|
472
|
+
if (mountWindow.start > 0) {
|
|
473
|
+
changeWindow(0, { edge: "top" });
|
|
474
|
+
return;
|
|
475
|
+
}
|
|
380
476
|
const sb = scrollRef.current;
|
|
381
477
|
if (!sb)
|
|
382
478
|
return;
|
|
479
|
+
setFollowing(false);
|
|
383
480
|
sb.scrollTo(0);
|
|
384
|
-
followBottom.current = false;
|
|
385
481
|
publishScrollRemainder(sb);
|
|
386
482
|
}, () => {
|
|
387
|
-
|
|
388
|
-
pinToBottom();
|
|
483
|
+
jumpToBottom();
|
|
389
484
|
queueMicrotask(() => publishScrollRemainder(scrollRef.current));
|
|
390
485
|
});
|
|
391
|
-
}, []);
|
|
486
|
+
}, [items.length, mountWindow.start, mountWindow.end]);
|
|
392
487
|
// Publish ▲/▼ remaining-line metrics for the status strip under the input.
|
|
393
488
|
// Poll lightly: OpenTUI ScrollBox has no scroll-event subscription.
|
|
394
489
|
useEffect(() => {
|
|
@@ -423,7 +518,11 @@ export function TranscriptView(props) {
|
|
|
423
518
|
};
|
|
424
519
|
}, []);
|
|
425
520
|
function jumpToBottom() {
|
|
426
|
-
|
|
521
|
+
// An explicit jump ends any pointer gesture: a press released outside the
|
|
522
|
+
// transcript never delivers mouse-up here, and a stale flag would
|
|
523
|
+
// otherwise swallow every later End / Ctrl+D.
|
|
524
|
+
pointerGestureActive.current = false;
|
|
525
|
+
setFollowing(true, { forced: true });
|
|
427
526
|
}
|
|
428
527
|
function openSearch() {
|
|
429
528
|
// Allow re-opening the filter to edit the sticky query.
|
|
@@ -443,7 +542,7 @@ export function TranscriptView(props) {
|
|
|
443
542
|
}
|
|
444
543
|
}
|
|
445
544
|
setSearchOpen(true);
|
|
446
|
-
|
|
545
|
+
setFollowing(false);
|
|
447
546
|
}
|
|
448
547
|
/** Drop filter input + sticky query + highlights. */
|
|
449
548
|
function clearSearch() {
|
|
@@ -470,8 +569,14 @@ export function TranscriptView(props) {
|
|
|
470
569
|
if (!match)
|
|
471
570
|
return;
|
|
472
571
|
clearNativeSelection();
|
|
473
|
-
|
|
474
|
-
|
|
572
|
+
setFollowing(false);
|
|
573
|
+
const itemIndex = items.findIndex((item) => item.id === match.itemId);
|
|
574
|
+
if (itemIndex >= 0 &&
|
|
575
|
+
(itemIndex < mountWindow.start || itemIndex >= mountWindow.end)) {
|
|
576
|
+
const start = transcriptWindowStartForItem(items.length, itemIndex, DEFAULT_TRANSCRIPT_MOUNT_ROWS);
|
|
577
|
+
if (changeWindow(start, { itemId: match.itemId }))
|
|
578
|
+
return;
|
|
579
|
+
}
|
|
475
580
|
queueMicrotask(() => {
|
|
476
581
|
scrollRef.current?.scrollChildIntoView(match.itemId);
|
|
477
582
|
publishScrollRemainder(scrollRef.current);
|
|
@@ -531,25 +636,13 @@ export function TranscriptView(props) {
|
|
|
531
636
|
const openUserPrompt = useCallback((prompt) => {
|
|
532
637
|
services.overlay.openPromptActions({ prompt, onResend: () => resendPrompt(prompt) });
|
|
533
638
|
}, [services, resendPrompt]);
|
|
534
|
-
/**
|
|
535
|
-
* Wheel over the chat pane: claim focus so ↑/↓ don’t walk prompt history,
|
|
536
|
-
* and stop bubble so App doesn’t also scroll via the port (double-step).
|
|
537
|
-
* Actual motion is handled by ScrollBox’s native onMouseEvent.
|
|
538
|
-
*/
|
|
539
639
|
function onWheelScroll(event) {
|
|
540
640
|
if (!event.scroll)
|
|
541
641
|
return;
|
|
542
|
-
|
|
642
|
+
event.preventDefault();
|
|
543
643
|
event.stopPropagation();
|
|
544
644
|
services.focus.focusRegion("transcript");
|
|
545
|
-
|
|
546
|
-
queueMicrotask(() => {
|
|
547
|
-
const sb = scrollRef.current;
|
|
548
|
-
if (!sb)
|
|
549
|
-
return;
|
|
550
|
-
followBottom.current = isNearBottom(sb);
|
|
551
|
-
publishScrollRemainder(sb);
|
|
552
|
-
});
|
|
645
|
+
scrollMainBy(wheelChatDelta(event.scroll.direction, event.scroll.delta));
|
|
553
646
|
}
|
|
554
647
|
useKeyboard((key) => {
|
|
555
648
|
if (key.eventType === "release")
|
|
@@ -594,6 +687,38 @@ export function TranscriptView(props) {
|
|
|
594
687
|
openSearch();
|
|
595
688
|
return;
|
|
596
689
|
}
|
|
690
|
+
// `c` copies the focused thinking card, then releases it so the chat
|
|
691
|
+
// scrolls normally again. Ignored when no card is focused, so the chord
|
|
692
|
+
// stays free everywhere else.
|
|
693
|
+
if (services.focus.activeContext() === "transcript" &&
|
|
694
|
+
services.router.resolve(chord, "transcript") === "transcript.copy-thinking" &&
|
|
695
|
+
state.focusedThinkingId !== undefined) {
|
|
696
|
+
key.preventDefault();
|
|
697
|
+
void copyFocusedThinking(state, services.ports.clipboard).then((result) => {
|
|
698
|
+
if (result === "copied") {
|
|
699
|
+
services.transcript.blurThinking();
|
|
700
|
+
services.toast.success("Reasoning copied", {
|
|
701
|
+
key: "clipboard",
|
|
702
|
+
durationMs: 1600,
|
|
703
|
+
});
|
|
704
|
+
return;
|
|
705
|
+
}
|
|
706
|
+
if (result === "empty") {
|
|
707
|
+
services.toast.info("Nothing to copy", {
|
|
708
|
+
key: "clipboard",
|
|
709
|
+
durationMs: 1400,
|
|
710
|
+
});
|
|
711
|
+
return;
|
|
712
|
+
}
|
|
713
|
+
if (result === "failed") {
|
|
714
|
+
services.toast.error("Copy failed", {
|
|
715
|
+
key: "clipboard",
|
|
716
|
+
durationMs: 2200,
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
});
|
|
720
|
+
return;
|
|
721
|
+
}
|
|
597
722
|
// Selection chords first: Esc only lands here when there is a selection to
|
|
598
723
|
// clear, so the global cancel ladder still sees every other Esc.
|
|
599
724
|
if (selection.handleKey(key, chord))
|
|
@@ -614,49 +739,36 @@ export function TranscriptView(props) {
|
|
|
614
739
|
if (!sb)
|
|
615
740
|
return;
|
|
616
741
|
const page = sb.viewport.height || 10;
|
|
617
|
-
const max = maxScrollTop(sb);
|
|
618
742
|
if (chord === "up" || chord === "k") {
|
|
619
743
|
key.preventDefault();
|
|
620
|
-
|
|
621
|
-
sb.scrollTo(Math.max(0, sb.scrollTop - 1));
|
|
622
|
-
followBottom.current = false;
|
|
623
|
-
publishScrollRemainder(sb);
|
|
744
|
+
scrollMainBy(-1);
|
|
624
745
|
}
|
|
625
746
|
else if (chord === "down" || chord === "j") {
|
|
626
747
|
key.preventDefault();
|
|
627
|
-
|
|
628
|
-
const next = Math.min(max, sb.scrollTop + 1);
|
|
629
|
-
sb.scrollTo(next);
|
|
630
|
-
followBottom.current = next >= max - 1;
|
|
631
|
-
publishScrollRemainder(sb);
|
|
748
|
+
scrollMainBy(1);
|
|
632
749
|
}
|
|
633
750
|
else if (chord === "pageup") {
|
|
634
751
|
key.preventDefault();
|
|
635
|
-
|
|
636
|
-
sb.scrollTo(Math.max(0, sb.scrollTop - page));
|
|
637
|
-
followBottom.current = false;
|
|
638
|
-
publishScrollRemainder(sb);
|
|
752
|
+
scrollMainBy(-page);
|
|
639
753
|
}
|
|
640
754
|
else if (chord === "pagedown") {
|
|
641
755
|
key.preventDefault();
|
|
642
|
-
|
|
643
|
-
const next = Math.min(max, sb.scrollTop + page);
|
|
644
|
-
sb.scrollTo(next);
|
|
645
|
-
followBottom.current = next >= max - 1;
|
|
646
|
-
publishScrollRemainder(sb);
|
|
756
|
+
scrollMainBy(page);
|
|
647
757
|
}
|
|
648
758
|
else if (chord === "end" || chord === "ctrl+d") {
|
|
649
|
-
// ^D / End — absolute bottom of the chat.
|
|
650
759
|
key.preventDefault();
|
|
651
760
|
jumpToBottom();
|
|
652
761
|
publishScrollRemainder(sb);
|
|
653
762
|
}
|
|
654
763
|
else if (chord === "home" || chord === "ctrl+u") {
|
|
655
|
-
// ^U / Home — absolute top of the chat (intro card).
|
|
656
764
|
key.preventDefault();
|
|
657
765
|
clearNativeSelection();
|
|
766
|
+
if (mountWindow.start > 0) {
|
|
767
|
+
changeWindow(0, { edge: "top" });
|
|
768
|
+
return;
|
|
769
|
+
}
|
|
770
|
+
setFollowing(false);
|
|
658
771
|
sb.scrollTo(0);
|
|
659
|
-
followBottom.current = false;
|
|
660
772
|
publishScrollRemainder(sb);
|
|
661
773
|
}
|
|
662
774
|
}
|
|
@@ -670,6 +782,6 @@ export function TranscriptView(props) {
|
|
|
670
782
|
focused: focused,
|
|
671
783
|
// Native auto-follow: when content grows and the user is (or returns)
|
|
672
784
|
// at the bottom, stay pinned to the latest agent output.
|
|
673
|
-
stickyScroll:
|
|
785
|
+
stickyScroll: followSticky, stickyStart: items.length > 0 ? "bottom" : "top", viewportCulling: true, scrollY: true, scrollX: false, scrollbarOptions: HIDDEN_SCROLLBARS, verticalScrollbarOptions: HIDDEN_SCROLLBARS, horizontalScrollbarOptions: HIDDEN_SCROLLBARS, style: { flexGrow: 1, width: "100%" }, onMouseScroll: onWheelScroll, children: [_jsx(IntroCard, { services: services, theme: theme, width: introWidth }), mountWindow.olderCount > 0 ? (_jsx("box", { id: "transcript-window-older", style: { width: "100%", paddingLeft: 1, paddingBottom: 1 }, children: _jsx("text", { style: { fg: theme.muted }, children: `↑ ${mountWindow.olderCount.toLocaleString()} earlier rows · scroll up or PageUp to load` }) })) : null, mountedItems.map((item) => (_jsx(TranscriptRow, { item: item, expanded: isItemExpanded(state, item), fileDiffExpanded: item.kind === "tool" ? isFileDiffExpanded(state, item.id) : false, expandThinkingGlobal: state.expandThinkingGlobal, expandOutputGlobal: state.expandOutputGlobal, expandFileDiffsGlobal: state.expandFileDiffsGlobal, theme: theme, store: services.transcript, spool: services.session.spool, services: services, onOpenUserPrompt: openUserPrompt, contentWidth: paneWidth, searchMatched: searchActive && matchedItemIds.has(item.id), searchActiveMatch: item.id === activeMatchItemId, thinkingFocused: state.focusedThinkingId === item.id }, item.id))), mountWindow.newerCount > 0 ? (_jsx("box", { id: "transcript-window-newer", style: { width: "100%", paddingLeft: 1, paddingTop: 1 }, children: _jsx("text", { style: { fg: theme.muted }, children: `↓ ${mountWindow.newerCount.toLocaleString()} newer rows · scroll down or PageDown to load` }) })) : null] })] }));
|
|
674
786
|
}
|
|
675
787
|
//# sourceMappingURL=transcript-view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
|