@elizaos/plugin-imessage 2.0.0-beta.1 → 2.0.3-beta.3

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 (45) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -18
  3. package/auto-enable.ts +1 -1
  4. package/dist/accounts.d.ts +2 -2
  5. package/dist/accounts.js +3 -3
  6. package/dist/accounts.js.map +1 -1
  7. package/dist/api/bluebubbles-routes.d.ts +1 -1
  8. package/dist/api/bluebubbles-routes.d.ts.map +1 -1
  9. package/dist/api/imessage-routes.d.ts +9 -21
  10. package/dist/api/imessage-routes.d.ts.map +1 -1
  11. package/dist/api/imessage-routes.js +5 -7
  12. package/dist/api/imessage-routes.js.map +1 -1
  13. package/dist/chatdb-reader.d.ts +1 -1
  14. package/dist/chatdb-reader.d.ts.map +1 -1
  15. package/dist/chatdb-reader.js +21 -1
  16. package/dist/chatdb-reader.js.map +1 -1
  17. package/dist/config.d.ts +1 -1
  18. package/dist/config.d.ts.map +1 -1
  19. package/dist/connector-account-provider.d.ts +1 -1
  20. package/dist/connector-account-provider.js +5 -5
  21. package/dist/connector-account-provider.js.map +1 -1
  22. package/dist/contacts-reader.d.ts +23 -29
  23. package/dist/contacts-reader.d.ts.map +1 -1
  24. package/dist/contacts-reader.js +250 -372
  25. package/dist/contacts-reader.js.map +1 -1
  26. package/dist/data-routes.d.ts +21 -0
  27. package/dist/data-routes.d.ts.map +1 -0
  28. package/dist/data-routes.js +280 -0
  29. package/dist/data-routes.js.map +1 -0
  30. package/dist/index.d.ts +2 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +6 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/rpc.js +5 -5
  35. package/dist/rpc.js.map +1 -1
  36. package/dist/service.d.ts +20 -22
  37. package/dist/service.d.ts.map +1 -1
  38. package/dist/service.js +65 -54
  39. package/dist/service.js.map +1 -1
  40. package/dist/setup-routes.d.ts +15 -27
  41. package/dist/setup-routes.d.ts.map +1 -1
  42. package/dist/setup-routes.js +101 -284
  43. package/dist/setup-routes.js.map +1 -1
  44. package/package.json +22 -4
  45. package/registry-entry.json +103 -0
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/dist/service.js CHANGED
@@ -8,7 +8,7 @@ import { promisify } from "node:util";
8
8
  import { ChannelType, ContentType, createUniqueUuid, EventType, lifeOpsPassiveConnectorsEnabled, logger, MemoryType, Service, } from "@elizaos/core";
9
9
  import { DEFAULT_ACCOUNT_ID as IMESSAGE_LOCAL_ACCOUNT_ID, normalizeAccountId as normalizeIMessageAccountId, } from "./accounts.js";
10
10
  import { DEFAULT_CHAT_DB_PATH, getLastChatDbAccessIssue, openChatDb, } from "./chatdb-reader.js";
11
- import { addContact, deleteContact, listAllContacts, loadContacts, normalizeContactHandle, updateContact, } from "./contacts-reader.js";
11
+ import { addContact, deleteContact, getLastContactsFailure, listAllContacts, loadContacts, normalizeContactHandle, updateContact, } from "./contacts-reader.js";
12
12
  import { DEFAULT_POLL_INTERVAL_MS, formatPhoneNumber, IMESSAGE_SERVICE_NAME, IMessageCliError, IMessageConfigurationError, IMessageEventTypes, IMessageNotSupportedError, isEmail, isPhoneNumber, isValidIMessageTarget, normalizeIMessageTarget, splitMessageForIMessage, } from "./types.js";
13
13
  const execFileAsync = promisify(execFile);
14
14
  function appleScriptStringLiteral(value) {
@@ -57,7 +57,7 @@ function normalizeIMessageConnectorHandle(value) {
57
57
  return normalizeContactHandle(normalizedTarget) || normalizedTarget;
58
58
  }
59
59
  function firstAttachmentUrl(content) {
60
- const attachment = content.attachments?.find((item) => typeof item?.url === "string" && item.url.trim().length > 0);
60
+ const attachment = content.attachments?.find((item) => typeof item.url === "string" && item.url.trim().length > 0);
61
61
  return attachment?.url?.trim();
62
62
  }
63
63
  function statusMetadata(status) {
@@ -111,18 +111,18 @@ function filterMemoriesByQuery(memories, query, limit) {
111
111
  }
112
112
  return memories
113
113
  .filter((memory) => {
114
- const text = typeof memory.content?.text === "string" ? memory.content.text : "";
114
+ const text = typeof memory.content.text === "string" ? memory.content.text : "";
115
115
  return text.toLowerCase().includes(normalized);
116
116
  })
117
117
  .slice(0, limit);
118
118
  }
119
119
  function publicIMessageToMemory(runtime, message, roomId, accountId = IMESSAGE_LOCAL_ACCOUNT_ID) {
120
120
  const normalizedAccountId = assertLocalIMessageAccount(accountId);
121
- const handle = normalizeIMessageConnectorHandle(message.handle ?? "");
121
+ const handle = normalizeIMessageConnectorHandle(message.handle);
122
122
  const entityId = message.isFromMe
123
123
  ? runtime.agentId
124
124
  : createUniqueUuid(runtime, handle || message.chatId || message.id);
125
- const channelType = message.chatId?.includes(";+;") ? ChannelType.GROUP : ChannelType.DM;
125
+ const channelType = message.chatId.includes(";+;") ? ChannelType.GROUP : ChannelType.DM;
126
126
  return {
127
127
  id: createUniqueUuid(runtime, `imessage-public:${message.id}`),
128
128
  entityId,
@@ -207,8 +207,7 @@ function chatTarget(chat, contacts) {
207
207
  : undefined;
208
208
  const label = chat.displayName ??
209
209
  contactName ??
210
- (isGroup ? participants.filter(Boolean).join(", ") : primaryHandle) ??
211
- chat.chatId;
210
+ (isGroup ? participants.filter(Boolean).join(", ") : primaryHandle);
212
211
  const target = targetWithAccount({
213
212
  source: "imessage",
214
213
  channelId: isGroup ? `chat_id:${chat.chatId}` : (primaryHandle ?? `chat_id:${chat.chatId}`),
@@ -307,14 +306,13 @@ export class IMessageService extends Service {
307
306
  chatDbPath = DEFAULT_CHAT_DB_PATH;
308
307
  /**
309
308
  * Cached handle → display name map from the user's Apple Contacts.
310
- * Populated lazily on first inbound message via AppleScript against
311
- * Contacts.app, NOT at service start. Loading at boot would trigger
312
- * the macOS Contacts TCC dialog at app launch, even though the user
313
- * may never receive an inbound iMessage. We defer the AppleScript
314
- * call (and its TCC prompt) until the first message that actually
315
- * needs handle→name resolution. Empty map means either the user
316
- * hasn't authorized Contacts access yet, the address book is empty,
317
- * or no inbound message has triggered the lazy load yet.
309
+ * Populated lazily on first inbound message through CNContactStore, NOT at
310
+ * service start. Loading at boot would create a settings-level Contacts
311
+ * dependency at app launch, even though the user may never receive an
312
+ * inbound iMessage. We defer the read until the first message that actually
313
+ * needs handle→name resolution. Empty map means either the user hasn't
314
+ * authorized Contacts access yet, the address book is empty, or no inbound
315
+ * message has triggered the lazy load yet.
318
316
  */
319
317
  contacts = new Map();
320
318
  /** Whether the lazy contact load has been attempted this session. */
@@ -343,7 +341,7 @@ export class IMessageService extends Service {
343
341
  // Resolve IMESSAGE_BACKFILL from every plausible source — character
344
342
  // settings (runtime.getSetting), the raw process env, and the
345
343
  // character's settings object. Whichever arrives first wins.
346
- const settingFromRuntime = typeof service.runtime?.getSetting === "function"
344
+ const settingFromRuntime = typeof service.runtime.getSetting === "function"
347
345
  ? service.runtime.getSetting("IMESSAGE_BACKFILL")
348
346
  : undefined;
349
347
  const settingFromEnv = process.env.IMESSAGE_BACKFILL;
@@ -353,13 +351,10 @@ export class IMessageService extends Service {
353
351
  logger.debug(`[imessage][boot] dbPath=${service.chatDbPath} tip=${tip} backfillRaw=${JSON.stringify(resolvedRaw)} backfillResolved=${backfill} lastRowId=${service.lastRowId}`);
354
352
  logger.info(`[imessage] chat.db opened, inbound polling ready (cursor starts at ROWID ${service.lastRowId}, backfilled ${backfill} from tip ${tip})`);
355
353
  }
356
- // NOTE: We intentionally do NOT call loadContacts() here. Loading
357
- // contacts at service start runs an AppleScript against Contacts.app,
358
- // which triggers the macOS Contacts TCC dialog the first time. App
359
- // launch must not trigger TCC dialogs implicitly — the dialog is
360
- // deferred to the first inbound message that actually needs name
361
- // resolution (see ensureContactsLoaded() below). Outbound-only users
362
- // never see the prompt.
354
+ // NOTE: We intentionally do NOT call loadContacts() here. App launch must
355
+ // not create Contacts permission pressure implicitly; the read is deferred
356
+ // to the first inbound message that actually needs name resolution (see
357
+ // ensureContactsLoaded() below). Outbound-only users never hit this path.
363
358
  // Start polling only when chat.db is available. When the database cannot
364
359
  // be opened, the service is intentionally send-only until the next start.
365
360
  if (service.chatDb && service.settings.pollIntervalMs > 0) {
@@ -448,10 +443,8 @@ export class IMessageService extends Service {
448
443
  : `chat_id:${message.chatId}`,
449
444
  entityId: handle ? handle : undefined,
450
445
  }, IMESSAGE_LOCAL_ACCOUNT_ID),
451
- label: contacts.get(normalizeContactHandle(handle))?.name ??
452
- message.handle ??
453
- message.chatId,
454
- kind: message.chatId?.includes(";+;") ? "group" : contactKind(handle),
446
+ label: contacts.get(normalizeContactHandle(handle))?.name ?? message.handle,
447
+ kind: message.chatId.includes(";+;") ? "group" : contactKind(handle),
455
448
  score: 0.68,
456
449
  metadata: {
457
450
  accountId: IMESSAGE_LOCAL_ACCOUNT_ID,
@@ -497,8 +490,8 @@ export class IMessageService extends Service {
497
490
  return [];
498
491
  },
499
492
  searchMessages: async (context, params) => {
500
- const limit = normalizeConnectorLimit(params?.limit);
501
- const target = params?.target ?? context.target;
493
+ const limit = normalizeConnectorLimit(params.limit);
494
+ const target = params.target ?? context.target;
502
495
  const accountId = assertLocalIMessageAccount(readTargetAccountId(target) ?? readContextAccountId(context));
503
496
  const chatId = target ? await resolveIMessageChatId(context.runtime, target) : null;
504
497
  const platformMessages = await service
@@ -723,7 +716,7 @@ export class IMessageService extends Service {
723
716
  * participant handles. Returns an empty list if the chat.db reader is
724
717
  * unavailable (Node runtime, missing FDA, etc.).
725
718
  *
726
- * Previously this method used an AppleScript stub against
719
+ * Previously this method used an AppleScript query against
727
720
  * Messages.app's `chats` collection. That verb works but is slow and
728
721
  * returns a coarser view (no participant handles, no style field), so
729
722
  * the chat.db path is strictly better when it's available.
@@ -754,7 +747,7 @@ export class IMessageService extends Service {
754
747
  return this.settings;
755
748
  }
756
749
  /**
757
- * Get the cached Apple Contacts map loaded at service start.
750
+ * Get the cached Apple Contacts map, if lazy loading has happened.
758
751
  *
759
752
  * Keys are normalized handles (phones in digits-only + optional leading `+`,
760
753
  * emails lowercased). Values carry the contact's display name.
@@ -771,11 +764,10 @@ export class IMessageService extends Service {
771
764
  }
772
765
  /**
773
766
  * Lazy-load the Apple Contacts map on first call. Subsequent calls
774
- * are no-ops. We split this out from `start()` so the macOS Contacts
775
- * TCC dialog only fires when the runtime actually needs handle→name
776
- * resolution typically the first inbound message instead of at
777
- * app launch. Failure is non-fatal; the cached map stays empty and
778
- * the service falls back to raw handles.
767
+ * are no-ops. We split this out from `start()` so Contacts permission
768
+ * pressure only appears when the runtime actually needs handle→name
769
+ * resolution, instead of at app launch. Failure is non-fatal; the cached
770
+ * map stays empty and the service falls back to raw handles.
779
771
  */
780
772
  async ensureContactsLoaded() {
781
773
  if (this.contactsLoadAttempted) {
@@ -784,24 +776,34 @@ export class IMessageService extends Service {
784
776
  this.contactsLoadAttempted = true;
785
777
  try {
786
778
  this.contacts = await loadContacts();
779
+ this.recordContactsPermissionBlock("contacts.resolve");
787
780
  }
788
781
  catch (err) {
789
782
  logger.warn(`[imessage] Lazy contact load failed: ${err instanceof Error ? err.message : String(err)}`);
790
783
  }
791
784
  }
785
+ recordContactsPermissionBlock(action) {
786
+ if (getLastContactsFailure() !== "permission")
787
+ return;
788
+ const registry = this.runtime.getService("eliza_permissions_registry");
789
+ registry?.recordBlock?.("contacts", { app: "imessage", action });
790
+ }
792
791
  /**
793
792
  * List every contact in the user's address book as a full record with
794
793
  * id, name, and all phones/emails. Delegates to contacts-reader's
795
- * `listAllContacts` which goes through Contacts.app's AppleScript
796
- * dump. Returns `[]` on failure (permission denied, etc.).
794
+ * `listAllContacts` which uses CNContactStore. Returns `[]` on failure
795
+ * (permission denied, etc.).
797
796
  */
798
797
  async listAllContacts() {
799
- return listAllContacts();
798
+ const contacts = await listAllContacts();
799
+ if (contacts.length === 0) {
800
+ this.recordContactsPermissionBlock("contacts.list");
801
+ }
802
+ return contacts;
800
803
  }
801
804
  /**
802
- * Create a new contact in Contacts.app. Requires Contacts WRITE
803
- * permission (macOS prompts on first call). Returns the new person's
804
- * id on success, or null on failure.
805
+ * Create a new Apple Contacts record. Requires the Contacts privacy grant.
806
+ * Returns the new person's id on success, or null on failure.
805
807
  *
806
808
  * After a successful create we refresh the cached handle→name map so
807
809
  * inbound messages from the new contact resolve to their name on the
@@ -812,6 +814,9 @@ export class IMessageService extends Service {
812
814
  if (id) {
813
815
  this.contacts = await loadContacts();
814
816
  }
817
+ else {
818
+ this.recordContactsPermissionBlock("contacts.create");
819
+ }
815
820
  return id;
816
821
  }
817
822
  /**
@@ -824,17 +829,23 @@ export class IMessageService extends Service {
824
829
  if (ok) {
825
830
  this.contacts = await loadContacts();
826
831
  }
832
+ else {
833
+ this.recordContactsPermissionBlock("contacts.update");
834
+ }
827
835
  return ok;
828
836
  }
829
837
  /**
830
- * Delete a contact by Contacts.app id. Returns true on success,
831
- * false on failure. Refreshes the cached map on success.
838
+ * Delete a contact by Apple Contacts id. Returns true on success, false on
839
+ * failure. Refreshes the cached map on success.
832
840
  */
833
841
  async deleteContact(personId) {
834
842
  const ok = await deleteContact(personId);
835
843
  if (ok) {
836
844
  this.contacts = await loadContacts();
837
845
  }
846
+ else {
847
+ this.recordContactsPermissionBlock("contacts.delete");
848
+ }
838
849
  return ok;
839
850
  }
840
851
  // Private methods
@@ -843,7 +854,7 @@ export class IMessageService extends Service {
843
854
  throw new IMessageConfigurationError("Runtime not initialized");
844
855
  }
845
856
  const getStringSetting = (key, envKey, defaultValue = "") => {
846
- const value = this.runtime?.getSetting(key);
857
+ const value = this.runtime.getSetting(key);
847
858
  if (typeof value === "string")
848
859
  return value;
849
860
  return process.env[envKey] || defaultValue;
@@ -1141,10 +1152,10 @@ export class IMessageService extends Service {
1141
1152
  chatId: roomKey,
1142
1153
  chatType: row.chatType,
1143
1154
  },
1144
- name: resolvedName ?? row.displayName ?? row.handle ?? undefined,
1155
+ name: resolvedName ?? row.displayName ?? row.handle,
1145
1156
  ...(row.handle ? { userId: row.handle } : {}),
1146
1157
  worldName: row.displayName ? `imessage-chat-${row.displayName}` : `imessage-chat-${roomKey}`,
1147
- userName: resolvedName ?? row.handle ?? undefined,
1158
+ userName: resolvedName ?? row.handle,
1148
1159
  });
1149
1160
  if (typeof this.runtime.ensureRoomExists === "function") {
1150
1161
  await this.runtime.ensureRoomExists({
@@ -1266,8 +1277,8 @@ export class IMessageService extends Service {
1266
1277
  provider: "imessage",
1267
1278
  accountId,
1268
1279
  timestamp: row.timestamp || Date.now(),
1269
- entityName: resolvedName ?? row.displayName ?? row.handle ?? undefined,
1270
- entityUserName: row.handle ?? undefined,
1280
+ entityName: resolvedName ?? row.displayName ?? row.handle,
1281
+ entityUserName: row.handle,
1271
1282
  fromBot: row.isFromMe,
1272
1283
  fromId: row.handle,
1273
1284
  sourceId: entityId,
@@ -1275,8 +1286,8 @@ export class IMessageService extends Service {
1275
1286
  messageIdFull: row.guid,
1276
1287
  sender: {
1277
1288
  id: row.handle,
1278
- name: resolvedName ?? row.displayName ?? row.handle ?? undefined,
1279
- username: row.handle ?? undefined,
1289
+ name: resolvedName ?? row.displayName ?? row.handle,
1290
+ username: row.handle,
1280
1291
  },
1281
1292
  imessage: {
1282
1293
  accountId,
@@ -1284,7 +1295,7 @@ export class IMessageService extends Service {
1284
1295
  userId: row.handle,
1285
1296
  username: row.handle,
1286
1297
  userName: row.handle,
1287
- name: resolvedName ?? row.displayName ?? row.handle ?? undefined,
1298
+ name: resolvedName ?? row.displayName ?? row.handle,
1288
1299
  chatId: roomKey,
1289
1300
  guid: row.guid,
1290
1301
  rowId: row.rowId,
@@ -1611,7 +1622,7 @@ export function chatDbMessageToPublicShape(row) {
1611
1622
  */
1612
1623
  export function parseMessagesFromAppleScript(result) {
1613
1624
  const messages = [];
1614
- if (!result?.trim()) {
1625
+ if (!result.trim()) {
1615
1626
  return messages;
1616
1627
  }
1617
1628
  for (const line of result.split("\n")) {
@@ -1652,7 +1663,7 @@ export function parseMessagesFromAppleScript(result) {
1652
1663
  */
1653
1664
  export function parseChatsFromAppleScript(result) {
1654
1665
  const chats = [];
1655
- if (!result?.trim()) {
1666
+ if (!result.trim()) {
1656
1667
  return chats;
1657
1668
  }
1658
1669
  const listStyleEntryPattern = /\{\s*"([^"]*)"\s*,\s*(?:"([^"]*)"|(missing value))\s*\}/g;
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,26 @@
1
1
  /**
2
- * iMessage connector HTTP routes.
2
+ * iMessage connector setup routes.
3
3
  *
4
- * Exposes the @elizaos/plugin-imessage service state through the Plugin
5
- * routes API so the dashboard (and future CLIs / third-party integrations)
6
- * can read and write against macOS Messages.app without each client going
7
- * straight to chat.db or AppleScript.
4
+ * Implements the shared setup contract defined in
5
+ * `@elizaos/app-core/api/setup-contract.ts`:
8
6
  *
9
- * Routes served (all under `/api/imessage`):
7
+ * GET /api/setup/imessage/status service health + connection state
8
+ * POST /api/setup/imessage/start mark iMessage as enabled in connector config
9
+ * POST /api/setup/imessage/cancel clear stored iMessage connector config
10
10
  *
11
- * GET /api/imessage/status service health + connection state
12
- * GET /api/imessage/messages newest messages from chat.db
13
- * POST /api/imessage/messages send a message via Messages.app
14
- * GET /api/imessage/chats list of chats (DMs + groups)
15
- * GET /api/imessage/contacts every contact with full detail
16
- * POST /api/imessage/contacts create a new contact
17
- * PATCH /api/imessage/contacts/:id update an existing contact
18
- * DELETE /api/imessage/contacts/:id delete a contact
11
+ * iMessage on macOS does not have a credential/pairing flow it reads chat.db
12
+ * directly and sends through Messages.app via osascript. "Setup" is just the
13
+ * permission gate (Full Disk Access) plus marking the connector enabled in
14
+ * config so the service spins up. The status endpoint exposes the permission
15
+ * state so the UI can guide the user.
19
16
  *
20
- * Each handler pulls the IMessageService instance off the runtime via
21
- * `runtime.getService("imessage")` and calls public methods. If the
22
- * service isn't registered we return 503 with a structured reason so
23
- * the UI can render an informative empty state.
17
+ * Post-setup data routes (messages, chats, contacts) live in
18
+ * `./data-routes.ts` under `/api/imessage/` since they are CRUD against a
19
+ * working service, not part of the pairing/setup state machine.
24
20
  *
25
21
  * These routes are registered with `rawPath: true` so they mount at their
26
- * legacy paths without the plugin-name prefix.
22
+ * canonical paths without the plugin-name prefix.
27
23
  */
28
24
  import type { Route } from "@elizaos/core";
29
- /**
30
- * Plugin routes for iMessage service.
31
- * Registered with `rawPath: true` to preserve legacy `/api/imessage/*` paths.
32
- *
33
- * Note: The PATCH and DELETE routes for `/api/imessage/contacts/:id` use
34
- * the base `/api/imessage/contacts/` path with `rawPath: true`. The
35
- * handler extracts the `:id` from req.url internally.
36
- */
37
25
  export declare const imessageSetupRoutes: Route[];
38
26
  //# sourceMappingURL=setup-routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-routes.d.ts","sourceRoot":"","sources":["../src/setup-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAiB,KAAK,EAA+B,MAAM,eAAe,CAAC;AAiZvF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,EAiDtC,CAAC"}
1
+ {"version":3,"file":"setup-routes.d.ts","sourceRoot":"","sources":["../src/setup-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAiB,KAAK,EAA+B,MAAM,eAAe,CAAC;AAiLvF,eAAO,MAAM,mBAAmB,EAAE,KAAK,EAmBtC,CAAC"}