@duetso/agent 0.1.58 → 0.1.60
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 +41 -2
- package/dist/package.json +1 -1
- package/dist/src/memory/observational.d.ts.map +1 -1
- package/dist/src/memory/observational.js +24 -10
- package/dist/src/memory/observational.js.map +1 -1
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +115 -35
- package/dist/src/tui/app.js.map +1 -1
- package/dist/src/tui/autocomplete.d.ts.map +1 -1
- package/dist/src/tui/autocomplete.js +5 -0
- package/dist/src/tui/autocomplete.js.map +1 -1
- package/dist/src/tui/clipboard.d.ts +14 -3
- package/dist/src/tui/clipboard.d.ts.map +1 -1
- package/dist/src/tui/clipboard.js +72 -0
- package/dist/src/tui/clipboard.js.map +1 -1
- package/dist/src/tui/theme.d.ts +13 -7
- package/dist/src/tui/theme.d.ts.map +1 -1
- package/dist/src/tui/theme.js +23 -8
- package/dist/src/tui/theme.js.map +1 -1
- package/dist/src/turn-runner/tools.d.ts +1 -0
- package/dist/src/turn-runner/tools.d.ts.map +1 -1
- package/dist/src/turn-runner/tools.js +25 -1
- package/dist/src/turn-runner/tools.js.map +1 -1
- package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
- package/dist/src/turn-runner/turn-runner.js +4 -2
- package/dist/src/turn-runner/turn-runner.js.map +1 -1
- package/dist/src/types/memory.d.ts +9 -0
- package/dist/src/types/memory.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -310,13 +310,52 @@ In the input box:
|
|
|
310
310
|
primed to call `read_skill`.
|
|
311
311
|
- Enter sends; **Shift+Enter** queues the message as a follow-up while the
|
|
312
312
|
agent is running, instead of steering the active turn.
|
|
313
|
-
- `Esc` cancels the current pickers;
|
|
314
|
-
|
|
313
|
+
- `Esc` cancels the current pickers; on its own it interrupts the active turn,
|
|
314
|
+
or no-ops when idle. Use Ctrl+C (or close the terminal) to quit — both
|
|
315
|
+
paths drain through the SessionManager so the local memory database (PGlite)
|
|
316
|
+
flushes cleanly.
|
|
315
317
|
|
|
316
318
|
Tool calls render with custom per-tool headers (e.g. `$ <command>`,
|
|
317
319
|
`read <path> (lines a–b)`, `edit <path> (N edits)`, `[question]`). Resumed
|
|
318
320
|
sessions render history through the same formatters so live and replay match.
|
|
319
321
|
|
|
322
|
+
### Copy & Paste
|
|
323
|
+
|
|
324
|
+
Drag with the mouse to highlight any text in the transcript. The bottom hint
|
|
325
|
+
advertises the copy keystroke that actually reaches the TUI on your terminal
|
|
326
|
+
(it appears only while a selection is active so the hint stays terse):
|
|
327
|
+
|
|
328
|
+
- **Cmd+C** — macOS terminals that forward Cmd+C as a keypress (Ghostty,
|
|
329
|
+
kitty, recent iTerm2 with the right keybindings).
|
|
330
|
+
- **Ctrl+Shift+C** — Linux/Windows terminals, and macOS terminals that own
|
|
331
|
+
Cmd+C for their own UI (notably Warp, where Cmd+C selects a Warp block and
|
|
332
|
+
is never forwarded). Cmd+Shift+C also works on terminals where it is
|
|
333
|
+
forwarded.
|
|
334
|
+
|
|
335
|
+
Copying writes via `pbcopy` / `wl-copy` / `xclip` / `xsel` / `clip.exe` and
|
|
336
|
+
verifies the write through a readback (so a writer that exits 0 without
|
|
337
|
+
actually updating the system clipboard — which has been observed on macOS in
|
|
338
|
+
some configs — surfaces a real error instead of a fake "copied" line). When
|
|
339
|
+
no local CLI is available (e.g. an SSH session with no clipboard tool), the
|
|
340
|
+
TUI falls back to OSC 52.
|
|
341
|
+
|
|
342
|
+
For explicit copies of transcript content (independent of mouse selection):
|
|
343
|
+
|
|
344
|
+
- **`/copy`** — copies the most recent agent reply.
|
|
345
|
+
- **`/copy all`** — copies the full conversation, formatted with `you:` /
|
|
346
|
+
`agent:` labels.
|
|
347
|
+
- **`/copy <N>`** — copies the last N user/agent messages.
|
|
348
|
+
|
|
349
|
+
### Diagnostics
|
|
350
|
+
|
|
351
|
+
**`/diag`** toggles a diagnostic log inside the transcript. While on, every
|
|
352
|
+
keypress and every drag-selection event prints a `[diag]` line with the exact
|
|
353
|
+
name, modifier flags, raw sequence, and parser source the renderer
|
|
354
|
+
received — plus a snapshot of the current selection state. This is the
|
|
355
|
+
fastest way to figure out why a keystroke or gesture works in one terminal
|
|
356
|
+
but not another (e.g. Cmd+C silently swallowed by Warp). Run `/diag` again to
|
|
357
|
+
turn it off.
|
|
358
|
+
|
|
320
359
|
### Image Attachments
|
|
321
360
|
|
|
322
361
|
The interactive TUI accepts image attachments (PNG, JPEG, GIF, WebP) in three
|
package/dist/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
|
|
@@ -244,7 +244,7 @@ export async function updateObservationalMemory(options) {
|
|
|
244
244
|
status: "running",
|
|
245
245
|
message: "Observing conversation into memory...",
|
|
246
246
|
});
|
|
247
|
-
const observation = await activateObservations({
|
|
247
|
+
const { observation, usageBumped } = await activateObservations({
|
|
248
248
|
db: options.db,
|
|
249
249
|
messages: unobservedMessages,
|
|
250
250
|
previousLocalObservations: localSnapshot.observations,
|
|
@@ -260,8 +260,9 @@ export async function updateObservationalMemory(options) {
|
|
|
260
260
|
emitMemoryActivity(options.onActivity, {
|
|
261
261
|
phase: "observation",
|
|
262
262
|
status: "completed",
|
|
263
|
-
message: observation
|
|
263
|
+
message: buildObservationCompletedMessage(observation, usageBumped.length),
|
|
264
264
|
...(observation ? { observations: [observation] } : {}),
|
|
265
|
+
...(usageBumped.length > 0 ? { usageBumpedObservations: usageBumped } : {}),
|
|
265
266
|
});
|
|
266
267
|
}
|
|
267
268
|
if (options.sessionId) {
|
|
@@ -303,6 +304,15 @@ export function optimizeObservationsForContext(observations) {
|
|
|
303
304
|
optimized = optimized.replace(/\n{3,}/g, "\n\n");
|
|
304
305
|
return optimized.trim();
|
|
305
306
|
}
|
|
307
|
+
function buildObservationCompletedMessage(observation, usageBumpedCount) {
|
|
308
|
+
const base = observation ? "Memory observation recorded." : "Memory observation complete.";
|
|
309
|
+
if (usageBumpedCount <= 0)
|
|
310
|
+
return base;
|
|
311
|
+
const noun = usageBumpedCount === 1 ? "memory" : "memories";
|
|
312
|
+
// Surface the count for now; consumers can later render the full
|
|
313
|
+
// observation contents from `usageBumpedObservations` on the event.
|
|
314
|
+
return `${base} Bumped last-use on ${usageBumpedCount} prior ${noun}.`;
|
|
315
|
+
}
|
|
306
316
|
function emitMemoryActivity(handler, event) {
|
|
307
317
|
handler?.(event);
|
|
308
318
|
}
|
|
@@ -340,14 +350,14 @@ async function activateObservations(args) {
|
|
|
340
350
|
// Usage attribution applies whether or not the observer had new
|
|
341
351
|
// memory worth recording — a turn can lean on a prior memory even
|
|
342
352
|
// when nothing new is durable.
|
|
343
|
-
await applyUsageBumps(args.db, args.attributableMemories, observations.usedObservationIds);
|
|
353
|
+
const usageBumped = await applyUsageBumps(args.db, args.attributableMemories, observations.usedObservationIds);
|
|
344
354
|
if (!observations.hasMemory || !observations.observations.trim()) {
|
|
345
355
|
// The same low-signal messages may become useful context for a
|
|
346
356
|
// later suffix, so do not record an empty checkpoint.
|
|
347
|
-
return
|
|
357
|
+
return { usageBumped };
|
|
348
358
|
}
|
|
349
359
|
const range = `${args.messages[0]?.id ?? "unknown"}:${args.messages[args.messages.length - 1]?.id ?? "unknown"}`;
|
|
350
|
-
|
|
360
|
+
const observation = await appendObservation(args.db, {
|
|
351
361
|
kind: "observation",
|
|
352
362
|
...(args.sessionId !== undefined ? { sessionId: args.sessionId } : {}),
|
|
353
363
|
observedDate: new Date().toISOString().slice(0, 10),
|
|
@@ -357,6 +367,7 @@ async function activateObservations(args) {
|
|
|
357
367
|
content: wrapInObservationGroup(observations.observations, range),
|
|
358
368
|
tags: ["observational-memory"],
|
|
359
369
|
});
|
|
370
|
+
return { observation, usageBumped };
|
|
360
371
|
}
|
|
361
372
|
/**
|
|
362
373
|
* Bump `last_used_at` for the subset of `usedObservationIds` that
|
|
@@ -368,12 +379,15 @@ async function activateObservations(args) {
|
|
|
368
379
|
*/
|
|
369
380
|
async function applyUsageBumps(db, candidates, usedIds) {
|
|
370
381
|
if (!usedIds || usedIds.length === 0)
|
|
371
|
-
return;
|
|
372
|
-
const
|
|
373
|
-
const validated = usedIds
|
|
382
|
+
return [];
|
|
383
|
+
const candidatesById = new Map(candidates.map((c) => [c.id, c]));
|
|
384
|
+
const validated = usedIds
|
|
385
|
+
.map((id) => candidatesById.get(id))
|
|
386
|
+
.filter((observation) => Boolean(observation));
|
|
374
387
|
if (validated.length === 0)
|
|
375
|
-
return;
|
|
376
|
-
await bumpLastUsed(db, validated, Date.now());
|
|
388
|
+
return [];
|
|
389
|
+
await bumpLastUsed(db, validated.map((observation) => observation.id), Date.now());
|
|
390
|
+
return validated;
|
|
377
391
|
}
|
|
378
392
|
async function reflectObservations(args) {
|
|
379
393
|
const { db, sessionObservations, settings, sessionId, model, onUsage } = args;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observational.js","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"observational.js","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/tui/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA0BlE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAMV,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAiC9B,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,IAAI,sBAAsB,EAC3C,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,+BAA+B,EAC/B,kCAAkC,EAClC,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,+FAA+F;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,eAAe,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACnD,6DAA6D;IAC7D,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAUD;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/tui/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA0BlE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAMV,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAiC9B,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,IAAI,sBAAsB,EAC3C,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,+BAA+B,EAC/B,kCAAkC,EAClC,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,+FAA+F;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,eAAe,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACnD,6DAA6D;IAC7D,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAUD;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAsiEvF"}
|
package/dist/src/tui/app.js
CHANGED
|
@@ -56,6 +56,7 @@ export async function runTui(input) {
|
|
|
56
56
|
let lastSelectionText = "";
|
|
57
57
|
renderer.on("selection", (selection) => {
|
|
58
58
|
lastSelectionText = selection.getSelectedText();
|
|
59
|
+
logSelectionDiag(lastSelectionText);
|
|
59
60
|
refreshHint();
|
|
60
61
|
});
|
|
61
62
|
// Outer row wraps the main column and a right-side sidebar that surfaces
|
|
@@ -871,11 +872,16 @@ export async function runTui(input) {
|
|
|
871
872
|
}
|
|
872
873
|
}
|
|
873
874
|
function formatMemoryEventBody(event) {
|
|
874
|
-
|
|
875
|
+
const hasObservations = Boolean(event.observations && event.observations.length > 0);
|
|
876
|
+
const hasBumps = Boolean(event.usageBumpedObservations && event.usageBumpedObservations.length > 0);
|
|
877
|
+
if (!hasObservations && !hasBumps) {
|
|
875
878
|
return "";
|
|
876
879
|
}
|
|
877
|
-
const
|
|
878
|
-
|
|
880
|
+
const sections = [event.message];
|
|
881
|
+
if (hasObservations) {
|
|
882
|
+
sections.push(event.observations.map((observation) => observation.content).join("\n\n"));
|
|
883
|
+
}
|
|
884
|
+
return truncateToolText(sections.join("\n"));
|
|
879
885
|
}
|
|
880
886
|
// ---- input handling --------------------------------------------------------
|
|
881
887
|
let skillAutocompleteSkills = [];
|
|
@@ -1146,6 +1152,14 @@ export async function runTui(input) {
|
|
|
1146
1152
|
}
|
|
1147
1153
|
const keyHandler = renderer._keyHandler;
|
|
1148
1154
|
keyHandler.onInternal("keypress", (key) => {
|
|
1155
|
+
logKeyDiag("global", key);
|
|
1156
|
+
// Copy keystroke. Lives on the global handler (not
|
|
1157
|
+
// inputField.onKeyDown) because the mousedown that starts a
|
|
1158
|
+
// drag-select moves focus off the textarea — the focused-renderable
|
|
1159
|
+
// path stops firing right when the user has something to copy. The
|
|
1160
|
+
// global handler always fires regardless of focus.
|
|
1161
|
+
if (handleCopyKeystroke(key))
|
|
1162
|
+
return;
|
|
1149
1163
|
if (key.name !== "escape")
|
|
1150
1164
|
return;
|
|
1151
1165
|
if (suppressNextEscapeExit) {
|
|
@@ -1188,6 +1202,7 @@ export async function runTui(input) {
|
|
|
1188
1202
|
// consumes escape via its own keybindings before any global keypress handler
|
|
1189
1203
|
// fires, so we intercept at the Renderable's onKeyDown hook which runs first.
|
|
1190
1204
|
inputField.onKeyDown = (key) => {
|
|
1205
|
+
logKeyDiag("keydown", key);
|
|
1191
1206
|
if (key.name === "pageup") {
|
|
1192
1207
|
scrollTranscriptByPage(-1);
|
|
1193
1208
|
key.preventDefault();
|
|
@@ -1252,31 +1267,6 @@ export async function runTui(input) {
|
|
|
1252
1267
|
void triggerClipboardProbe("keystroke");
|
|
1253
1268
|
return;
|
|
1254
1269
|
}
|
|
1255
|
-
// Copy keystrokes. The set is intentionally generous because each
|
|
1256
|
-
// mainstream terminal forwards a different subset:
|
|
1257
|
-
//
|
|
1258
|
-
// - Cmd+C: macOS muscle memory; many terminals (Terminal.app, Warp)
|
|
1259
|
-
// own this for their own selection UI and never forward it.
|
|
1260
|
-
// - Cmd+Shift+C: forwarded by Warp on macOS and by some configs of
|
|
1261
|
-
// iTerm2 / Ghostty where Cmd+C is reserved.
|
|
1262
|
-
// - Ctrl+Shift+C: Linux/Windows terminal-app convention that
|
|
1263
|
-
// leaves bare Ctrl+C free for "exit."
|
|
1264
|
-
//
|
|
1265
|
-
// The hint label surfaces only the OS-natural one so the bottom row
|
|
1266
|
-
// stays terse. No-op when nothing is selected so the keystroke still
|
|
1267
|
-
// falls through to whatever the terminal would do natively. We accept
|
|
1268
|
-
// both "c" and "C" because some kitty parsers report the shifted
|
|
1269
|
-
// letter while others report the base letter plus shift=true.
|
|
1270
|
-
const isCopyLetter = key.name === "c" || key.name === "C";
|
|
1271
|
-
const cmdHeld = key.super || key.meta;
|
|
1272
|
-
const isCmdC = isCopyLetter && cmdHeld && !key.shift && !key.ctrl;
|
|
1273
|
-
const isCmdShiftC = isCopyLetter && cmdHeld && key.shift && !key.ctrl;
|
|
1274
|
-
const isCtrlShiftC = isCopyLetter && key.ctrl && key.shift && !cmdHeld;
|
|
1275
|
-
if ((isCmdC || isCmdShiftC || isCtrlShiftC) && lastSelectionText.trim().length > 0) {
|
|
1276
|
-
key.preventDefault();
|
|
1277
|
-
void copyActiveSelection();
|
|
1278
|
-
return;
|
|
1279
|
-
}
|
|
1280
1270
|
if (skillAutocompleteIsOpen()) {
|
|
1281
1271
|
if (key.name === "up") {
|
|
1282
1272
|
skillAutocompleteSelectedIndex = moveSkillAutocompleteSelection(skillAutocompleteSelectedIndex, skillAutocompleteItems.length, -1);
|
|
@@ -1385,6 +1375,74 @@ export async function runTui(input) {
|
|
|
1385
1375
|
return;
|
|
1386
1376
|
void input.session.interrupt().catch(reportError);
|
|
1387
1377
|
}
|
|
1378
|
+
// ---- /diag diagnostics -----------------------------------------------------
|
|
1379
|
+
// `/diag` toggles a key+selection event log so the user can show us
|
|
1380
|
+
// exactly what their terminal forwards when something silently fails
|
|
1381
|
+
// (e.g. a keystroke not reaching the handler, a selection event firing
|
|
1382
|
+
// with empty text). Kept as a flag rather than a one-shot capture so
|
|
1383
|
+
// we can layer additional diagnostic facets on the same surface
|
|
1384
|
+
// without inventing new commands every time.
|
|
1385
|
+
let keyDiagnostics = false;
|
|
1386
|
+
function handleDiagSlashCommand(raw) {
|
|
1387
|
+
const argument = raw === "/diag" ? "" : raw.slice("/diag ".length).trim();
|
|
1388
|
+
if (argument === "" || argument === "keys") {
|
|
1389
|
+
keyDiagnostics = !keyDiagnostics;
|
|
1390
|
+
appendBlock("[diag]", keyDiagnostics
|
|
1391
|
+
? "key + selection event logging ON. Run /diag again to stop."
|
|
1392
|
+
: "key + selection event logging OFF.", COLORS.system);
|
|
1393
|
+
return;
|
|
1394
|
+
}
|
|
1395
|
+
appendBlock("[diag]", "Usage: /diag (or /diag keys) — toggles key + selection event logging", COLORS.system);
|
|
1396
|
+
}
|
|
1397
|
+
function logKeyDiag(label, key) {
|
|
1398
|
+
if (!keyDiagnostics)
|
|
1399
|
+
return;
|
|
1400
|
+
const flags = [];
|
|
1401
|
+
if (key.ctrl)
|
|
1402
|
+
flags.push("ctrl");
|
|
1403
|
+
if (key.shift)
|
|
1404
|
+
flags.push("shift");
|
|
1405
|
+
if (key.meta)
|
|
1406
|
+
flags.push("meta");
|
|
1407
|
+
if (key.super)
|
|
1408
|
+
flags.push("super");
|
|
1409
|
+
if (key.option)
|
|
1410
|
+
flags.push("option");
|
|
1411
|
+
appendBlock("[diag]", `${label} name=${JSON.stringify(key.name)} flags=[${flags.join(",")}] sequence=${JSON.stringify(key.sequence)} source=${key.source} | lastSelection=${lastSelectionText.length}c rendererSel=${renderer.hasSelection ? "yes" : "no"}`, COLORS.hint);
|
|
1412
|
+
}
|
|
1413
|
+
function logSelectionDiag(text) {
|
|
1414
|
+
if (!keyDiagnostics)
|
|
1415
|
+
return;
|
|
1416
|
+
appendBlock("[diag]", `selection event: ${text.length} chars — ${JSON.stringify(text.slice(0, 80))}`, COLORS.hint);
|
|
1417
|
+
}
|
|
1418
|
+
/**
|
|
1419
|
+
* Copy keystroke detection. Accepts Cmd+C, Cmd+Shift+C, and Ctrl+Shift+C
|
|
1420
|
+
* because each mainstream terminal forwards a different subset — see
|
|
1421
|
+
* `theme.ts` for which one ends up in the hint label per terminal.
|
|
1422
|
+
* Returns true (and prevents default) when the keystroke matched and a
|
|
1423
|
+
* non-empty selection was on the clipboard path; false otherwise so the
|
|
1424
|
+
* caller can fall through to other handlers (Esc, etc.).
|
|
1425
|
+
*
|
|
1426
|
+
* Accepts both "c" and "C" as the key name because some kitty parsers
|
|
1427
|
+
* report the shifted letter while others report the base letter with
|
|
1428
|
+
* `shift: true`.
|
|
1429
|
+
*/
|
|
1430
|
+
function handleCopyKeystroke(key) {
|
|
1431
|
+
const isCopyLetter = key.name === "c" || key.name === "C";
|
|
1432
|
+
if (!isCopyLetter)
|
|
1433
|
+
return false;
|
|
1434
|
+
const cmdHeld = key.super || key.meta;
|
|
1435
|
+
const isCmdC = cmdHeld && !key.shift && !key.ctrl;
|
|
1436
|
+
const isCmdShiftC = cmdHeld && key.shift && !key.ctrl;
|
|
1437
|
+
const isCtrlShiftC = key.ctrl && key.shift && !cmdHeld;
|
|
1438
|
+
if (!(isCmdC || isCmdShiftC || isCtrlShiftC))
|
|
1439
|
+
return false;
|
|
1440
|
+
if (lastSelectionText.trim().length === 0)
|
|
1441
|
+
return false;
|
|
1442
|
+
key.preventDefault();
|
|
1443
|
+
void copyActiveSelection();
|
|
1444
|
+
return true;
|
|
1445
|
+
}
|
|
1388
1446
|
inputField.onContentChange = () => {
|
|
1389
1447
|
// First real keystroke into the input collapses the starter section
|
|
1390
1448
|
// — the user is composing their own prompt, so the suggestions get
|
|
@@ -1562,6 +1620,10 @@ export async function runTui(input) {
|
|
|
1562
1620
|
void handleCopySlashCommand(message);
|
|
1563
1621
|
return;
|
|
1564
1622
|
}
|
|
1623
|
+
if (message === "/diag" || message.startsWith("/diag ")) {
|
|
1624
|
+
handleDiagSlashCommand(message);
|
|
1625
|
+
return;
|
|
1626
|
+
}
|
|
1565
1627
|
const submittedImages = pendingImages;
|
|
1566
1628
|
recordTranscriptEntry("user", message);
|
|
1567
1629
|
appendBlock("you:", message, COLORS.user);
|
|
@@ -1652,17 +1714,35 @@ export async function runTui(input) {
|
|
|
1652
1714
|
}
|
|
1653
1715
|
}
|
|
1654
1716
|
/**
|
|
1655
|
-
* Two-stage clipboard write.
|
|
1656
|
-
*
|
|
1657
|
-
*
|
|
1658
|
-
*
|
|
1659
|
-
*
|
|
1717
|
+
* Two-stage clipboard write. The platform-native CLI (pbcopy / wl-copy /
|
|
1718
|
+
* xclip / xsel / clip.exe) goes first because it actually writes to the
|
|
1719
|
+
* OS clipboard and — critically — `writeClipboardText` reads the
|
|
1720
|
+
* clipboard back through pbpaste / wl-paste / xclip -o to confirm the
|
|
1721
|
+
* bytes landed. Exit-code-only success is not enough: pbcopy from inside
|
|
1722
|
+
* a raw-mode TUI on Warp/macOS exits 0 without actually updating
|
|
1723
|
+
* NSPasteboard, and OSC 52 has the same silent-drop problem on Warp.
|
|
1724
|
+
*
|
|
1725
|
+
* OSC 52 is only the fallback when no local CLI is available at all
|
|
1726
|
+
* (e.g. an SSH session with no clipboard tool installed remotely). When
|
|
1727
|
+
* a local CLI ran but failed verification we surface that error
|
|
1728
|
+
* directly instead of falling through to OSC 52, because OSC 52 would
|
|
1729
|
+
* also silently "succeed" on the same broken terminals and hide the
|
|
1730
|
+
* real failure behind a fake "copied via OSC 52" line.
|
|
1660
1731
|
*/
|
|
1661
1732
|
async function copyTextToClipboard(text) {
|
|
1662
|
-
|
|
1733
|
+
const cli = await writeClipboardText(text);
|
|
1734
|
+
if (cli.ok)
|
|
1735
|
+
return cli;
|
|
1736
|
+
// Only fall back to OSC 52 when the CLI was simply unavailable. If a
|
|
1737
|
+
// CLI ran but the readback did not match (cli.kind ===
|
|
1738
|
+
// "verification-failed"), OSC 52 is on the same broken pipe and
|
|
1739
|
+
// would silently "succeed" the same way — surface the real error.
|
|
1740
|
+
if (cli.kind === "no-writer" &&
|
|
1741
|
+
renderer.isOsc52Supported() &&
|
|
1742
|
+
renderer.copyToClipboardOSC52(text)) {
|
|
1663
1743
|
return { ok: true, via: "OSC 52" };
|
|
1664
1744
|
}
|
|
1665
|
-
return
|
|
1745
|
+
return cli;
|
|
1666
1746
|
}
|
|
1667
1747
|
function describeCopySelection(argument, length) {
|
|
1668
1748
|
const chars = `${length} char${length === 1 ? "" : "s"}`;
|