whazaa 0.6.43 → 0.6.44

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 (64) hide show
  1. package/dist/index.d.ts +0 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +21 -201
  4. package/dist/index.js.map +1 -1
  5. package/dist/setup.d.ts +6 -43
  6. package/dist/setup.d.ts.map +1 -1
  7. package/dist/setup.js +6 -49
  8. package/dist/setup.js.map +1 -1
  9. package/dist/tts.d.ts.map +1 -1
  10. package/dist/tts.js +1 -7
  11. package/dist/tts.js.map +1 -1
  12. package/dist/watcher/baileys.d.ts +1 -2
  13. package/dist/watcher/baileys.d.ts.map +1 -1
  14. package/dist/watcher/baileys.js +18 -18
  15. package/dist/watcher/baileys.js.map +1 -1
  16. package/dist/watcher/commands.d.ts +1 -2
  17. package/dist/watcher/commands.d.ts.map +1 -1
  18. package/dist/watcher/commands.js +18 -18
  19. package/dist/watcher/commands.js.map +1 -1
  20. package/dist/watcher/index.d.ts +6 -12
  21. package/dist/watcher/index.d.ts.map +1 -1
  22. package/dist/watcher/index.js +6 -12
  23. package/dist/watcher/index.js.map +1 -1
  24. package/dist/watcher/ipc-server.d.ts +1 -2
  25. package/dist/watcher/ipc-server.d.ts.map +1 -1
  26. package/dist/watcher/ipc-server.js +673 -695
  27. package/dist/watcher/ipc-server.js.map +1 -1
  28. package/dist/watcher/iterm-core.d.ts +21 -17
  29. package/dist/watcher/iterm-core.d.ts.map +1 -1
  30. package/dist/watcher/iterm-core.js +48 -89
  31. package/dist/watcher/iterm-core.js.map +1 -1
  32. package/dist/watcher/iterm-sessions.d.ts +1 -8
  33. package/dist/watcher/iterm-sessions.d.ts.map +1 -1
  34. package/dist/watcher/iterm-sessions.js +54 -100
  35. package/dist/watcher/iterm-sessions.js.map +1 -1
  36. package/dist/watcher/log.d.ts +5 -0
  37. package/dist/watcher/log.d.ts.map +1 -0
  38. package/dist/watcher/log.js +7 -0
  39. package/dist/watcher/log.js.map +1 -0
  40. package/dist/watcher/media.d.ts.map +1 -1
  41. package/dist/watcher/media.js +8 -13
  42. package/dist/watcher/media.js.map +1 -1
  43. package/dist/watcher/persistence.d.ts +0 -5
  44. package/dist/watcher/persistence.d.ts.map +1 -1
  45. package/dist/watcher/persistence.js +3 -7
  46. package/dist/watcher/persistence.js.map +1 -1
  47. package/dist/watcher/screenshot.d.ts +1 -4
  48. package/dist/watcher/screenshot.d.ts.map +1 -1
  49. package/dist/watcher/screenshot.js +15 -31
  50. package/dist/watcher/screenshot.js.map +1 -1
  51. package/dist/watcher/send.d.ts +0 -28
  52. package/dist/watcher/send.d.ts.map +1 -1
  53. package/dist/watcher/send.js +0 -28
  54. package/dist/watcher/send.js.map +1 -1
  55. package/dist/watcher/state.d.ts +0 -5
  56. package/dist/watcher/state.d.ts.map +1 -1
  57. package/dist/watcher/state.js +0 -5
  58. package/dist/watcher/state.js.map +1 -1
  59. package/dist/watcher/types.d.ts +0 -1
  60. package/dist/watcher/types.d.ts.map +1 -1
  61. package/dist/watcher/typing.d.ts.map +1 -1
  62. package/dist/watcher/typing.js +3 -7
  63. package/dist/watcher/typing.js.map +1 -1
  64. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -1,7 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @module index
4
- *
5
3
  * Whazaa MCP server — entry point and tool registrations.
6
4
  *
7
5
  * This file is the executable that Claude Code (or any MCP host) launches to
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG"}
package/dist/index.js CHANGED
@@ -1,7 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @module index
4
- *
5
3
  * Whazaa MCP server — entry point and tool registrations.
6
4
  *
7
5
  * This file is the executable that Claude Code (or any MCP host) launches to
@@ -57,9 +55,10 @@ import { setup, uninstall } from "./setup.js";
57
55
  import { WatcherClient } from "./ipc-client.js";
58
56
  import { listVoices } from "./tts.js";
59
57
  import { listChats, getMessages } from "./desktop-db.js";
60
- // ---------------------------------------------------------------------------
61
- // MCP server setup
62
- // ---------------------------------------------------------------------------
58
+ function errorResponse(err) {
59
+ const msg = err instanceof Error ? err.message : String(err);
60
+ return { content: [{ type: "text", text: `Error: ${msg}` }], isError: true };
61
+ }
63
62
  const server = new McpServer({
64
63
  name: "whazaa",
65
64
  version: "0.1.0",
@@ -67,11 +66,6 @@ const server = new McpServer({
67
66
  // Shared IPC client — one per MCP server process, bound to the session
68
67
  // identified by TERM_SESSION_ID (set by iTerm2).
69
68
  const watcher = new WatcherClient();
70
- // ---------------------------------------------------------------------------
71
- // Tool: whatsapp_status
72
- // ---------------------------------------------------------------------------
73
- // Reports whether the watcher is connected, awaiting a QR scan, or
74
- // disconnected. Returns the authenticated phone number when connected.
75
69
  server.registerTool("whatsapp_status", {
76
70
  description: "Check the Whazaa connection state and the WhatsApp phone number it is logged in as.",
77
71
  inputSchema: {},
@@ -93,19 +87,9 @@ server.registerTool("whatsapp_status", {
93
87
  return { content: [{ type: "text", text }] };
94
88
  }
95
89
  catch (err) {
96
- const errMsg = err instanceof Error ? err.message : String(err);
97
- return {
98
- content: [{ type: "text", text: `Error: ${errMsg}` }],
99
- isError: true,
100
- };
90
+ return errorResponse(err);
101
91
  }
102
92
  });
103
- // ---------------------------------------------------------------------------
104
- // Tool: whatsapp_send
105
- // ---------------------------------------------------------------------------
106
- // Sends a WhatsApp text message (or TTS voice note when `voice` is set).
107
- // Recipient defaults to self-chat when omitted. Supports basic Markdown and
108
- // accepts phone numbers, JIDs, or contact names as the recipient identifier.
109
93
  server.registerTool("whatsapp_send", {
110
94
  description: [
111
95
  "Send a WhatsApp message.",
@@ -160,20 +144,9 @@ server.registerTool("whatsapp_send", {
160
144
  };
161
145
  }
162
146
  catch (err) {
163
- const errMsg = err instanceof Error ? err.message : String(err);
164
- return {
165
- content: [{ type: "text", text: `Error: ${errMsg}` }],
166
- isError: true,
167
- };
147
+ return errorResponse(err);
168
148
  }
169
149
  });
170
- // ---------------------------------------------------------------------------
171
- // Tool: whatsapp_tts
172
- // ---------------------------------------------------------------------------
173
- // Dedicated TTS tool: converts text to a Kokoro voice note and sends it via
174
- // WhatsApp. Runs entirely locally (no cloud API). The ~160 MB Kokoro model is
175
- // downloaded on first use and cached. Voice defaults to the configured default
176
- // when omitted.
177
150
  server.registerTool("whatsapp_tts", {
178
151
  description: [
179
152
  "Convert text to speech and send as a WhatsApp voice note.",
@@ -215,19 +188,9 @@ server.registerTool("whatsapp_tts", {
215
188
  };
216
189
  }
217
190
  catch (err) {
218
- const errMsg = err instanceof Error ? err.message : String(err);
219
- return {
220
- content: [{ type: "text", text: `Error: ${errMsg}` }],
221
- isError: true,
222
- };
191
+ return errorResponse(err);
223
192
  }
224
193
  });
225
- // ---------------------------------------------------------------------------
226
- // Tool: whatsapp_send_file
227
- // ---------------------------------------------------------------------------
228
- // Sends an arbitrary file (PDF, image, video, audio, document, etc.) as a
229
- // WhatsApp attachment. The file is read from an absolute path on disk and
230
- // forwarded to the watcher, which handles MIME detection and Baileys upload.
231
194
  server.registerTool("whatsapp_send_file", {
232
195
  description: "Send a file (document, image, video, audio) via WhatsApp. Supports any file type — PDFs, Word docs, images, videos, etc.",
233
196
  inputSchema: {
@@ -243,20 +206,9 @@ server.registerTool("whatsapp_send_file", {
243
206
  };
244
207
  }
245
208
  catch (err) {
246
- const msg = err instanceof Error ? err.message : String(err);
247
- return {
248
- content: [{ type: "text", text: `Failed to send file: ${msg}` }],
249
- isError: true,
250
- };
209
+ return errorResponse(err);
251
210
  }
252
211
  });
253
- // ---------------------------------------------------------------------------
254
- // Tool: whatsapp_receive
255
- // ---------------------------------------------------------------------------
256
- // Drains the in-memory message queue for this MCP session and returns the
257
- // accumulated messages since the last call, then clears the queue. Scope
258
- // can be restricted to self-chat (default), a specific contact/JID, or all
259
- // chats simultaneously via the `from` parameter.
260
212
  server.registerTool("whatsapp_receive", {
261
213
  description: [
262
214
  "Return queued incoming WhatsApp messages since the last call, then clear the queue.",
@@ -287,20 +239,9 @@ server.registerTool("whatsapp_receive", {
287
239
  return { content: [{ type: "text", text: formatted }] };
288
240
  }
289
241
  catch (err) {
290
- const errMsg = err instanceof Error ? err.message : String(err);
291
- return {
292
- content: [{ type: "text", text: `Error: ${errMsg}` }],
293
- isError: true,
294
- };
242
+ return errorResponse(err);
295
243
  }
296
244
  });
297
- // ---------------------------------------------------------------------------
298
- // Tool: whatsapp_contacts
299
- // ---------------------------------------------------------------------------
300
- // Returns the list of contacts that have exchanged messages in this Baileys
301
- // session, ordered by most-recently-seen. Supports optional substring search
302
- // across name and phone number. Returns JIDs suitable for use with
303
- // whatsapp_send and whatsapp_receive.
304
245
  server.registerTool("whatsapp_contacts", {
305
246
  description: [
306
247
  "List recently seen WhatsApp contacts.",
@@ -345,21 +286,9 @@ server.registerTool("whatsapp_contacts", {
345
286
  };
346
287
  }
347
288
  catch (err) {
348
- const errMsg = err instanceof Error ? err.message : String(err);
349
- return {
350
- content: [{ type: "text", text: `Error: ${errMsg}` }],
351
- isError: true,
352
- };
289
+ return errorResponse(err);
353
290
  }
354
291
  });
355
- // ---------------------------------------------------------------------------
356
- // Tool: whatsapp_chats
357
- // ---------------------------------------------------------------------------
358
- // Lists WhatsApp chat conversations (inbox). Prefers the WhatsApp Desktop
359
- // macOS SQLite database for a complete, always-up-to-date view that works
360
- // even when the phone is offline. Falls back to the Baileys in-memory store
361
- // (typically ~100-150 chats synced at connect time) when the Desktop DB is
362
- // not available.
363
292
  server.registerTool("whatsapp_chats", {
364
293
  description: [
365
294
  "List WhatsApp chat conversations (inbox).",
@@ -434,20 +363,9 @@ server.registerTool("whatsapp_chats", {
434
363
  };
435
364
  }
436
365
  catch (err) {
437
- const errMsg = err instanceof Error ? err.message : String(err);
438
- return {
439
- content: [{ type: "text", text: `Error: ${errMsg}` }],
440
- isError: true,
441
- };
366
+ return errorResponse(err);
442
367
  }
443
368
  });
444
- // ---------------------------------------------------------------------------
445
- // Tool: whatsapp_wait
446
- // ---------------------------------------------------------------------------
447
- // Long-polls the watcher for the next incoming message. Blocks (server-side)
448
- // until a message arrives or the configurable timeout elapses. Preferred over
449
- // a polling loop with whatsapp_receive — one blocking call instead of many
450
- // round-trips.
451
369
  server.registerTool("whatsapp_wait", {
452
370
  description: [
453
371
  "Wait for the next incoming WhatsApp message.",
@@ -479,20 +397,9 @@ server.registerTool("whatsapp_wait", {
479
397
  return { content: [{ type: "text", text: formatted }] };
480
398
  }
481
399
  catch (err) {
482
- const errMsg = err instanceof Error ? err.message : String(err);
483
- return {
484
- content: [{ type: "text", text: `Error: ${errMsg}` }],
485
- isError: true,
486
- };
400
+ return errorResponse(err);
487
401
  }
488
402
  });
489
- // ---------------------------------------------------------------------------
490
- // Tool: whatsapp_login
491
- // ---------------------------------------------------------------------------
492
- // Instructs the watcher to start a fresh QR-code pairing flow. Useful when
493
- // the WhatsApp session has expired, been revoked, or when the user wants to
494
- // link a different phone number. The QR code is printed to the watcher's
495
- // stderr — the user must check the terminal where the watcher runs.
496
403
  server.registerTool("whatsapp_login", {
497
404
  description: [
498
405
  "Trigger a new WhatsApp QR pairing flow.",
@@ -509,20 +416,9 @@ server.registerTool("whatsapp_login", {
509
416
  };
510
417
  }
511
418
  catch (err) {
512
- const errMsg = err instanceof Error ? err.message : String(err);
513
- return {
514
- content: [{ type: "text", text: `Error: ${errMsg}` }],
515
- isError: true,
516
- };
419
+ return errorResponse(err);
517
420
  }
518
421
  });
519
- // ---------------------------------------------------------------------------
520
- // Tool: whatsapp_history
521
- // ---------------------------------------------------------------------------
522
- // Fetches historical messages for a specific chat. Tries the WhatsApp Desktop
523
- // macOS SQLite database first (offline-capable, no anchor message needed).
524
- // Falls back to an on-demand Baileys fetch from the phone when the Desktop DB
525
- // is unavailable. Accepts both full JIDs and bare phone numbers.
526
422
  server.registerTool("whatsapp_history", {
527
423
  description: [
528
424
  "Fetch message history for a WhatsApp chat.",
@@ -586,20 +482,9 @@ server.registerTool("whatsapp_history", {
586
482
  };
587
483
  }
588
484
  catch (err) {
589
- const errMsg = err instanceof Error ? err.message : String(err);
590
- return {
591
- content: [{ type: "text", text: `Error: ${errMsg}` }],
592
- isError: true,
593
- };
485
+ return errorResponse(err);
594
486
  }
595
487
  });
596
- // ---------------------------------------------------------------------------
597
- // Tool: whatsapp_voice_config
598
- // ---------------------------------------------------------------------------
599
- // Gets or sets the persistent TTS voice configuration stored in the watcher.
600
- // Covers: voice mode (text vs. voice notes), local speaker mode, the default
601
- // Kokoro voice, and persona-to-voice mappings. Use action='get' to read the
602
- // current config and action='set' to update one or more fields atomically.
603
488
  server.registerTool("whatsapp_voice_config", {
604
489
  description: [
605
490
  "Get or set voice mode configuration.",
@@ -663,20 +548,9 @@ server.registerTool("whatsapp_voice_config", {
663
548
  };
664
549
  }
665
550
  catch (err) {
666
- const errMsg = err instanceof Error ? err.message : String(err);
667
- return {
668
- content: [{ type: "text", text: `Error: ${errMsg}` }],
669
- isError: true,
670
- };
551
+ return errorResponse(err);
671
552
  }
672
553
  });
673
- // ---------------------------------------------------------------------------
674
- // Tool: whatsapp_speak
675
- // ---------------------------------------------------------------------------
676
- // Synthesises speech with Kokoro TTS and plays it through the Mac's local
677
- // speakers (via Core Audio / afplay). Audio plays in the background and does
678
- // not block subsequent tool calls. Use this for local voice feedback instead
679
- // of sending a WhatsApp voice note.
680
554
  server.registerTool("whatsapp_speak", {
681
555
  description: [
682
556
  "Speak text aloud through the Mac's speakers using Kokoro TTS.",
@@ -710,20 +584,9 @@ server.registerTool("whatsapp_speak", {
710
584
  };
711
585
  }
712
586
  catch (err) {
713
- const errMsg = err instanceof Error ? err.message : String(err);
714
- return {
715
- content: [{ type: "text", text: `Error: ${errMsg}` }],
716
- isError: true,
717
- };
587
+ return errorResponse(err);
718
588
  }
719
589
  });
720
- // ---------------------------------------------------------------------------
721
- // Tool: whatsapp_rename
722
- // ---------------------------------------------------------------------------
723
- // Renames the current Claude session. Writes the new name into the watcher's
724
- // session registry, updates the iTerm2 tab title via AppleScript, and persists
725
- // the name in the iTerm2 `user.paiName` session variable so it survives
726
- // watcher restarts and appears in `/s` session listings.
727
590
  server.registerTool("whatsapp_rename", {
728
591
  description: "Rename this Claude session. Updates the session name in the watcher registry, the iTerm2 tab title, and the persistent session variable. The new name appears in /s listings and the status bar.",
729
592
  inputSchema: {
@@ -746,21 +609,9 @@ server.registerTool("whatsapp_rename", {
746
609
  };
747
610
  }
748
611
  catch (err) {
749
- const errMsg = err instanceof Error ? err.message : String(err);
750
- return {
751
- content: [{ type: "text", text: `Error: ${errMsg}` }],
752
- isError: true,
753
- };
612
+ return errorResponse(err);
754
613
  }
755
614
  });
756
- // ---------------------------------------------------------------------------
757
- // Tool: whatsapp_restart
758
- // ---------------------------------------------------------------------------
759
- // Restarts the launchd-managed Whazaa watcher service
760
- // (`com.whazaa.watcher`). Before issuing the launchctl kickstart, the tool
761
- // scans running processes for rogue manual watcher instances (not managed by
762
- // launchd) and SIGTERMs them to prevent session-conflict errors (code 440
763
- // connectionReplaced). Returns the new watcher PID on success.
764
615
  server.registerTool("whatsapp_restart", {
765
616
  description: [
766
617
  "Safely restart the Whazaa watcher service managed by launchd (com.whazaa.watcher).",
@@ -870,20 +721,9 @@ server.registerTool("whatsapp_restart", {
870
721
  };
871
722
  }
872
723
  catch (err) {
873
- const errMsg = err instanceof Error ? err.message : String(err);
874
- return {
875
- content: [{ type: "text", text: `Error: ${errMsg}` }],
876
- isError: true,
877
- };
724
+ return errorResponse(err);
878
725
  }
879
726
  });
880
- // ---------------------------------------------------------------------------
881
- // Tool: whatsapp_discover
882
- // ---------------------------------------------------------------------------
883
- // Re-scans all iTerm2 tabs for the `user.paiName` session variable and
884
- // refreshes the watcher's session registry. Prunes entries for closed tabs
885
- // (dead sessions) and registers newly discovered ones. Useful after a watcher
886
- // restart or when `/s` shows stale or missing sessions.
887
727
  server.registerTool("whatsapp_discover", {
888
728
  description: [
889
729
  "Re-scan iTerm2 sessions and update the session registry.",
@@ -914,32 +754,12 @@ server.registerTool("whatsapp_discover", {
914
754
  };
915
755
  }
916
756
  catch (err) {
917
- const errMsg = err instanceof Error ? err.message : String(err);
918
- return {
919
- content: [{ type: "text", text: `Error: ${errMsg}` }],
920
- isError: true,
921
- };
757
+ return errorResponse(err);
922
758
  }
923
759
  });
924
- // ---------------------------------------------------------------------------
925
- // Main
926
- // ---------------------------------------------------------------------------
927
760
  /**
928
- * Entry point for the Whazaa process.
929
- *
930
- * Dispatches to one of four modes based on `process.argv`:
931
- *
932
- * - `setup` — Runs the interactive setup wizard and exits.
933
- * - `uninstall` — Removes all Whazaa config/credentials and exits.
934
- * - `watch [sessionId]` — Starts the long-running watcher daemon that owns
935
- * the Baileys WebSocket connection. `sessionId` is an optional iTerm2
936
- * session identifier used to route incoming messages to the correct queue.
937
- * - *(default)* — Starts the MCP server over stdio. Registers this session
938
- * with the watcher (non-fatal if the watcher is not yet running) and then
939
- * attaches the `StdioServerTransport` so Claude Code can call the tools.
940
- *
941
- * @returns A promise that resolves when the MCP transport is connected, or
942
- * rejects with a fatal error (written to stderr and `process.exit(1)`).
761
+ * Entry point. Dispatches to setup, uninstall, watch, or MCP server mode
762
+ * based on `process.argv`.
943
763
  */
944
764
  async function main() {
945
765
  if (process.argv.includes("setup")) {
package/dist/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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"}
package/dist/setup.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  /**
2
- * @module setup
3
- *
4
2
  * Interactive CLI operations for Whazaa: setup wizard and uninstall.
5
3
  *
6
4
  * This module is invoked when the user runs `npx whazaa setup` or
@@ -35,50 +33,15 @@
35
33
  */
36
34
  export declare function openBrowser(url: string): void;
37
35
  /**
38
- * Run the interactive Whazaa setup wizard.
39
- *
40
- * This is the entry point for `npx whazaa setup`. It walks the user through
41
- * four steps:
42
- *
43
- * 1. **MCP config** — Adds the `whazaa` server entry to `~/.claude/.mcp.json`,
44
- * creating the file (and its parent directory) if necessary.
45
- * 2. **Skill install** — Writes the `/name` skill SKILL.md to
46
- * `~/.claude/skills/Name/` so Claude Code can rename sessions with
47
- * `whatsapp_rename`.
48
- * 3. **Session check** — If a `creds.json` already exists in the Baileys auth
49
- * directory, attempts to verify the live connection. Exits early when the
50
- * session is still valid; clears credentials and re-pairs when it is not.
51
- * 4. **QR pairing** — Triggers a new WhatsApp login, waits for the user to
52
- * scan the QR code, then gives Baileys 5 seconds to finish syncing before
53
- * exiting with a success message.
54
- *
55
- * Pass `--force` / `-f` on the command line to skip the session check and
56
- * always re-pair, clearing any existing credentials first.
57
- *
58
- * @returns A promise that resolves (via `process.exit(0)`) after the wizard
59
- * completes successfully.
36
+ * Run the interactive Whazaa setup wizard (`npx whazaa setup`).
37
+ * Configures ~/.claude/.mcp.json, installs the /name skill, verifies or
38
+ * performs QR pairing, and exits.
60
39
  */
61
40
  export declare function setup(): Promise<void>;
62
41
  /**
63
- * Uninstall Whazaa from the local machine.
64
- *
65
- * This is the entry point for `npx whazaa uninstall`. It performs three
66
- * cleanup steps in order:
67
- *
68
- * 1. **MCP config** — Removes the `whazaa` entry from `~/.claude/.mcp.json`
69
- * and writes the updated file back. Does nothing if the entry does not
70
- * exist or the file cannot be parsed.
71
- * 2. **Auth credentials** — Deletes the Baileys authentication directory
72
- * (resolved by `resolveAuthDir`) so that the WhatsApp session is fully
73
- * de-linked.
74
- * 3. **State directory** — Removes `~/.whazaa/` if it exists and is empty,
75
- * leaving it in place if other files are still present.
76
- *
77
- * Always exits with `process.exit(0)` after completion so that the calling
78
- * shell script can detect success reliably.
79
- *
80
- * @returns A promise that resolves (via `process.exit(0)`) after all
81
- * cleanup steps are complete.
42
+ * Remove Whazaa from the local machine (`npx whazaa uninstall`).
43
+ * Strips the MCP config entry, deletes auth credentials, and removes
44
+ * ~/.whazaa/ if empty.
82
45
  */
83
46
  export declare function uninstall(): Promise<void>;
84
47
  //# sourceMappingURL=setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQ7C;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAuJ3C;AAMD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAsC/C"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAgBH;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQ7C;AAED;;;;GAIG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAuJ3C;AAED;;;;GAIG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAsC/C"}
package/dist/setup.js CHANGED
@@ -1,6 +1,4 @@
1
1
  /**
2
- * @module setup
3
- *
4
2
  * Interactive CLI operations for Whazaa: setup wizard and uninstall.
5
3
  *
6
4
  * This module is invoked when the user runs `npx whazaa setup` or
@@ -30,9 +28,6 @@ import { homedir } from "node:os";
30
28
  import { dirname, join } from "node:path";
31
29
  import { initialize, triggerLogin, waitForConnection, waitForLogout, waitForQR, } from "./whatsapp.js";
32
30
  import { resolveAuthDir, enableSetupMode, cleanupQR, suppressQRDisplay, unsuppressQRDisplay } from "./auth.js";
33
- // ---------------------------------------------------------------------------
34
- // Setup wizard
35
- // ---------------------------------------------------------------------------
36
31
  /**
37
32
  * Open a URL in the user's default browser, platform-agnostic.
38
33
  *
@@ -51,28 +46,9 @@ export function openBrowser(url) {
51
46
  spawn(cmd, [url], { detached: true, stdio: "ignore" }).unref();
52
47
  }
53
48
  /**
54
- * Run the interactive Whazaa setup wizard.
55
- *
56
- * This is the entry point for `npx whazaa setup`. It walks the user through
57
- * four steps:
58
- *
59
- * 1. **MCP config** — Adds the `whazaa` server entry to `~/.claude/.mcp.json`,
60
- * creating the file (and its parent directory) if necessary.
61
- * 2. **Skill install** — Writes the `/name` skill SKILL.md to
62
- * `~/.claude/skills/Name/` so Claude Code can rename sessions with
63
- * `whatsapp_rename`.
64
- * 3. **Session check** — If a `creds.json` already exists in the Baileys auth
65
- * directory, attempts to verify the live connection. Exits early when the
66
- * session is still valid; clears credentials and re-pairs when it is not.
67
- * 4. **QR pairing** — Triggers a new WhatsApp login, waits for the user to
68
- * scan the QR code, then gives Baileys 5 seconds to finish syncing before
69
- * exiting with a success message.
70
- *
71
- * Pass `--force` / `-f` on the command line to skip the session check and
72
- * always re-pair, clearing any existing credentials first.
73
- *
74
- * @returns A promise that resolves (via `process.exit(0)`) after the wizard
75
- * completes successfully.
49
+ * Run the interactive Whazaa setup wizard (`npx whazaa setup`).
50
+ * Configures ~/.claude/.mcp.json, installs the /name skill, verifies or
51
+ * performs QR pairing, and exits.
76
52
  */
77
53
  export async function setup() {
78
54
  enableSetupMode();
@@ -204,29 +180,10 @@ export async function setup() {
204
180
  console.log("\nSetup complete! Restart Claude Code and Whazaa will be ready.");
205
181
  process.exit(0);
206
182
  }
207
- // ---------------------------------------------------------------------------
208
- // Uninstall
209
- // ---------------------------------------------------------------------------
210
183
  /**
211
- * Uninstall Whazaa from the local machine.
212
- *
213
- * This is the entry point for `npx whazaa uninstall`. It performs three
214
- * cleanup steps in order:
215
- *
216
- * 1. **MCP config** — Removes the `whazaa` entry from `~/.claude/.mcp.json`
217
- * and writes the updated file back. Does nothing if the entry does not
218
- * exist or the file cannot be parsed.
219
- * 2. **Auth credentials** — Deletes the Baileys authentication directory
220
- * (resolved by `resolveAuthDir`) so that the WhatsApp session is fully
221
- * de-linked.
222
- * 3. **State directory** — Removes `~/.whazaa/` if it exists and is empty,
223
- * leaving it in place if other files are still present.
224
- *
225
- * Always exits with `process.exit(0)` after completion so that the calling
226
- * shell script can detect success reliably.
227
- *
228
- * @returns A promise that resolves (via `process.exit(0)`) after all
229
- * cleanup steps are complete.
184
+ * Remove Whazaa from the local machine (`npx whazaa uninstall`).
185
+ * Strips the MCP config entry, deletes auth credentials, and removes
186
+ * ~/.whazaa/ if empty.
230
187
  */
231
188
  export async function uninstall() {
232
189
  console.log("Whazaa Uninstall\n");