@linkshell/host 0.4.7 → 0.4.9

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.
Files changed (82) hide show
  1. package/dist/host/src/computer-preview-capture.d.ts +11 -0
  2. package/dist/host/src/computer-preview-capture.js +87 -0
  3. package/dist/host/src/computer-preview-capture.js.map +1 -0
  4. package/dist/host/src/computer-preview.d.ts +73 -0
  5. package/dist/host/src/computer-preview.js +335 -0
  6. package/dist/host/src/computer-preview.js.map +1 -0
  7. package/dist/host/src/drivers/acp/connection.d.ts +2 -0
  8. package/dist/host/src/drivers/acp/connection.js +14 -1
  9. package/dist/host/src/drivers/acp/connection.js.map +1 -1
  10. package/dist/host/src/drivers/acp/driver.d.ts +4 -0
  11. package/dist/host/src/drivers/acp/driver.js +45 -1
  12. package/dist/host/src/drivers/acp/driver.js.map +1 -1
  13. package/dist/host/src/drivers/acp/mapper.js +11 -1
  14. package/dist/host/src/drivers/acp/mapper.js.map +1 -1
  15. package/dist/host/src/drivers/claude/activity.d.ts +1 -0
  16. package/dist/host/src/drivers/claude/activity.js +1 -0
  17. package/dist/host/src/drivers/claude/activity.js.map +1 -1
  18. package/dist/host/src/drivers/claude/driver.d.ts +6 -0
  19. package/dist/host/src/drivers/claude/driver.js +30 -2
  20. package/dist/host/src/drivers/claude/driver.js.map +1 -1
  21. package/dist/host/src/drivers/claude/tasks.d.ts +33 -0
  22. package/dist/host/src/drivers/claude/tasks.js +138 -0
  23. package/dist/host/src/drivers/claude/tasks.js.map +1 -0
  24. package/dist/host/src/drivers/claude/transcript.d.ts +31 -3
  25. package/dist/host/src/drivers/claude/transcript.js +20 -1
  26. package/dist/host/src/drivers/claude/transcript.js.map +1 -1
  27. package/dist/host/src/drivers/codex/app-server.js +0 -3
  28. package/dist/host/src/drivers/codex/app-server.js.map +1 -1
  29. package/dist/host/src/drivers/codex/commands.js +7 -1
  30. package/dist/host/src/drivers/codex/commands.js.map +1 -1
  31. package/dist/host/src/drivers/codex/computer-preview.d.ts +3 -0
  32. package/dist/host/src/drivers/codex/computer-preview.js +44 -0
  33. package/dist/host/src/drivers/codex/computer-preview.js.map +1 -0
  34. package/dist/host/src/drivers/codex/driver.d.ts +16 -1
  35. package/dist/host/src/drivers/codex/driver.js +262 -6
  36. package/dist/host/src/drivers/codex/driver.js.map +1 -1
  37. package/dist/host/src/drivers/codex/mapper.js +38 -3
  38. package/dist/host/src/drivers/codex/mapper.js.map +1 -1
  39. package/dist/host/src/drivers/registry.js +1 -1
  40. package/dist/host/src/drivers/registry.js.map +1 -1
  41. package/dist/host/src/drivers/types.d.ts +23 -1
  42. package/dist/host/src/hub.d.ts +18 -1
  43. package/dist/host/src/hub.js +102 -1
  44. package/dist/host/src/hub.js.map +1 -1
  45. package/dist/host/src/input.d.ts +9 -0
  46. package/dist/host/src/input.js +15 -0
  47. package/dist/host/src/input.js.map +1 -1
  48. package/dist/host/src/rpc/server.d.ts +1 -0
  49. package/dist/host/src/rpc/server.js +20 -2
  50. package/dist/host/src/rpc/server.js.map +1 -1
  51. package/dist/host/src/screen-viewer.js +641 -109
  52. package/dist/host/src/screen-viewer.js.map +1 -1
  53. package/dist/host/src/store.d.ts +10 -0
  54. package/dist/host/src/store.js +29 -0
  55. package/dist/host/src/store.js.map +1 -1
  56. package/dist/host/src/task-output.d.ts +6 -0
  57. package/dist/host/src/task-output.js +22 -0
  58. package/dist/host/src/task-output.js.map +1 -0
  59. package/dist/host/src/terminals.d.ts +37 -2
  60. package/dist/host/src/terminals.js +54 -14
  61. package/dist/host/src/terminals.js.map +1 -1
  62. package/dist/host/tsconfig.tsbuildinfo +1 -1
  63. package/dist/wire/src/computer-preview.d.ts +35 -0
  64. package/dist/wire/src/computer-preview.js +51 -0
  65. package/dist/wire/src/computer-preview.js.map +1 -0
  66. package/dist/wire/src/goal.d.ts +66 -0
  67. package/dist/wire/src/goal.js +19 -0
  68. package/dist/wire/src/goal.js.map +1 -0
  69. package/dist/wire/src/index.d.ts +2 -0
  70. package/dist/wire/src/index.js +2 -0
  71. package/dist/wire/src/index.js.map +1 -1
  72. package/dist/wire/src/model.d.ts +78 -0
  73. package/dist/wire/src/model.js +31 -0
  74. package/dist/wire/src/model.js.map +1 -1
  75. package/dist/wire/src/rpc.d.ts +1289 -60
  76. package/dist/wire/src/rpc.js +53 -3
  77. package/dist/wire/src/rpc.js.map +1 -1
  78. package/dist/wire/src/updates.d.ts +334 -22
  79. package/dist/wire/src/updates.js +11 -1
  80. package/dist/wire/src/updates.js.map +1 -1
  81. package/package.json +8 -5
  82. package/scripts/postinstall.mjs +23 -0
@@ -1 +1 @@
1
- {"version":3,"file":"screen-viewer.js","sourceRoot":"","sources":["../../../src/screen-viewer.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,2EAA2E;AAC3E,6EAA6E;AAC7E,mEAAmE;AACnE,EAAE;AACF,4DAA4D;AAC5D,yEAAyE;AACzE,2CAA2C;AAC3C,6EAA6E;AAC7E,+EAA+E;AAC/E,2CAA2C;AAC3C,qGAAqG;AACrG,+EAA+E;AAC/E,6FAA6F;AAC7F,EAAE;AACF,oGAAoG;AACpG,mGAAmG;AACnG,+FAA+F;AAC/F,8FAA8F;AAE9F,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAC5B,uJAAuJ,IAAI,QAAQ,CAAC;AAEtK,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,IAAI,CAAC,qHAAqH,CAAC;IACjI,QAAQ,EAAE,IAAI,CAAC,6DAA6D,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,oGAAoG,CAAC;IACjH,QAAQ,EAAE,IAAI,CAAC,iJAAiJ,CAAC;IACjK,GAAG,EAAE,IAAI,CAAC,0EAA0E,CAAC;IACrF,MAAM,EAAE,IAAI,CAAC,qHAAqH,CAAC;IACnI,MAAM,EAAE,IAAI,CAAC,oDAAoD,CAAC;IAClE,MAAM,EAAE,IAAI,CAAC,oDAAoD,CAAC;IAClE,IAAI,EAAE,IAAI,CAAC,4BAA4B,CAAC;IACxC,KAAK,EAAE,IAAI,CAAC,qDAAqD,CAAC;IAClE,OAAO,EAAE,IAAI,CAAC,sEAAsE,CAAC;IACrF,KAAK,EAAE,IAAI,CAAC,4CAA4C,CAAC;CAC1D,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiJrC,CAAC;AAEF,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8lDtB,CAAC;AAEF,MAAM,MAAM,GAAG,WAAW,YAAY,GAAG,IAAI,OAAO,CAAC;AAErD,MAAM,UAAU,UAAU;IACxB,OAAO;;;;SAIA,KAAK;;;;;;;;;;;;;kEAaoD,KAAK,CAAC,QAAQ;iEACf,KAAK,CAAC,KAAK;+DACb,KAAK,CAAC,GAAG;gEACR,KAAK,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAkD/B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;UACxD,MAAM;eACD,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"screen-viewer.js","sourceRoot":"","sources":["../../../src/screen-viewer.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,2EAA2E;AAC3E,6EAA6E;AAC7E,mEAAmE;AACnE,EAAE;AACF,4DAA4D;AAC5D,yEAAyE;AACzE,2CAA2C;AAC3C,6EAA6E;AAC7E,+EAA+E;AAC/E,2CAA2C;AAC3C,qGAAqG;AACrG,+EAA+E;AAC/E,6FAA6F;AAC7F,EAAE;AACF,oGAAoG;AACpG,mGAAmG;AACnG,+FAA+F;AAC/F,8FAA8F;AAE9F,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAC5B,uJAAuJ,IAAI,QAAQ,CAAC;AAEtK,MAAM,KAAK,GAAG;IACZ,IAAI,EAAE,IAAI,CAAC,qHAAqH,CAAC;IACjI,QAAQ,EAAE,IAAI,CAAC,6DAA6D,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,oGAAoG,CAAC;IACjH,QAAQ,EAAE,IAAI,CAAC,iJAAiJ,CAAC;IACjK,GAAG,EAAE,IAAI,CAAC,0EAA0E,CAAC;IACrF,MAAM,EAAE,IAAI,CAAC,qHAAqH,CAAC;IACnI,MAAM,EAAE,IAAI,CAAC,oDAAoD,CAAC;IAClE,MAAM,EAAE,IAAI,CAAC,oDAAoD,CAAC;IAClE,IAAI,EAAE,IAAI,CAAC,4BAA4B,CAAC;IACxC,KAAK,EAAE,IAAI,CAAC,qDAAqD,CAAC;IAClE,OAAO,EAAE,IAAI,CAAC,sEAAsE,CAAC;IACrF,IAAI,EAAE,IAAI,CAAC,iEAAiE,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,4CAA4C,CAAC;CAC1D,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8GvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkQrC,CAAC;AAEF,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6+DtB,CAAC;AAEF,MAAM,MAAM,GAAG,WAAW,YAAY,GAAG,IAAI,OAAO,CAAC;AAErD,MAAM,UAAU,UAAU;IACxB,OAAO;;;;SAIA,KAAK;;;;;;;;;;;iHAWmG,KAAK,CAAC,KAAK;;;;;;kEAM1D,KAAK,CAAC,QAAQ;iEACf,KAAK,CAAC,KAAK;+DACb,KAAK,CAAC,GAAG;gEACR,KAAK,CAAC,MAAM;gEACZ,KAAK,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAmD7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;UACxD,MAAM;eACD,CAAC;AAChB,CAAC"}
@@ -79,6 +79,14 @@ export declare class HostStore {
79
79
  close(): void;
80
80
  saveTerminal(t: TerminalRecord): void;
81
81
  listTerminals(): TerminalRecord[];
82
+ appendTerminalFrame(id: string, frame: number, cols: number, rows: number, data: string): void;
83
+ lastTerminalFrame(id: string): number;
84
+ terminalFrames(id: string, after: number, through: number): {
85
+ frame: number;
86
+ cols: number;
87
+ rows: number;
88
+ data: string;
89
+ }[];
82
90
  deleteTerminal(id: string): void;
83
91
  /** Inserts a session, or refreshes discovery fields of an existing one. */
84
92
  upsertSession(input: SessionInsert): {
@@ -142,6 +150,8 @@ export declare class HostStore {
142
150
  lastChildTs?: number;
143
151
  };
144
152
  private joined;
153
+ /** Every background-task record the session logged, oldest first (each is a whole record: the last per task holds). */
154
+ taskEvents(sessionId: string): SessionEvent[];
145
155
  /** The latest event of `kind` at or before `seq`. */
146
156
  latestOfKind(sessionId: string, kind: SessionUpdate["sessionUpdate"], seq: number, limit?: number): SessionEvent[];
147
157
  /** Marks a native item (message, tool call) as present in the log. Returns false if it already was. */
@@ -81,6 +81,16 @@ CREATE TABLE IF NOT EXISTS terminals (
81
81
  ended INTEGER NOT NULL DEFAULT 0,
82
82
  buffer TEXT NOT NULL DEFAULT ''
83
83
  );
84
+ -- Original control sequences and geometry are needed to recover image and
85
+ -- keyboard state that a text-only screen serializer cannot represent.
86
+ CREATE TABLE IF NOT EXISTS terminal_frames (
87
+ terminal_id TEXT NOT NULL,
88
+ frame INTEGER NOT NULL,
89
+ cols INTEGER NOT NULL,
90
+ rows INTEGER NOT NULL,
91
+ data TEXT NOT NULL,
92
+ PRIMARY KEY (terminal_id, frame)
93
+ ) WITHOUT ROWID;
84
94
  `;
85
95
  const PATCH_COLUMNS = {
86
96
  title: "title",
@@ -216,7 +226,22 @@ export class HostStore {
216
226
  buffer: String(row.buffer),
217
227
  }));
218
228
  }
229
+ appendTerminalFrame(id, frame, cols, rows, data) {
230
+ this.db.prepare("INSERT INTO terminal_frames (terminal_id, frame, cols, rows, data) VALUES (?, ?, ?, ?, ?)")
231
+ .run(id, frame, cols, rows, data);
232
+ }
233
+ lastTerminalFrame(id) {
234
+ const row = this.db.prepare("SELECT MAX(frame) AS frame FROM terminal_frames WHERE terminal_id = ?").get(id);
235
+ return row.frame ?? 0;
236
+ }
237
+ terminalFrames(id, after, through) {
238
+ // Each frame is at most 64K UTF-16 units; eight keep the RPC bounded even
239
+ // when escaping control characters expands the JSON payload.
240
+ return this.db.prepare("SELECT frame, cols, rows, data FROM terminal_frames WHERE terminal_id = ? AND frame > ? AND frame <= ? ORDER BY frame LIMIT 8")
241
+ .all(id, after, through);
242
+ }
219
243
  deleteTerminal(id) {
244
+ this.db.prepare("DELETE FROM terminal_frames WHERE terminal_id = ?").run(id);
220
245
  this.db.prepare("DELETE FROM terminals WHERE id = ?").run(id);
221
246
  }
222
247
  /** Inserts a session, or refreshes discovery fields of an existing one. */
@@ -462,6 +487,10 @@ export class HostStore {
462
487
  const sessionId = String(values[0]);
463
488
  return rows.map((row) => ({ sessionId, seq: row.seq, ts: row.ts, update: JSON.parse(row.body) }));
464
489
  }
490
+ /** Every background-task record the session logged, oldest first (each is a whole record: the last per task holds). */
491
+ taskEvents(sessionId) {
492
+ return this.joined("m.session_id = ? AND m.kind = 'ls_task' ORDER BY m.seq ASC", [sessionId]);
493
+ }
465
494
  /** The latest event of `kind` at or before `seq`. */
466
495
  latestOfKind(sessionId, kind, seq, limit = 1) {
467
496
  const rows = this.db
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /** Byte cursors stay stable as output grows; never split a UTF-8 character. */
2
+ export declare function outputRange(bytes: Buffer, before: number | undefined, limit: number): {
3
+ text: string;
4
+ start: number;
5
+ size: number;
6
+ };
@@ -0,0 +1,22 @@
1
+ /** Byte cursors stay stable as output grows; never split a UTF-8 character. */
2
+ export function outputRange(bytes, before, limit) {
3
+ const size = bytes.length;
4
+ let end = Math.min(size, Math.max(0, before ?? size));
5
+ while (end < size && end > 0 && (bytes[end] & 0xc0) === 0x80)
6
+ end--;
7
+ // A writer can be in the middle of a multibyte character at EOF.
8
+ let tail = end - 1;
9
+ while (tail >= 0 && (bytes[tail] & 0xc0) === 0x80)
10
+ tail--;
11
+ if (tail >= 0) {
12
+ const lead = bytes[tail];
13
+ const width = lead >= 0xf0 ? 4 : lead >= 0xe0 ? 3 : lead >= 0xc0 ? 2 : 1;
14
+ if (tail + width > end)
15
+ end = tail;
16
+ }
17
+ let start = Math.max(0, end - Math.max(4, Math.min(limit, 256 * 1024)));
18
+ while (start < end && (bytes[start] & 0xc0) === 0x80)
19
+ start++;
20
+ return { text: bytes.subarray(start, end).toString("utf8"), start, size };
21
+ }
22
+ //# sourceMappingURL=task-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-output.js","sourceRoot":"","sources":["../../../src/task-output.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,MAA0B,EAAE,KAAa;IAClF,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IAC1B,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC;IACtD,OAAO,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAE,GAAG,IAAI,CAAC,KAAK,IAAI;QAAE,GAAG,EAAE,CAAC;IACrE,iEAAiE;IACjE,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;IACnB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAE,GAAG,IAAI,CAAC,KAAK,IAAI;QAAE,IAAI,EAAE,CAAC;IAC3D,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,IAAI,GAAG,KAAK,GAAG,GAAG;YAAE,GAAG,GAAG,IAAI,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACxE,OAAO,KAAK,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,GAAG,IAAI,CAAC,KAAK,IAAI;QAAE,KAAK,EAAE,CAAC;IAC/D,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC5E,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import { type TerminalInfo } from "@linkshell/wire";
2
2
  import type { HostStore } from "./store.js";
3
- export type OutputListener = (seq: number, data: string) => void;
3
+ export type OutputListener = (seq: number, data: string, geometry?: {
4
+ frame: number;
5
+ cols: number;
6
+ rows: number;
7
+ }) => void;
4
8
  export type TerminalChangeListener = (terminal: TerminalInfo, closed?: boolean) => void;
5
9
  /**
6
10
  * Live shells plus the history of ended ones. Everything is saved, so after
@@ -28,7 +32,7 @@ export declare class TerminalManager {
28
32
  cols: number;
29
33
  rows: number;
30
34
  }): TerminalInfo;
31
- attach(id: string, listener: OutputListener, fromSeq?: number): {
35
+ attach(id: string, listener: OutputListener, fromSeq?: number, replayFormat?: "frames-v1", fromFrame?: number): {
32
36
  replay: string;
33
37
  reset: boolean;
34
38
  seq: number;
@@ -44,7 +48,38 @@ export declare class TerminalManager {
44
48
  exitCode?: number | null | undefined;
45
49
  interrupted?: boolean | undefined;
46
50
  };
51
+ } | {
52
+ replay: string;
53
+ reset: boolean;
54
+ recording: {
55
+ afterFrame: number;
56
+ throughFrame: number;
57
+ };
58
+ seq: number;
59
+ terminal: {
60
+ id: string;
61
+ title: string;
62
+ cwd: string;
63
+ createdAt: number;
64
+ cols: number;
65
+ rows: number;
66
+ activeAt: number;
67
+ command?: string | undefined;
68
+ exitCode?: number | null | undefined;
69
+ interrupted?: boolean | undefined;
70
+ };
71
+ };
72
+ replay(id: string, afterFrame: number, throughFrame: number): {
73
+ frames: {
74
+ frame: number;
75
+ cols: number;
76
+ rows: number;
77
+ data: string;
78
+ }[];
79
+ nextFrame: number;
80
+ done: boolean;
47
81
  };
82
+ private attachScreen;
48
83
  detach(id: string, listener: OutputListener): void;
49
84
  input(id: string, data: string): void;
50
85
  resize(id: string, cols: number, rows: number): void;
@@ -25,7 +25,7 @@ const SCROLLBACK = 2000;
25
25
  const SAVED_SCROLLBACK = 1000;
26
26
  const SAVE_EVERY_MS = 3000;
27
27
  /** Output is sent in slices at most this often, so a flood of small writes isn't a flood of messages. */
28
- const FLUSH_MS = 12;
28
+ const FLUSH_MS = 8;
29
29
  const FLUSH_BYTES = 64 * 1024;
30
30
  const MAX_TERMINALS = 24;
31
31
  class Terminal {
@@ -36,6 +36,7 @@ class Terminal {
36
36
  rows;
37
37
  command;
38
38
  changed;
39
+ store;
39
40
  id = randomUUID();
40
41
  createdAt = Date.now();
41
42
  /** Output since the last save. */
@@ -46,6 +47,8 @@ class Terminal {
46
47
  chunks = [];
47
48
  bytes = 0;
48
49
  seq = 0;
50
+ frame = 0;
51
+ closed = false;
49
52
  pending = "";
50
53
  flushTimer;
51
54
  listeners = new Set();
@@ -53,7 +56,7 @@ class Terminal {
53
56
  serializer = new SerializeAddon();
54
57
  /** The last chunk the mirror has parsed (it parses asynchronously). */
55
58
  parsedSeq = 0;
56
- constructor(pty, cwd, shell, cols, rows, command, changed) {
59
+ constructor(pty, cwd, shell, cols, rows, command, changed, store) {
57
60
  this.pty = pty;
58
61
  this.cwd = cwd;
59
62
  this.shell = shell;
@@ -61,12 +64,16 @@ class Terminal {
61
64
  this.rows = rows;
62
65
  this.command = command;
63
66
  this.changed = changed;
67
+ this.store = store;
64
68
  this.title = basename(shell);
69
+ this.recordFrame("");
65
70
  this.mirror = new ScreenMirror({ cols, rows, scrollback: SCROLLBACK, allowProposedApi: true });
66
71
  // The addon's types are written against the browser's terminal; it only uses what the headless one has too.
67
72
  this.mirror.loadAddon(this.serializer);
68
73
  pty.onData((data) => this.onData(data));
69
74
  pty.onExit(({ exitCode }) => {
75
+ if (this.closed)
76
+ return;
70
77
  this.flush();
71
78
  this.exitCode = exitCode;
72
79
  this.changed(this);
@@ -151,12 +158,15 @@ class Terminal {
151
158
  resize(cols, rows) {
152
159
  if (!this.running || (cols === this.cols && rows === this.rows))
153
160
  return;
161
+ this.flush();
154
162
  this.cols = cols;
155
163
  this.rows = rows;
164
+ this.recordFrame("");
156
165
  this.pty.resize(cols, rows);
157
166
  this.mirror.resize(cols, rows);
158
167
  }
159
168
  close() {
169
+ this.closed = true;
160
170
  clearTimeout(this.flushTimer);
161
171
  this.listeners.clear();
162
172
  this.mirror.dispose();
@@ -170,6 +180,8 @@ class Terminal {
170
180
  }
171
181
  }
172
182
  onData(data) {
183
+ if (this.closed)
184
+ return;
173
185
  this.activeAt = Date.now();
174
186
  this.dirty = true;
175
187
  this.pending += data;
@@ -183,17 +195,27 @@ class Terminal {
183
195
  this.flushTimer = undefined;
184
196
  if (!this.pending)
185
197
  return;
186
- const chunk = { seq: ++this.seq, data: this.pending };
198
+ let pending = this.pending;
187
199
  this.pending = "";
188
- this.chunks.push(chunk);
189
- this.mirror.write(chunk.data, () => {
190
- this.parsedSeq = chunk.seq;
191
- });
192
- this.bytes += chunk.data.length;
193
- while (this.bytes > BUFFER_BYTES && this.chunks.length > 1)
194
- this.bytes -= this.chunks.shift().data.length;
195
- for (const listener of this.listeners)
196
- listener(chunk.seq, chunk.data);
200
+ while (pending) {
201
+ let end = Math.min(FLUSH_BYTES, pending.length);
202
+ // Splitting a surrogate pair would corrupt a character at the native boundary.
203
+ if (end < pending.length && /[\uD800-\uDBFF]/.test(pending[end - 1]))
204
+ end--;
205
+ const chunk = { seq: ++this.seq, data: pending.slice(0, end) };
206
+ pending = pending.slice(end);
207
+ this.chunks.push(chunk);
208
+ this.recordFrame(chunk.data);
209
+ this.mirror.write(chunk.data, () => { this.parsedSeq = chunk.seq; });
210
+ this.bytes += chunk.data.length;
211
+ while (this.bytes > BUFFER_BYTES && this.chunks.length > 1)
212
+ this.bytes -= this.chunks.shift().data.length;
213
+ for (const listener of this.listeners)
214
+ listener(chunk.seq, chunk.data, { frame: this.frame, cols: this.cols, rows: this.rows });
215
+ }
216
+ }
217
+ recordFrame(data) {
218
+ this.store?.appendTerminalFrame(this.id, ++this.frame, this.cols, this.rows, data);
197
219
  }
198
220
  }
199
221
  function recordInfo(record, interrupted) {
@@ -301,7 +323,7 @@ export class TerminalManager {
301
323
  t.close();
302
324
  }
303
325
  this.emit(t.info());
304
- });
326
+ }, this.store);
305
327
  this.terminals.set(terminal.id, terminal);
306
328
  // Typed into the shell (not `-c`), so the shell stays for whatever comes next.
307
329
  // Once the shell has drawn its prompt: typed any earlier, the tty echoes the
@@ -324,7 +346,25 @@ export class TerminalManager {
324
346
  this.emit(terminal.info());
325
347
  return terminal.info();
326
348
  }
327
- attach(id, listener, fromSeq) {
349
+ attach(id, listener, fromSeq, replayFormat, fromFrame) {
350
+ const attached = this.attachScreen(id, listener, fromSeq);
351
+ const throughFrame = replayFormat ? this.store?.lastTerminalFrame(id) ?? 0 : 0;
352
+ if (!throughFrame)
353
+ return attached;
354
+ const afterFrame = fromFrame !== undefined && fromFrame >= 0 && fromFrame <= throughFrame ? fromFrame : 0;
355
+ return { ...attached, replay: "", reset: afterFrame === 0, recording: { afterFrame, throughFrame } };
356
+ }
357
+ replay(id, afterFrame, throughFrame) {
358
+ if (!this.terminals.has(id) && !this.history.has(id))
359
+ throw RpcError.app("not_found", "终端不存在");
360
+ const latest = this.store?.lastTerminalFrame(id) ?? 0;
361
+ if (throughFrame > latest || afterFrame > throughFrame)
362
+ throw RpcError.app("invalid_params", "终端回放范围无效");
363
+ const frames = this.store?.terminalFrames(id, afterFrame, throughFrame) ?? [];
364
+ const nextFrame = frames.at(-1)?.frame ?? afterFrame;
365
+ return { frames, nextFrame, done: nextFrame >= throughFrame };
366
+ }
367
+ attachScreen(id, listener, fromSeq) {
328
368
  const live = this.terminals.get(id);
329
369
  if (live)
330
370
  return { terminal: live.info(), ...live.attach(listener, fromSeq) };
@@ -1 +1 @@
1
- {"version":3,"file":"terminals.js","sourceRoot":"","sources":["../../../src/terminals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminals.js","sourceRoot":"","sources":["../../../src/terminals.ts"],"names":[],"mappings":"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"}