@polderlabs/bizar-omp 0.4.8 → 0.4.10
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 +55 -3
- package/dist/cli/agents-ink.d.ts +1 -1
- package/dist/cli/agents-ink.d.ts.map +1 -1
- package/dist/cli/agents-ink.js +62 -25
- package/dist/cli/agents-ink.js.map +1 -1
- package/dist/cli/agents.d.ts.map +1 -1
- package/dist/cli/agents.js +24 -14
- package/dist/cli/agents.js.map +1 -1
- package/dist/cli/directory-selector.d.ts.map +1 -1
- package/dist/cli/directory-selector.js +3 -1
- package/dist/cli/directory-selector.js.map +1 -1
- package/dist/cli/doctor.d.ts +6 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +17 -1
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/main.js +0 -0
- package/dist/cli/omb-daemon.d.ts +2 -0
- package/dist/cli/omb-daemon.d.ts.map +1 -0
- package/dist/cli/omb-daemon.js +121 -0
- package/dist/cli/omb-daemon.js.map +1 -0
- package/dist/cli/omb-dashboard.d.ts +12 -0
- package/dist/cli/omb-dashboard.d.ts.map +1 -0
- package/dist/cli/omb-dashboard.js +103 -0
- package/dist/cli/omb-dashboard.js.map +1 -0
- package/dist/cli/omb.js +29 -0
- package/dist/cli/omb.js.map +1 -1
- package/dist/cli/process.d.ts.map +1 -1
- package/dist/cli/process.js +5 -1
- package/dist/cli/process.js.map +1 -1
- package/dist/cli/setup-ui.js +1 -1
- package/dist/cli/setup-ui.js.map +1 -1
- package/dist/extension.d.ts.map +1 -1
- package/dist/extension.js +51 -0
- package/dist/extension.js.map +1 -1
- package/dist/omp/daemon-service.d.ts +24 -0
- package/dist/omp/daemon-service.d.ts.map +1 -0
- package/dist/omp/daemon-service.js +272 -0
- package/dist/omp/daemon-service.js.map +1 -0
- package/dist/omp/daemon.d.ts +48 -0
- package/dist/omp/daemon.d.ts.map +1 -0
- package/dist/omp/daemon.js +193 -0
- package/dist/omp/daemon.js.map +1 -0
- package/dist/omp/dashboard-html.d.ts +9 -0
- package/dist/omp/dashboard-html.d.ts.map +1 -0
- package/dist/omp/dashboard-html.js +594 -0
- package/dist/omp/dashboard-html.js.map +1 -0
- package/dist/omp/model-role-assignment.d.ts +3 -0
- package/dist/omp/model-role-assignment.d.ts.map +1 -1
- package/dist/omp/model-role-assignment.js +28 -6
- package/dist/omp/model-role-assignment.js.map +1 -1
- package/dist/omp/omb-sessions.d.ts +47 -2
- package/dist/omp/omb-sessions.d.ts.map +1 -1
- package/dist/omp/omb-sessions.js +236 -108
- package/dist/omp/omb-sessions.js.map +1 -1
- package/dist/omp/omb-settings.d.ts +1 -0
- package/dist/omp/omb-settings.d.ts.map +1 -1
- package/dist/omp/omb-settings.js +2 -0
- package/dist/omp/omb-settings.js.map +1 -1
- package/dist/omp/session-activity.d.ts +71 -0
- package/dist/omp/session-activity.d.ts.map +1 -0
- package/dist/omp/session-activity.js +361 -0
- package/dist/omp/session-activity.js.map +1 -0
- package/dist/omp/tmux.d.ts +26 -0
- package/dist/omp/tmux.d.ts.map +1 -1
- package/dist/omp/tmux.js +184 -49
- package/dist/omp/tmux.js.map +1 -1
- package/dist/omp/tray-icons.d.ts +6 -0
- package/dist/omp/tray-icons.d.ts.map +1 -0
- package/dist/omp/tray-icons.js +78 -0
- package/dist/omp/tray-icons.js.map +1 -0
- package/dist/omp/tray.d.ts +24 -0
- package/dist/omp/tray.d.ts.map +1 -0
- package/dist/omp/tray.js +167 -0
- package/dist/omp/tray.js.map +1 -0
- package/docs/compatibility/baseline.json +1 -1
- package/docs/releases/0.4.10.md +13 -0
- package/docs/releases/0.4.9.md +6 -0
- package/package.json +2 -1
package/dist/omp/tmux.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
2
|
import { spawn } from "node:child_process";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { statSync } from "node:fs";
|
|
4
|
+
import { basename, join } from "node:path";
|
|
5
|
+
import { findLastOmbSession, ombSessionDir, resolveMultiplexerBin } from "./omb-sessions.js";
|
|
5
6
|
import { loadOmbSettings } from "./omb-settings.js";
|
|
6
7
|
const NON_INTERACTIVE_FLAGS = new Set(["-p", "--print", "--export"]);
|
|
7
8
|
const NON_INTERACTIVE_MODES = new Set(["json", "rpc", "rpc-ui", "acp"]);
|
|
@@ -16,8 +17,6 @@ function modeOf(args) {
|
|
|
16
17
|
export function shouldLaunchOmbInTmux(options = {}) {
|
|
17
18
|
const env = options.env ?? process.env;
|
|
18
19
|
const args = options.args ?? process.argv.slice(2);
|
|
19
|
-
if (process.platform === "win32")
|
|
20
|
-
return false;
|
|
21
20
|
if (env.TMUX || env.TMUX_PANE || env.BIZAR_OMP_NO_TMUX === "1")
|
|
22
21
|
return false;
|
|
23
22
|
if (options.stdinIsTTY !== true || options.stdoutIsTTY !== true)
|
|
@@ -42,36 +41,36 @@ function exitCode(code, signal) {
|
|
|
42
41
|
return code;
|
|
43
42
|
return signal ? 1 : 1;
|
|
44
43
|
}
|
|
44
|
+
/** Node reports an unresolvable spawn target as ENOENT (or EINVAL for .cmd shims). */
|
|
45
|
+
function isMissingBinaryError(error) {
|
|
46
|
+
const code = error?.code;
|
|
47
|
+
return code === "ENOENT" || code === "EINVAL";
|
|
48
|
+
}
|
|
45
49
|
function runTmux(command, args, cwd, env) {
|
|
46
50
|
const child = spawn(command, args, { cwd, env, stdio: "ignore" });
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
+
const closed = Promise.withResolvers();
|
|
52
|
+
child.once("error", closed.reject);
|
|
53
|
+
child.once("close", (code, signal) => closed.resolve(exitCode(code, signal)));
|
|
54
|
+
return closed.promise;
|
|
51
55
|
}
|
|
52
56
|
function readTmux(command, args, cwd, env) {
|
|
53
57
|
const child = spawn(command, args, { cwd, env, stdio: ["ignore", "pipe", "ignore"] });
|
|
54
58
|
let output = "";
|
|
55
59
|
child.stdout?.setEncoding("utf8");
|
|
56
60
|
child.stdout?.on("data", chunk => { output += chunk; });
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
+
const closed = Promise.withResolvers();
|
|
62
|
+
child.once("error", closed.reject);
|
|
63
|
+
child.once("close", (code, signal) => closed.resolve({ code: exitCode(code, signal), output }));
|
|
64
|
+
return closed.promise;
|
|
61
65
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
const racedIntoExisting = await runTmux(tmux, ["has-session", "-t", session], cwd, childEnv);
|
|
71
|
-
if (racedIntoExisting !== 0)
|
|
72
|
-
return created;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
66
|
+
/**
|
|
67
|
+
* 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.
|
|
72
|
+
*/
|
|
73
|
+
async function prepareOmbSession(tmux, omp, session, cwd, childEnv, mouseScrolling) {
|
|
75
74
|
// Keep the respawn opportunity below for stale sessions, but do not leave
|
|
76
75
|
// remain-on-exit enabled: when OMP really exits, tmux should remove the
|
|
77
76
|
// pane/session instead of showing a permanent "Pane is dead" screen.
|
|
@@ -80,7 +79,7 @@ async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling,
|
|
|
80
79
|
if (pane.code !== 0)
|
|
81
80
|
return pane.code;
|
|
82
81
|
if (pane.output.trim() === "1") {
|
|
83
|
-
const respawned = await runTmux(tmux, ["respawn-pane", "-k", "-t", `${session}:0.0`, omp, "--session-dir",
|
|
82
|
+
const respawned = await runTmux(tmux, ["respawn-pane", "-k", "-t", `${session}:0.0`, omp, "--session-dir", ombSessionDir(session, childEnv), "--continue"], cwd, childEnv);
|
|
84
83
|
if (respawned !== 0)
|
|
85
84
|
return respawned;
|
|
86
85
|
}
|
|
@@ -93,11 +92,16 @@ async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling,
|
|
|
93
92
|
const mouseEnabled = await runTmux(tmux, ["set-option", "-t", session, "mouse", mouseScrolling ? "on" : "off"], cwd, childEnv);
|
|
94
93
|
if (mouseEnabled !== 0)
|
|
95
94
|
return mouseEnabled;
|
|
96
|
-
// Give this session a private root table so Ctrl-D/C detach the client
|
|
97
|
-
// without sending exit or interrupt input into OMP. The tmux host remains
|
|
98
|
-
// alive for background work, and the normal Ctrl-B prefix still enters
|
|
99
|
-
// tmux's standard prefix table.
|
|
100
95
|
const keyTable = `${session}-bizar-root`;
|
|
96
|
+
// Keep pointer events inside the Bizar-owned key table. Without these
|
|
97
|
+
// explicit bindings, tmux consumes wheel/click events while an OMP
|
|
98
|
+
// alternate-screen overlay is active, so Advisor never receives them; when
|
|
99
|
+
// 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);
|
|
101
105
|
const bindDetach = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-d", "detach-client"], cwd, childEnv);
|
|
102
106
|
if (bindDetach !== 0)
|
|
103
107
|
return bindDetach;
|
|
@@ -107,23 +111,114 @@ async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling,
|
|
|
107
111
|
const bindPrefix = await runTmux(tmux, ["bind-key", "-T", keyTable, "C-b", "switch-client", "-T", "prefix"], cwd, childEnv);
|
|
108
112
|
if (bindPrefix !== 0)
|
|
109
113
|
return bindPrefix;
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
114
|
+
return runTmux(tmux, ["set-option", "-t", session, "key-table", keyTable], cwd, childEnv);
|
|
115
|
+
}
|
|
116
|
+
async function launchInTmux(tmux, omp, session, cwd, args, env, mouseScrolling, sessionDir) {
|
|
117
|
+
const childEnv = { ...env, BIZAR_OMP_NO_TMUX: "1" };
|
|
118
|
+
const hasSession = await runTmux(tmux, ["has-session", "-t", session], cwd, childEnv);
|
|
119
|
+
if (hasSession !== 0) {
|
|
120
|
+
const created = await runTmux(tmux, ["new-session", "-d", "-s", session, "-c", cwd, omp, "--session-dir", sessionDir, ...args], cwd, childEnv);
|
|
121
|
+
if (created !== 0) {
|
|
122
|
+
// A concurrent `omb` may have created the stable session between the
|
|
123
|
+
// probe and create calls. Continue only when that race is proven safe.
|
|
124
|
+
const racedIntoExisting = await runTmux(tmux, ["has-session", "-t", session], cwd, childEnv);
|
|
125
|
+
if (racedIntoExisting !== 0)
|
|
126
|
+
return created;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const prepared = await prepareOmbSession(tmux, omp, session, cwd, childEnv, mouseScrolling);
|
|
130
|
+
if (prepared !== 0)
|
|
131
|
+
return prepared;
|
|
113
132
|
const client = spawn(tmux, ["attach-session", "-t", session], { cwd, env: childEnv, stdio: "inherit" });
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
133
|
+
const closed = Promise.withResolvers();
|
|
134
|
+
client.once("error", closed.reject);
|
|
135
|
+
client.once("close", (code, signal) => closed.resolve(exitCode(code, signal)));
|
|
136
|
+
return closed.promise;
|
|
118
137
|
}
|
|
119
138
|
function ownedSession(session) {
|
|
120
139
|
return session.startsWith("bizar-") && !session.includes("\0");
|
|
121
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* Terminal emulators that can host an interactive attach, in preference order.
|
|
143
|
+
* `$BIZAR_TERMINAL` overrides the list; `xfce4-terminal` takes the command as
|
|
144
|
+
* one argument while the rest expect `-e <argv>`.
|
|
145
|
+
*/
|
|
146
|
+
const TERMINAL_COMMANDS = [
|
|
147
|
+
{ bin: "x-terminal-emulator", args: command => ["-e", "sh", "-lc", command] },
|
|
148
|
+
{ bin: "gnome-terminal", args: command => ["--", "sh", "-lc", command] },
|
|
149
|
+
{ bin: "konsole", args: command => ["-e", "sh", "-lc", command] },
|
|
150
|
+
{ bin: "xfce4-terminal", args: command => [command], single: true },
|
|
151
|
+
{ bin: "alacritty", args: command => ["-e", "sh", "-lc", command] },
|
|
152
|
+
{ bin: "kitty", args: command => ["sh", "-lc", command] },
|
|
153
|
+
{ bin: "foot", args: command => ["sh", "-lc", command] },
|
|
154
|
+
{ bin: "wezterm", args: command => ["start", "--", "sh", "-lc", command] },
|
|
155
|
+
{ bin: "xterm", args: command => ["-e", "sh", "-lc", command] },
|
|
156
|
+
];
|
|
157
|
+
/** Resolve an executable on `$PATH`, or an explicit path when it contains a slash. */
|
|
158
|
+
export function findOnPath(bin, env = process.env) {
|
|
159
|
+
if (bin.includes("/")) {
|
|
160
|
+
try {
|
|
161
|
+
const stat = statSync(bin);
|
|
162
|
+
return stat.isFile() && (stat.mode & 0o111) !== 0 ? bin : undefined;
|
|
163
|
+
}
|
|
164
|
+
catch {
|
|
165
|
+
return undefined;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
for (const dir of (env.PATH || "").split(":").filter(Boolean)) {
|
|
169
|
+
const candidate = join(dir, bin);
|
|
170
|
+
try {
|
|
171
|
+
const stat = statSync(candidate);
|
|
172
|
+
if (stat.isFile() && (stat.mode & 0o111) !== 0)
|
|
173
|
+
return candidate;
|
|
174
|
+
}
|
|
175
|
+
catch { /* keep searching */ }
|
|
176
|
+
}
|
|
177
|
+
return undefined;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Open one Bizar-owned session in a new terminal emulator window. The daemon
|
|
181
|
+
* and hub run without a controlling TTY, so attaching means handing the attach
|
|
182
|
+
* command to a terminal we spawn; when no emulator exists the caller still
|
|
183
|
+
* receives the exact command to run by hand.
|
|
184
|
+
*/
|
|
185
|
+
export function openOmbSessionInTerminal(session, env = process.env) {
|
|
186
|
+
// Names come from tmux; keep the shell command single-quoted and refuse
|
|
187
|
+
// anything outside the character set Bizar ever generates.
|
|
188
|
+
if (!ownedSession(session) || !/^[A-Za-z0-9_.-]+$/.test(session))
|
|
189
|
+
return { spawned: false, command: "" };
|
|
190
|
+
const multiplexer = resolveMultiplexerBin(env).replace(/'/g, "'\\''");
|
|
191
|
+
const command = `'${multiplexer}' attach-session -t '${session}'`;
|
|
192
|
+
return openCommandInTerminal(command, env);
|
|
193
|
+
}
|
|
194
|
+
/** Open a fixed Bizar CLI command in a new terminal emulator window. */
|
|
195
|
+
export function openCommandInTerminal(command, env = process.env) {
|
|
196
|
+
if (!command.trim() || /[\r\n]/.test(command))
|
|
197
|
+
return { spawned: false, command: "" };
|
|
198
|
+
const override = env.BIZAR_TERMINAL?.trim();
|
|
199
|
+
const candidates = override
|
|
200
|
+
? [{ bin: override, args: (value) => ["-e", "sh", "-lc", value] }, ...TERMINAL_COMMANDS]
|
|
201
|
+
: TERMINAL_COMMANDS;
|
|
202
|
+
for (const candidate of candidates) {
|
|
203
|
+
const resolved = findOnPath(candidate.bin, env);
|
|
204
|
+
if (!resolved)
|
|
205
|
+
continue;
|
|
206
|
+
const child = spawn(resolved, candidate.args(command), {
|
|
207
|
+
detached: true,
|
|
208
|
+
stdio: "ignore",
|
|
209
|
+
env: { ...env, BIZAR_OMP_NO_TMUX: "1" },
|
|
210
|
+
});
|
|
211
|
+
child.once("error", () => { });
|
|
212
|
+
child.unref();
|
|
213
|
+
return { spawned: true, command, terminal: resolved };
|
|
214
|
+
}
|
|
215
|
+
return { spawned: false, command };
|
|
216
|
+
}
|
|
122
217
|
/** Apply the launcher mouse preference to one exact Bizar-owned session. */
|
|
123
218
|
export function setOmbSessionMouse(session, enabled, cwd = process.cwd(), env = process.env) {
|
|
124
219
|
if (!ownedSession(session))
|
|
125
220
|
return Promise.resolve(2);
|
|
126
|
-
return runTmux(env
|
|
221
|
+
return runTmux(resolveMultiplexerBin(env), ["set-option", "-t", session, "mouse", enabled ? "on" : "off"], cwd, {
|
|
127
222
|
...env,
|
|
128
223
|
BIZAR_OMP_NO_TMUX: "1",
|
|
129
224
|
});
|
|
@@ -132,7 +227,7 @@ export function setOmbSessionMouse(session, enabled, cwd = process.cwd(), env =
|
|
|
132
227
|
export function renameOmbSession(session, nextName, cwd = process.cwd(), env = process.env) {
|
|
133
228
|
if (!ownedSession(session) || !ownedSession(nextName))
|
|
134
229
|
return Promise.resolve(2);
|
|
135
|
-
return runTmux(env
|
|
230
|
+
return runTmux(resolveMultiplexerBin(env), ["rename-session", "-t", session, nextName], cwd, {
|
|
136
231
|
...env,
|
|
137
232
|
BIZAR_OMP_NO_TMUX: "1",
|
|
138
233
|
});
|
|
@@ -141,20 +236,27 @@ export function renameOmbSession(session, nextName, cwd = process.cwd(), env = p
|
|
|
141
236
|
export function deleteOmbSession(session, cwd = process.cwd(), env = process.env) {
|
|
142
237
|
if (!ownedSession(session))
|
|
143
238
|
return Promise.resolve(2);
|
|
144
|
-
return runTmux(env
|
|
239
|
+
return runTmux(resolveMultiplexerBin(env), ["kill-session", "-t", session], cwd, {
|
|
145
240
|
...env,
|
|
146
241
|
BIZAR_OMP_NO_TMUX: "1",
|
|
147
242
|
});
|
|
148
243
|
}
|
|
149
244
|
/** Attach to an existing Bizar session, switching the current tmux client when nested. */
|
|
150
245
|
export function attachOmbSession(session, cwd = process.cwd(), env = process.env) {
|
|
151
|
-
const tmux = env
|
|
246
|
+
const tmux = resolveMultiplexerBin(env);
|
|
152
247
|
const args = env.TMUX || env.TMUX_PANE
|
|
153
248
|
? ["switch-client", "-t", session]
|
|
154
249
|
: ["attach-session", "-t", session];
|
|
155
250
|
const child = spawn(tmux, args, { cwd, env: { ...env, BIZAR_OMP_NO_TMUX: "1" }, stdio: "inherit" });
|
|
156
251
|
return new Promise((resolve, reject) => {
|
|
157
|
-
|
|
252
|
+
// A missing multiplexer degrades to a nonzero exit like a failed attach;
|
|
253
|
+
// any other spawn failure (EACCES, EPERM, ...) is still a hard error.
|
|
254
|
+
child.once("error", (error) => {
|
|
255
|
+
if (isMissingBinaryError(error))
|
|
256
|
+
resolve(1);
|
|
257
|
+
else
|
|
258
|
+
reject(error);
|
|
259
|
+
});
|
|
158
260
|
child.once("close", (code, signal) => resolve(exitCode(code, signal)));
|
|
159
261
|
});
|
|
160
262
|
}
|
|
@@ -170,17 +272,50 @@ export async function launchOmb(cwd, args, env = process.env, sessionId) {
|
|
|
170
272
|
stdinIsTTY: process.stdin.isTTY === true,
|
|
171
273
|
stdoutIsTTY: process.stdout.isTTY === true,
|
|
172
274
|
});
|
|
173
|
-
const tmux = env
|
|
275
|
+
const tmux = resolveMultiplexerBin(env);
|
|
174
276
|
const omp = env.BIZAR_OMP_BIN || "omp";
|
|
175
277
|
const settings = loadOmbSettings(env);
|
|
176
278
|
const lastSession = useTmux && !sessionId && settings.autoAttachLatest ? await findLastOmbSession(cwd, env) : undefined;
|
|
177
279
|
const session = lastSession?.name ?? ombSessionName(cwd, sessionId);
|
|
178
|
-
if (useTmux)
|
|
179
|
-
|
|
280
|
+
if (useTmux) {
|
|
281
|
+
try {
|
|
282
|
+
return await launchInTmux(tmux, omp, session, cwd, args, env, settings.mouseScrolling, ombSessionDir(session, env));
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
// No tmux-compatible multiplexer installed (spawn ENOENT): run OMP
|
|
286
|
+
// directly rather than failing hosts that simply lack psmux/tmux.
|
|
287
|
+
if (!isMissingBinaryError(error))
|
|
288
|
+
throw error;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
180
291
|
const child = spawn(omp, args, { cwd, env, stdio: "inherit" });
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
292
|
+
const closed = Promise.withResolvers();
|
|
293
|
+
child.once("error", closed.reject);
|
|
294
|
+
child.once("close", (code, signal) => closed.resolve(exitCode(code, signal)));
|
|
295
|
+
return closed.promise;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Create or refresh a Bizar-owned session without attaching a client. The
|
|
299
|
+
* dashboard uses this so a browser can start background work; the session
|
|
300
|
+
* gets the same durability and input options as an interactive `omb` launch.
|
|
301
|
+
*/
|
|
302
|
+
export async function createOmbSession(cwd, args, env = process.env, sessionId) {
|
|
303
|
+
const tmux = resolveMultiplexerBin(env);
|
|
304
|
+
const omp = env.BIZAR_OMP_BIN || "omp";
|
|
305
|
+
const settings = loadOmbSettings(env);
|
|
306
|
+
const session = ombSessionName(cwd, sessionId);
|
|
307
|
+
const childEnv = { ...env, BIZAR_OMP_NO_TMUX: "1" };
|
|
308
|
+
const hasSession = await runTmux(tmux, ["has-session", "-t", session], cwd, childEnv);
|
|
309
|
+
if (hasSession !== 0) {
|
|
310
|
+
const created = await runTmux(tmux, ["new-session", "-d", "-s", session, "-c", cwd, omp, "--session-dir", ombSessionDir(session, env), ...args], cwd, childEnv);
|
|
311
|
+
if (created !== 0) {
|
|
312
|
+
// A concurrent creator may have raced the probe; reuse only when the
|
|
313
|
+
// session now exists, exactly like the interactive launcher.
|
|
314
|
+
const racedIntoExisting = await runTmux(tmux, ["has-session", "-t", session], cwd, childEnv);
|
|
315
|
+
if (racedIntoExisting !== 0)
|
|
316
|
+
return { name: session, code: created };
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
return { name: session, code: await prepareOmbSession(tmux, omp, session, cwd, childEnv, settings.mouseScrolling) };
|
|
185
320
|
}
|
|
186
321
|
//# sourceMappingURL=tmux.js.map
|
package/dist/omp/tmux.js.map
CHANGED
|
@@ -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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tray-icons.d.ts","sourceRoot":"","sources":["../../src/omp/tray-icons.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAkED,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,aAAa,CAWjF"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { deflateSync } from "node:zlib";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { daemonStateDir } from "./daemon.js";
|
|
5
|
+
function crc32(value) {
|
|
6
|
+
let crc = 0xffffffff;
|
|
7
|
+
for (const byte of value) {
|
|
8
|
+
crc ^= byte;
|
|
9
|
+
for (let bit = 0; bit < 8; bit++)
|
|
10
|
+
crc = (crc >>> 1) ^ (0xedb88320 & -(crc & 1));
|
|
11
|
+
}
|
|
12
|
+
return (crc ^ 0xffffffff) >>> 0;
|
|
13
|
+
}
|
|
14
|
+
function chunk(type, data) {
|
|
15
|
+
const name = Buffer.from(type, "ascii");
|
|
16
|
+
const body = Buffer.concat([name, data]);
|
|
17
|
+
const output = Buffer.alloc(12 + data.length);
|
|
18
|
+
output.writeUInt32BE(data.length, 0);
|
|
19
|
+
body.copy(output, 4);
|
|
20
|
+
output.writeUInt32BE(crc32(body), 8 + data.length);
|
|
21
|
+
return output;
|
|
22
|
+
}
|
|
23
|
+
/** Generate a tiny dependency-free Bizar mark for native tray backends. */
|
|
24
|
+
function createPng() {
|
|
25
|
+
const size = 32;
|
|
26
|
+
const rows = Buffer.alloc(size * (size * 4 + 1));
|
|
27
|
+
for (let y = 0; y < size; y++) {
|
|
28
|
+
const row = y * (size * 4 + 1);
|
|
29
|
+
rows[row] = 0;
|
|
30
|
+
for (let x = 0; x < size; x++) {
|
|
31
|
+
const pixel = row + 1 + x * 4;
|
|
32
|
+
const inside = (x - 15.5) ** 2 + (y - 15.5) ** 2 < 13 ** 2;
|
|
33
|
+
rows[pixel] = inside ? 38 : 22;
|
|
34
|
+
rows[pixel + 1] = inside ? 197 : 27;
|
|
35
|
+
rows[pixel + 2] = inside ? 145 : 36;
|
|
36
|
+
rows[pixel + 3] = 255;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const header = Buffer.alloc(13);
|
|
40
|
+
header.writeUInt32BE(size, 0);
|
|
41
|
+
header.writeUInt32BE(size, 4);
|
|
42
|
+
header[8] = 8;
|
|
43
|
+
header[9] = 6;
|
|
44
|
+
return Buffer.concat([
|
|
45
|
+
Buffer.from([137, 80, 78, 71, 13, 10, 26, 10]),
|
|
46
|
+
chunk("IHDR", header),
|
|
47
|
+
chunk("IDAT", deflateSync(rows)),
|
|
48
|
+
chunk("IEND", Buffer.alloc(0)),
|
|
49
|
+
]);
|
|
50
|
+
}
|
|
51
|
+
function createIco(png) {
|
|
52
|
+
const header = Buffer.alloc(22);
|
|
53
|
+
header.writeUInt16LE(0, 0);
|
|
54
|
+
header.writeUInt16LE(1, 2);
|
|
55
|
+
header.writeUInt16LE(1, 4);
|
|
56
|
+
header[6] = 32;
|
|
57
|
+
header[7] = 32;
|
|
58
|
+
header[8] = 0;
|
|
59
|
+
header[9] = 0;
|
|
60
|
+
header.writeUInt16LE(1, 10);
|
|
61
|
+
header.writeUInt16LE(32, 12);
|
|
62
|
+
header.writeUInt32LE(png.length, 14);
|
|
63
|
+
header.writeUInt32LE(22, 18);
|
|
64
|
+
return Buffer.concat([header, png]);
|
|
65
|
+
}
|
|
66
|
+
export function trayIconPaths(env = process.env) {
|
|
67
|
+
const directory = daemonStateDir(env);
|
|
68
|
+
mkdirSync(directory, { recursive: true, mode: 0o700 });
|
|
69
|
+
const png = join(directory, "bizar-tray.png");
|
|
70
|
+
const ico = join(directory, "bizar-tray.ico");
|
|
71
|
+
if (!existsSync(png) || !existsSync(ico)) {
|
|
72
|
+
const image = createPng();
|
|
73
|
+
writeFileSync(png, image, { mode: 0o600 });
|
|
74
|
+
writeFileSync(ico, createIco(image), { mode: 0o600 });
|
|
75
|
+
}
|
|
76
|
+
return { png, ico };
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=tray-icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tray-icons.js","sourceRoot":"","sources":["../../src/omp/tray-icons.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { MenuItem } from "@trayjs/trayjs";
|
|
2
|
+
export interface TrayInfo {
|
|
3
|
+
pid: number;
|
|
4
|
+
startedAt: number;
|
|
5
|
+
}
|
|
6
|
+
export interface TrayStatus {
|
|
7
|
+
state: "running" | "stopped" | "stale" | "unsupported";
|
|
8
|
+
tray?: TrayInfo;
|
|
9
|
+
}
|
|
10
|
+
export interface TrayService {
|
|
11
|
+
ready: Promise<void>;
|
|
12
|
+
closed: Promise<void>;
|
|
13
|
+
close(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
export declare const trayLockPath: (env?: NodeJS.ProcessEnv) => string;
|
|
16
|
+
export declare const trayLogPath: (env?: NodeJS.ProcessEnv) => string;
|
|
17
|
+
export declare function readTrayStatus(env?: NodeJS.ProcessEnv): TrayStatus;
|
|
18
|
+
export declare function trayMenuItems(env?: NodeJS.ProcessEnv): Promise<MenuItem[]>;
|
|
19
|
+
/** Run the native tray in the foreground. Unsupported hosts return cleanly. */
|
|
20
|
+
export declare function runTrayService(env?: NodeJS.ProcessEnv): Promise<TrayService | undefined>;
|
|
21
|
+
export declare function startTray(env?: NodeJS.ProcessEnv): Promise<TrayInfo | undefined>;
|
|
22
|
+
export declare function stopTray(env?: NodeJS.ProcessEnv): Promise<boolean>;
|
|
23
|
+
export declare function runTrayForeground(env?: NodeJS.ProcessEnv): Promise<number>;
|
|
24
|
+
//# sourceMappingURL=tray.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tray.d.ts","sourceRoot":"","sources":["../../src/omp/tray.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,aAAa,CAAC;IACvD,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,eAAO,MAAM,YAAY,SAAS,MAAM,CAAC,UAAU,KAAiB,MAAgD,CAAC;AACrH,eAAO,MAAM,WAAW,SAAS,MAAM,CAAC,UAAU,KAAiB,MAA+C,CAAC;AAsBnH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,UAAU,CAa/E;AAUD,wBAAsB,aAAa,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAW7F;AAuBD,+EAA+E;AAC/E,wBAAsB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAkB3G;AAED,wBAAsB,SAAS,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAkBnG;AAED,wBAAsB,QAAQ,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,CAMrF;AAED,wBAAsB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB7F"}
|