@polderlabs/bizar-omp 0.6.0 → 0.6.2

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 (56) hide show
  1. package/README.md +9 -4
  2. package/dist/cli/agents-ink.d.ts.map +1 -1
  3. package/dist/cli/agents-ink.js +11 -10
  4. package/dist/cli/agents-ink.js.map +1 -1
  5. package/dist/cli/directory-selector.d.ts +36 -0
  6. package/dist/cli/directory-selector.d.ts.map +1 -1
  7. package/dist/cli/directory-selector.js +25 -0
  8. package/dist/cli/directory-selector.js.map +1 -1
  9. package/dist/cli/main.js +0 -0
  10. package/dist/cli/omb-dashboard.d.ts +1 -0
  11. package/dist/cli/omb-dashboard.d.ts.map +1 -1
  12. package/dist/cli/omb-dashboard.js +14 -4
  13. package/dist/cli/omb-dashboard.js.map +1 -1
  14. package/dist/cli/omb.js +0 -0
  15. package/dist/extension.d.ts +2 -1
  16. package/dist/extension.d.ts.map +1 -1
  17. package/dist/extension.js +160 -33
  18. package/dist/extension.js.map +1 -1
  19. package/dist/omp/daemon-service.d.ts.map +1 -1
  20. package/dist/omp/daemon-service.js +81 -7
  21. package/dist/omp/daemon-service.js.map +1 -1
  22. package/dist/omp/daemon.d.ts +1 -0
  23. package/dist/omp/daemon.d.ts.map +1 -1
  24. package/dist/omp/daemon.js +1 -0
  25. package/dist/omp/daemon.js.map +1 -1
  26. package/dist/omp/dashboard-html.d.ts.map +1 -1
  27. package/dist/omp/dashboard-html.js +363 -38
  28. package/dist/omp/dashboard-html.js.map +1 -1
  29. package/dist/omp/model-role-assignment.d.ts +166 -1
  30. package/dist/omp/model-role-assignment.d.ts.map +1 -1
  31. package/dist/omp/model-role-assignment.js +393 -4
  32. package/dist/omp/model-role-assignment.js.map +1 -1
  33. package/dist/omp/omb-sessions.d.ts +20 -0
  34. package/dist/omp/omb-sessions.d.ts.map +1 -1
  35. package/dist/omp/omb-sessions.js +130 -40
  36. package/dist/omp/omb-sessions.js.map +1 -1
  37. package/dist/omp/omb-settings.d.ts +23 -0
  38. package/dist/omp/omb-settings.d.ts.map +1 -1
  39. package/dist/omp/omb-settings.js +66 -3
  40. package/dist/omp/omb-settings.js.map +1 -1
  41. package/dist/omp/run-log.d.ts +26 -0
  42. package/dist/omp/run-log.d.ts.map +1 -0
  43. package/dist/omp/run-log.js +24 -0
  44. package/dist/omp/run-log.js.map +1 -0
  45. package/dist/omp/tmux.d.ts +20 -2
  46. package/dist/omp/tmux.d.ts.map +1 -1
  47. package/dist/omp/tmux.js +101 -43
  48. package/dist/omp/tmux.js.map +1 -1
  49. package/dist/omp/tray.js +1 -1
  50. package/dist/omp/tray.js.map +1 -1
  51. package/docs/compatibility/baseline.json +1 -1
  52. package/docs/decisions/console-handoff.md +5 -0
  53. package/docs/releases/0.6.1.md +25 -0
  54. package/docs/releases/0.6.2.md +32 -0
  55. package/package.json +1 -1
  56. package/skills/bizar-omp/SKILL.md +2 -1
@@ -1,12 +1,18 @@
1
- import { mkdirSync, readFileSync, writeFileSync } from "node:fs";
1
+ import { mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
2
2
  import { homedir } from "node:os";
3
3
  import { dirname, join } from "node:path";
4
+ import { parseCatalogSnapshot } from "./model-role-assignment.js";
5
+ export const OMB_THINKING_LEVELS = ["off", "minimal", "low", "medium", "high", "xhigh", "max", "auto"];
6
+ export const OMB_APPROVAL_MODES = ["always-ask", "write", "yolo"];
4
7
  export const DEFAULT_OMB_SETTINGS = {
5
8
  autoAttachLatest: true,
6
9
  mouseScrolling: true,
7
10
  showStoppedSessions: false,
8
11
  trayEnabled: false,
9
12
  projectsFolder: "",
13
+ defaultModel: "",
14
+ defaultThinking: "",
15
+ defaultApprovalMode: "",
10
16
  };
11
17
  export function ombSettingsPath(env = process.env) {
12
18
  const base = env.XDG_CONFIG_HOME || join(env.HOME || homedir(), ".config");
@@ -18,16 +24,26 @@ function validBoolean(value, fallback) {
18
24
  function validPath(value, fallback) {
19
25
  return typeof value === "string" ? value.trim() : fallback;
20
26
  }
27
+ function validChoice(value, choices, fallback) {
28
+ return typeof value === "string" && (value === "" || choices.includes(value)) ? value : fallback;
29
+ }
21
30
  export function loadOmbSettings(env = process.env) {
22
31
  try {
23
32
  const value = JSON.parse(readFileSync(ombSettingsPath(env), "utf8"));
24
- return {
33
+ const settings = {
25
34
  autoAttachLatest: validBoolean(value.autoAttachLatest, DEFAULT_OMB_SETTINGS.autoAttachLatest),
26
35
  mouseScrolling: validBoolean(value.mouseScrolling, DEFAULT_OMB_SETTINGS.mouseScrolling),
27
36
  showStoppedSessions: validBoolean(value.showStoppedSessions, DEFAULT_OMB_SETTINGS.showStoppedSessions),
28
37
  trayEnabled: validBoolean(value.trayEnabled, DEFAULT_OMB_SETTINGS.trayEnabled),
29
38
  projectsFolder: validPath(value.projectsFolder, DEFAULT_OMB_SETTINGS.projectsFolder),
39
+ defaultModel: validPath(value.defaultModel, DEFAULT_OMB_SETTINGS.defaultModel).slice(0, 256),
40
+ defaultThinking: validChoice(value.defaultThinking, OMB_THINKING_LEVELS, DEFAULT_OMB_SETTINGS.defaultThinking),
41
+ defaultApprovalMode: validChoice(value.defaultApprovalMode, OMB_APPROVAL_MODES, DEFAULT_OMB_SETTINGS.defaultApprovalMode),
30
42
  };
43
+ const catalog = parseCatalogSnapshot(value.modelCatalog);
44
+ if (catalog)
45
+ settings.modelCatalog = catalog;
46
+ return settings;
31
47
  }
32
48
  catch {
33
49
  return { ...DEFAULT_OMB_SETTINGS };
@@ -36,6 +52,53 @@ export function loadOmbSettings(env = process.env) {
36
52
  export function saveOmbSettings(settings, env = process.env) {
37
53
  const path = ombSettingsPath(env);
38
54
  mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
39
- writeFileSync(path, `${JSON.stringify(settings, null, 2)}\n`, { mode: 0o600 });
55
+ // Temp file plus rename: a reader or a crash never observes a half-written file.
56
+ const temporary = `${path}.${process.pid}.tmp`;
57
+ writeFileSync(temporary, `${JSON.stringify(settings, null, 2)}\n`, { mode: 0o600 });
58
+ renameSync(temporary, path);
59
+ }
60
+ /**
61
+ * Record the observed model catalog without ever replacing settings that could
62
+ * not be read. An existing but unparseable `omb.json` is left byte-for-byte
63
+ * untouched and reported, because that file may hold launcher preferences an
64
+ * interrupted write or a hand edit corrupted; rewriting it as defaults would
65
+ * silently discard the operator's configuration.
66
+ */
67
+ export function recordCatalogObservation(catalog, env = process.env) {
68
+ const path = ombSettingsPath(env);
69
+ let raw;
70
+ try {
71
+ raw = readFileSync(path, "utf8");
72
+ }
73
+ catch (error) {
74
+ if (error.code !== "ENOENT")
75
+ return { ok: false, reason: describeWriteError(error) };
76
+ }
77
+ let existing = {};
78
+ if (raw !== undefined) {
79
+ try {
80
+ const parsed = JSON.parse(raw);
81
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed))
82
+ throw new Error("settings root is not an object");
83
+ existing = parsed;
84
+ }
85
+ catch (error) {
86
+ return { ok: false, reason: `${path} is not readable JSON (${describeWriteError(error)}); left untouched` };
87
+ }
88
+ }
89
+ try {
90
+ const merged = { ...existing, modelCatalog: catalog };
91
+ mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
92
+ const temporary = `${path}.${process.pid}.tmp`;
93
+ writeFileSync(temporary, `${JSON.stringify(merged, null, 2)}\n`, { mode: 0o600 });
94
+ renameSync(temporary, path);
95
+ return { ok: true };
96
+ }
97
+ catch (error) {
98
+ return { ok: false, reason: describeWriteError(error) };
99
+ }
100
+ }
101
+ function describeWriteError(error) {
102
+ return error instanceof Error ? error.message : String(error);
40
103
  }
41
104
  //# sourceMappingURL=omb-settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"omb-settings.js","sourceRoot":"","sources":["../../src/omp/omb-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAW1C,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,KAAK;IAC1B,WAAW,EAAE,KAAK;IAClB,cAAc,EAAE,EAAE;CACnB,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,GAAG,GAAsB,OAAO,CAAC,GAAG;IAClE,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IAC3E,OAAO,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,QAAiB;IACrD,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACvD,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,QAAgB;IACjD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAG,GAAsB,OAAO,CAAC,GAAG;IAClE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAyB,CAAC;QAC7F,OAAO;YACL,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,gBAAgB,CAAC;YAC7F,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC,cAAc,CAAC;YACvF,mBAAmB,EAAE,YAAY,CAAC,KAAK,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,mBAAmB,CAAC;YACtG,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,oBAAoB,CAAC,WAAW,CAAC;YAC9E,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC,cAAc,CAAC;SACrF,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACrC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAAqB,EAAE,GAAG,GAAsB,OAAO,CAAC,GAAG;IACzF,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAClC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"omb-settings.js","sourceRoot":"","sources":["../../src/omp/omb-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Operator report that no longer fits OMP's status line.
3
+ *
4
+ * `ctx.ui.notify(message, "info")` renders through the host status line, which
5
+ * folds a single text component onto about two screen lines. A report longer
6
+ * than that arrives clipped, so the command that produced it writes the
7
+ * complete text here and points the operator at it. Only the notice is fitted;
8
+ * this log always holds the report verbatim.
9
+ */
10
+ export interface RunLogEntry {
11
+ /** Command or subsystem that produced the report. */
12
+ event: string;
13
+ /** Complete report text, exactly as the command returned it. */
14
+ detail: string;
15
+ /** Last session entry seen when the report was produced, when the host exposes one. */
16
+ sessionEntry?: string;
17
+ }
18
+ /** Run logs live beside the project journal, so a project keeps one directory. */
19
+ export declare function runLogPath(cwd: string): string;
20
+ /**
21
+ * Append one entry as a single JSON line. A run log is operator bookkeeping: a
22
+ * directory that cannot be created or written must never turn a completed
23
+ * command into a failed one, so the caller sees false instead of an exception.
24
+ */
25
+ export declare function appendRunLog(cwd: string, entry: RunLogEntry): boolean;
26
+ //# sourceMappingURL=run-log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-log.d.ts","sourceRoot":"","sources":["../../src/omp/run-log.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAUrE"}
@@ -0,0 +1,24 @@
1
+ import { appendFileSync, mkdirSync } from "node:fs";
2
+ import { dirname, join } from "node:path";
3
+ /** Run logs live beside the project journal, so a project keeps one directory. */
4
+ export function runLogPath(cwd) {
5
+ return join(cwd, ".bizar-omp", "run.log");
6
+ }
7
+ /**
8
+ * Append one entry as a single JSON line. A run log is operator bookkeeping: a
9
+ * directory that cannot be created or written must never turn a completed
10
+ * command into a failed one, so the caller sees false instead of an exception.
11
+ */
12
+ export function appendRunLog(cwd, entry) {
13
+ const line = `${JSON.stringify({ at: new Date().toISOString(), ...entry })}\n`;
14
+ try {
15
+ const path = runLogPath(cwd);
16
+ mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
17
+ appendFileSync(path, line, { mode: 0o600 });
18
+ return true;
19
+ }
20
+ catch {
21
+ return false;
22
+ }
23
+ }
24
+ //# sourceMappingURL=run-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-log.js","sourceRoot":"","sources":["../../src/omp/run-log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAoB1C,kFAAkF;AAClF,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,KAAkB;IAC1D,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC;IAC/E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC7B,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -23,6 +23,22 @@ export interface OmbSessionConsole {
23
23
  code: number;
24
24
  text: string;
25
25
  }
26
+ /**
27
+ * Lines of history kept for the window an OMB session runs in.
28
+ *
29
+ * tmux defaults to 2000 lines, which a long OMP chat scrolls past in one
30
+ * sitting: the pane then drops the messages the operator needs to review and
31
+ * neither the wheel binding nor copy-mode can bring them back. `history-limit`
32
+ * is a window option, so it is set on the session's own window — every other
33
+ * tmux session keeps the limit its owner configured.
34
+ */
35
+ export declare const OMB_SESSION_HISTORY_LIMIT = 100000;
36
+ /**
37
+ * Raise one Bizar-owned session's window history limit. Idempotent, so attach
38
+ * paths run it too: a session created before the limit was raised must not stay
39
+ * capped at 2000 lines for the rest of its life.
40
+ */
41
+ export declare function raiseOmbSessionHistory(session: string, cwd?: string, env?: NodeJS.ProcessEnv): Promise<number>;
26
42
  /** Capture a bounded, plain-text view of one Bizar-owned session's active pane. */
27
43
  export declare function captureOmbSessionConsole(session: string, cwd?: string, env?: NodeJS.ProcessEnv, lines?: number): Promise<OmbSessionConsole>;
28
44
  /** Send literal composer text followed by Enter to one Bizar-owned session. */
@@ -31,9 +47,11 @@ export declare function sendOmbSessionInput(session: string, input: string, cwd?
31
47
  * Open one Bizar-owned session in a new terminal emulator window. The daemon
32
48
  * and hub run without a controlling TTY, so attaching means handing the attach
33
49
  * command to a terminal we spawn; when no emulator exists the caller still
34
- * receives the exact command to run by hand.
50
+ * receives the exact command to run by hand. Attaching is also where a session
51
+ * created before the history limit was raised is repaired, because an operator
52
+ * attaching to a long-running chat is the one who needs its scrollback.
35
53
  */
36
- export declare function openOmbSessionInTerminal(session: string, env?: NodeJS.ProcessEnv): OmbAttachLaunch;
54
+ export declare function openOmbSessionInTerminal(session: string, env?: NodeJS.ProcessEnv): Promise<OmbAttachLaunch>;
37
55
  /** Open a fixed Bizar CLI command in a new terminal emulator window. */
38
56
  export declare function openCommandInTerminal(command: string, env?: NodeJS.ProcessEnv): OmbAttachLaunch;
39
57
  /** Apply the launcher mouse preference to one exact Bizar-owned session. */
@@ -1 +1 @@
1
- {"version":3,"file":"tmux.d.ts","sourceRoot":"","sources":["../../src/omp/tmux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tmux.d.ts","sourceRoot":"","sources":["../../src/omp/tmux.ts"],"names":[],"mappings":"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"}
package/dist/omp/tmux.js CHANGED
@@ -2,7 +2,7 @@ import { createHash } from "node:crypto";
2
2
  import { spawn } from "node:child_process";
3
3
  import { statSync } from "node:fs";
4
4
  import { basename, join } from "node:path";
5
- import { clearOmbSessionDeleted, findLastOmbSession, markOmbSessionDeleted, ombSessionDir, resolveMultiplexerBin } from "./omb-sessions.js";
5
+ import { clearOmbSessionDeleted, findLastOmbSession, isOmbSessionName, markOmbSessionDeleted, ombSessionBoundNames, ombSessionDir, resolveMultiplexerBin } from "./omb-sessions.js";
6
6
  import { loadOmbSettings } from "./omb-settings.js";
7
7
  const NON_INTERACTIVE_FLAGS = new Set(["-p", "--print", "--export"]);
8
8
  const NON_INTERACTIVE_MODES = new Set(["json", "rpc", "rpc-ui", "acp"]);
@@ -63,12 +63,24 @@ function readTmux(command, args, cwd, env) {
63
63
  child.once("close", (code, signal) => closed.resolve({ code: exitCode(code, signal), output }));
64
64
  return closed.promise;
65
65
  }
66
+ /**
67
+ * Stop the parent's stdin read loop before handing the TTY to an inherit
68
+ * child. On Windows a flowing stdin with no data listener (the state an ink
69
+ * unmount can leave behind) consumes console input records, so a psmux
70
+ * attach sharing the console never sees keystrokes. Pausing only stops this
71
+ * process from reading; the inherit child keeps full access. The attached
72
+ * client restores terminal state itself, so nothing is restored here.
73
+ */
74
+ function quiesceStdinForHandoff() {
75
+ if (process.stdin.isTTY === true && !process.stdin.isPaused())
76
+ process.stdin.pause();
77
+ }
66
78
  /**
67
79
  * Apply the standard Bizar options to a Bizar-owned session: respawn dead
68
- * panes, remain-on-exit off, mouse preference, and the private root table so
69
- * Ctrl-D/C detach the client without sending exit or interrupt input into
70
- * OMP. The tmux host remains alive for background work, and the normal Ctrl-B
71
- * prefix still enters tmux's standard prefix table.
80
+ * panes, remain-on-exit off, window history limit, mouse preference, and the
81
+ * private root table so Ctrl-D/C detach the client without sending exit or
82
+ * interrupt input into OMP. The tmux host remains alive for background work,
83
+ * and the normal Ctrl-B prefix still enters tmux's standard prefix table.
72
84
  */
73
85
  async function prepareOmbSession(tmux, omp, session, cwd, childEnv, mouseScrolling) {
74
86
  // Keep the respawn opportunity below for stale sessions, but do not leave
@@ -87,31 +99,43 @@ async function prepareOmbSession(tmux, omp, session, cwd, childEnv, mouseScrolli
87
99
  const remainOnExitOff = await runTmux(tmux, ["set-option", "-t", session, "remain-on-exit", "off"], cwd, childEnv);
88
100
  if (remainOnExitOff !== 0)
89
101
  return remainOnExitOff;
102
+ // Keep the conversation reviewable: the pane's history is the only scrollback
103
+ // an OMP session has, and the tmux default holds minutes of a live chat.
104
+ const historyRaised = await runTmux(tmux, sessionHistoryArgs(session), cwd, childEnv);
105
+ if (historyRaised !== 0)
106
+ return historyRaised;
90
107
  // tmux must own wheel events so the terminal scrolls the pane instead of
91
108
  // translating them into up/down input for OMP's prompt-history editor.
92
109
  const mouseEnabled = await runTmux(tmux, ["set-option", "-t", session, "mouse", mouseScrolling ? "on" : "off"], cwd, childEnv);
93
110
  if (mouseEnabled !== 0)
94
111
  return mouseEnabled;
95
- const keyTable = `${session}-bizar-root`;
96
112
  // Keep pointer events inside the Bizar-owned key table. Without these
97
113
  // explicit bindings, tmux consumes wheel/click events while an OMP
98
114
  // alternate-screen overlay is active, so Advisor never receives them; when
99
115
  // the main OMP screen is active, the wheel should scroll tmux's pane.
100
- const bindWheelUp = await runTmux(tmux, ["bind-key", "-T", keyTable, "WheelUpPane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "copy-mode -e; send-keys -M"], cwd, childEnv);
101
- const bindWheelDown = await runTmux(tmux, ["bind-key", "-T", keyTable, "WheelDownPane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "send-keys -M"], cwd, childEnv);
102
- const bindMouseDown = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseDown1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "select-pane"], cwd, childEnv);
103
- const bindMouseDrag = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseDrag1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "copy-mode -e; send-keys -M"], cwd, childEnv);
104
- const bindMouseUp = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseUp1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", ""], cwd, childEnv);
105
- const bindDetach = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-d", "detach-client"], cwd, childEnv);
106
- if (bindDetach !== 0)
107
- return bindDetach;
108
- const bindInterruptDetach = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-c", "detach-client"], cwd, childEnv);
109
- if (bindInterruptDetach !== 0)
110
- return bindInterruptDetach;
111
- const bindPrefix = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-b", "switch-client", "-T", "prefix"], cwd, childEnv);
112
- if (bindPrefix !== 0)
113
- return bindPrefix;
114
- return runTmux(tmux, ["set-option", "-t", session, "key-table", keyTable], cwd, childEnv);
116
+ // psmux ignores persistent key-table assignment (and its #583 `set-option`
117
+ // quirk eats dash-leading values), so skip the binds there; real tmux keeps
118
+ // them.
119
+ const psmuxMode = process.platform === "win32" && tmux === resolveMultiplexerBin();
120
+ if (!psmuxMode) {
121
+ const keyTable = `${session}-bizar-root`;
122
+ const bindWheelUp = await runTmux(tmux, ["bind-key", "-T", keyTable, "WheelUpPane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "copy-mode -e; send-keys -M"], cwd, childEnv);
123
+ const bindWheelDown = await runTmux(tmux, ["bind-key", "-T", keyTable, "WheelDownPane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "send-keys -M"], cwd, childEnv);
124
+ const bindMouseDown = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseDown1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "select-pane"], cwd, childEnv);
125
+ const bindMouseDrag = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseDrag1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", "copy-mode -e; send-keys -M"], cwd, childEnv);
126
+ const bindMouseUp = await runTmux(tmux, ["bind-key", "-T", keyTable, "MouseUp1Pane", "if-shell", "-F", "#{alternate_on}", "send-keys -M", ""], cwd, childEnv);
127
+ const bindDetach = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-d", "detach-client"], cwd, childEnv);
128
+ if (bindDetach !== 0)
129
+ return bindDetach;
130
+ const bindInterruptDetach = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-c", "detach-client"], cwd, childEnv);
131
+ if (bindInterruptDetach !== 0)
132
+ return bindInterruptDetach;
133
+ const bindPrefix = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-b", "switch-client", "-T", "prefix"], cwd, childEnv);
134
+ if (bindPrefix !== 0)
135
+ return bindPrefix;
136
+ return runTmux(tmux, ["set-option", "-t", session, "key-table", keyTable], cwd, childEnv);
137
+ }
138
+ return 0;
115
139
  }
116
140
  async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling, sessionDir) {
117
141
  const childEnv = { ...env, BIZAR_OMP_NO_TMUX: "1" };
@@ -129,15 +153,13 @@ async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling,
129
153
  const prepared = await prepareOmbSession(tmux, omp, session, cwd, childEnv, mouseScrolling);
130
154
  if (prepared !== 0)
131
155
  return prepared;
156
+ quiesceStdinForHandoff();
132
157
  const client = spawn(tmux, ["attach-session", "-t", session], { cwd, env: childEnv, stdio: "inherit" });
133
158
  const closed = Promise.withResolvers();
134
159
  client.once("error", closed.reject);
135
160
  client.once("close", (code, signal) => closed.resolve(exitCode(code, signal)));
136
161
  return closed.promise;
137
162
  }
138
- function ownedSession(session) {
139
- return /^bizar-[A-Za-z0-9_.-]+$/.test(session);
140
- }
141
163
  /**
142
164
  * Terminal emulators that can host an interactive attach, in preference order.
143
165
  * `$BIZAR_TERMINAL` overrides the list; `xfce4-terminal` takes the command as
@@ -179,6 +201,29 @@ export function findOnPath(bin, env = process.env) {
179
201
  const SESSION_CONSOLE_MAX_LINES = 1_000;
180
202
  const SESSION_CONSOLE_MAX_CHARS = 128 * 1024;
181
203
  const SESSION_INPUT_MAX_BYTES = 16 * 1024;
204
+ /**
205
+ * Lines of history kept for the window an OMB session runs in.
206
+ *
207
+ * tmux defaults to 2000 lines, which a long OMP chat scrolls past in one
208
+ * sitting: the pane then drops the messages the operator needs to review and
209
+ * neither the wheel binding nor copy-mode can bring them back. `history-limit`
210
+ * is a window option, so it is set on the session's own window — every other
211
+ * tmux session keeps the limit its owner configured.
212
+ */
213
+ export const OMB_SESSION_HISTORY_LIMIT = 100_000;
214
+ function sessionHistoryArgs(session) {
215
+ return ["set-option", "-w", "-t", `${session}:0`, "history-limit", String(OMB_SESSION_HISTORY_LIMIT)];
216
+ }
217
+ /**
218
+ * Raise one Bizar-owned session's window history limit. Idempotent, so attach
219
+ * paths run it too: a session created before the limit was raised must not stay
220
+ * capped at 2000 lines for the rest of its life.
221
+ */
222
+ export async function raiseOmbSessionHistory(session, cwd = process.cwd(), env = process.env) {
223
+ if (!isOmbSessionName(session))
224
+ return 2;
225
+ return runTmux(resolveMultiplexerBin(env), sessionHistoryArgs(session), cwd, { ...env, BIZAR_OMP_NO_TMUX: "1" });
226
+ }
182
227
  function cleanTerminalText(value) {
183
228
  return value
184
229
  .replace(/\u001B\][^\u0007]*(?:\u0007|\u001B\\)/g, "")
@@ -190,7 +235,7 @@ function cleanTerminalText(value) {
190
235
  }
191
236
  /** Capture a bounded, plain-text view of one Bizar-owned session's active pane. */
192
237
  export async function captureOmbSessionConsole(session, cwd = process.cwd(), env = process.env, lines = 500) {
193
- if (!ownedSession(session))
238
+ if (!isOmbSessionName(session))
194
239
  return { code: 2, text: "" };
195
240
  const requestedLines = Number.isFinite(lines) ? Math.floor(lines) : 500;
196
241
  const boundedLines = Math.max(1, Math.min(SESSION_CONSOLE_MAX_LINES, requestedLines));
@@ -200,7 +245,7 @@ export async function captureOmbSessionConsole(session, cwd = process.cwd(), env
200
245
  }
201
246
  /** Send literal composer text followed by Enter to one Bizar-owned session. */
202
247
  export async function sendOmbSessionInput(session, input, cwd = process.cwd(), env = process.env) {
203
- if (!ownedSession(session) || !input.trim() || input.includes("\u0000") || Buffer.byteLength(input) > SESSION_INPUT_MAX_BYTES)
248
+ if (!isOmbSessionName(session) || !input.trim() || input.includes("\u0000") || Buffer.byteLength(input) > SESSION_INPUT_MAX_BYTES)
204
249
  return 2;
205
250
  const tmux = resolveMultiplexerBin(env);
206
251
  const childEnv = { ...env, BIZAR_OMP_NO_TMUX: "1" };
@@ -213,13 +258,21 @@ export async function sendOmbSessionInput(session, input, cwd = process.cwd(), e
213
258
  * Open one Bizar-owned session in a new terminal emulator window. The daemon
214
259
  * and hub run without a controlling TTY, so attaching means handing the attach
215
260
  * command to a terminal we spawn; when no emulator exists the caller still
216
- * receives the exact command to run by hand.
261
+ * receives the exact command to run by hand. Attaching is also where a session
262
+ * created before the history limit was raised is repaired, because an operator
263
+ * attaching to a long-running chat is the one who needs its scrollback.
217
264
  */
218
- export function openOmbSessionInTerminal(session, env = process.env) {
265
+ export async function openOmbSessionInTerminal(session, env = process.env) {
219
266
  // Names come from tmux; keep the shell command single-quoted and refuse
220
267
  // anything outside the character set Bizar ever generates.
221
- if (!ownedSession(session) || !/^[A-Za-z0-9_.-]+$/.test(session))
268
+ if (!isOmbSessionName(session) || !/^[A-Za-z0-9_.-]+$/.test(session))
222
269
  return { spawned: false, command: "" };
270
+ // Best effort: a session that cannot take the option is attached to anyway so
271
+ // the operator still sees why the attach failed.
272
+ try {
273
+ await raiseOmbSessionHistory(session, process.cwd(), env);
274
+ }
275
+ catch { /* attach proceeds */ }
223
276
  const multiplexer = resolveMultiplexerBin(env).replace(/'/g, "'\\''");
224
277
  const command = `'${multiplexer}' attach-session -t '${session}'`;
225
278
  return openCommandInTerminal(command, env);
@@ -249,7 +302,7 @@ export function openCommandInTerminal(command, env = process.env) {
249
302
  }
250
303
  /** Apply the launcher mouse preference to one exact Bizar-owned session. */
251
304
  export function setOmbSessionMouse(session, enabled, cwd = process.cwd(), env = process.env) {
252
- if (!ownedSession(session))
305
+ if (!isOmbSessionName(session))
253
306
  return Promise.resolve(2);
254
307
  return runTmux(resolveMultiplexerBin(env), ["set-option", "-t", session, "mouse", enabled ? "on" : "off"], cwd, {
255
308
  ...env,
@@ -258,7 +311,7 @@ export function setOmbSessionMouse(session, enabled, cwd = process.cwd(), env =
258
311
  }
259
312
  /** Rename one exact Bizar-owned tmux session. */
260
313
  export function renameOmbSession(session, nextName, cwd = process.cwd(), env = process.env) {
261
- if (!ownedSession(session) || !ownedSession(nextName))
314
+ if (!isOmbSessionName(session) || !isOmbSessionName(nextName))
262
315
  return Promise.resolve(2);
263
316
  return runTmux(resolveMultiplexerBin(env), ["rename-session", "-t", session, nextName], cwd, {
264
317
  ...env,
@@ -266,21 +319,24 @@ export function renameOmbSession(session, nextName, cwd = process.cwd(), env = p
266
319
  });
267
320
  }
268
321
  /** Kill one exact Bizar-owned tmux session after the caller has confirmed it. */
269
- export function deleteOmbSession(session, cwd = process.cwd(), env = process.env) {
270
- if (!ownedSession(session))
271
- return Promise.resolve(2);
272
- return runTmux(resolveMultiplexerBin(env), ["kill-session", "-t", session], cwd, {
273
- ...env,
274
- BIZAR_OMP_NO_TMUX: "1",
275
- }).then(code => {
276
- if (code !== 0)
277
- return code;
278
- return markOmbSessionDeleted(session, env) ? 0 : 1;
279
- });
322
+ export async function deleteOmbSession(session, cwd = process.cwd(), env = process.env) {
323
+ if (!isOmbSessionName(session))
324
+ return 2;
325
+ const childEnv = { ...env, BIZAR_OMP_NO_TMUX: "1" };
326
+ // A renamed session journals into the directory it was started with, so read
327
+ // the pane binding while the session still exists.
328
+ const bound = await ombSessionBoundNames(session, cwd, childEnv);
329
+ const code = await runTmux(resolveMultiplexerBin(env), ["kill-session", "-t", session], cwd, childEnv);
330
+ // Deletion outlives the tmux binding. The row the user removed came from one
331
+ // of these journals, so every directory behind this session is tombstoned:
332
+ // when tmux has already lost the session, its journal must not come back as a
333
+ // row that cannot be opened.
334
+ const tombstoned = [session, ...bound].every(name => markOmbSessionDeleted(name, env));
335
+ return tombstoned ? 0 : code;
280
336
  }
281
337
  /** Hide an unhosted journal record that has no tmux session left to kill. */
282
338
  export function forgetOmbSession(session, env = process.env) {
283
- if (!ownedSession(session))
339
+ if (!isOmbSessionName(session))
284
340
  return 2;
285
341
  return markOmbSessionDeleted(session, env) ? 0 : 1;
286
342
  }
@@ -290,6 +346,7 @@ export function attachOmbSession(session, cwd = process.cwd(), env = process.env
290
346
  const args = env.TMUX || env.TMUX_PANE
291
347
  ? ["switch-client", "-t", session]
292
348
  : ["attach-session", "-t", session];
349
+ quiesceStdinForHandoff();
293
350
  const child = spawn(tmux, args, { cwd, env: { ...env, BIZAR_OMP_NO_TMUX: "1" }, stdio: "inherit" });
294
351
  return new Promise((resolve, reject) => {
295
352
  // A missing multiplexer degrades to a nonzero exit like a failed attach;
@@ -332,6 +389,7 @@ export async function launchOmb(cwd, args, env = process.env, sessionId) {
332
389
  throw error;
333
390
  }
334
391
  }
392
+ quiesceStdinForHandoff();
335
393
  const child = spawn(omp, args, { cwd, env, stdio: "inherit" });
336
394
  const closed = Promise.withResolvers();
337
395
  child.once("error", closed.reject);
@@ -1 +1 @@
1
- {"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../src/omp/tmux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../src/omp/tmux.ts"],"names":[],"mappings":"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"}
package/dist/omp/tray.js CHANGED
@@ -85,7 +85,7 @@ async function handleClick(id, env, tray) {
85
85
  if (id.startsWith("attach:")) {
86
86
  const name = id.slice("attach:".length);
87
87
  if ((await listOmbSessions(process.cwd(), env, { includeStopped: false })).some(session => session.name === name)) {
88
- openOmbSessionInTerminal(name, env);
88
+ await openOmbSessionInTerminal(name, env);
89
89
  }
90
90
  }
91
91
  }