@vox-ai-app/integrations 1.0.0 → 1.0.1

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.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @vox-ai-app/vox-integrations
1
+ # @vox-ai-app/integrations
2
2
 
3
3
  macOS system integrations for Vox: Apple Mail, Screen control, and iMessage. Each integration ships with tool implementations and LLM tool definitions.
4
4
 
@@ -7,35 +7,30 @@ Requires macOS. Each integration needs specific system permissions granted by th
7
7
  ## Install
8
8
 
9
9
  ```sh
10
- npm install @vox-ai-app/vox-integrations
10
+ npm install @vox-ai-app/integrations
11
11
  ```
12
12
 
13
13
  Peer dependency: `electron >= 28`
14
14
 
15
15
  ## Exports
16
16
 
17
- | Export | Contents |
18
- | --------------------------------------------- | ----------------------------- |
19
- | `@vox-ai-app/vox-integrations` | All exports |
20
- | `@vox-ai-app/vox-integrations/defs` | All tool definitions |
21
- | `@vox-ai-app/vox-integrations/mail` | Mail functions |
22
- | `@vox-ai-app/vox-integrations/screen` | Screen capture + control |
23
- | `@vox-ai-app/vox-integrations/screen/capture` | Capture only |
24
- | `@vox-ai-app/vox-integrations/screen/control` | Control only |
25
- | `@vox-ai-app/vox-integrations/screen/queue` | Session acquire/release |
26
- | `@vox-ai-app/vox-integrations/imessage` | iMessage data, reply, service |
17
+ | Export | Contents |
18
+ | ----------------------------------------- | ----------------------------- |
19
+ | `@vox-ai-app/integrations` | All exports |
20
+ | `@vox-ai-app/integrations/defs` | All tool definitions |
21
+ | `@vox-ai-app/integrations/mail` | Mail functions |
22
+ | `@vox-ai-app/integrations/screen` | Screen capture + control |
23
+ | `@vox-ai-app/integrations/screen/capture` | Capture only |
24
+ | `@vox-ai-app/integrations/screen/control` | Control only |
25
+ | `@vox-ai-app/integrations/screen/queue` | Session acquire/release |
26
+ | `@vox-ai-app/integrations/imessage` | iMessage data, reply, service |
27
27
 
28
28
  ## Mail
29
29
 
30
30
  Requires **Automation permission** for Mail (System Settings → Privacy & Security → Automation).
31
31
 
32
32
  ```js
33
- import {
34
- sendEmail,
35
- readEmails,
36
- searchContacts,
37
- replyToEmail
38
- } from '@vox-ai-app/vox-integrations/mail'
33
+ import { sendEmail, readEmails, searchContacts, replyToEmail } from '@vox-ai-app/integrations/mail'
39
34
 
40
35
  const emails = await readEmails({ account: 'Work', folder: 'INBOX', limit: 20 })
41
36
  await sendEmail({ to: 'user@example.com', subject: 'Hi', body: 'Hello.' })
@@ -45,7 +40,7 @@ await replyToEmail({ messageId: '...', body: 'Thanks!' })
45
40
  Tool definitions:
46
41
 
47
42
  ```js
48
- import { MAIL_TOOL_DEFINITIONS } from '@vox-ai-app/vox-integrations/defs'
43
+ import { MAIL_TOOL_DEFINITIONS } from '@vox-ai-app/integrations/defs'
49
44
  ```
50
45
 
51
46
  ## Screen
@@ -58,8 +53,8 @@ import {
58
53
  clickAt,
59
54
  typeText,
60
55
  getUiElements
61
- } from '@vox-ai-app/vox-integrations/screen'
62
- import { acquireScreen, releaseScreen } from '@vox-ai-app/vox-integrations/screen/queue'
56
+ } from '@vox-ai-app/integrations/screen'
57
+ import { acquireScreen, releaseScreen } from '@vox-ai-app/integrations/screen/queue'
63
58
 
64
59
  const session = await acquireScreen()
65
60
  try {
@@ -74,7 +69,7 @@ try {
74
69
  Tool definitions:
75
70
 
76
71
  ```js
77
- import { SCREEN_TOOL_DEFINITIONS } from '@vox-ai-app/vox-integrations/defs'
72
+ import { SCREEN_TOOL_DEFINITIONS } from '@vox-ai-app/integrations/defs'
78
73
  ```
79
74
 
80
75
  ## iMessage
@@ -84,7 +79,7 @@ Requires **Full Disk Access** (System Settings → Privacy & Security → Full D
84
79
  ### Tool use (read conversations, send messages)
85
80
 
86
81
  ```js
87
- import { listConversations, listContacts, sendReply } from '@vox-ai-app/vox-integrations/imessage'
82
+ import { listConversations, listContacts, sendReply } from '@vox-ai-app/integrations/imessage'
88
83
 
89
84
  const conversations = listConversations()
90
85
  const contacts = listContacts()
@@ -94,7 +89,7 @@ await sendReply('+15551234567', 'Hello from Vox!')
94
89
  ### Gateway service (AI replies to incoming iMessages)
95
90
 
96
91
  ```js
97
- import { createIMessageService } from '@vox-ai-app/vox-integrations/imessage'
92
+ import { createIMessageService } from '@vox-ai-app/integrations/imessage'
98
93
 
99
94
  const svc = createIMessageService({
100
95
  logger,
@@ -117,7 +112,7 @@ svc.start('my-passphrase')
117
112
  Tool definitions:
118
113
 
119
114
  ```js
120
- import { IMESSAGE_TOOL_DEFINITIONS } from '@vox-ai-app/vox-integrations/defs'
115
+ import { IMESSAGE_TOOL_DEFINITIONS } from '@vox-ai-app/integrations/defs'
121
116
  ```
122
117
 
123
118
  ## License
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vox-ai-app/integrations",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "macOS integrations (Mail, Screen, iMessage) for Vox",
@@ -12,22 +12,6 @@ const REPLY_TIMEOUT_MS = 90_000
12
12
  const FDA_ERROR_MESSAGE =
13
13
  'Vox needs Full Disk Access to read Messages. Opening System Settings → Privacy & Security → Full Disk Access — please enable it for Vox and try again.'
14
14
 
15
- /**
16
- * Creates a self-contained iMessage watcher service.
17
- *
18
- * @param {object} opts
19
- * @param {(text: string, handle: string) => Promise<string|null>} opts.onMessage
20
- * Called when a passphrase-matched message arrives. Must return the AI reply text (or null to skip reply).
21
- * @param {(text: string, handle: string) => void} [opts.onTranscript]
22
- * Optional: called before onMessage, useful for emitting transcript events upstream.
23
- * @param {() => void} [opts.onOpenSettings]
24
- * Optional: called when Full Disk Access is required. Default opens nothing.
25
- * @param {{ info: Function, warn: Function, error: Function }} [opts.logger]
26
- * Optional: defaults to console.
27
- * @param {number} [opts.pollIntervalMs]
28
- * Poll interval in ms. Default 3000.
29
- * @returns {{ start, stop, getPassphrase, listConversations, listContacts, openSettings }}
30
- */
31
15
  export const createIMessageService = ({
32
16
  onMessage,
33
17
  onTranscript,