aibroker 0.60.1 → 0.61.0

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 (143) hide show
  1. package/README.md +21 -33
  2. package/dist/adapters/iterm/core.d.ts +29 -0
  3. package/dist/adapters/iterm/core.d.ts.map +1 -1
  4. package/dist/adapters/iterm/core.js +69 -0
  5. package/dist/adapters/iterm/core.js.map +1 -1
  6. package/dist/adapters/iterm/dictation.d.ts +1 -1
  7. package/dist/adapters/iterm/dictation.d.ts.map +1 -1
  8. package/dist/adapters/iterm/dictation.js +5 -6
  9. package/dist/adapters/iterm/dictation.js.map +1 -1
  10. package/dist/adapters/iterm/sessions.d.ts.map +1 -1
  11. package/dist/adapters/iterm/sessions.js +11 -0
  12. package/dist/adapters/iterm/sessions.js.map +1 -1
  13. package/dist/adapters/kokoro/media.d.ts +1 -1
  14. package/dist/adapters/kokoro/media.d.ts.map +1 -1
  15. package/dist/adapters/kokoro/media.js +4 -3
  16. package/dist/adapters/kokoro/media.js.map +1 -1
  17. package/dist/adapters/kokoro/tts.d.ts +1 -1
  18. package/dist/adapters/kokoro/tts.d.ts.map +1 -1
  19. package/dist/adapters/kokoro/tts.js +15 -3
  20. package/dist/adapters/kokoro/tts.js.map +1 -1
  21. package/dist/adapters/pailot/gateway.d.ts.map +1 -1
  22. package/dist/adapters/pailot/gateway.js +7 -5
  23. package/dist/adapters/pailot/gateway.js.map +1 -1
  24. package/dist/backend/api.d.ts.map +1 -1
  25. package/dist/backend/api.js +2 -1
  26. package/dist/backend/api.js.map +1 -1
  27. package/dist/core/bins.d.ts +25 -0
  28. package/dist/core/bins.d.ts.map +1 -0
  29. package/dist/core/bins.js +59 -0
  30. package/dist/core/bins.js.map +1 -0
  31. package/dist/core/env-bootstrap.js +2 -7
  32. package/dist/core/env-bootstrap.js.map +1 -1
  33. package/dist/core/log.d.ts +2 -0
  34. package/dist/core/log.d.ts.map +1 -1
  35. package/dist/core/log.js +7 -0
  36. package/dist/core/log.js.map +1 -1
  37. package/dist/core/private-file.d.ts +10 -0
  38. package/dist/core/private-file.d.ts.map +1 -0
  39. package/dist/core/private-file.js +30 -0
  40. package/dist/core/private-file.js.map +1 -0
  41. package/dist/core/service-env.d.ts +10 -0
  42. package/dist/core/service-env.d.ts.map +1 -0
  43. package/dist/core/service-env.js +18 -0
  44. package/dist/core/service-env.js.map +1 -0
  45. package/dist/core/session-discovery.d.ts +1 -1
  46. package/dist/core/session-discovery.d.ts.map +1 -1
  47. package/dist/core/session-discovery.js +1 -1
  48. package/dist/core/session-discovery.js.map +1 -1
  49. package/dist/daemon/audit.d.ts.map +1 -1
  50. package/dist/daemon/audit.js +4 -3
  51. package/dist/daemon/audit.js.map +1 -1
  52. package/dist/daemon/cli.d.ts +3 -1
  53. package/dist/daemon/cli.d.ts.map +1 -1
  54. package/dist/daemon/cli.js +45 -48
  55. package/dist/daemon/cli.js.map +1 -1
  56. package/dist/daemon/core-handlers.d.ts.map +1 -1
  57. package/dist/daemon/core-handlers.js +16 -6
  58. package/dist/daemon/core-handlers.js.map +1 -1
  59. package/dist/daemon/daemon-control.d.ts +51 -0
  60. package/dist/daemon/daemon-control.d.ts.map +1 -0
  61. package/dist/daemon/daemon-control.js +182 -0
  62. package/dist/daemon/daemon-control.js.map +1 -0
  63. package/dist/daemon/doctor.d.ts +21 -0
  64. package/dist/daemon/doctor.d.ts.map +1 -0
  65. package/dist/daemon/doctor.js +134 -0
  66. package/dist/daemon/doctor.js.map +1 -0
  67. package/dist/daemon/funnel-watchdog.d.ts.map +1 -1
  68. package/dist/daemon/funnel-watchdog.js +8 -8
  69. package/dist/daemon/funnel-watchdog.js.map +1 -1
  70. package/dist/daemon/index.d.ts.map +1 -1
  71. package/dist/daemon/index.js +24 -4
  72. package/dist/daemon/index.js.map +1 -1
  73. package/dist/daemon/launch-cli.d.ts +67 -1
  74. package/dist/daemon/launch-cli.d.ts.map +1 -1
  75. package/dist/daemon/launch-cli.js +138 -35
  76. package/dist/daemon/launch-cli.js.map +1 -1
  77. package/dist/daemon/manage.d.ts +18 -0
  78. package/dist/daemon/manage.d.ts.map +1 -1
  79. package/dist/daemon/manage.js +41 -27
  80. package/dist/daemon/manage.js.map +1 -1
  81. package/dist/daemon/screenshot.d.ts.map +1 -1
  82. package/dist/daemon/screenshot.js +43 -0
  83. package/dist/daemon/screenshot.js.map +1 -1
  84. package/dist/daemon/send-cli.d.ts +9 -0
  85. package/dist/daemon/send-cli.d.ts.map +1 -0
  86. package/dist/daemon/send-cli.js +55 -0
  87. package/dist/daemon/send-cli.js.map +1 -0
  88. package/dist/daemon/session-content.d.ts +2 -2
  89. package/dist/daemon/session-content.d.ts.map +1 -1
  90. package/dist/daemon/session-content.js +23 -3
  91. package/dist/daemon/session-content.js.map +1 -1
  92. package/dist/daemon/sessions.d.ts +29 -0
  93. package/dist/daemon/sessions.d.ts.map +1 -1
  94. package/dist/daemon/sessions.js +160 -63
  95. package/dist/daemon/sessions.js.map +1 -1
  96. package/dist/daemon/setup.d.ts +86 -0
  97. package/dist/daemon/setup.d.ts.map +1 -0
  98. package/dist/daemon/setup.js +470 -0
  99. package/dist/daemon/setup.js.map +1 -0
  100. package/dist/daemon/status-format.d.ts +4 -0
  101. package/dist/daemon/status-format.d.ts.map +1 -0
  102. package/dist/daemon/status-format.js +22 -0
  103. package/dist/daemon/status-format.js.map +1 -0
  104. package/dist/index.d.ts +1 -0
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +1 -0
  107. package/dist/index.js.map +1 -1
  108. package/dist/ipc/validate.d.ts +2 -0
  109. package/dist/ipc/validate.d.ts.map +1 -1
  110. package/dist/ipc/validate.js +2 -1
  111. package/dist/ipc/validate.js.map +1 -1
  112. package/dist/mcp/index.js +5 -0
  113. package/dist/mcp/index.js.map +1 -1
  114. package/dist/transport/index.d.ts +2 -1
  115. package/dist/transport/index.d.ts.map +1 -1
  116. package/dist/transport/index.js +6 -0
  117. package/dist/transport/index.js.map +1 -1
  118. package/dist/transport/iterm.d.ts +4 -1
  119. package/dist/transport/iterm.d.ts.map +1 -1
  120. package/dist/transport/iterm.js +26 -0
  121. package/dist/transport/iterm.js.map +1 -1
  122. package/dist/transport/policy.d.ts +24 -0
  123. package/dist/transport/policy.d.ts.map +1 -0
  124. package/dist/transport/policy.js +41 -0
  125. package/dist/transport/policy.js.map +1 -0
  126. package/dist/transport/screen.d.ts +11 -0
  127. package/dist/transport/screen.d.ts.map +1 -1
  128. package/dist/transport/screen.js +19 -0
  129. package/dist/transport/screen.js.map +1 -1
  130. package/dist/transport/session-transport.d.ts +27 -0
  131. package/dist/transport/session-transport.d.ts.map +1 -1
  132. package/dist/transport/session-transport.js +6 -1
  133. package/dist/transport/session-transport.js.map +1 -1
  134. package/dist/transport/sync-facade.d.ts +19 -0
  135. package/dist/transport/sync-facade.d.ts.map +1 -1
  136. package/dist/transport/sync-facade.js +38 -8
  137. package/dist/transport/sync-facade.js.map +1 -1
  138. package/dist/transport/tmux.d.ts +15 -1
  139. package/dist/transport/tmux.d.ts.map +1 -1
  140. package/dist/transport/tmux.js +52 -4
  141. package/dist/transport/tmux.js.map +1 -1
  142. package/package.json +4 -2
  143. package/templates/systemd/aibroker.service +22 -0
package/README.md CHANGED
@@ -62,40 +62,24 @@ Type these in any channel — WhatsApp, Telegram, PAILot, or terminal:
62
62
 
63
63
  ## Quick Start
64
64
 
65
- Tell Claude Code:
66
-
67
- > Clone https://github.com/mnott/AIBroker and set it up for me
68
-
69
- Or manually:
70
-
71
- ### 1. Install
72
-
73
65
  ```bash
74
- git clone https://github.com/mnott/AIBroker
75
- cd AIBroker
76
- npm install
77
- npm run build
66
+ npm install -g aibroker
67
+ aibroker setup # service + MCP registration + Claude Code hooks + ~/.aibroker/env
68
+ aibroker doctor # every check green, or it says exactly what to fix
78
69
  ```
79
70
 
80
- ### 2. Configure the MCP server
81
-
82
- Add to `~/.claude.json` under `mcpServers`:
71
+ `aibroker setup` is idempotent and prints what it did per step; `--dry-run` shows the plan and writes nothing, `--no-service`, `--no-mcp` and `--no-hooks` skip a step. `aibroker uninstall` removes the service, the MCP entry and the hooks it added, and keeps `~/.aibroker` unless you pass `--purge`.
83
72
 
84
- ```json
85
- "aibroker": {
86
- "type": "stdio",
87
- "command": "node",
88
- "args": ["/path/to/AIBroker/dist/mcp/index.js"]
89
- }
90
- ```
73
+ The hub owns the IPC socket at `/tmp/aibroker.sock` and the PAILot WebSocket gateway on port 8765.
91
74
 
92
- ### 3. Start the daemon
93
-
94
- ```bash
95
- aibroker start
96
- ```
75
+ | | macOS | Linux |
76
+ |---|---|---|
77
+ | Service | LaunchAgent `com.aibroker.daemon` (an existing plist is left alone unless `--force`) | `systemd --user` unit `aibroker.service`; run `sudo loginctl enable-linger $USER` once so it survives logout |
78
+ | Session host | iTerm2 (tmux optional) | tmux |
79
+ | Prerequisites | Node.js 22+, iTerm2, ffmpeg | Node.js 22+, tmux, ffmpeg |
80
+ | Guide | [docs/macos.md](docs/macos.md) | [docs/linux.md](docs/linux.md) — no macOS needed anywhere |
97
81
 
98
- The daemon runs as a macOS launchd service (`com.aibroker.daemon`). It owns the IPC socket at `/tmp/aibroker.sock` and the PAILot WebSocket gateway on port 8765.
82
+ From a source checkout instead: `git clone https://github.com/mnott/AIBroker && cd AIBroker && npm install && npm run build && node dist/daemon/cli.js setup`.
99
83
 
100
84
  ### 4. Session backup across reboots (optional)
101
85
 
@@ -103,7 +87,7 @@ The daemon runs as a macOS launchd service (`com.aibroker.daemon`). It owns the
103
87
  aibroker sessions install
104
88
  ```
105
89
 
106
- Installs a LaunchAgent (`com.aibroker.sessions-snapshot`) that records your open Claude sessions (name + directory) every 5 minutes. Around a reboot:
90
+ Installs a LaunchAgent (`com.aibroker.sessions-snapshot`, macOS) that records your open Claude sessions (name + directory) every 5 minutes. Around a reboot:
107
91
 
108
92
  ```bash
109
93
  aibroker sessions checkpoint # before: tells each open session to persist its state
@@ -207,14 +191,16 @@ The format is deliberately plain JSONL: greppable with the tools already on the
207
191
  ```bash
208
192
  # WhatsApp
209
193
  npm install -g whazaa
210
- whazaa watch
194
+ whazaa setup # pair the phone (QR code), once
195
+ whazaa service start # run the watcher as a service (LaunchAgent on macOS, systemd user unit on Linux)
211
196
 
212
197
  # Telegram
213
- npm install -g telex
214
- telex watch
198
+ npm install -g @tekmidian/telex
199
+ telex setup # log in to Telegram, once
200
+ telex service start
215
201
  ```
216
202
 
217
- Once connected, messages from your phone route to Claude and replies come back automatically.
203
+ `<bin> service start|stop|status|unit` manages the background service; see [macos.md](docs/macos.md) and [linux.md](docs/linux.md). Once connected, messages from your phone route to Claude and replies come back automatically.
218
204
 
219
205
  ---
220
206
 
@@ -473,6 +459,8 @@ Addressing is explicit: `hub:machine-b/session:abc` routes through the bridge to
473
459
  | [protocol.md](docs/protocol.md) | AIBP protocol specification |
474
460
  | [plugins.md](docs/plugins.md) | Plugin types, registration, capabilities |
475
461
  | [routing.md](docs/routing.md) | Message routing logic and channel system |
462
+ | [macos.md](docs/macos.md) | macOS: LaunchAgent, iTerm2 + tmux, permissions, troubleshooting |
463
+ | [linux.md](docs/linux.md) | Linux: install to daily use with tmux and systemd, PAI (SQLite or Postgres in Docker), messengers, Tailscale, testing, what stays macOS-only |
476
464
  | [sessions.md](docs/sessions.md) | Session management and lifecycle |
477
465
  | [commands.md](docs/commands.md) | Slash command reference |
478
466
  | [agentish.md](docs/agentish.md) | AG2: the wire format sessions use to talk to each other |
@@ -52,6 +52,10 @@ export interface SessionSnapshot {
52
52
  * on this when present so a tmux session keeps its name across %N churn.
53
53
  */
54
54
  aibrokerId?: string | null;
55
+ /** Working directory, when the host reports it (tmux). Absent on iTerm. */
56
+ cwd?: string | null;
57
+ /** Host this row came from; absent means iTerm. */
58
+ transport?: "iterm" | "tmux";
55
59
  /**
56
60
  * Whether a Claude is actually running on this terminal, read from the
57
61
  * process table. Undefined when that could not be read — a caller must then
@@ -60,6 +64,31 @@ export interface SessionSnapshot {
60
64
  isClaude?: boolean;
61
65
  }
62
66
  export declare function wasLastSnapshotReliable(): boolean;
67
+ export interface ItermBundleIdImpostor {
68
+ pid: number;
69
+ executablePath: string;
70
+ }
71
+ /**
72
+ * Parser half of findItermBundleIdImpostors(), split out for testing without
73
+ * a subprocess. `lsappinfo list` entries look like:
74
+ * 125) "iTerm2" ASN:0x0-0x412ec2ab: (in front)
75
+ * bundleID="com.googlecode.iterm2"
76
+ * executable path="/Applications/iTerm.app/Contents/MacOS/iTerm2"
77
+ * pid = 66665 ...
78
+ * A child launched with iTerm's exported __CFBundleIdentifier registers under
79
+ * the same bundle id from a different executable — that mismatch is the tell.
80
+ */
81
+ export declare function parseLsappinfoImpostors(text: string): ItermBundleIdImpostor[];
82
+ /**
83
+ * Processes registered with LaunchServices under iTerm2's bundle id but NOT
84
+ * running iTerm's own executable — e.g. an osascript/helper child that
85
+ * inherited iTerm's __CFBundleIdentifier env var. While registered, `tell
86
+ * application "iTerm2"` can be routed to the impostor instead, which answers
87
+ * with -600/-1708 and takes enumeration down. Diagnostic only: never kills
88
+ * anything, never throws — on any error this is "found nothing" to a caller
89
+ * that already treats [] as the safe default.
90
+ */
91
+ export declare function findItermBundleIdImpostors(): ItermBundleIdImpostor[];
63
92
  /**
64
93
  * Enumerate all iTerm2 sessions, reusing an answer up to SNAPSHOT_TTL_MS old.
65
94
  *
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqCH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAS,GAAG,MAAM,GAAG,IAAI,CA4BhF;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS;;CAAqB,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAI3E;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAc,GAAG,MAAM,CActG;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAQpF;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAQvF;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAQxE;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAe7E;AAED,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CA+BjD;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAcnE;AAED,wBAAgB,cAAc,IAAI,OAAO,CAMxC;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAO9D;AAED,wBAAgB,cAAc,IAAI,OAAO,CAWxC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBjE;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAyJD,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,eAAe,EAAE,CASrF;AAED,8EAA8E;AAC9E,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAqBzC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAsCH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAS,GAAG,MAAM,GAAG,IAAI,CA8BhF;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS;;CAAqB,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAI3E;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAc,GAAG,MAAM,CActG;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAQpF;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAQvF;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAQxE;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAe7E;AAED,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CA+BjD;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAcnE;AAED,wBAAgB,cAAc,IAAI,OAAO,CAOxC;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAO9D;AAED,wBAAgB,cAAc,IAAI,OAAO,CAYxC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAmBjE;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,2EAA2E;IAC3E,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA+JD,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;CACxB;AAID;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAc7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,IAAI,qBAAqB,EAAE,CAapE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,eAAe,EAAE,CASrF;AAED,8EAA8E;AAC9E,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAqBzC"}
@@ -8,6 +8,7 @@ import { execFileSync, spawnSync } from "node:child_process";
8
8
  import { statSync, writeFileSync } from "node:fs";
9
9
  import { log } from "../../core/log.js";
10
10
  import { timeCall } from "../../core/call-timing.js";
11
+ import { itermInPlay } from "../../transport/policy.js";
11
12
  /**
12
13
  * Throttle identical failures so a persistent fault logs steadily, not per-poll —
13
14
  * but COUNT the suppressed ones and say how many.
@@ -37,6 +38,9 @@ function logThrottled(key, message) {
37
38
  // default trades a rare slow call for a silent wrong answer. iTerm AppleScript
38
39
  // cost scales with open sessions and scrollback, both of which grow over time.
39
40
  export function runAppleScript(script, timeoutMs = 15_000) {
41
+ // No osascript off macOS — not a failure, so nothing to log or throttle.
42
+ if (process.platform !== "darwin")
43
+ return null;
40
44
  const result = spawnSync("osascript", [], {
41
45
  input: script,
42
46
  stdio: ["pipe", "pipe", "pipe"],
@@ -166,6 +170,8 @@ export function isClaudeRunningInSession(sessionId) {
166
170
  return false;
167
171
  }
168
172
  export function isItermRunning() {
173
+ if (!itermInPlay())
174
+ return false;
169
175
  const result = spawnSync("pgrep", ["-x", "iTerm2"], {
170
176
  stdio: ["pipe", "pipe", "pipe"],
171
177
  timeout: 3_000,
@@ -177,6 +183,8 @@ export function isItermSessionAlive(sessionId) {
177
183
  return runAppleScript(script) === "alive";
178
184
  }
179
185
  export function isScreenLocked() {
186
+ if (process.platform !== "darwin")
187
+ return false;
180
188
  try {
181
189
  const result = spawnSync("sh", ["-c", "ioreg -n Root -d1 -a | grep -c CGSSessionScreenIsLocked"], { timeout: 3_000, encoding: "utf8" });
182
190
  return parseInt((result.stdout ?? "0").trim(), 10) > 0;
@@ -291,6 +299,12 @@ let cachedAt = 0;
291
299
  * TTL.
292
300
  */
293
301
  function snapshotAllSessionsUncached() {
302
+ // iTerm is not in play (tmux transport / non-macOS): an empty answer, and a
303
+ // reliable one — "no iTerm sessions" is true, not a dropped enumeration.
304
+ if (!itermInPlay()) {
305
+ lastSnapshotOk = true;
306
+ return [];
307
+ }
294
308
  // Fetch id, name, tty, tab.title. Skip `profile name` (~0.6s) and
295
309
  // `is at shell prompt` (~3.3s) — both derived or irrelevant.
296
310
  const script = `
@@ -366,6 +380,61 @@ let lastSnapshotOk = true;
366
380
  export function wasLastSnapshotReliable() {
367
381
  return lastSnapshotOk;
368
382
  }
383
+ const REAL_ITERM_SUFFIX = "/iTerm.app/Contents/MacOS/iTerm2";
384
+ /**
385
+ * Parser half of findItermBundleIdImpostors(), split out for testing without
386
+ * a subprocess. `lsappinfo list` entries look like:
387
+ * 125) "iTerm2" ASN:0x0-0x412ec2ab: (in front)
388
+ * bundleID="com.googlecode.iterm2"
389
+ * executable path="/Applications/iTerm.app/Contents/MacOS/iTerm2"
390
+ * pid = 66665 ...
391
+ * A child launched with iTerm's exported __CFBundleIdentifier registers under
392
+ * the same bundle id from a different executable — that mismatch is the tell.
393
+ */
394
+ export function parseLsappinfoImpostors(text) {
395
+ const impostors = [];
396
+ const entries = text.split(/\n(?=[ \t]*\d+\)\s)/);
397
+ for (const entry of entries) {
398
+ const bundleMatch = entry.match(/bundleID="([^"]*)"/);
399
+ if (!bundleMatch || bundleMatch[1] !== "com.googlecode.iterm2")
400
+ continue;
401
+ const pathMatch = entry.match(/executable path="([^"]*)"/);
402
+ const pidMatch = entry.match(/pid\s*=\s*(\d+)/);
403
+ if (!pathMatch || !pidMatch)
404
+ continue;
405
+ const executablePath = pathMatch[1];
406
+ if (executablePath.endsWith(REAL_ITERM_SUFFIX))
407
+ continue;
408
+ impostors.push({ pid: parseInt(pidMatch[1], 10), executablePath });
409
+ }
410
+ return impostors;
411
+ }
412
+ /**
413
+ * Processes registered with LaunchServices under iTerm2's bundle id but NOT
414
+ * running iTerm's own executable — e.g. an osascript/helper child that
415
+ * inherited iTerm's __CFBundleIdentifier env var. While registered, `tell
416
+ * application "iTerm2"` can be routed to the impostor instead, which answers
417
+ * with -600/-1708 and takes enumeration down. Diagnostic only: never kills
418
+ * anything, never throws — on any error this is "found nothing" to a caller
419
+ * that already treats [] as the safe default.
420
+ */
421
+ export function findItermBundleIdImpostors() {
422
+ if (!itermInPlay())
423
+ return [];
424
+ try {
425
+ const result = spawnSync("/usr/bin/lsappinfo", ["list"], {
426
+ stdio: ["pipe", "pipe", "pipe"],
427
+ timeout: 3_000,
428
+ encoding: "utf8",
429
+ });
430
+ if (result.status !== 0 || result.error || !result.stdout)
431
+ return [];
432
+ return parseLsappinfoImpostors(result.stdout);
433
+ }
434
+ catch {
435
+ return [];
436
+ }
437
+ }
369
438
  /**
370
439
  * Enumerate all iTerm2 sessions, reusing an answer up to SNAPSHOT_TTL_MS old.
371
440
  *
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/adapters/iterm/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/adapters/iterm/core.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Provides recordFromMic() and transcribeLocalAudio() for desk dictation.
5
5
  * Both functions use sox for recording and the Whisper CLI for transcription.
6
6
  */
7
- /** Absolute path to the Whisper CLI binary. */
7
+ /** @deprecated Frozen at import time; call resolveWhisperBin() at the point of use. */
8
8
  export declare const WHISPER_BIN: string;
9
9
  /** Whisper model name (overridable via AIBROKER_WHISPER_MODEL env). */
10
10
  export declare const WHISPER_MODEL: string;
@@ -1 +1 @@
1
- {"version":3,"file":"dictation.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/dictation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,+CAA+C;AAC/C,eAAO,MAAM,WAAW,QAGR,CAAC;AAEjB,uEAAuE;AACvE,eAAO,MAAM,aAAa,QAA2H,CAAC;AAQtJ;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,cAAc,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAoCxE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAyC7E"}
1
+ {"version":3,"file":"dictation.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/dictation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,uFAAuF;AACvF,eAAO,MAAM,WAAW,QAAsB,CAAC;AAE/C,uEAAuE;AACvE,eAAO,MAAM,aAAa,QAA2H,CAAC;AAEtJ;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,cAAc,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAoCxE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAyC7E"}
@@ -10,13 +10,12 @@ import { tmpdir } from "node:os";
10
10
  import { join } from "node:path";
11
11
  import { execFile } from "node:child_process";
12
12
  import { log } from "../../core/log.js";
13
+ import { resolveSoxBin, resolveWhisperBin } from "../../core/bins.js";
13
14
  const execFileAsync = promisify(execFile);
14
- /** Absolute path to the Whisper CLI binary. */
15
- export const WHISPER_BIN = ["/opt/homebrew/bin/whisper", "/usr/local/bin/whisper", "whisper"].find((p) => p === "whisper" || existsSync(p)) ?? "whisper";
15
+ /** @deprecated Frozen at import time; call resolveWhisperBin() at the point of use. */
16
+ export const WHISPER_BIN = resolveWhisperBin();
16
17
  /** Whisper model name (overridable via AIBROKER_WHISPER_MODEL env). */
17
18
  export const WHISPER_MODEL = process.env.AIBROKER_WHISPER_MODEL ?? process.env.MSGBRIDGE_WHISPER_MODEL ?? process.env.WHAZAA_WHISPER_MODEL ?? "small";
18
- /** Absolute path to the sox binary. */
19
- const SOX_BIN = ["/opt/homebrew/bin/sox", "/usr/local/bin/sox", "sox"].find((p) => p === "sox" || existsSync(p)) ?? "sox";
20
19
  /**
21
20
  * Record audio from the default Mac microphone using sox.
22
21
  * Stops automatically after ~2 seconds of silence.
@@ -30,7 +29,7 @@ export async function recordFromMic(maxDurationSec = 60) {
30
29
  execFile("afplay", ["/System/Library/Sounds/Tink.aiff"], () => { });
31
30
  log(`Dictation: recording to ${wavPath} (max ${maxDurationSec}s)...`);
32
31
  try {
33
- await execFileAsync(SOX_BIN, [
32
+ await execFileAsync(resolveSoxBin(), [
34
33
  "-d", "-r", "16000", "-c", "1", "-b", "16",
35
34
  wavPath,
36
35
  "silence", "1", "0.2", "1%", "1", "2.0", "1%",
@@ -72,7 +71,7 @@ export async function transcribeLocalAudio(audioPath) {
72
71
  ];
73
72
  try {
74
73
  log(`Dictation: transcribing ${audioPath} (model=${WHISPER_MODEL})...`);
75
- await execFileAsync(WHISPER_BIN, [audioPath, "--model", WHISPER_MODEL, "--output_format", "txt", "--output_dir", outDir, "--verbose", "False"], {
74
+ await execFileAsync(resolveWhisperBin(), [audioPath, "--model", WHISPER_MODEL, "--output_format", "txt", "--output_dir", outDir, "--verbose", "False"], {
76
75
  timeout: 120_000,
77
76
  env: {
78
77
  ...process.env,
@@ -1 +1 @@
1
- {"version":3,"file":"dictation.js","sourceRoot":"","sources":["../../../src/adapters/iterm/dictation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dictation.js","sourceRoot":"","sources":["../../../src/adapters/iterm/dictation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/sessions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAWL,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AAoCnB,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAQ1E;AAED,wBAAgB,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAuBxE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAyBlE;AAED,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBxE;AAQD;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,GAAE;IACJ,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC1C,GACL,MAAM,CAmCR;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE;AAID,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,MAAM,GAAG,IAAI,CA0Bf;AAID,wBAAgB,kBAAkB,IAAI,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAMxE;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,KAAK,CAAC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC,CAwBD;AA8GD,wBAAgB,mBAAmB,CAAC,OAAO,SAAW,GAAG,MAAM,GAAG,IAAI,CAOrE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOjE;AAID,wBAAsB,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,SAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9F;AAED,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAMxD"}
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/adapters/iterm/sessions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAWL,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AAsCnB,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAS1E;AAED,wBAAgB,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAwBxE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CA0BlE;AAED,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiBxE;AAQD;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,GAAE;IACJ,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC1C,GACL,MAAM,CAmCR;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE;AAID,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,MAAM,GAAG,IAAI,CA0Bf;AAID,wBAAgB,kBAAkB,IAAI,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAMxE;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,KAAK,CAAC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC,CAwBD;AA8GD,wBAAgB,mBAAmB,CAAC,OAAO,SAAW,GAAG,MAAM,GAAG,IAAI,CAOrE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOjE;AAID,wBAAsB,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,SAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9F;AAED,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAMxD"}
@@ -7,12 +7,15 @@
7
7
  import { execSync } from "node:child_process";
8
8
  import { runAppleScript, _internal, typeIntoSession, sendKeystrokeToSession, stripItermPrefix, withSessionAppleScript, snapshotAllSessions, } from "./core.js";
9
9
  import { setSessionTitle, itermViewerSessionId, snapshotAllSessions as snapshotAllTransports, } from "../../transport/sync-facade.js";
10
+ import { itermInPlay } from "../../transport/policy.js";
10
11
  import { normaliseLabel } from "../../core/session-match.js";
11
12
  import { log } from "../../core/log.js";
12
13
  import { managedSessions, updateSessionTtyCache, } from "../../core/state.js";
13
14
  import { getAllPersistentSessionNames, lookupPersistentName } from "../../core/persistence.js";
14
15
  // ── Session Variable Helpers ──
15
16
  function setItermSessionProperty(itermSessionId, body) {
17
+ if (!itermInPlay())
18
+ return;
16
19
  try {
17
20
  const script = withSessionAppleScript(itermSessionId, ` tell aSession\n ${body}\n end tell\n return`, "");
18
21
  execSync(`osascript <<'APPLESCRIPT'\n${script}\nAPPLESCRIPT`, {
@@ -29,11 +32,15 @@ export function setItermSessionVar(itermSessionId, name) {
29
32
  setItermSessionProperty(itermSessionId, `set variable named "user.paiName" to "${escaped}"`);
30
33
  }
31
34
  export function setItermTabName(itermSessionId, name) {
35
+ if (!itermInPlay())
36
+ return;
32
37
  // Fire-and-forget: rename the tab via iTerm2's native WebSocket API.
33
38
  // This sets the persistent title override (same as double-click rename).
34
39
  import("./iterm2-api.js").then(({ iterm2SetTabTitle }) => iterm2SetTabTitle(itermSessionId, name).catch((err) => log(`Tab rename failed: ${err instanceof Error ? err.message : String(err)}`)));
35
40
  }
36
41
  export function setItermBadge(itermSessionId, text) {
42
+ if (!itermInPlay())
43
+ return;
37
44
  // Write badge escape sequence to the session's tty device.
38
45
  // Must go to terminal output stream (not stdin via "write text").
39
46
  try {
@@ -64,6 +71,8 @@ export function setItermBadge(itermSessionId, text) {
64
71
  * session as an unexplained failure.
65
72
  */
66
73
  export function revealItermSession(itermSessionId) {
74
+ if (!itermInPlay())
75
+ return false;
67
76
  try {
68
77
  const result = execSync(`osascript -e 'tell application "iTerm2"
69
78
  repeat with w in windows
@@ -88,6 +97,8 @@ export function revealItermSession(itermSessionId) {
88
97
  }
89
98
  }
90
99
  export function getItermSessionVar(itermSessionId) {
100
+ if (!itermInPlay())
101
+ return null;
91
102
  try {
92
103
  const script = withSessionAppleScript(itermSessionId, ` tell aSession\n try\n return (variable named "user.paiName")\n on error\n return ""\n end try\n end tell`, 'return ""');
93
104
  const result = execSync(`osascript <<'APPLESCRIPT'\n${script}\nAPPLESCRIPT`, {
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/adapters/iterm/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/adapters/iterm/sessions.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Transport-agnostic: only handles local audio files.
5
5
  * Downloading media from WhatsApp/Telegram stays in per-project code.
6
6
  */
7
- /** Absolute path to the Whisper CLI binary. */
7
+ /** @deprecated Frozen at import time; call resolveWhisperBin() at the point of use. */
8
8
  export declare const WHISPER_BIN: string;
9
9
  /** Whisper model (overridable via env). */
10
10
  export declare const WHISPER_MODEL: string;
@@ -1 +1 @@
1
- {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../../src/adapters/kokoro/media.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,+CAA+C;AAC/C,eAAO,MAAM,WAAW,QAGR,CAAC;AAEjB,2CAA2C;AAC3C,eAAO,MAAM,aAAa,QACgG,CAAC;AAE3H;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAMzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAiB5E;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,KAAK,SAAY,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4CxB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,MAAM,EAAE,CAsCtE"}
1
+ {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../../src/adapters/kokoro/media.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,uFAAuF;AACvF,eAAO,MAAM,WAAW,QAAsB,CAAC;AAE/C,2CAA2C;AAC3C,eAAO,MAAM,aAAa,QACgG,CAAC;AAE3H;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAMzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAiB5E;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,KAAK,SAAY,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4CxB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,MAAM,EAAE,CAsCtE"}
@@ -10,9 +10,10 @@ import { tmpdir } from "node:os";
10
10
  import { join } from "node:path";
11
11
  import { execFile } from "node:child_process";
12
12
  import { log } from "../../core/log.js";
13
+ import { resolveWhisperBin } from "../../core/bins.js";
13
14
  const execFileAsync = promisify(execFile);
14
- /** Absolute path to the Whisper CLI binary. */
15
- export const WHISPER_BIN = ["/opt/homebrew/bin/whisper", "/usr/local/bin/whisper", "whisper"].find((p) => p === "whisper" || existsSync(p)) ?? "whisper";
15
+ /** @deprecated Frozen at import time; call resolveWhisperBin() at the point of use. */
16
+ export const WHISPER_BIN = resolveWhisperBin();
16
17
  /** Whisper model (overridable via env). */
17
18
  export const WHISPER_MODEL = process.env.AIBROKER_WHISPER_MODEL ?? process.env.MSGBRIDGE_WHISPER_MODEL ?? process.env.WHAZAA_WHISPER_MODEL ?? "small";
18
19
  /**
@@ -84,7 +85,7 @@ export async function transcribeAudio(audioPath, label = "[Audio]") {
84
85
  ];
85
86
  try {
86
87
  log(`Transcribing ${audioPath} (model=${WHISPER_MODEL})...`);
87
- await execFileAsync(WHISPER_BIN, [audioPath, "--model", WHISPER_MODEL, "--output_format", "txt", "--output_dir", tmpdir(), "--verbose", "False"], {
88
+ await execFileAsync(resolveWhisperBin(), [audioPath, "--model", WHISPER_MODEL, "--output_format", "txt", "--output_dir", tmpdir(), "--verbose", "False"], {
88
89
  timeout: 120_000,
89
90
  env: {
90
91
  ...process.env,
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/adapters/kokoro/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/adapters/kokoro/media.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export type KokoroVoice = "af_heart" | "af_alloy" | "af_aoede" | "af_bella" | "a
12
12
  */
13
13
  export declare function textToVoiceNote(text: string, voice?: string): Promise<Buffer>;
14
14
  /**
15
- * Synthesize text and play locally via afplay.
15
+ * Synthesize text and play locally (afplay on macOS, paplay/aplay/ffplay elsewhere).
16
16
  */
17
17
  export declare function speakLocally(text: string, voice?: string): Promise<void>;
18
18
  export declare function listVoices(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../../src/adapters/kokoro/tts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH,MAAM,MAAM,WAAW,GACnB,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAChE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GACxE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAC3D,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GACjD,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAClD,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;AAqCxD;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA4CnF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB9E;AAED,wBAAgB,UAAU,IAAI,MAAM,EAAE,CAErC"}
1
+ {"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../../src/adapters/kokoro/tts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,MAAM,MAAM,WAAW,GACnB,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAChE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GACxE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAC3D,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GACjD,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAClD,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;AAqCxD;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6CnF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B9E;AAED,wBAAgB,UAAU,IAAI,MAAM,EAAE,CAErC"}
@@ -11,7 +11,7 @@ import { existsSync, readFileSync, unlinkSync, writeFileSync } from "node:fs";
11
11
  import { tmpdir } from "node:os";
12
12
  import { join } from "node:path";
13
13
  import { log } from "../../core/log.js";
14
- const FFMPEG = ["/opt/homebrew/bin/ffmpeg", "/usr/local/bin/ffmpeg", "ffmpeg"].find((p) => p === "ffmpeg" || existsSync(p)) ?? "ffmpeg";
14
+ import { resolveFfmpegBin, localPlayerCommand } from "../../core/bins.js";
15
15
  const KNOWN_VOICES = [
16
16
  "af_heart", "af_alloy", "af_aoede", "af_bella", "af_jessica",
17
17
  "af_kore", "af_nicole", "af_nova", "af_river", "af_sarah", "af_sky",
@@ -49,6 +49,7 @@ async function ensureInitialized() {
49
49
  export async function textToVoiceNote(text, voice) {
50
50
  if (!text?.trim())
51
51
  throw new Error("TTS: text must not be empty");
52
+ const FFMPEG = resolveFfmpegBin();
52
53
  if (FFMPEG === "ffmpeg" && !existsSync("/usr/bin/ffmpeg")) {
53
54
  log("Warning: ffmpeg not found at known Homebrew paths; falling back to bare 'ffmpeg'.");
54
55
  }
@@ -90,7 +91,7 @@ export async function textToVoiceNote(text, voice) {
90
91
  }
91
92
  }
92
93
  /**
93
- * Synthesize text and play locally via afplay.
94
+ * Synthesize text and play locally (afplay on macOS, paplay/aplay/ffplay elsewhere).
94
95
  */
95
96
  export async function speakLocally(text, voice) {
96
97
  if (!text?.trim())
@@ -105,7 +106,18 @@ export async function speakLocally(text, voice) {
105
106
  throw new Error("TTS: generate produced no audio");
106
107
  const wavPath = join(tmpdir(), `aibroker-speak-${Date.now()}-${Math.random().toString(36).slice(2, 8)}.wav`);
107
108
  writeFileSync(wavPath, float32ToWav(speakAudio, speakSampleRate));
108
- const child = spawn("afplay", [wavPath], { stdio: "ignore", detached: true });
109
+ const player = localPlayerCommand();
110
+ if (!player) {
111
+ log("Speak: no local audio player (need paplay, aplay or ffplay) — audio not played");
112
+ try {
113
+ unlinkSync(wavPath);
114
+ }
115
+ catch { /* ignore */ }
116
+ return;
117
+ }
118
+ const child = spawn(player[0], [...player.slice(1), wavPath], { stdio: "ignore", detached: true });
119
+ // A player that vanishes between resolution and spawn is an 'error' event, not a throw.
120
+ child.on("error", (err) => log(`Speak: ${player[0]} failed — ${err.message}`));
109
121
  child.on("close", () => {
110
122
  try {
111
123
  unlinkSync(wavPath);