@thewaifu/dsh-waifu 1.5.13 → 1.5.16

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 (47) hide show
  1. package/README.md +60 -10
  2. package/cordis.patch.yml +3 -2
  3. package/lib/client.js +7 -7
  4. package/lib/electron/main.mjs +108 -5
  5. package/lib/electron/preload.cjs +15 -0
  6. package/lib/index.d.ts +6 -0
  7. package/lib/index.d.ts.map +1 -1
  8. package/lib/index.js +20 -6
  9. package/lib/index.js.map +1 -1
  10. package/lib/model-vault/00b40b20c88d444e20e5e755a11b788c0c457daee2c98708c95a3c2a5e31c15b.asset +0 -0
  11. package/lib/model-vault/052e58de223fd5986500d416e19d11b0be880614e54eee57918026f21e64ab69.asset +0 -0
  12. package/lib/model-vault/17b682bc4f85e02367268a93bed5c848a568d893868f2f57e655e9851203fb0e.asset +0 -0
  13. package/lib/model-vault/29d9c0f1779863d22b380ba02e3883b82d3611066803aa77743d7fc24665756d.asset +0 -0
  14. package/lib/model-vault/2a4607fa6a3a1823c76f98b8f80a3e1bdfff70bc5b4e4e46c30d99b10bb19da8.asset +0 -0
  15. package/lib/model-vault/2bfaab148f9342664a9d2b29f7127a4cd0dcd7e12c6533ff10dbbb29294a94a3.asset +0 -0
  16. package/lib/model-vault/411092efc8b38c6b1b3d7d74c9063f65750b133b418f9afd323009f12fd380c2.asset +0 -0
  17. package/lib/model-vault/43deb3901971e4aa133cc2d3365c117677ece374269edefdbbca973a54ec91ea.asset +0 -0
  18. package/lib/model-vault/54f7c385bb60195589da89d06b058e54b900013284d39fb3bf68d26e6c4f566d.asset +0 -0
  19. package/lib/model-vault/711e39d0da2eef429a4548839832ab670d2e91d59562880f83bfb363338072e1.asset +0 -0
  20. package/lib/model-vault/784750eb82c26019422dedeb8b5c47a19e9cb0f594450845266856d8aac6c8d5.asset +0 -0
  21. package/lib/model-vault/80d1f80aa65ed2638d2377b22ff5e9f6d7cb6a58dc687b1f4279025efc2987f2.asset +0 -0
  22. package/lib/model-vault/92bb067863e105369cdfc94ef110e74ef79f0ef3e505202f5e80ddbe06af09af.asset +0 -0
  23. package/lib/model-vault/9f17bfa1034f63f378e4299ad7c6b610fc17439e901e511f8f2fb1e49a17931d.asset +0 -0
  24. package/lib/model-vault/ab85c2ade63532404300d9ff6b965c3a2c8dfa287569773b680b43cfbb42e0ce.asset +0 -0
  25. package/lib/model-vault/afc5ab736faf40e1cf5e77397c8849ce1ab575daded6a8dba7b6c0257290255c.asset +0 -0
  26. package/lib/model-vault/d34156b6a02720df748a866f9ce9af47cab028a21977ba85cb185604fd50ec9e.asset +0 -0
  27. package/lib/model-vault/d4566b0feb320d1cdd2a316b4813b3d52b299b9b1096ace187bf2a103327d2f8.asset +0 -0
  28. package/lib/model-vault/da63558512004876de69c958be070dbfc4adc152a1a675c656bcb25ed2740186.asset +0 -0
  29. package/lib/model-vault/eca9685f287f4a71b5ca6383d614f14b2fd1c4ca7a28712df0ea1a1516dee4a2.asset +0 -0
  30. package/lib/model-vault/f6a7c47ed64d979df65234dfa1ddb10c187d3db3cf4d85b1fe46da8eaca80f2c.asset +0 -0
  31. package/lib/model-vault/fc076c3fd2918f5205416d4234cdf63f5e76c533c010c43ce3cd67be911ad8c4.asset +0 -0
  32. package/lib/renderer/app.js +467 -86
  33. package/lib/renderer/hit-test.js +104 -0
  34. package/lib/renderer/interaction.js +135 -5
  35. package/lib/renderer/model.js +137 -0
  36. package/lib/renderer/styles.css +23 -23
  37. package/lib/runtime.d.ts +8 -1
  38. package/lib/runtime.d.ts.map +1 -1
  39. package/lib/runtime.js +11 -2
  40. package/lib/runtime.js.map +1 -1
  41. package/lib/taskStatus.d.ts +1 -1
  42. package/lib/taskStatus.d.ts.map +1 -1
  43. package/lib/taskStatus.js +1 -1
  44. package/lib/taskStatus.js.map +1 -1
  45. package/package.json +1 -1
  46. package/scripts/verify-package.mjs +83 -3
  47. package/scripts/verify-readme.mjs +13 -0
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  | Harness profile | What you get |
6
6
  | --- | --- |
7
- | `web` | A Skin Center with six full-page backgrounds and matching WebUI themes. |
7
+ | `web` | A Skin Center with six full-page backgrounds plus the desktop Live2D companion while the Web host runs. |
8
8
  | `tui` | The `dsh-waifu` desktop character with task reactions, speech bubbles, voice playback, and a `/waifu` menu. |
9
9
 
10
10
  Install the package in the profile you use. Installing it in `web` does not
@@ -23,7 +23,7 @@ You can run Harness directly from npm throughout this guide. If `dsh` is
23
23
  already installed globally, replace `npx @deepseek-ai/dsh` with `dsh` in any
24
24
  command.
25
25
 
26
- Waifu 1.5.13 supports Harness 0.1.x from 0.1.0-rc.6, including the 0.1.1
26
+ Waifu 1.5.16 supports Harness 0.1.x from 0.1.0-rc.6, including the 0.1.1
27
27
  release candidates and 0.1.2-alpha.1. Its Web client follows the locale,
28
28
  settings, and theme services supplied by each Harness version, so it works
29
29
  with both the legacy client runtime and the split client renderer architecture.
@@ -46,6 +46,11 @@ Start the WebUI:
46
46
  npx @deepseek-ai/dsh web
47
47
  ```
48
48
 
49
+ The desktop companion is owned by this `dsh web` Host process. Stopping the
50
+ Web host with `Ctrl+C`, closing its terminal, or otherwise ending the Host
51
+ closes the companion too; the Electron process also exits when its parent
52
+ stdin closes unexpectedly.
53
+
49
54
  Open the address printed in the terminal. Go to `Settings -> Skin Center`,
50
55
  directly below `Agent presets`, and select a skin.
51
56
 
@@ -130,7 +135,7 @@ If you stop the first download, run the same start command again to retry.
130
135
 
131
136
  ### Character downloads and cache
132
137
 
133
- Version 1.5.13 keeps Ani in the npm package so `dsh-waifu` can start without a
138
+ Version 1.5.16 keeps Ani in the npm package so `dsh-waifu` can start without a
134
139
  model download. Valentine, Mika, and YaDianNa are downloaded from
135
140
  `https://file.thewaifu.ai/live2d/` only when selected for the first time. The
136
141
  terminal shows download progress, and the plugin verifies both the exact byte
@@ -201,7 +206,8 @@ dedicated `Valentine` voice, so choosing `Switch voice` while Valentine is
201
206
  current shows its fixed assignment without opening a redundant voice menu.
202
207
  Successful character and voice selections also show an English confirmation in
203
208
  the `dsh-waifu` bubble and read that confirmation aloud with the newly selected
204
- character and voice. The menu returns immediately while audio streams, so slow
209
+ character and voice. Every bubble and spoken line starts with the `Master, `
210
+ address. The menu returns immediately while audio streams, so slow
205
211
  speech generation does not hold the terminal interaction open.
206
212
 
207
213
  Waifu reads only the preset lifecycle cues aloud during task execution, plus
@@ -212,10 +218,10 @@ the bubble or sent to TTS:
212
218
 
213
219
  | Status | Bubble and spoken text |
214
220
  | --- | --- |
215
- | Running | `I'm working on your task.` |
216
- | Waiting for confirmation | `I need your confirmation to continue.` |
217
- | Completed | `I've completed your task.` |
218
- | Failed | `I couldn't complete your task.` |
221
+ | Running | `Master, I'm working on your task.` |
222
+ | Waiting for confirmation | `Master, I need your confirmation to continue.` |
223
+ | Completed | `Master, I've completed your task.` |
224
+ | Failed | `Master, I couldn't complete your task.` |
219
225
 
220
226
  Selecting a voice does not connect the speech service by itself: use `/waifu`
221
227
  -> `Connect speech service`, approve this computer, and use `Check speech
@@ -227,11 +233,55 @@ character. Use `Show Waifu` to reveal the same window again.
227
233
 
228
234
  ### Desktop controls
229
235
 
230
- - Drag the companion with the primary mouse button.
236
+ - The visible character opens about 19% smaller than the previous default. Its
237
+ native transparent window reserves 1.35x zoom capacity around that smaller
238
+ character; the reserved transparent pixels remain click-through.
239
+ - Drag the companion with the primary mouse button. When dragging begins, the
240
+ native window releases unused zoom headroom while preserving the character's
241
+ bottom-center screen position, so the character can reach the upper work
242
+ area. This changes only the native window; the Pixi framebuffer stays fixed.
231
243
  - Use the mouse wheel or trackpad to zoom.
244
+ The Pixi framebuffer is allocated once before the character appears and is
245
+ never rebuilt during a wheel gesture. Trackpad input is normalized, capped,
246
+ and protected from short inertial direction reversals; queued input cannot
247
+ run far ahead of the visible scale. The native window starts with 1.35x zoom
248
+ capacity and grows only when that capacity is exceeded. It never contracts at
249
+ the end of a wheel gesture, so repeated zooming cannot alternate native resize
250
+ operations. Zoom is capped against the current display's available work area,
251
+ with a safety margin on every edge, so even rapid scrolling keeps the complete
252
+ character on screen. Extra transparent capacity remains click-through.
253
+ Pointer hit testing never reads or captures the Live2D render surface. This
254
+ avoids disturbing Cubism clipping masks while the character is moving or the
255
+ pointer enters the window. Moving the pointer over the character therefore
256
+ never hides masked model parts such as the face, hair, or clothing.
232
257
  - Double-click the companion to restore automatic sizing.
233
258
  - Click the compact close button at the character's upper-right corner to hide
234
- the companion. Use `/waifu` -> `Show Waifu` to reveal it again.
259
+ the companion. While a speech bubble is open, the button automatically moves
260
+ clear of the bubble with an 8px gap. Use `/waifu` -> `Show Waifu` to reveal it
261
+ again.
262
+ - Transparent window areas and the speech bubble pass pointer input to the
263
+ application underneath. The renderer tests the pointer against Cubism's
264
+ currently visible drawable triangles, so transparent gaps inside the old
265
+ rectangular character bound also pass through. Forwarded mouse movement and
266
+ a cross-platform main-process cursor fallback switch the native window back
267
+ to interactive only over those triangles or the close button. This CPU-side
268
+ test does not read the WebGL framebuffer and therefore does not interrupt
269
+ model animation or clipping masks.
270
+ A speech bubble temporarily expands the window upward without widening its
271
+ reserved character viewport. The fixed Pixi framebuffer remains unchanged and
272
+ anchored at the bottom center while only the native surface grows, so showing
273
+ or closing a bubble does not move the character on screen and never clears a
274
+ character frame. The native window shadow is disabled, and the compact opaque
275
+ bubble has no translucent outer shadow. Its position follows the tight bound
276
+ of the visible drawable meshes with an 8px character gap, instead of the
277
+ model file's often much taller logical bound. After it closes, the window
278
+ returns to the reserved character viewport.
279
+ Speech actions replace the current motion without
280
+ exposing an intermediate reset-pose frame.
281
+
282
+ Set the plugin configuration option `clickThroughTransparentAreas` to `false`
283
+ only when the legacy behavior, where the whole transparent window accepts
284
+ pointer input, is required.
235
285
 
236
286
  ### Connect speech
237
287
 
package/cordis.patch.yml CHANGED
@@ -7,9 +7,10 @@
7
7
  # appears to hang silently. Accept either the TUI or Web surface.
8
8
  requireInteractiveSurface: true
9
9
  defaultModel: 'Ani'
10
- width: 520
11
- height: 720
10
+ width: 420
11
+ height: 580
12
12
  alwaysOnTop: true
13
+ clickThroughTransparentAreas: true
13
14
  ttsEnabled: true
14
15
  ttsAuthMode: 'gateway'
15
16
  ttsBaseUrl: 'https://tts.thewaifu.ai/'
package/lib/client.js CHANGED
@@ -45,16 +45,16 @@ window.__ModuleLoader__.load({
45
45
  document.head.appendChild(tag);
46
46
  }
47
47
  var SkinPicker_module_css_default = {
48
- "meta": "-Npnja_meta",
49
- "check": "-Npnja_check",
50
- "section": "-Npnja_section",
48
+ "preview": "-Npnja_preview",
51
49
  "name": "-Npnja_name",
52
- "selected": "-Npnja_selected",
53
- "title": "-Npnja_title",
54
50
  "image": "-Npnja_image",
55
- "preview": "-Npnja_preview",
51
+ "title": "-Npnja_title",
52
+ "options": "-Npnja_options",
56
53
  "option": "-Npnja_option",
57
- "options": "-Npnja_options"
54
+ "selected": "-Npnja_selected",
55
+ "check": "-Npnja_check",
56
+ "section": "-Npnja_section",
57
+ "meta": "-Npnja_meta"
58
58
  };
59
59
  //#endregion
60
60
  //#region client/SkinPicker.tsx
@@ -4,7 +4,12 @@ import { createInterface } from 'node:readline'
4
4
  import { dirname, resolve } from 'node:path'
5
5
  import { fileURLToPath } from 'node:url'
6
6
  import { modelUrl, startAssetServer } from './server.mjs'
7
- import { draggedWindowPosition } from '../renderer/interaction.js'
7
+ import {
8
+ draggedWindowPosition,
9
+ mouseEventsIgnoredAtPoint,
10
+ normalizeHitTestRegions,
11
+ pointInInteractiveRegions,
12
+ } from '../renderer/interaction.js'
8
13
  import { windowAnchorPoint, windowBoundsFromAnchor } from '../renderer/model.js'
9
14
  import { normalizeSpeechBubblePayload } from '../renderer/speech.js'
10
15
  import { normalizeSpeechAudioMessage } from '../renderer/audio.js'
@@ -25,9 +30,10 @@ function write(message) {
25
30
 
26
31
  const modelRoot = argument('model-root')
27
32
  let currentModel = argument('model')
28
- const width = Number(argument('width', '520'))
29
- const height = Number(argument('height', '720'))
33
+ const width = Number(argument('width', '420'))
34
+ const height = Number(argument('height', '580'))
30
35
  const alwaysOnTop = argument('always-on-top', 'true') === 'true'
36
+ const clickThroughTransparentAreas = argument('click-through-transparent-areas', 'true') === 'true'
31
37
  const screenshot = argument('screenshot')
32
38
  const exitAfterRender = argument('exit-after-render', 'false') === 'true'
33
39
 
@@ -48,6 +54,9 @@ let dragStart
48
54
  let resizeSessionAnchor
49
55
  let windowShown = false
50
56
  let applicationCloseAllowed = false
57
+ let hitTestRegions = { model: undefined, controls: [] }
58
+ let mouseEventsIgnored = false
59
+ let pointerPoll
51
60
 
52
61
  function closeApplication() {
53
62
  applicationCloseAllowed = true
@@ -58,11 +67,65 @@ function hideWindow() {
58
67
  if (window === undefined || window.isDestroyed() || !window.isVisible()) return
59
68
  dragStart = undefined
60
69
  windowShown = false
70
+ setMouseEventsIgnored(true)
61
71
  if (alwaysOnTop) window.setAlwaysOnTop(false)
62
72
  window.hide()
63
73
  write({ type: 'window-hidden', visible: window.isVisible() })
64
74
  }
65
75
 
76
+ function setMouseEventsIgnored(ignore) {
77
+ if (window === undefined || window.isDestroyed()) return
78
+ const next = clickThroughTransparentAreas ? ignore : false
79
+ if (mouseEventsIgnored === next) return
80
+ if (next) window.setIgnoreMouseEvents(true, { forward: true })
81
+ else window.setIgnoreMouseEvents(false)
82
+ mouseEventsIgnored = next
83
+ window.webContents.send('dsh-waifu:mouse-events-state', { ignored: next })
84
+ }
85
+
86
+ function updateMousePassthrough() {
87
+ if (window === undefined || window.isDestroyed()) return
88
+ if (!windowShown || !window.isVisible()) {
89
+ setMouseEventsIgnored(true)
90
+ return
91
+ }
92
+ if (dragStart !== undefined) {
93
+ setMouseEventsIgnored(false)
94
+ return
95
+ }
96
+ const bounds = window.getBounds()
97
+ const cursor = screen.getCursorScreenPoint()
98
+ const point = {
99
+ x: cursor.x - bounds.x,
100
+ y: cursor.y - bounds.y,
101
+ }
102
+ if (point.x < 0 || point.y < 0 || point.x >= bounds.width || point.y >= bounds.height) {
103
+ setMouseEventsIgnored(true)
104
+ return
105
+ }
106
+ updateMousePassthroughAtPoint(point)
107
+ }
108
+
109
+ function updateMousePassthroughAtPoint(point, overModel) {
110
+ if (window === undefined || window.isDestroyed()) return
111
+ if (!windowShown || !window.isVisible()) {
112
+ setMouseEventsIgnored(true)
113
+ return
114
+ }
115
+ if (dragStart !== undefined) {
116
+ setMouseEventsIgnored(false)
117
+ return
118
+ }
119
+ if (pointInInteractiveRegions(point, hitTestRegions.controls) || typeof overModel === 'boolean') {
120
+ setMouseEventsIgnored(mouseEventsIgnoredAtPoint(point, hitTestRegions.controls, overModel))
121
+ return
122
+ }
123
+ window.webContents.send('dsh-waifu:pointer-probe', {
124
+ clientX: point.x,
125
+ clientY: point.y,
126
+ })
127
+ }
128
+
66
129
  function keepWindowAboveApplications() {
67
130
  if (!alwaysOnTop || !windowShown || window === undefined || window.isDestroyed() || !window.isVisible()) return
68
131
  window.setAlwaysOnTop(true, 'screen-saver')
@@ -82,6 +145,13 @@ function pointerPosition(payload) {
82
145
  return { screenX, screenY }
83
146
  }
84
147
 
148
+ function pointerClientPosition(payload) {
149
+ if (payload === null || typeof payload !== 'object') return undefined
150
+ const { clientX, clientY } = payload
151
+ if (!Number.isFinite(clientX) || !Number.isFinite(clientY)) return undefined
152
+ return { point: { x: clientX, y: clientY }, overModel: payload.overModel === true }
153
+ }
154
+
85
155
  function sentByWindow(event) {
86
156
  return window !== undefined && event.sender === window.webContents
87
157
  }
@@ -148,11 +218,12 @@ async function boot() {
148
218
  y: Math.max(display.y, display.y + display.height - height - 28),
149
219
  transparent: true,
150
220
  backgroundColor: '#00000000',
221
+ hasShadow: false,
151
222
  frame: false,
152
223
  show: false,
153
224
  resizable: false,
154
225
  alwaysOnTop,
155
- skipTaskbar: false,
226
+ skipTaskbar: true,
156
227
  title: 'dsh-waifu',
157
228
  icon: applicationIcon,
158
229
  webPreferences: {
@@ -165,12 +236,19 @@ async function boot() {
165
236
  backgroundThrottling: false,
166
237
  },
167
238
  })
239
+ setMouseEventsIgnored(true)
240
+ // `forward: true` is not equally reliable on every Electron/platform pair.
241
+ // Polling in DIP coordinates keeps ignored windows recoverably interactive
242
+ // on macOS, Windows, and Linux without reading the WebGL framebuffer.
243
+ pointerPoll = setInterval(updateMousePassthrough, 50)
244
+ pointerPoll.unref?.()
168
245
  keepWindowAboveApplications()
169
246
  const showWindow = () => {
170
247
  if (window === undefined || window.isDestroyed() || (windowShown && window.isVisible())) return
171
248
  windowShown = true
172
249
  keepWindowAboveApplications()
173
250
  window.show()
251
+ updateMousePassthrough()
174
252
  keepWindowAboveApplications()
175
253
  write({
176
254
  type: 'window-ready',
@@ -203,7 +281,11 @@ async function boot() {
203
281
  hideWindow()
204
282
  })
205
283
  window.on('closed', () => {
284
+ if (pointerPoll !== undefined) clearInterval(pointerPoll)
285
+ pointerPoll = undefined
206
286
  dragStart = undefined
287
+ hitTestRegions = { model: undefined, controls: [] }
288
+ mouseEventsIgnored = false
207
289
  windowShown = false
208
290
  window = undefined
209
291
  })
@@ -224,6 +306,7 @@ async function boot() {
224
306
  const pointer = pointerPosition(payload)
225
307
  if (pointer === undefined) return
226
308
  resizeSessionAnchor = undefined
309
+ setMouseEventsIgnored(false)
227
310
  const [windowX, windowY] = window.getPosition()
228
311
  dragStart = { windowX, windowY, ...pointer }
229
312
  })
@@ -235,11 +318,27 @@ async function boot() {
235
318
  window.setPosition(position.x, position.y, false)
236
319
  })
237
320
  ipcMain.on('dsh-waifu:drag-end', event => {
238
- if (sentByWindow(event)) dragStart = undefined
321
+ if (!sentByWindow(event)) return
322
+ dragStart = undefined
323
+ updateMousePassthrough()
239
324
  })
240
325
  ipcMain.on('dsh-waifu:hide', event => {
241
326
  if (sentByWindow(event)) hideWindow()
242
327
  })
328
+ ipcMain.on('dsh-waifu:hit-test-regions', (event, payload) => {
329
+ if (!sentByWindow(event)) return
330
+ hitTestRegions = normalizeHitTestRegions(payload)
331
+ updateMousePassthrough()
332
+ })
333
+ ipcMain.on('dsh-waifu:pointer-move', (event, payload) => {
334
+ if (!sentByWindow(event)) return
335
+ const probe = pointerClientPosition(payload)
336
+ if (probe !== undefined) updateMousePassthroughAtPoint(probe.point, probe.overModel)
337
+ })
338
+ ipcMain.on('dsh-waifu:pointer-leave', event => {
339
+ if (!sentByWindow(event) || dragStart !== undefined) return
340
+ setMouseEventsIgnored(true)
341
+ })
243
342
  ipcMain.handle('dsh-waifu:resize-window', (event, payload) => {
244
343
  if (!sentByWindow(event) || window === undefined) return undefined
245
344
  const request = requestedWindowSize(payload)
@@ -295,6 +394,10 @@ async function boot() {
295
394
  write({ type: 'render-error', message: error instanceof Error ? error.message : String(error) })
296
395
  }
297
396
  })
397
+ lines.once('close', () => {
398
+ // The Host owns this process. EOF means dsh exited or its terminal was terminated.
399
+ if (!applicationCloseAllowed) closeApplication()
400
+ })
298
401
  }
299
402
 
300
403
  write({ type: 'boot' })
@@ -19,6 +19,21 @@ contextBridge.exposeInMainWorld('waifu', {
19
19
  resizeWindow(width, height, anchorX, anchorY, resizeSession) {
20
20
  return ipcRenderer.invoke('dsh-waifu:resize-window', { width, height, anchorX, anchorY, resizeSession })
21
21
  },
22
+ setHitTestRegions(regions) {
23
+ ipcRenderer.send('dsh-waifu:hit-test-regions', regions)
24
+ },
25
+ pointerMoved(clientX, clientY, overModel) {
26
+ ipcRenderer.send('dsh-waifu:pointer-move', { clientX, clientY, overModel })
27
+ },
28
+ pointerLeft() {
29
+ ipcRenderer.send('dsh-waifu:pointer-leave')
30
+ },
31
+ onMouseEventsState(listener) {
32
+ ipcRenderer.on('dsh-waifu:mouse-events-state', (_event, payload) => listener(payload))
33
+ },
34
+ onPointerProbe(listener) {
35
+ ipcRenderer.on('dsh-waifu:pointer-probe', (_event, payload) => listener(payload))
36
+ },
22
37
  onLoadModel(listener) {
23
38
  ipcRenderer.on('dsh-waifu:load-model', (_event, payload) => listener(payload))
24
39
  },
package/lib/index.d.ts CHANGED
@@ -24,6 +24,8 @@ export interface Config {
24
24
  readonly width?: number;
25
25
  readonly height?: number;
26
26
  readonly alwaysOnTop?: boolean;
27
+ /** Let pointer input reach applications beneath transparent window areas. */
28
+ readonly clickThroughTransparentAreas?: boolean;
27
29
  readonly ttsEnabled?: boolean;
28
30
  readonly ttsAuthMode?: 'credential' | 'proxy' | 'gateway';
29
31
  readonly ttsBaseUrl?: string;
@@ -48,6 +50,7 @@ interface ResolvedConfig {
48
50
  readonly width: number;
49
51
  readonly height: number;
50
52
  readonly alwaysOnTop: boolean;
53
+ readonly clickThroughTransparentAreas: boolean;
51
54
  readonly ttsEnabled: boolean;
52
55
  readonly ttsAuthMode: 'credential' | 'proxy' | 'gateway';
53
56
  readonly ttsBaseUrl: string;
@@ -66,6 +69,7 @@ export declare const MAX_SPEECH_DURATION_MS = 30000;
66
69
  export declare const DEFAULT_SPEECH_DURATION_MS = 5000;
67
70
  export declare const MAX_SPEECH_TEXT_LENGTH = 280;
68
71
  export declare const MAX_TTS_TEXT_LENGTH = 1000;
72
+ export declare const MASTER_ADDRESS = "Master, ";
69
73
  export interface WaifuSettings {
70
74
  readonly voices: ModelTtsVoicePreferences;
71
75
  }
@@ -77,6 +81,8 @@ export interface WaifuVoiceSelection {
77
81
  }
78
82
  /** Keep a speech segment within a protocol limit while making truncation explicit. */
79
83
  export declare function truncateSpeechText(text: string, maxLength: number): string;
84
+ /** Address every bubble and spoken line consistently without duplicating an existing address. */
85
+ export declare function addressSpeechText(text: string): string;
80
86
  /** Waifu narrates top-level conversations, never delegated subagent sessions. */
81
87
  export declare function isTopLevelSession(session: Pick<Session, 'header'>): boolean;
82
88
  declare module '@deepseek-ai/cordis' {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAGhF,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAA0C,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAA;AACzG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAGvD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AACxC,OAAO,EAA6B,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAA;AAI9B,OAAO,EAIL,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAUL,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EACjB,MAAM,UAAU,CAAA;AAEjB,iCAAiC;AACjC,eAAO,MAAM,IAAI,cAAc,CAAA;AAE/B,sGAAsG;AACtG,eAAO,MAAM,MAAM,EAAE,SAAS,MAAM,EAAO,CAAA;AAE3C,mCAAmC;AACnC,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,mGAAmG;IACnG,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,4FAA4F;IAC5F,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,YAAY,GAAG,OAAO,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IACnC,6EAA6E;IAC7E,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAC1C,8EAA8E;IAC9E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;CACxC;AAED,6CAA6C;AAC7C,eAAO,MAAM,MAAM,EAAE,CAAC,CAAC,MAAM,CAgB3B,CAAA;AAEF,UAAU,cAAc;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAA;IACvC,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACvE,QAAQ,CAAC,aAAa,EAAE,WAAW,GAAG,SAAS,CAAA;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,yBAAyB,EAAE,OAAO,CAAA;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAA;IACnC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAA;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,mEAAmE;IACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAA;CACpC;AAED,eAAO,MAAM,sBAAsB,OAAQ,CAAA;AAC3C,eAAO,MAAM,sBAAsB,QAAS,CAAA;AAC5C,eAAO,MAAM,0BAA0B,OAAQ,CAAA;AAC/C,eAAO,MAAM,sBAAsB,MAAM,CAAA;AACzC,eAAO,MAAM,mBAAmB,OAAQ,CAAA;AAIxC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAA;CAC1C;AAED,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,aAAa,CAM/C,CAAA;AAEF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAA;CACzC;AAED,sFAAsF;AACtF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAG1E;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,OAAO,CAE3E;AAED,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,OAAO;QACf,KAAK,EAAE,YAAY,CAAA;KACpB;IACD,UAAU,MAAM;QACd,kEAAkE;QAClE,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KACpC;CACF;AAED,oFAAoF;AACpF,qBAAa,YAAa,SAAQ,OAAO;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAA;IACvC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAA;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmD;IAC/E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAC3D,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAS;IACjD,OAAO,CAAC,aAAa,CAA0C;IAC/D,OAAO,CAAC,gBAAgB,CAA0D;IAClF,OAAO,CAAC,YAAY,CAA2E;IAC/F,OAAO,CAAC,qBAAqB,CAA6B;IAC1D,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,kBAAkB,CAAgD;gBAE9D,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc;IAgKhD,+DAA+D;IAC/D,IAAI,YAAY,IAAI,WAAW,GAAG,SAAS,CAE1C;IAED,6EAA6E;IAC7E,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAED,uEAAuE;IACvE,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IAED,yFAAyF;IACzF,IAAI,qBAAqB,IAAI,mBAAmB,CAE/C;IAED,iEAAiE;IACjE,IAAI,eAAe,IAAI,SAAS,mBAAmB,EAAE,CAQpD;IAED,iEAAiE;IACjE,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB;IAWvD,kFAAkF;IAC5E,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmBjF,oDAAoD;IAC9C,kBAAkB,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAS5D,8EAA8E;IACxE,kBAAkB,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAO5D,qEAAqE;IAC/D,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC;IAkBnC,oEAAoE;IACpE,IAAI,IAAI,IAAI;IAKZ,uDAAuD;IACjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B,oCAAoC;IAC9B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQnD,qFAAqF;IAC/E,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;IAoC1E,sFAAsF;YACxE,kBAAkB;IAIhC,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,2BAA2B;YAKrB,qBAAqB;CAQpC;AAUD,2FAA2F;AAC3F,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW,GAAG,IAAI,CA8C7D;AAID,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAW7E;AAMD,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,MAAM,CAU5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -29,6 +29,7 @@ export const Config = z.object({
29
29
  width: z.number(),
30
30
  height: z.number(),
31
31
  alwaysOnTop: z.boolean(),
32
+ clickThroughTransparentAreas: z.boolean(),
32
33
  ttsEnabled: z.boolean(),
33
34
  ttsAuthMode: z.union(['credential', 'proxy', 'gateway']),
34
35
  ttsBaseUrl: z.string(),
@@ -42,6 +43,7 @@ export const MAX_SPEECH_DURATION_MS = 30_000;
42
43
  export const DEFAULT_SPEECH_DURATION_MS = 5_000;
43
44
  export const MAX_SPEECH_TEXT_LENGTH = 280;
44
45
  export const MAX_TTS_TEXT_LENGTH = 1_000;
46
+ export const MASTER_ADDRESS = 'Master, ';
45
47
  const WAIFU_SETTINGS_NAMESPACE = settingsNamespace('dsh-waifu');
46
48
  export const WaifuSettingsSchema = z.object({
47
49
  voices: z.object({
@@ -56,6 +58,13 @@ export function truncateSpeechText(text, maxLength) {
56
58
  return text;
57
59
  return `${text.slice(0, maxLength - 3).trimEnd()}...`;
58
60
  }
61
+ /** Address every bubble and spoken line consistently without duplicating an existing address. */
62
+ export function addressSpeechText(text) {
63
+ const normalized = text.trim();
64
+ if (normalized.length === 0 || /^Master(?:$|[\s,,::])/i.test(normalized))
65
+ return normalized;
66
+ return `${MASTER_ADDRESS}${normalized}`;
67
+ }
59
68
  /** Waifu narrates top-level conversations, never delegated subagent sessions. */
60
69
  export function isTopLevelSession(session) {
61
70
  return session.header.parentSession === undefined && session.header.origin !== 'subagent';
@@ -124,7 +133,10 @@ export class WaifuService extends Service {
124
133
  this.renderer.onMessage(message => {
125
134
  if (message.type === 'rendered') {
126
135
  const model = this.models.find(candidate => candidate.relativePath === message.model);
127
- ctx.logger.info(`dsh-waifu rendered ${model?.displayName ?? String(message.model)} (${String(message.nonTransparentPixels)} visible pixels)`);
136
+ const frameDetail = typeof message.nonTransparentPixels === 'number'
137
+ ? `${String(message.nonTransparentPixels)} visible pixels`
138
+ : 'first frame ready';
139
+ ctx.logger.info(`dsh-waifu rendered ${model?.displayName ?? String(message.model)} (${frameDetail})`);
128
140
  }
129
141
  else if (message.type === 'render-error') {
130
142
  ctx.logger.error(`dsh-waifu renderer: ${String(message.message)}`);
@@ -360,14 +372,15 @@ export class WaifuService extends Service {
360
372
  const normalizedText = text.trim();
361
373
  if (normalizedText.length === 0)
362
374
  throw new Error('Waifu speech text cannot be empty');
363
- if (normalizedText.length > MAX_TTS_TEXT_LENGTH) {
375
+ const addressedText = addressSpeechText(normalizedText);
376
+ if (addressedText.length > MAX_TTS_TEXT_LENGTH) {
364
377
  throw new Error(`Waifu speech text cannot exceed ${String(MAX_TTS_TEXT_LENGTH)} characters`);
365
378
  }
366
379
  const requestedDuration = options.durationMs ?? DEFAULT_SPEECH_DURATION_MS;
367
380
  const durationMs = Math.min(MAX_SPEECH_DURATION_MS, Math.max(MIN_SPEECH_DURATION_MS, Number.isFinite(requestedDuration) ? requestedDuration : DEFAULT_SPEECH_DURATION_MS));
368
381
  const model = await this.start();
369
382
  const action = options.action ?? 'speaking';
370
- const bubbleText = truncateSpeechText(normalizedText, MAX_SPEECH_TEXT_LENGTH);
383
+ const bubbleText = truncateSpeechText(addressedText, MAX_SPEECH_TEXT_LENGTH);
371
384
  if (this.tts !== undefined)
372
385
  this.cancelSpeech();
373
386
  const speechId = this.tts === undefined ? undefined : this.nextSpeechId++;
@@ -378,7 +391,7 @@ export class WaifuService extends Service {
378
391
  this.activeSpeech = activeSpeech;
379
392
  const voice = this.voiceSelectionForModel(model.displayName).voice;
380
393
  try {
381
- await this.tts.speak(speechId, normalizedText, voice, action, this.renderer, controller.signal);
394
+ await this.tts.speak(speechId, addressedText, voice, action, this.renderer, controller.signal);
382
395
  }
383
396
  catch (error) {
384
397
  if (!isAbortError(error)) {
@@ -489,9 +502,10 @@ export function apply(ctx, config = {}) {
489
502
  defaultModel: config.defaultModel ?? 'Ani',
490
503
  autoStart: config.autoStart ?? true,
491
504
  requireInteractiveSurface: config.requireInteractiveSurface ?? false,
492
- width: config.width ?? 520,
493
- height: config.height ?? 720,
505
+ width: config.width ?? 420,
506
+ height: config.height ?? 580,
494
507
  alwaysOnTop: config.alwaysOnTop ?? true,
508
+ clickThroughTransparentAreas: config.clickThroughTransparentAreas ?? true,
495
509
  ttsEnabled: config.ttsEnabled ?? true,
496
510
  ttsAuthMode: config.ttsAuthMode ?? 'credential',
497
511
  ttsBaseUrl: config.ttsBaseUrl ?? (config.ttsAuthMode === 'proxy'
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}