@getrift/rift 0.1.0-beta.23 → 0.1.0-beta.25

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.
@@ -1,6 +1,13 @@
1
1
  import { Command } from "commander";
2
2
  export declare const SWIFTBAR_PLUGIN_NAME = "rift.10s.sh";
3
3
  export declare const SWIFTBAR_RENDERER_NAME = "render-menu.py";
4
+ /**
5
+ * Private subdir the renderer is copied into so SwiftBar never loads the helper
6
+ * as a phantom (off-screen) top-level plugin. SwiftBar ignores subdirectories
7
+ * AND dotfiles, so a dot-prefixed subdir is doubly out of its plugin scan.
8
+ * MUST match the path resolved in `operator/swiftbar/rift.10s.sh`.
9
+ */
10
+ export declare const SWIFTBAR_RENDERER_SUBDIR = ".rift-menu";
4
11
  /** SwiftBar's macOS preferences domain (used for `defaults` reads/writes). */
5
12
  export declare const SWIFTBAR_DEFAULTS_DOMAIN = "com.ameba.SwiftBar";
6
13
  /**
@@ -23,6 +30,17 @@ export interface MenuBarHost {
23
30
  * configured, so this never clobbers a folder the user already chose.
24
31
  */
25
32
  writePluginDirectory(dir: string): boolean;
33
+ /**
34
+ * SwiftBar's saved menu-bar slot for a plugin
35
+ * (`NSStatusItem Preferred Position <plugin>`), or null when unset. An unset
36
+ * slot lets a menu-bar manager / macOS overflow park the item off-screen.
37
+ */
38
+ readPluginPreferredPosition(pluginName: string): string | null;
39
+ /**
40
+ * Persist a menu-bar slot for a plugin. Returns true on success. Only ever
41
+ * called when none is set, so a slot the user dragged is never clobbered.
42
+ */
43
+ writePluginPreferredPosition(pluginName: string, position: number): boolean;
26
44
  /** Whether SwiftBar is currently running. */
27
45
  isSwiftBarRunning(): boolean;
28
46
  /**
@@ -71,6 +89,9 @@ export interface MenuBarInstallResult {
71
89
  * `recovery`.
72
90
  */
73
91
  menuVisible: boolean;
92
+ /** True when this install seeded a menu-bar slot for a position-less item, so
93
+ * a fresh/recreated icon isn't parked off-screen. */
94
+ positionSeeded: boolean;
74
95
  /** One plain-language recovery action when the menu cannot be shown yet. */
75
96
  recovery: string | null;
76
97
  transcript: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/menubar.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAClD,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AAEvD,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAG7D;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,eAAe,IAAI,MAAM,GAAG,IAAI,CAAC;IACjC;;;;OAIG;IACH,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAAC;IACrC;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3C,6CAA6C;IAC7C,iBAAiB,IAAI,OAAO,CAAC;IAC7B;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACxC,yEAAyE;IACzE,WAAW,IAAI,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B;4DACwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,gFAAgF;IAChF,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,yDAAyD;IACzD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,cAAc,EAAE,OAAO,CAAC;IACxB;+EAC2E;IAC3E,eAAe,EAAE,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3E;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAQD,wBAAgB,kBAAkB,IAAI,OAAO,CAuC5C;AAED,wBAAgB,wBAAwB,CAAC,OAAO,SAAe,GAAG,MAAM,CAEvE;AAED,wBAAgB,cAAc,CAC5B,IAAI,GAAE,qBAA0B,GAC/B,oBAAoB,CAoKtB;AAoFD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CA+D/D"}
1
+ {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/menubar.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAClD,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AACvD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAErD,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAa7D;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,eAAe,IAAI,MAAM,GAAG,IAAI,CAAC;IACjC;;;;OAIG;IACH,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAAC;IACrC;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3C;;;;OAIG;IACH,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/D;;;OAGG;IACH,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5E,6CAA6C;IAC7C,iBAAiB,IAAI,OAAO,CAAC;IAC7B;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACxC,yEAAyE;IACzE,WAAW,IAAI,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B;4DACwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,gFAAgF;IAChF,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,yDAAyD;IACzD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,cAAc,EAAE,OAAO,CAAC;IACxB;+EAC2E;IAC3E,eAAe,EAAE,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3E;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;0DACsD;IACtD,cAAc,EAAE,OAAO,CAAC;IACxB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAQD,wBAAgB,kBAAkB,IAAI,OAAO,CAuC5C;AAED,wBAAgB,wBAAwB,CAAC,OAAO,SAAe,GAAG,MAAM,CAEvE;AAED,wBAAgB,cAAc,CAC5B,IAAI,GAAE,qBAA0B,GAC/B,oBAAoB,CA+MtB;AAoFD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAoF/D"}
@@ -42,9 +42,25 @@ import { Command } from "commander";
42
42
  import { printError, printJson, printText } from "../output.js";
43
43
  export const SWIFTBAR_PLUGIN_NAME = "rift.10s.sh";
44
44
  export const SWIFTBAR_RENDERER_NAME = "render-menu.py";
45
+ /**
46
+ * Private subdir the renderer is copied into so SwiftBar never loads the helper
47
+ * as a phantom (off-screen) top-level plugin. SwiftBar ignores subdirectories
48
+ * AND dotfiles, so a dot-prefixed subdir is doubly out of its plugin scan.
49
+ * MUST match the path resolved in `operator/swiftbar/rift.10s.sh`.
50
+ */
51
+ export const SWIFTBAR_RENDERER_SUBDIR = ".rift-menu";
45
52
  /** SwiftBar's macOS preferences domain (used for `defaults` reads/writes). */
46
53
  export const SWIFTBAR_DEFAULTS_DOMAIN = "com.ameba.SwiftBar";
47
54
  const SWIFTBAR_DOWNLOAD_URL = "https://swiftbar.app";
55
+ /**
56
+ * Seeded into `NSStatusItem Preferred Position <plugin>` when the item has no
57
+ * slot, so a fresh/recreated status item lands on the visible bar instead of
58
+ * being parked off-screen by a menu-bar manager (or macOS notch overflow) —
59
+ * the beta.24 "icon vanished after update" bug.
60
+ * ponytail: fixed heuristic (proven on a notched MacBook); the user can
61
+ * ⌘-drag to taste — the point is that it is non-null so the item isn't parked.
62
+ */
63
+ const SWIFTBAR_DEFAULT_POSITION = 350;
48
64
  export function makeMenuBarCommand() {
49
65
  const cmd = new Command("menubar").description("Install and manage the Rift menu bar");
50
66
  cmd
@@ -112,6 +128,7 @@ export function installMenuBar(opts = {}) {
112
128
  swiftBarOpened: false,
113
129
  pluginDirSource: "default",
114
130
  menuVisible: false,
131
+ positionSeeded: false,
115
132
  recovery: null,
116
133
  transcript: [`Menu bar skipped: ${reason}`],
117
134
  };
@@ -159,19 +176,33 @@ export function installMenuBar(opts = {}) {
159
176
  assertReadableFile(rendererPath, "SwiftBar renderer");
160
177
  fs.mkdirSync(pluginDir, { recursive: true });
161
178
  let backupPath = null;
179
+ // Older installs dropped the renderer as a TOP-LEVEL sibling here, where
180
+ // SwiftBar loaded it as a phantom (off-screen) menu item. The renderer now
181
+ // lives in a private, SwiftBar-ignored subdir; remove any stale top-level
182
+ // copy so upgrades self-heal the phantom. (Safe: a `render-menu.py` in
183
+ // SwiftBar's plugin folder is ours — the wrapper writes nothing else there.)
184
+ const staleRenderer = path.join(pluginDir, SWIFTBAR_RENDERER_NAME);
185
+ if (fs.existsSync(staleRenderer))
186
+ fs.rmSync(staleRenderer, { force: true });
162
187
  // Copy is the default; symlink is opt-in (dev/auto-update). See module header.
163
188
  const mode = opts.symlink ? "symlink" : "copy";
164
189
  if (mode === "symlink") {
190
+ // Dev/auto-update: the wrapper symlinks to the package, and rift.10s.sh
191
+ // resolves its own symlink so SCRIPT_DIR lands in operator/swiftbar where
192
+ // the renderer sits beside it — nothing to copy into the plugin folder.
165
193
  backupPath = replaceExistingPlugin(pluginPath, sourcePath, opts.now);
166
194
  fs.symlinkSync(sourcePath, pluginPath);
167
195
  }
168
196
  else {
169
197
  // Clear/back up any existing plugin (incl. a pre-migration dangling
170
- // symlink) BEFORE writing, then atomic-copy both files so SwiftBar's
171
- // 10s poll never sees a torn write or a wrapper without its renderer.
198
+ // symlink) BEFORE writing, then atomic-copy the wrapper and the renderer
199
+ // (into its private subdir) so SwiftBar's 10s poll never sees a torn write
200
+ // or a wrapper without its renderer.
172
201
  backupPath = replaceExistingPlugin(pluginPath, sourcePath, opts.now);
173
202
  atomicCopyFile(sourcePath, pluginPath, 0o755);
174
- atomicCopyFile(rendererPath, path.join(pluginDir, SWIFTBAR_RENDERER_NAME));
203
+ const rendererSubdir = path.join(pluginDir, SWIFTBAR_RENDERER_SUBDIR);
204
+ fs.mkdirSync(rendererSubdir, { recursive: true });
205
+ atomicCopyFile(rendererPath, path.join(rendererSubdir, SWIFTBAR_RENDERER_NAME));
175
206
  }
176
207
  transcript.push("Menu bar installed.");
177
208
  // --- Make it visible: launch/refresh SwiftBar, or hand back a recovery ---
@@ -180,6 +211,7 @@ export function installMenuBar(opts = {}) {
180
211
  // launch/config failure can never be laundered into a silent "installed".
181
212
  let swiftBarOpened = false;
182
213
  let menuVisible = false;
214
+ let positionSeeded = false;
183
215
  let recovery = null;
184
216
  if (!swiftBarDetected) {
185
217
  recovery = buildRecovery(host.hasHomebrew());
@@ -202,15 +234,19 @@ export function installMenuBar(opts = {}) {
202
234
  transcript.push(` ${recovery}`);
203
235
  }
204
236
  else {
237
+ // Seed a stable menu-bar slot when the item has none, so a fresh/recreated
238
+ // status item isn't parked off-screen by a menu-bar manager (or macOS
239
+ // notch overflow) — invisible but "running". Only when missing, so a slot
240
+ // the user dragged is never clobbered. The slot is honored when SwiftBar
241
+ // next CREATES the item: immediately on a fresh launch, or on the next
242
+ // relaunch if SwiftBar is already running (a plain refresh reloads plugin
243
+ // CONTENT, not item placement).
244
+ if (host.readPluginPreferredPosition(SWIFTBAR_PLUGIN_NAME) === null) {
245
+ positionSeeded = host.writePluginPreferredPosition(SWIFTBAR_PLUGIN_NAME, SWIFTBAR_DEFAULT_POSITION);
246
+ }
205
247
  const wasRunning = host.isSwiftBarRunning();
206
248
  swiftBarOpened = host.openSwiftBar(wasRunning);
207
- menuVisible = swiftBarOpened;
208
- if (swiftBarOpened) {
209
- transcript.push(wasRunning
210
- ? "Refreshed the Rift menu in SwiftBar — the icon is in your menu bar."
211
- : "Launched SwiftBar — the Rift icon should appear in your menu bar.");
212
- }
213
- else {
249
+ if (!swiftBarOpened) {
214
250
  // App is there and pointed at the right folder, but we could not drive it
215
251
  // (sandboxed context, GUI session unavailable, etc.). Not a silent
216
252
  // success: hand back the one manual step.
@@ -220,6 +256,24 @@ export function installMenuBar(opts = {}) {
220
256
  transcript.push("SwiftBar is installed but could not be launched automatically.");
221
257
  transcript.push(` ${recovery}`);
222
258
  }
259
+ else if (positionSeeded && wasRunning) {
260
+ // We just pinned a NEW slot, but SwiftBar was already running — a refresh
261
+ // won't re-place an existing status item, so the icon is not reliably
262
+ // visible until SwiftBar recreates it. Don't overclaim: report
263
+ // not-visible with the one manual step (a quick SwiftBar restart).
264
+ recovery =
265
+ "Rift was pinned to a menu-bar slot. Quit and reopen SwiftBar to reveal " +
266
+ "the icon — a refresh alone won't reposition an already-running item.";
267
+ transcript.push("Pinned Rift to a menu-bar slot — quit and reopen SwiftBar to reveal it.");
268
+ transcript.push(` ${recovery}`);
269
+ }
270
+ else {
271
+ // Fresh launch (slot honored on creation), or the slot was already set.
272
+ menuVisible = true;
273
+ transcript.push(wasRunning
274
+ ? "Refreshed the Rift menu in SwiftBar — the icon is in your menu bar."
275
+ : "Launched SwiftBar — the Rift icon should appear in your menu bar.");
276
+ }
223
277
  }
224
278
  return {
225
279
  ok: true,
@@ -236,6 +290,7 @@ export function installMenuBar(opts = {}) {
236
290
  swiftBarOpened,
237
291
  pluginDirSource,
238
292
  menuVisible,
293
+ positionSeeded,
239
294
  recovery,
240
295
  transcript,
241
296
  };
@@ -353,6 +408,25 @@ export function defaultMenuBarHost(homeDir) {
353
408
  dir,
354
409
  ]);
355
410
  },
411
+ readPluginPreferredPosition(pluginName) {
412
+ // SwiftBar stores per-plugin slots under a key with a literal space:
413
+ // `NSStatusItem Preferred Position <plugin>`. execFileSync passes it as a
414
+ // single argv, so the spaces are safe (no shell).
415
+ return runCapture("defaults", [
416
+ "read",
417
+ SWIFTBAR_DEFAULTS_DOMAIN,
418
+ `NSStatusItem Preferred Position ${pluginName}`,
419
+ ]);
420
+ },
421
+ writePluginPreferredPosition(pluginName, position) {
422
+ return runOk("defaults", [
423
+ "write",
424
+ SWIFTBAR_DEFAULTS_DOMAIN,
425
+ `NSStatusItem Preferred Position ${pluginName}`,
426
+ "-int",
427
+ String(position),
428
+ ]);
429
+ },
356
430
  isSwiftBarRunning() {
357
431
  // pgrep exits 0 when a match exists, 1 when none — runOk maps that.
358
432
  return runOk("pgrep", ["-x", "SwiftBar"]);
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.js","sourceRoot":"","sources":["../../../../src/cli/commands/menubar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menubar.js","sourceRoot":"","sources":["../../../../src/cli/commands/menubar.ts"],"names":[],"mappings":"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"}
@@ -226,11 +226,20 @@ def sb_param(value):
226
226
  def rift_runnable():
227
227
  node = env("RIFT_NODE_BIN")
228
228
  js = env("RIFT_JS")
229
- if node and js:
230
- return [node, js]
231
229
  rift = env("RIFT_BIN")
230
+ # SwiftBar's terminal-mode command builder quotes only the shell binary
231
+ # (argv0) and joins paramN raw, so a space anywhere past argv0 fractures
232
+ # the action — and packaged installs live under "Application Support".
233
+ # Prefer the space-free shim (a self-contained launcher: it execs an
234
+ # absolute node + JS) whenever the node/JS paths carry a space; fall back
235
+ # to node+js only when they're space-free or no shim resolved.
236
+ spaced = bool(node and js) and (" " in node or " " in js)
237
+ if node and js and not spaced:
238
+ return [node, js]
232
239
  if rift:
233
240
  return [rift]
241
+ if node and js:
242
+ return [node, js]
234
243
  return None
235
244
 
236
245
 
@@ -53,7 +53,12 @@ fi
53
53
 
54
54
  LOG_DIR="${RIFT_LOG_DIR:-${PACKAGED_LOG_DIR:-${RIFT_HOME_DEFAULT}/logs}}"
55
55
  DATA_DIR="${RIFT_DATA_DIR:-${RIFT_HOME_DEFAULT}/data}"
56
- RENDERER="$SCRIPT_DIR/render-menu.py"
56
+ # `rift menubar install` copies the renderer into a private `.rift-menu/`
57
+ # subdir of the plugin folder — SwiftBar ignores subdirs/dotfiles, so the
58
+ # helper never loads as a phantom (off-screen) menu-bar item. Dev/symlink runs
59
+ # resolve SCRIPT_DIR to operator/swiftbar, where it sits beside this script.
60
+ RENDERER="$SCRIPT_DIR/.rift-menu/render-menu.py"
61
+ [[ -f "$RENDERER" ]] || RENDERER="$SCRIPT_DIR/render-menu.py"
57
62
 
58
63
  # Resolve the rift CLI. SwiftBar invokes shell commands with a stripped
59
64
  # PATH, so menu actions need absolute paths end-to-end. We resolve:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getrift/rift",
3
- "version": "0.1.0-beta.23",
3
+ "version": "0.1.0-beta.25",
4
4
  "description": "Local-first personal memory + reasoning infrastructure with an MCP interface.",
5
5
  "homepage": "https://getrift.dev",
6
6
  "license": "UNLICENSED",