@hraness/ghostget 0.18.13 → 0.18.14
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/CHANGELOG.md +17 -0
- package/README.md +12 -7
- package/dist/apple-photos-client.js +1 -1
- package/dist/beeper-client.js +42 -6
- package/dist/{imessage-direct-install-2gm3kge7.js → imessage-direct-install-5nftwc6p.js} +1 -1
- package/dist/{index-maa9hb5z.js → index-g6na3p6k.js} +1 -1
- package/dist/{index-en5hycxp.js → index-kaav16fd.js} +4 -2
- package/dist/{index-2ymnp8xv.js → index-qcf2f6wm.js} +5 -1
- package/dist/{messaging-automation-j4274hvc.js → messaging-automation-58s1366z.js} +1 -1
- package/dist/messaging-automation-api.js +2 -2
- package/dist/{messaging-native-install-8w1j36ah.js → messaging-native-install-c90nv501.js} +1 -1
- package/dist/{whatsapp-automation-runtime-hgh1e9rm.js → whatsapp-automation-runtime-ke1dx91p.js} +1 -1
- package/docs/messaging-automation.md +14 -7
- package/package.json +8 -4
- package/skills/ghostget/references/install.md +5 -5
- package/src/assets/adapters/beeper/wrench-web-adapter.json +37 -1
- package/src/assets/adapters/beeper/wrench-web-adapter.v2.4.0.json +1500 -0
- package/src/beeper-client-types.ts +1 -1
- package/src/control/menubar-cli.ts +3 -1
- package/src/control/menubar-icon.ts +4 -0
- package/src/messaging-automation-descriptors.ts +9 -1
- package/src/messaging-automation-factory.ts +7 -5
- package/src/messaging-automation-server.ts +2 -2
- package/src/messaging-automation-types.ts +3 -2
- package/src/messaging-automation-validation.ts +5 -1
- package/src/plugins/beeper-linked-device/plugin.ts +3 -1
- package/src/provider-plugin-contract-identity.ts +11 -2
- package/src/providers/beeper-automation.ts +447 -0
- package/src/providers/beeper-local-runtime.ts +61 -21
- package/src/providers/beeper-local.ts +4 -4
- package/src/providers/beeper-omni.ts +9 -2
- package/src/providers/messaging-native-install.ts +2 -1
- package/src/version.ts +1 -1
|
@@ -0,0 +1,1500 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 6,
|
|
3
|
+
"id": "beeper-local",
|
|
4
|
+
"version": "2.4.0",
|
|
5
|
+
"displayName": "Beeper (Pinned Local CLI)",
|
|
6
|
+
"surfaceId": "beeper",
|
|
7
|
+
"origins": [
|
|
8
|
+
"https://www.beeper.com"
|
|
9
|
+
],
|
|
10
|
+
"browserDomains": [
|
|
11
|
+
"www.beeper.com"
|
|
12
|
+
],
|
|
13
|
+
"operations": {
|
|
14
|
+
"accounts.list": {
|
|
15
|
+
"description": "List the exact account realm bound to the fixed local Beeper Desktop target.",
|
|
16
|
+
"risk": "R1",
|
|
17
|
+
"sideEffect": "none",
|
|
18
|
+
"idempotency": "none",
|
|
19
|
+
"dedupeWindowMs": 0,
|
|
20
|
+
"input": {
|
|
21
|
+
"properties": {},
|
|
22
|
+
"required": []
|
|
23
|
+
},
|
|
24
|
+
"localCli": {
|
|
25
|
+
"surface": "beeper",
|
|
26
|
+
"action": "accounts.list",
|
|
27
|
+
"contractVersion": 2,
|
|
28
|
+
"timeoutMs": 120000,
|
|
29
|
+
"maxOutputBytes": 10485760
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"accounts.read": {
|
|
33
|
+
"description": "Read one exact connected Beeper account.",
|
|
34
|
+
"risk": "R1",
|
|
35
|
+
"sideEffect": "none",
|
|
36
|
+
"idempotency": "none",
|
|
37
|
+
"dedupeWindowMs": 0,
|
|
38
|
+
"input": {
|
|
39
|
+
"properties": {
|
|
40
|
+
"account_id": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
43
|
+
"minLength": 1,
|
|
44
|
+
"maxLength": 512
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"required": [
|
|
48
|
+
"account_id"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
"localCli": {
|
|
52
|
+
"surface": "beeper",
|
|
53
|
+
"action": "accounts.read",
|
|
54
|
+
"contractVersion": 1,
|
|
55
|
+
"timeoutMs": 120000,
|
|
56
|
+
"maxOutputBytes": 10485760
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"bridges.list": {
|
|
60
|
+
"description": "List one bounded, secret-free bridge capability catalog.",
|
|
61
|
+
"risk": "R1",
|
|
62
|
+
"sideEffect": "none",
|
|
63
|
+
"idempotency": "none",
|
|
64
|
+
"dedupeWindowMs": 0,
|
|
65
|
+
"input": {
|
|
66
|
+
"properties": {
|
|
67
|
+
"provider": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"description": "Optional exact bridge provider class",
|
|
70
|
+
"minLength": 1,
|
|
71
|
+
"maxLength": 32,
|
|
72
|
+
"enum": [
|
|
73
|
+
"local",
|
|
74
|
+
"cloud",
|
|
75
|
+
"self-hosted",
|
|
76
|
+
"platform-sdk"
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
"available": {
|
|
80
|
+
"type": "boolean",
|
|
81
|
+
"description": "Optionally require current availability"
|
|
82
|
+
},
|
|
83
|
+
"limit": {
|
|
84
|
+
"type": "number",
|
|
85
|
+
"description": "Maximum projected bridges",
|
|
86
|
+
"minimum": 1,
|
|
87
|
+
"maximum": 128
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"required": []
|
|
91
|
+
},
|
|
92
|
+
"localCli": {
|
|
93
|
+
"surface": "beeper",
|
|
94
|
+
"action": "bridges.list",
|
|
95
|
+
"contractVersion": 2,
|
|
96
|
+
"timeoutMs": 120000,
|
|
97
|
+
"maxOutputBytes": 10485760
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
"bridges.read": {
|
|
101
|
+
"description": "Read one exact bridge and its secret-free capabilities.",
|
|
102
|
+
"risk": "R1",
|
|
103
|
+
"sideEffect": "none",
|
|
104
|
+
"idempotency": "none",
|
|
105
|
+
"dedupeWindowMs": 0,
|
|
106
|
+
"input": {
|
|
107
|
+
"properties": {
|
|
108
|
+
"bridge_id": {
|
|
109
|
+
"type": "string",
|
|
110
|
+
"description": "Exact bridge ID returned by this adapter",
|
|
111
|
+
"minLength": 1,
|
|
112
|
+
"maxLength": 512
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"required": [
|
|
116
|
+
"bridge_id"
|
|
117
|
+
]
|
|
118
|
+
},
|
|
119
|
+
"localCli": {
|
|
120
|
+
"surface": "beeper",
|
|
121
|
+
"action": "bridges.read",
|
|
122
|
+
"contractVersion": 1,
|
|
123
|
+
"timeoutMs": 120000,
|
|
124
|
+
"maxOutputBytes": 10485760
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
"contacts.list": {
|
|
128
|
+
"description": "List one bounded account-aware contact projection through Desktop contact pages.",
|
|
129
|
+
"risk": "R1",
|
|
130
|
+
"sideEffect": "none",
|
|
131
|
+
"idempotency": "none",
|
|
132
|
+
"dedupeWindowMs": 0,
|
|
133
|
+
"input": {
|
|
134
|
+
"properties": {
|
|
135
|
+
"account_id": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
138
|
+
"minLength": 1,
|
|
139
|
+
"maxLength": 512
|
|
140
|
+
},
|
|
141
|
+
"query": {
|
|
142
|
+
"type": "string",
|
|
143
|
+
"description": "Optional normalized provider contact-lookup query of at most 256 UTF-8 bytes",
|
|
144
|
+
"minLength": 1,
|
|
145
|
+
"maxLength": 256
|
|
146
|
+
},
|
|
147
|
+
"before_cursor": {
|
|
148
|
+
"type": "string",
|
|
149
|
+
"description": "Exact opaque provider cursor returned by a prior older-results page",
|
|
150
|
+
"minLength": 1,
|
|
151
|
+
"maxLength": 2048
|
|
152
|
+
},
|
|
153
|
+
"after_cursor": {
|
|
154
|
+
"type": "string",
|
|
155
|
+
"description": "Exact opaque provider cursor returned by a prior newer-results page",
|
|
156
|
+
"minLength": 1,
|
|
157
|
+
"maxLength": 2048
|
|
158
|
+
},
|
|
159
|
+
"limit": {
|
|
160
|
+
"type": "number",
|
|
161
|
+
"description": "Maximum projected contacts",
|
|
162
|
+
"minimum": 1,
|
|
163
|
+
"maximum": 200
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
"required": []
|
|
167
|
+
},
|
|
168
|
+
"localCli": {
|
|
169
|
+
"surface": "beeper",
|
|
170
|
+
"action": "contacts.list",
|
|
171
|
+
"contractVersion": 3,
|
|
172
|
+
"timeoutMs": 120000,
|
|
173
|
+
"maxOutputBytes": 10485760
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
"contacts.search": {
|
|
177
|
+
"description": "Search one bounded contact candidate window.",
|
|
178
|
+
"risk": "R1",
|
|
179
|
+
"sideEffect": "none",
|
|
180
|
+
"idempotency": "none",
|
|
181
|
+
"dedupeWindowMs": 0,
|
|
182
|
+
"input": {
|
|
183
|
+
"properties": {
|
|
184
|
+
"query": {
|
|
185
|
+
"type": "string",
|
|
186
|
+
"description": "Normalized bounded contact lookup text",
|
|
187
|
+
"minLength": 1,
|
|
188
|
+
"maxLength": 256
|
|
189
|
+
},
|
|
190
|
+
"account_id": {
|
|
191
|
+
"type": "string",
|
|
192
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
193
|
+
"minLength": 1,
|
|
194
|
+
"maxLength": 512
|
|
195
|
+
},
|
|
196
|
+
"limit": {
|
|
197
|
+
"type": "number",
|
|
198
|
+
"description": "Maximum candidate contacts",
|
|
199
|
+
"minimum": 1,
|
|
200
|
+
"maximum": 20
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
"required": [
|
|
204
|
+
"query"
|
|
205
|
+
]
|
|
206
|
+
},
|
|
207
|
+
"localCli": {
|
|
208
|
+
"surface": "beeper",
|
|
209
|
+
"action": "contacts.search",
|
|
210
|
+
"contractVersion": 1,
|
|
211
|
+
"timeoutMs": 120000,
|
|
212
|
+
"maxOutputBytes": 10485760
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
"contacts.read": {
|
|
216
|
+
"description": "Read one exact account-bound contact identity.",
|
|
217
|
+
"risk": "R1",
|
|
218
|
+
"sideEffect": "none",
|
|
219
|
+
"idempotency": "none",
|
|
220
|
+
"dedupeWindowMs": 0,
|
|
221
|
+
"input": {
|
|
222
|
+
"properties": {
|
|
223
|
+
"account_id": {
|
|
224
|
+
"type": "string",
|
|
225
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
226
|
+
"minLength": 1,
|
|
227
|
+
"maxLength": 512
|
|
228
|
+
},
|
|
229
|
+
"contact_id": {
|
|
230
|
+
"type": "string",
|
|
231
|
+
"description": "Exact contact ID returned by this adapter",
|
|
232
|
+
"minLength": 1,
|
|
233
|
+
"maxLength": 2048
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"required": [
|
|
237
|
+
"account_id",
|
|
238
|
+
"contact_id"
|
|
239
|
+
]
|
|
240
|
+
},
|
|
241
|
+
"localCli": {
|
|
242
|
+
"surface": "beeper",
|
|
243
|
+
"action": "contacts.read",
|
|
244
|
+
"contractVersion": 1,
|
|
245
|
+
"timeoutMs": 120000,
|
|
246
|
+
"maxOutputBytes": 10485760
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
"messaging.list": {
|
|
250
|
+
"description": "List one bounded account-aware conversation projection.",
|
|
251
|
+
"risk": "R1",
|
|
252
|
+
"sideEffect": "none",
|
|
253
|
+
"idempotency": "none",
|
|
254
|
+
"dedupeWindowMs": 0,
|
|
255
|
+
"input": {
|
|
256
|
+
"properties": {
|
|
257
|
+
"account_id": {
|
|
258
|
+
"type": "string",
|
|
259
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
260
|
+
"minLength": 1,
|
|
261
|
+
"maxLength": 512
|
|
262
|
+
},
|
|
263
|
+
"limit": {
|
|
264
|
+
"type": "number",
|
|
265
|
+
"description": "Maximum projected conversations",
|
|
266
|
+
"minimum": 1,
|
|
267
|
+
"maximum": 200
|
|
268
|
+
},
|
|
269
|
+
"archived": {
|
|
270
|
+
"type": "boolean",
|
|
271
|
+
"description": "Filter by archived state"
|
|
272
|
+
},
|
|
273
|
+
"pinned": {
|
|
274
|
+
"type": "boolean",
|
|
275
|
+
"description": "Filter by pinned state"
|
|
276
|
+
},
|
|
277
|
+
"muted": {
|
|
278
|
+
"type": "boolean",
|
|
279
|
+
"description": "Filter by muted state"
|
|
280
|
+
},
|
|
281
|
+
"unread": {
|
|
282
|
+
"type": "boolean",
|
|
283
|
+
"description": "Filter by unread state"
|
|
284
|
+
},
|
|
285
|
+
"low_priority": {
|
|
286
|
+
"type": "boolean",
|
|
287
|
+
"description": "Filter by low-priority state"
|
|
288
|
+
}
|
|
289
|
+
},
|
|
290
|
+
"required": []
|
|
291
|
+
},
|
|
292
|
+
"localCli": {
|
|
293
|
+
"surface": "beeper",
|
|
294
|
+
"action": "messaging.list",
|
|
295
|
+
"contractVersion": 1,
|
|
296
|
+
"timeoutMs": 120000,
|
|
297
|
+
"maxOutputBytes": 10485760
|
|
298
|
+
}
|
|
299
|
+
},
|
|
300
|
+
"messaging.search": {
|
|
301
|
+
"description": "Search one bounded conversation candidate window.",
|
|
302
|
+
"risk": "R1",
|
|
303
|
+
"sideEffect": "none",
|
|
304
|
+
"idempotency": "none",
|
|
305
|
+
"dedupeWindowMs": 0,
|
|
306
|
+
"input": {
|
|
307
|
+
"properties": {
|
|
308
|
+
"query": {
|
|
309
|
+
"type": "string",
|
|
310
|
+
"description": "Normalized bounded conversation lookup text",
|
|
311
|
+
"minLength": 1,
|
|
312
|
+
"maxLength": 256
|
|
313
|
+
},
|
|
314
|
+
"account_id": {
|
|
315
|
+
"type": "string",
|
|
316
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
317
|
+
"minLength": 1,
|
|
318
|
+
"maxLength": 512
|
|
319
|
+
},
|
|
320
|
+
"limit": {
|
|
321
|
+
"type": "number",
|
|
322
|
+
"description": "Maximum candidate conversations",
|
|
323
|
+
"minimum": 1,
|
|
324
|
+
"maximum": 20
|
|
325
|
+
}
|
|
326
|
+
},
|
|
327
|
+
"required": [
|
|
328
|
+
"query"
|
|
329
|
+
]
|
|
330
|
+
},
|
|
331
|
+
"localCli": {
|
|
332
|
+
"surface": "beeper",
|
|
333
|
+
"action": "messaging.search",
|
|
334
|
+
"contractVersion": 2,
|
|
335
|
+
"timeoutMs": 120000,
|
|
336
|
+
"maxOutputBytes": 10485760
|
|
337
|
+
}
|
|
338
|
+
},
|
|
339
|
+
"conversations.read": {
|
|
340
|
+
"description": "Read one exact account-bound conversation.",
|
|
341
|
+
"risk": "R1",
|
|
342
|
+
"sideEffect": "none",
|
|
343
|
+
"idempotency": "none",
|
|
344
|
+
"dedupeWindowMs": 0,
|
|
345
|
+
"input": {
|
|
346
|
+
"properties": {
|
|
347
|
+
"account_id": {
|
|
348
|
+
"type": "string",
|
|
349
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
350
|
+
"minLength": 1,
|
|
351
|
+
"maxLength": 512
|
|
352
|
+
},
|
|
353
|
+
"conversation_id": {
|
|
354
|
+
"type": "string",
|
|
355
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
356
|
+
"minLength": 3,
|
|
357
|
+
"maxLength": 2048
|
|
358
|
+
},
|
|
359
|
+
"max_participants": {
|
|
360
|
+
"type": "number",
|
|
361
|
+
"description": "Maximum projected participants",
|
|
362
|
+
"minimum": 1,
|
|
363
|
+
"maximum": 500
|
|
364
|
+
}
|
|
365
|
+
},
|
|
366
|
+
"required": [
|
|
367
|
+
"account_id",
|
|
368
|
+
"conversation_id"
|
|
369
|
+
]
|
|
370
|
+
},
|
|
371
|
+
"localCli": {
|
|
372
|
+
"surface": "beeper",
|
|
373
|
+
"action": "conversations.read",
|
|
374
|
+
"contractVersion": 2,
|
|
375
|
+
"timeoutMs": 120000,
|
|
376
|
+
"maxOutputBytes": 10485760
|
|
377
|
+
}
|
|
378
|
+
},
|
|
379
|
+
"messaging.read": {
|
|
380
|
+
"description": "Read one bounded page from one exact conversation.",
|
|
381
|
+
"risk": "R1",
|
|
382
|
+
"sideEffect": "none",
|
|
383
|
+
"idempotency": "none",
|
|
384
|
+
"dedupeWindowMs": 0,
|
|
385
|
+
"input": {
|
|
386
|
+
"properties": {
|
|
387
|
+
"account_id": {
|
|
388
|
+
"type": "string",
|
|
389
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
390
|
+
"minLength": 1,
|
|
391
|
+
"maxLength": 512
|
|
392
|
+
},
|
|
393
|
+
"conversation_id": {
|
|
394
|
+
"type": "string",
|
|
395
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
396
|
+
"minLength": 3,
|
|
397
|
+
"maxLength": 2048
|
|
398
|
+
},
|
|
399
|
+
"before_cursor": {
|
|
400
|
+
"type": "string",
|
|
401
|
+
"description": "Exact opaque provider cursor returned by a prior page",
|
|
402
|
+
"minLength": 1,
|
|
403
|
+
"maxLength": 2048
|
|
404
|
+
},
|
|
405
|
+
"after_cursor": {
|
|
406
|
+
"type": "string",
|
|
407
|
+
"description": "Exact opaque provider cursor returned by a prior page",
|
|
408
|
+
"minLength": 1,
|
|
409
|
+
"maxLength": 2048
|
|
410
|
+
},
|
|
411
|
+
"sender": {
|
|
412
|
+
"type": "string",
|
|
413
|
+
"description": "Exact sender filter: me, others, or one bounded opaque provider user ID",
|
|
414
|
+
"minLength": 1,
|
|
415
|
+
"maxLength": 2048
|
|
416
|
+
},
|
|
417
|
+
"limit": {
|
|
418
|
+
"type": "number",
|
|
419
|
+
"description": "Maximum projected messages",
|
|
420
|
+
"minimum": 1,
|
|
421
|
+
"maximum": 200
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
"required": [
|
|
425
|
+
"account_id",
|
|
426
|
+
"conversation_id"
|
|
427
|
+
]
|
|
428
|
+
},
|
|
429
|
+
"localCli": {
|
|
430
|
+
"surface": "beeper",
|
|
431
|
+
"action": "messaging.read",
|
|
432
|
+
"contractVersion": 3,
|
|
433
|
+
"timeoutMs": 120000,
|
|
434
|
+
"maxOutputBytes": 10485760
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
"messaging.content.search": {
|
|
438
|
+
"description": "Search and paginate one bounded message-content candidate window through the exact local provider index.",
|
|
439
|
+
"risk": "R1",
|
|
440
|
+
"sideEffect": "none",
|
|
441
|
+
"idempotency": "none",
|
|
442
|
+
"dedupeWindowMs": 0,
|
|
443
|
+
"input": {
|
|
444
|
+
"properties": {
|
|
445
|
+
"query": {
|
|
446
|
+
"type": "string",
|
|
447
|
+
"description": "Normalized bounded message lookup text",
|
|
448
|
+
"minLength": 1,
|
|
449
|
+
"maxLength": 256
|
|
450
|
+
},
|
|
451
|
+
"account_id": {
|
|
452
|
+
"type": "string",
|
|
453
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
454
|
+
"minLength": 1,
|
|
455
|
+
"maxLength": 512
|
|
456
|
+
},
|
|
457
|
+
"conversation_id": {
|
|
458
|
+
"type": "string",
|
|
459
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
460
|
+
"minLength": 3,
|
|
461
|
+
"maxLength": 2048
|
|
462
|
+
},
|
|
463
|
+
"chat_type": {
|
|
464
|
+
"type": "string",
|
|
465
|
+
"description": "Exact chat type filter",
|
|
466
|
+
"minLength": 1,
|
|
467
|
+
"maxLength": 16,
|
|
468
|
+
"enum": [
|
|
469
|
+
"group",
|
|
470
|
+
"single"
|
|
471
|
+
]
|
|
472
|
+
},
|
|
473
|
+
"after": {
|
|
474
|
+
"type": "string",
|
|
475
|
+
"description": "Canonical UTC ISO timestamp",
|
|
476
|
+
"minLength": 20,
|
|
477
|
+
"maxLength": 64
|
|
478
|
+
},
|
|
479
|
+
"before": {
|
|
480
|
+
"type": "string",
|
|
481
|
+
"description": "Canonical UTC ISO timestamp",
|
|
482
|
+
"minLength": 20,
|
|
483
|
+
"maxLength": 64
|
|
484
|
+
},
|
|
485
|
+
"before_cursor": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"description": "Exact opaque provider cursor returned by a prior older-results page",
|
|
488
|
+
"minLength": 1,
|
|
489
|
+
"maxLength": 2048
|
|
490
|
+
},
|
|
491
|
+
"after_cursor": {
|
|
492
|
+
"type": "string",
|
|
493
|
+
"description": "Exact opaque provider cursor returned by a prior newer-results page",
|
|
494
|
+
"minLength": 1,
|
|
495
|
+
"maxLength": 2048
|
|
496
|
+
},
|
|
497
|
+
"exclude_low_priority": {
|
|
498
|
+
"type": "boolean",
|
|
499
|
+
"description": "Exclude low-priority chats"
|
|
500
|
+
},
|
|
501
|
+
"include_muted": {
|
|
502
|
+
"type": "boolean",
|
|
503
|
+
"description": "Include muted chats"
|
|
504
|
+
},
|
|
505
|
+
"media": {
|
|
506
|
+
"type": "array",
|
|
507
|
+
"description": "Exact media-kind filters",
|
|
508
|
+
"items": {
|
|
509
|
+
"type": "string",
|
|
510
|
+
"description": "One exact media kind",
|
|
511
|
+
"minLength": 1,
|
|
512
|
+
"maxLength": 16,
|
|
513
|
+
"enum": [
|
|
514
|
+
"any",
|
|
515
|
+
"video",
|
|
516
|
+
"image",
|
|
517
|
+
"link",
|
|
518
|
+
"file"
|
|
519
|
+
]
|
|
520
|
+
},
|
|
521
|
+
"minItems": 0,
|
|
522
|
+
"maxItems": 5
|
|
523
|
+
},
|
|
524
|
+
"sender": {
|
|
525
|
+
"type": "string",
|
|
526
|
+
"description": "Exact sender selector returned by this adapter",
|
|
527
|
+
"minLength": 1,
|
|
528
|
+
"maxLength": 2048
|
|
529
|
+
},
|
|
530
|
+
"limit": {
|
|
531
|
+
"type": "number",
|
|
532
|
+
"description": "Maximum projected message candidates",
|
|
533
|
+
"minimum": 1,
|
|
534
|
+
"maximum": 200
|
|
535
|
+
}
|
|
536
|
+
},
|
|
537
|
+
"required": []
|
|
538
|
+
},
|
|
539
|
+
"localCli": {
|
|
540
|
+
"surface": "beeper",
|
|
541
|
+
"action": "messaging.content.search",
|
|
542
|
+
"contractVersion": 2,
|
|
543
|
+
"timeoutMs": 120000,
|
|
544
|
+
"maxOutputBytes": 10485760
|
|
545
|
+
}
|
|
546
|
+
},
|
|
547
|
+
"messaging.message.read": {
|
|
548
|
+
"description": "Read one exact message from one exact conversation.",
|
|
549
|
+
"risk": "R1",
|
|
550
|
+
"sideEffect": "none",
|
|
551
|
+
"idempotency": "none",
|
|
552
|
+
"dedupeWindowMs": 0,
|
|
553
|
+
"input": {
|
|
554
|
+
"properties": {
|
|
555
|
+
"account_id": {
|
|
556
|
+
"type": "string",
|
|
557
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
558
|
+
"minLength": 1,
|
|
559
|
+
"maxLength": 512
|
|
560
|
+
},
|
|
561
|
+
"conversation_id": {
|
|
562
|
+
"type": "string",
|
|
563
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
564
|
+
"minLength": 3,
|
|
565
|
+
"maxLength": 2048
|
|
566
|
+
},
|
|
567
|
+
"message_id": {
|
|
568
|
+
"type": "string",
|
|
569
|
+
"description": "Exact message ID returned by this adapter",
|
|
570
|
+
"minLength": 1,
|
|
571
|
+
"maxLength": 2048
|
|
572
|
+
}
|
|
573
|
+
},
|
|
574
|
+
"required": [
|
|
575
|
+
"account_id",
|
|
576
|
+
"conversation_id",
|
|
577
|
+
"message_id"
|
|
578
|
+
]
|
|
579
|
+
},
|
|
580
|
+
"localCli": {
|
|
581
|
+
"surface": "beeper",
|
|
582
|
+
"action": "messaging.message.read",
|
|
583
|
+
"contractVersion": 1,
|
|
584
|
+
"timeoutMs": 120000,
|
|
585
|
+
"maxOutputBytes": 10485760
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
"messaging.context.read": {
|
|
589
|
+
"description": "Read bounded context around one exact message.",
|
|
590
|
+
"risk": "R1",
|
|
591
|
+
"sideEffect": "none",
|
|
592
|
+
"idempotency": "none",
|
|
593
|
+
"dedupeWindowMs": 0,
|
|
594
|
+
"input": {
|
|
595
|
+
"properties": {
|
|
596
|
+
"account_id": {
|
|
597
|
+
"type": "string",
|
|
598
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
599
|
+
"minLength": 1,
|
|
600
|
+
"maxLength": 512
|
|
601
|
+
},
|
|
602
|
+
"conversation_id": {
|
|
603
|
+
"type": "string",
|
|
604
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
605
|
+
"minLength": 3,
|
|
606
|
+
"maxLength": 2048
|
|
607
|
+
},
|
|
608
|
+
"message_id": {
|
|
609
|
+
"type": "string",
|
|
610
|
+
"description": "Exact message ID returned by this adapter",
|
|
611
|
+
"minLength": 1,
|
|
612
|
+
"maxLength": 2048
|
|
613
|
+
},
|
|
614
|
+
"before": {
|
|
615
|
+
"type": "number",
|
|
616
|
+
"description": "Messages before the exact target",
|
|
617
|
+
"minimum": 0,
|
|
618
|
+
"maximum": 100
|
|
619
|
+
},
|
|
620
|
+
"after": {
|
|
621
|
+
"type": "number",
|
|
622
|
+
"description": "Messages after the exact target",
|
|
623
|
+
"minimum": 0,
|
|
624
|
+
"maximum": 100
|
|
625
|
+
}
|
|
626
|
+
},
|
|
627
|
+
"required": [
|
|
628
|
+
"account_id",
|
|
629
|
+
"conversation_id",
|
|
630
|
+
"message_id"
|
|
631
|
+
]
|
|
632
|
+
},
|
|
633
|
+
"localCli": {
|
|
634
|
+
"surface": "beeper",
|
|
635
|
+
"action": "messaging.context.read",
|
|
636
|
+
"contractVersion": 1,
|
|
637
|
+
"timeoutMs": 120000,
|
|
638
|
+
"maxOutputBytes": 10485760
|
|
639
|
+
}
|
|
640
|
+
},
|
|
641
|
+
"messaging.send": {
|
|
642
|
+
"description": "Submit one confirmed text, file, sticker, or voice request to Beeper Desktop; network delivery is not asserted.",
|
|
643
|
+
"risk": "R3",
|
|
644
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
645
|
+
"idempotency": "local-at-most-once",
|
|
646
|
+
"dedupeWindowMs": 86400000,
|
|
647
|
+
"input": {
|
|
648
|
+
"properties": {
|
|
649
|
+
"account_id": {
|
|
650
|
+
"type": "string",
|
|
651
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
652
|
+
"minLength": 1,
|
|
653
|
+
"maxLength": 512
|
|
654
|
+
},
|
|
655
|
+
"conversation_id": {
|
|
656
|
+
"type": "string",
|
|
657
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
658
|
+
"minLength": 3,
|
|
659
|
+
"maxLength": 2048
|
|
660
|
+
},
|
|
661
|
+
"kind": {
|
|
662
|
+
"type": "string",
|
|
663
|
+
"description": "Exact bounded send kind",
|
|
664
|
+
"minLength": 1,
|
|
665
|
+
"maxLength": 16,
|
|
666
|
+
"enum": [
|
|
667
|
+
"text",
|
|
668
|
+
"file",
|
|
669
|
+
"sticker",
|
|
670
|
+
"voice"
|
|
671
|
+
]
|
|
672
|
+
},
|
|
673
|
+
"text": {
|
|
674
|
+
"type": "string",
|
|
675
|
+
"description": "Message text or optional file caption",
|
|
676
|
+
"minLength": 0,
|
|
677
|
+
"maxLength": 65536
|
|
678
|
+
},
|
|
679
|
+
"file": {
|
|
680
|
+
"type": "file",
|
|
681
|
+
"description": "Plan-bound file, sticker, or voice-note bytes",
|
|
682
|
+
"maxBytes": 524288000
|
|
683
|
+
},
|
|
684
|
+
"filename": {
|
|
685
|
+
"type": "string",
|
|
686
|
+
"description": "Provider-visible filename",
|
|
687
|
+
"minLength": 1,
|
|
688
|
+
"maxLength": 512
|
|
689
|
+
},
|
|
690
|
+
"mime_type": {
|
|
691
|
+
"type": "string",
|
|
692
|
+
"description": "Exact media type",
|
|
693
|
+
"minLength": 1,
|
|
694
|
+
"maxLength": 128
|
|
695
|
+
},
|
|
696
|
+
"duration_seconds": {
|
|
697
|
+
"type": "number",
|
|
698
|
+
"description": "Voice-note duration in seconds",
|
|
699
|
+
"minimum": 1,
|
|
700
|
+
"maximum": 86400
|
|
701
|
+
},
|
|
702
|
+
"reply_to": {
|
|
703
|
+
"type": "string",
|
|
704
|
+
"description": "Exact message ID returned by this adapter",
|
|
705
|
+
"minLength": 1,
|
|
706
|
+
"maxLength": 2048
|
|
707
|
+
},
|
|
708
|
+
"mentions": {
|
|
709
|
+
"type": "array",
|
|
710
|
+
"description": "Canonical Matrix/Beeper participant IDs",
|
|
711
|
+
"items": {
|
|
712
|
+
"type": "string",
|
|
713
|
+
"description": "Canonical Matrix/Beeper user ID",
|
|
714
|
+
"minLength": 3,
|
|
715
|
+
"maxLength": 2048
|
|
716
|
+
},
|
|
717
|
+
"minItems": 0,
|
|
718
|
+
"maxItems": 25
|
|
719
|
+
},
|
|
720
|
+
"no_preview": {
|
|
721
|
+
"type": "boolean",
|
|
722
|
+
"description": "Disable link previews for text"
|
|
723
|
+
}
|
|
724
|
+
},
|
|
725
|
+
"required": [
|
|
726
|
+
"account_id",
|
|
727
|
+
"conversation_id",
|
|
728
|
+
"kind"
|
|
729
|
+
]
|
|
730
|
+
},
|
|
731
|
+
"localCli": {
|
|
732
|
+
"surface": "beeper",
|
|
733
|
+
"action": "messaging.send",
|
|
734
|
+
"contractVersion": 1,
|
|
735
|
+
"timeoutMs": 300000,
|
|
736
|
+
"maxOutputBytes": 10485760
|
|
737
|
+
}
|
|
738
|
+
},
|
|
739
|
+
"reactions.set": {
|
|
740
|
+
"description": "Set one exact reaction desired state.",
|
|
741
|
+
"risk": "R2",
|
|
742
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
743
|
+
"idempotency": "local-at-most-once",
|
|
744
|
+
"dedupeWindowMs": 86400000,
|
|
745
|
+
"input": {
|
|
746
|
+
"properties": {
|
|
747
|
+
"account_id": {
|
|
748
|
+
"type": "string",
|
|
749
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
750
|
+
"minLength": 1,
|
|
751
|
+
"maxLength": 512
|
|
752
|
+
},
|
|
753
|
+
"conversation_id": {
|
|
754
|
+
"type": "string",
|
|
755
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
756
|
+
"minLength": 3,
|
|
757
|
+
"maxLength": 2048
|
|
758
|
+
},
|
|
759
|
+
"message_id": {
|
|
760
|
+
"type": "string",
|
|
761
|
+
"description": "Exact message ID returned by this adapter",
|
|
762
|
+
"minLength": 1,
|
|
763
|
+
"maxLength": 2048
|
|
764
|
+
},
|
|
765
|
+
"reaction": {
|
|
766
|
+
"type": "string",
|
|
767
|
+
"description": "Exact reaction text",
|
|
768
|
+
"minLength": 1,
|
|
769
|
+
"maxLength": 256
|
|
770
|
+
},
|
|
771
|
+
"enabled": {
|
|
772
|
+
"type": "boolean",
|
|
773
|
+
"description": "Desired reaction presence"
|
|
774
|
+
}
|
|
775
|
+
},
|
|
776
|
+
"required": [
|
|
777
|
+
"account_id",
|
|
778
|
+
"conversation_id",
|
|
779
|
+
"message_id",
|
|
780
|
+
"reaction",
|
|
781
|
+
"enabled"
|
|
782
|
+
]
|
|
783
|
+
},
|
|
784
|
+
"localCli": {
|
|
785
|
+
"surface": "beeper",
|
|
786
|
+
"action": "reactions.set",
|
|
787
|
+
"contractVersion": 1,
|
|
788
|
+
"timeoutMs": 120000,
|
|
789
|
+
"maxOutputBytes": 10485760
|
|
790
|
+
}
|
|
791
|
+
},
|
|
792
|
+
"messaging.edit": {
|
|
793
|
+
"description": "Edit one exact message authored by the bound account.",
|
|
794
|
+
"risk": "R3",
|
|
795
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
796
|
+
"idempotency": "local-at-most-once",
|
|
797
|
+
"dedupeWindowMs": 86400000,
|
|
798
|
+
"input": {
|
|
799
|
+
"properties": {
|
|
800
|
+
"account_id": {
|
|
801
|
+
"type": "string",
|
|
802
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
803
|
+
"minLength": 1,
|
|
804
|
+
"maxLength": 512
|
|
805
|
+
},
|
|
806
|
+
"conversation_id": {
|
|
807
|
+
"type": "string",
|
|
808
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
809
|
+
"minLength": 3,
|
|
810
|
+
"maxLength": 2048
|
|
811
|
+
},
|
|
812
|
+
"message_id": {
|
|
813
|
+
"type": "string",
|
|
814
|
+
"description": "Exact message ID returned by this adapter",
|
|
815
|
+
"minLength": 1,
|
|
816
|
+
"maxLength": 2048
|
|
817
|
+
},
|
|
818
|
+
"text": {
|
|
819
|
+
"type": "string",
|
|
820
|
+
"description": "Replacement message text",
|
|
821
|
+
"minLength": 1,
|
|
822
|
+
"maxLength": 65536
|
|
823
|
+
}
|
|
824
|
+
},
|
|
825
|
+
"required": [
|
|
826
|
+
"account_id",
|
|
827
|
+
"conversation_id",
|
|
828
|
+
"message_id",
|
|
829
|
+
"text"
|
|
830
|
+
]
|
|
831
|
+
},
|
|
832
|
+
"localCli": {
|
|
833
|
+
"surface": "beeper",
|
|
834
|
+
"action": "messaging.edit",
|
|
835
|
+
"contractVersion": 1,
|
|
836
|
+
"timeoutMs": 120000,
|
|
837
|
+
"maxOutputBytes": 10485760
|
|
838
|
+
}
|
|
839
|
+
},
|
|
840
|
+
"conversations.start": {
|
|
841
|
+
"description": "Start one conversation with one exact account-bound user.",
|
|
842
|
+
"risk": "R3",
|
|
843
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
844
|
+
"idempotency": "local-at-most-once",
|
|
845
|
+
"dedupeWindowMs": 86400000,
|
|
846
|
+
"input": {
|
|
847
|
+
"properties": {
|
|
848
|
+
"account_id": {
|
|
849
|
+
"type": "string",
|
|
850
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
851
|
+
"minLength": 1,
|
|
852
|
+
"maxLength": 512
|
|
853
|
+
},
|
|
854
|
+
"user_id": {
|
|
855
|
+
"type": "string",
|
|
856
|
+
"description": "Canonical Matrix/Beeper user ID",
|
|
857
|
+
"minLength": 3,
|
|
858
|
+
"maxLength": 2048
|
|
859
|
+
}
|
|
860
|
+
},
|
|
861
|
+
"required": [
|
|
862
|
+
"account_id",
|
|
863
|
+
"user_id"
|
|
864
|
+
]
|
|
865
|
+
},
|
|
866
|
+
"localCli": {
|
|
867
|
+
"surface": "beeper",
|
|
868
|
+
"action": "conversations.start",
|
|
869
|
+
"contractVersion": 1,
|
|
870
|
+
"timeoutMs": 120000,
|
|
871
|
+
"maxOutputBytes": 10485760
|
|
872
|
+
}
|
|
873
|
+
},
|
|
874
|
+
"conversations.archive.set": {
|
|
875
|
+
"description": "Set one conversation archive desired state.",
|
|
876
|
+
"risk": "R2",
|
|
877
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
878
|
+
"idempotency": "local-at-most-once",
|
|
879
|
+
"dedupeWindowMs": 86400000,
|
|
880
|
+
"input": {
|
|
881
|
+
"properties": {
|
|
882
|
+
"account_id": {
|
|
883
|
+
"type": "string",
|
|
884
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
885
|
+
"minLength": 1,
|
|
886
|
+
"maxLength": 512
|
|
887
|
+
},
|
|
888
|
+
"conversation_id": {
|
|
889
|
+
"type": "string",
|
|
890
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
891
|
+
"minLength": 3,
|
|
892
|
+
"maxLength": 2048
|
|
893
|
+
},
|
|
894
|
+
"enabled": {
|
|
895
|
+
"type": "boolean",
|
|
896
|
+
"description": "Desired archived state"
|
|
897
|
+
}
|
|
898
|
+
},
|
|
899
|
+
"required": [
|
|
900
|
+
"account_id",
|
|
901
|
+
"conversation_id",
|
|
902
|
+
"enabled"
|
|
903
|
+
]
|
|
904
|
+
},
|
|
905
|
+
"localCli": {
|
|
906
|
+
"surface": "beeper",
|
|
907
|
+
"action": "conversations.archive.set",
|
|
908
|
+
"contractVersion": 1,
|
|
909
|
+
"timeoutMs": 120000,
|
|
910
|
+
"maxOutputBytes": 10485760
|
|
911
|
+
}
|
|
912
|
+
},
|
|
913
|
+
"conversations.pin.set": {
|
|
914
|
+
"description": "Set one conversation pin desired state.",
|
|
915
|
+
"risk": "R2",
|
|
916
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
917
|
+
"idempotency": "local-at-most-once",
|
|
918
|
+
"dedupeWindowMs": 86400000,
|
|
919
|
+
"input": {
|
|
920
|
+
"properties": {
|
|
921
|
+
"account_id": {
|
|
922
|
+
"type": "string",
|
|
923
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
924
|
+
"minLength": 1,
|
|
925
|
+
"maxLength": 512
|
|
926
|
+
},
|
|
927
|
+
"conversation_id": {
|
|
928
|
+
"type": "string",
|
|
929
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
930
|
+
"minLength": 3,
|
|
931
|
+
"maxLength": 2048
|
|
932
|
+
},
|
|
933
|
+
"enabled": {
|
|
934
|
+
"type": "boolean",
|
|
935
|
+
"description": "Desired pinned state"
|
|
936
|
+
}
|
|
937
|
+
},
|
|
938
|
+
"required": [
|
|
939
|
+
"account_id",
|
|
940
|
+
"conversation_id",
|
|
941
|
+
"enabled"
|
|
942
|
+
]
|
|
943
|
+
},
|
|
944
|
+
"localCli": {
|
|
945
|
+
"surface": "beeper",
|
|
946
|
+
"action": "conversations.pin.set",
|
|
947
|
+
"contractVersion": 1,
|
|
948
|
+
"timeoutMs": 120000,
|
|
949
|
+
"maxOutputBytes": 10485760
|
|
950
|
+
}
|
|
951
|
+
},
|
|
952
|
+
"conversations.mute.set": {
|
|
953
|
+
"description": "Set one conversation mute desired state.",
|
|
954
|
+
"risk": "R2",
|
|
955
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
956
|
+
"idempotency": "local-at-most-once",
|
|
957
|
+
"dedupeWindowMs": 86400000,
|
|
958
|
+
"input": {
|
|
959
|
+
"properties": {
|
|
960
|
+
"account_id": {
|
|
961
|
+
"type": "string",
|
|
962
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
963
|
+
"minLength": 1,
|
|
964
|
+
"maxLength": 512
|
|
965
|
+
},
|
|
966
|
+
"conversation_id": {
|
|
967
|
+
"type": "string",
|
|
968
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
969
|
+
"minLength": 3,
|
|
970
|
+
"maxLength": 2048
|
|
971
|
+
},
|
|
972
|
+
"enabled": {
|
|
973
|
+
"type": "boolean",
|
|
974
|
+
"description": "Desired muted state"
|
|
975
|
+
}
|
|
976
|
+
},
|
|
977
|
+
"required": [
|
|
978
|
+
"account_id",
|
|
979
|
+
"conversation_id",
|
|
980
|
+
"enabled"
|
|
981
|
+
]
|
|
982
|
+
},
|
|
983
|
+
"localCli": {
|
|
984
|
+
"surface": "beeper",
|
|
985
|
+
"action": "conversations.mute.set",
|
|
986
|
+
"contractVersion": 1,
|
|
987
|
+
"timeoutMs": 120000,
|
|
988
|
+
"maxOutputBytes": 10485760
|
|
989
|
+
}
|
|
990
|
+
},
|
|
991
|
+
"conversations.read-state.set": {
|
|
992
|
+
"description": "Set one conversation read marker, potentially emitting a network receipt.",
|
|
993
|
+
"risk": "R3",
|
|
994
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
995
|
+
"idempotency": "local-at-most-once",
|
|
996
|
+
"dedupeWindowMs": 86400000,
|
|
997
|
+
"input": {
|
|
998
|
+
"properties": {
|
|
999
|
+
"account_id": {
|
|
1000
|
+
"type": "string",
|
|
1001
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1002
|
+
"minLength": 1,
|
|
1003
|
+
"maxLength": 512
|
|
1004
|
+
},
|
|
1005
|
+
"conversation_id": {
|
|
1006
|
+
"type": "string",
|
|
1007
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1008
|
+
"minLength": 3,
|
|
1009
|
+
"maxLength": 2048
|
|
1010
|
+
},
|
|
1011
|
+
"unread": {
|
|
1012
|
+
"type": "boolean",
|
|
1013
|
+
"description": "Desired marked-unread state"
|
|
1014
|
+
},
|
|
1015
|
+
"message_id": {
|
|
1016
|
+
"type": "string",
|
|
1017
|
+
"description": "Exact message ID returned by this adapter",
|
|
1018
|
+
"minLength": 1,
|
|
1019
|
+
"maxLength": 2048
|
|
1020
|
+
}
|
|
1021
|
+
},
|
|
1022
|
+
"required": [
|
|
1023
|
+
"account_id",
|
|
1024
|
+
"conversation_id",
|
|
1025
|
+
"unread"
|
|
1026
|
+
]
|
|
1027
|
+
},
|
|
1028
|
+
"localCli": {
|
|
1029
|
+
"surface": "beeper",
|
|
1030
|
+
"action": "conversations.read-state.set",
|
|
1031
|
+
"contractVersion": 1,
|
|
1032
|
+
"timeoutMs": 120000,
|
|
1033
|
+
"maxOutputBytes": 10485760
|
|
1034
|
+
}
|
|
1035
|
+
},
|
|
1036
|
+
"conversations.priority.set": {
|
|
1037
|
+
"description": "Set one conversation inbox priority desired state.",
|
|
1038
|
+
"risk": "R2",
|
|
1039
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
1040
|
+
"idempotency": "local-at-most-once",
|
|
1041
|
+
"dedupeWindowMs": 86400000,
|
|
1042
|
+
"input": {
|
|
1043
|
+
"properties": {
|
|
1044
|
+
"account_id": {
|
|
1045
|
+
"type": "string",
|
|
1046
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1047
|
+
"minLength": 1,
|
|
1048
|
+
"maxLength": 512
|
|
1049
|
+
},
|
|
1050
|
+
"conversation_id": {
|
|
1051
|
+
"type": "string",
|
|
1052
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1053
|
+
"minLength": 3,
|
|
1054
|
+
"maxLength": 2048
|
|
1055
|
+
},
|
|
1056
|
+
"level": {
|
|
1057
|
+
"type": "string",
|
|
1058
|
+
"description": "Desired inbox priority",
|
|
1059
|
+
"minLength": 1,
|
|
1060
|
+
"maxLength": 16,
|
|
1061
|
+
"enum": [
|
|
1062
|
+
"inbox",
|
|
1063
|
+
"low"
|
|
1064
|
+
]
|
|
1065
|
+
}
|
|
1066
|
+
},
|
|
1067
|
+
"required": [
|
|
1068
|
+
"account_id",
|
|
1069
|
+
"conversation_id",
|
|
1070
|
+
"level"
|
|
1071
|
+
]
|
|
1072
|
+
},
|
|
1073
|
+
"localCli": {
|
|
1074
|
+
"surface": "beeper",
|
|
1075
|
+
"action": "conversations.priority.set",
|
|
1076
|
+
"contractVersion": 1,
|
|
1077
|
+
"timeoutMs": 120000,
|
|
1078
|
+
"maxOutputBytes": 10485760
|
|
1079
|
+
}
|
|
1080
|
+
},
|
|
1081
|
+
"conversations.notify": {
|
|
1082
|
+
"description": "Send one explicit iMessage Notify Anyway alert.",
|
|
1083
|
+
"risk": "R3",
|
|
1084
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1085
|
+
"idempotency": "local-at-most-once",
|
|
1086
|
+
"dedupeWindowMs": 86400000,
|
|
1087
|
+
"input": {
|
|
1088
|
+
"properties": {
|
|
1089
|
+
"account_id": {
|
|
1090
|
+
"type": "string",
|
|
1091
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1092
|
+
"minLength": 1,
|
|
1093
|
+
"maxLength": 512
|
|
1094
|
+
},
|
|
1095
|
+
"conversation_id": {
|
|
1096
|
+
"type": "string",
|
|
1097
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1098
|
+
"minLength": 3,
|
|
1099
|
+
"maxLength": 2048
|
|
1100
|
+
}
|
|
1101
|
+
},
|
|
1102
|
+
"required": [
|
|
1103
|
+
"account_id",
|
|
1104
|
+
"conversation_id"
|
|
1105
|
+
]
|
|
1106
|
+
},
|
|
1107
|
+
"localCli": {
|
|
1108
|
+
"surface": "beeper",
|
|
1109
|
+
"action": "conversations.notify",
|
|
1110
|
+
"contractVersion": 1,
|
|
1111
|
+
"timeoutMs": 120000,
|
|
1112
|
+
"maxOutputBytes": 10485760
|
|
1113
|
+
}
|
|
1114
|
+
},
|
|
1115
|
+
"conversations.title.set": {
|
|
1116
|
+
"description": "Set one exact group-conversation title.",
|
|
1117
|
+
"risk": "R3",
|
|
1118
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1119
|
+
"idempotency": "local-at-most-once",
|
|
1120
|
+
"dedupeWindowMs": 86400000,
|
|
1121
|
+
"input": {
|
|
1122
|
+
"properties": {
|
|
1123
|
+
"account_id": {
|
|
1124
|
+
"type": "string",
|
|
1125
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1126
|
+
"minLength": 1,
|
|
1127
|
+
"maxLength": 512
|
|
1128
|
+
},
|
|
1129
|
+
"conversation_id": {
|
|
1130
|
+
"type": "string",
|
|
1131
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1132
|
+
"minLength": 3,
|
|
1133
|
+
"maxLength": 2048
|
|
1134
|
+
},
|
|
1135
|
+
"title": {
|
|
1136
|
+
"type": "string",
|
|
1137
|
+
"description": "Replacement group title",
|
|
1138
|
+
"minLength": 1,
|
|
1139
|
+
"maxLength": 1024
|
|
1140
|
+
}
|
|
1141
|
+
},
|
|
1142
|
+
"required": [
|
|
1143
|
+
"account_id",
|
|
1144
|
+
"conversation_id",
|
|
1145
|
+
"title"
|
|
1146
|
+
]
|
|
1147
|
+
},
|
|
1148
|
+
"localCli": {
|
|
1149
|
+
"surface": "beeper",
|
|
1150
|
+
"action": "conversations.title.set",
|
|
1151
|
+
"contractVersion": 1,
|
|
1152
|
+
"timeoutMs": 120000,
|
|
1153
|
+
"maxOutputBytes": 10485760
|
|
1154
|
+
}
|
|
1155
|
+
},
|
|
1156
|
+
"conversations.description.set": {
|
|
1157
|
+
"description": "Set or clear one exact group-conversation description.",
|
|
1158
|
+
"risk": "R3",
|
|
1159
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1160
|
+
"idempotency": "local-at-most-once",
|
|
1161
|
+
"dedupeWindowMs": 86400000,
|
|
1162
|
+
"input": {
|
|
1163
|
+
"properties": {
|
|
1164
|
+
"account_id": {
|
|
1165
|
+
"type": "string",
|
|
1166
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1167
|
+
"minLength": 1,
|
|
1168
|
+
"maxLength": 512
|
|
1169
|
+
},
|
|
1170
|
+
"conversation_id": {
|
|
1171
|
+
"type": "string",
|
|
1172
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1173
|
+
"minLength": 3,
|
|
1174
|
+
"maxLength": 2048
|
|
1175
|
+
},
|
|
1176
|
+
"clear": {
|
|
1177
|
+
"type": "boolean",
|
|
1178
|
+
"description": "Clear the description"
|
|
1179
|
+
},
|
|
1180
|
+
"description": {
|
|
1181
|
+
"type": "string",
|
|
1182
|
+
"description": "Replacement group description",
|
|
1183
|
+
"minLength": 1,
|
|
1184
|
+
"maxLength": 65536
|
|
1185
|
+
}
|
|
1186
|
+
},
|
|
1187
|
+
"required": [
|
|
1188
|
+
"account_id",
|
|
1189
|
+
"conversation_id",
|
|
1190
|
+
"clear"
|
|
1191
|
+
]
|
|
1192
|
+
},
|
|
1193
|
+
"localCli": {
|
|
1194
|
+
"surface": "beeper",
|
|
1195
|
+
"action": "conversations.description.set",
|
|
1196
|
+
"contractVersion": 1,
|
|
1197
|
+
"timeoutMs": 120000,
|
|
1198
|
+
"maxOutputBytes": 10485760
|
|
1199
|
+
}
|
|
1200
|
+
},
|
|
1201
|
+
"conversations.avatar.set": {
|
|
1202
|
+
"description": "Set or clear one exact group-conversation avatar.",
|
|
1203
|
+
"risk": "R3",
|
|
1204
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1205
|
+
"idempotency": "local-at-most-once",
|
|
1206
|
+
"dedupeWindowMs": 86400000,
|
|
1207
|
+
"input": {
|
|
1208
|
+
"properties": {
|
|
1209
|
+
"account_id": {
|
|
1210
|
+
"type": "string",
|
|
1211
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1212
|
+
"minLength": 1,
|
|
1213
|
+
"maxLength": 512
|
|
1214
|
+
},
|
|
1215
|
+
"conversation_id": {
|
|
1216
|
+
"type": "string",
|
|
1217
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1218
|
+
"minLength": 3,
|
|
1219
|
+
"maxLength": 2048
|
|
1220
|
+
},
|
|
1221
|
+
"clear": {
|
|
1222
|
+
"type": "boolean",
|
|
1223
|
+
"description": "Clear the avatar"
|
|
1224
|
+
},
|
|
1225
|
+
"avatar": {
|
|
1226
|
+
"type": "file",
|
|
1227
|
+
"description": "Plan-bound replacement avatar bytes",
|
|
1228
|
+
"maxBytes": 16777216
|
|
1229
|
+
}
|
|
1230
|
+
},
|
|
1231
|
+
"required": [
|
|
1232
|
+
"account_id",
|
|
1233
|
+
"conversation_id",
|
|
1234
|
+
"clear"
|
|
1235
|
+
]
|
|
1236
|
+
},
|
|
1237
|
+
"localCli": {
|
|
1238
|
+
"surface": "beeper",
|
|
1239
|
+
"action": "conversations.avatar.set",
|
|
1240
|
+
"contractVersion": 1,
|
|
1241
|
+
"timeoutMs": 120000,
|
|
1242
|
+
"maxOutputBytes": 10485760
|
|
1243
|
+
}
|
|
1244
|
+
},
|
|
1245
|
+
"conversations.draft.set": {
|
|
1246
|
+
"description": "Set or clear one private Desktop draft.",
|
|
1247
|
+
"risk": "R2",
|
|
1248
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
1249
|
+
"idempotency": "local-at-most-once",
|
|
1250
|
+
"dedupeWindowMs": 86400000,
|
|
1251
|
+
"input": {
|
|
1252
|
+
"properties": {
|
|
1253
|
+
"account_id": {
|
|
1254
|
+
"type": "string",
|
|
1255
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1256
|
+
"minLength": 1,
|
|
1257
|
+
"maxLength": 512
|
|
1258
|
+
},
|
|
1259
|
+
"conversation_id": {
|
|
1260
|
+
"type": "string",
|
|
1261
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1262
|
+
"minLength": 3,
|
|
1263
|
+
"maxLength": 2048
|
|
1264
|
+
},
|
|
1265
|
+
"clear": {
|
|
1266
|
+
"type": "boolean",
|
|
1267
|
+
"description": "Clear the draft"
|
|
1268
|
+
},
|
|
1269
|
+
"text": {
|
|
1270
|
+
"type": "string",
|
|
1271
|
+
"description": "Replacement private draft text",
|
|
1272
|
+
"minLength": 0,
|
|
1273
|
+
"maxLength": 65536
|
|
1274
|
+
},
|
|
1275
|
+
"attachment": {
|
|
1276
|
+
"type": "file",
|
|
1277
|
+
"description": "Plan-bound private draft attachment",
|
|
1278
|
+
"maxBytes": 524288000
|
|
1279
|
+
},
|
|
1280
|
+
"filename": {
|
|
1281
|
+
"type": "string",
|
|
1282
|
+
"description": "Attachment filename",
|
|
1283
|
+
"minLength": 1,
|
|
1284
|
+
"maxLength": 512
|
|
1285
|
+
},
|
|
1286
|
+
"mime_type": {
|
|
1287
|
+
"type": "string",
|
|
1288
|
+
"description": "Attachment media type",
|
|
1289
|
+
"minLength": 1,
|
|
1290
|
+
"maxLength": 128
|
|
1291
|
+
}
|
|
1292
|
+
},
|
|
1293
|
+
"required": [
|
|
1294
|
+
"account_id",
|
|
1295
|
+
"conversation_id",
|
|
1296
|
+
"clear"
|
|
1297
|
+
]
|
|
1298
|
+
},
|
|
1299
|
+
"localCli": {
|
|
1300
|
+
"surface": "beeper",
|
|
1301
|
+
"action": "conversations.draft.set",
|
|
1302
|
+
"contractVersion": 1,
|
|
1303
|
+
"timeoutMs": 120000,
|
|
1304
|
+
"maxOutputBytes": 10485760
|
|
1305
|
+
}
|
|
1306
|
+
},
|
|
1307
|
+
"conversations.disappearing.set": {
|
|
1308
|
+
"description": "Set one disappearing-message retention interval.",
|
|
1309
|
+
"risk": "R3",
|
|
1310
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1311
|
+
"idempotency": "local-at-most-once",
|
|
1312
|
+
"dedupeWindowMs": 86400000,
|
|
1313
|
+
"input": {
|
|
1314
|
+
"properties": {
|
|
1315
|
+
"account_id": {
|
|
1316
|
+
"type": "string",
|
|
1317
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1318
|
+
"minLength": 1,
|
|
1319
|
+
"maxLength": 512
|
|
1320
|
+
},
|
|
1321
|
+
"conversation_id": {
|
|
1322
|
+
"type": "string",
|
|
1323
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1324
|
+
"minLength": 3,
|
|
1325
|
+
"maxLength": 2048
|
|
1326
|
+
},
|
|
1327
|
+
"seconds": {
|
|
1328
|
+
"type": "number",
|
|
1329
|
+
"description": "Desired disappearing-message interval; zero disables",
|
|
1330
|
+
"minimum": 0,
|
|
1331
|
+
"maximum": 31536000
|
|
1332
|
+
}
|
|
1333
|
+
},
|
|
1334
|
+
"required": [
|
|
1335
|
+
"account_id",
|
|
1336
|
+
"conversation_id",
|
|
1337
|
+
"seconds"
|
|
1338
|
+
]
|
|
1339
|
+
},
|
|
1340
|
+
"localCli": {
|
|
1341
|
+
"surface": "beeper",
|
|
1342
|
+
"action": "conversations.disappearing.set",
|
|
1343
|
+
"contractVersion": 1,
|
|
1344
|
+
"timeoutMs": 120000,
|
|
1345
|
+
"maxOutputBytes": 10485760
|
|
1346
|
+
}
|
|
1347
|
+
},
|
|
1348
|
+
"conversations.reminder.set": {
|
|
1349
|
+
"description": "Set or clear one private Desktop reminder.",
|
|
1350
|
+
"risk": "R2",
|
|
1351
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
1352
|
+
"idempotency": "local-at-most-once",
|
|
1353
|
+
"dedupeWindowMs": 86400000,
|
|
1354
|
+
"input": {
|
|
1355
|
+
"properties": {
|
|
1356
|
+
"account_id": {
|
|
1357
|
+
"type": "string",
|
|
1358
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1359
|
+
"minLength": 1,
|
|
1360
|
+
"maxLength": 512
|
|
1361
|
+
},
|
|
1362
|
+
"conversation_id": {
|
|
1363
|
+
"type": "string",
|
|
1364
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1365
|
+
"minLength": 3,
|
|
1366
|
+
"maxLength": 2048
|
|
1367
|
+
},
|
|
1368
|
+
"clear": {
|
|
1369
|
+
"type": "boolean",
|
|
1370
|
+
"description": "Clear the reminder"
|
|
1371
|
+
},
|
|
1372
|
+
"when": {
|
|
1373
|
+
"type": "string",
|
|
1374
|
+
"description": "Canonical UTC ISO timestamp",
|
|
1375
|
+
"minLength": 20,
|
|
1376
|
+
"maxLength": 64
|
|
1377
|
+
},
|
|
1378
|
+
"dismiss_on_message": {
|
|
1379
|
+
"type": "boolean",
|
|
1380
|
+
"description": "Dismiss when a message arrives"
|
|
1381
|
+
}
|
|
1382
|
+
},
|
|
1383
|
+
"required": [
|
|
1384
|
+
"account_id",
|
|
1385
|
+
"conversation_id",
|
|
1386
|
+
"clear"
|
|
1387
|
+
]
|
|
1388
|
+
},
|
|
1389
|
+
"localCli": {
|
|
1390
|
+
"surface": "beeper",
|
|
1391
|
+
"action": "conversations.reminder.set",
|
|
1392
|
+
"contractVersion": 1,
|
|
1393
|
+
"timeoutMs": 120000,
|
|
1394
|
+
"maxOutputBytes": 10485760
|
|
1395
|
+
}
|
|
1396
|
+
},
|
|
1397
|
+
"conversations.focus": {
|
|
1398
|
+
"description": "Focus one exact Desktop conversation with optional plan-bound draft state.",
|
|
1399
|
+
"risk": "R2",
|
|
1400
|
+
"sideEffect": "reversible provider or private desired-state mutation",
|
|
1401
|
+
"idempotency": "local-at-most-once",
|
|
1402
|
+
"dedupeWindowMs": 86400000,
|
|
1403
|
+
"input": {
|
|
1404
|
+
"properties": {
|
|
1405
|
+
"account_id": {
|
|
1406
|
+
"type": "string",
|
|
1407
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1408
|
+
"minLength": 1,
|
|
1409
|
+
"maxLength": 512
|
|
1410
|
+
},
|
|
1411
|
+
"conversation_id": {
|
|
1412
|
+
"type": "string",
|
|
1413
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1414
|
+
"minLength": 3,
|
|
1415
|
+
"maxLength": 2048
|
|
1416
|
+
},
|
|
1417
|
+
"message_id": {
|
|
1418
|
+
"type": "string",
|
|
1419
|
+
"description": "Exact message ID returned by this adapter",
|
|
1420
|
+
"minLength": 1,
|
|
1421
|
+
"maxLength": 2048
|
|
1422
|
+
},
|
|
1423
|
+
"draft": {
|
|
1424
|
+
"type": "string",
|
|
1425
|
+
"description": "Plan-bound Desktop draft text",
|
|
1426
|
+
"minLength": 0,
|
|
1427
|
+
"maxLength": 65536
|
|
1428
|
+
},
|
|
1429
|
+
"attachment": {
|
|
1430
|
+
"type": "file",
|
|
1431
|
+
"description": "Plan-bound Desktop draft attachment",
|
|
1432
|
+
"maxBytes": 524288000
|
|
1433
|
+
}
|
|
1434
|
+
},
|
|
1435
|
+
"required": [
|
|
1436
|
+
"account_id",
|
|
1437
|
+
"conversation_id"
|
|
1438
|
+
]
|
|
1439
|
+
},
|
|
1440
|
+
"localCli": {
|
|
1441
|
+
"surface": "beeper",
|
|
1442
|
+
"action": "conversations.focus",
|
|
1443
|
+
"contractVersion": 1,
|
|
1444
|
+
"timeoutMs": 120000,
|
|
1445
|
+
"maxOutputBytes": 10485760
|
|
1446
|
+
}
|
|
1447
|
+
},
|
|
1448
|
+
"presence.set": {
|
|
1449
|
+
"description": "Send one bounded typing or paused presence indication.",
|
|
1450
|
+
"risk": "R3",
|
|
1451
|
+
"sideEffect": "externally visible provider or Desktop mutation",
|
|
1452
|
+
"idempotency": "local-at-most-once",
|
|
1453
|
+
"dedupeWindowMs": 86400000,
|
|
1454
|
+
"input": {
|
|
1455
|
+
"properties": {
|
|
1456
|
+
"account_id": {
|
|
1457
|
+
"type": "string",
|
|
1458
|
+
"description": "Exact Beeper account ID returned by this adapter",
|
|
1459
|
+
"minLength": 1,
|
|
1460
|
+
"maxLength": 512
|
|
1461
|
+
},
|
|
1462
|
+
"conversation_id": {
|
|
1463
|
+
"type": "string",
|
|
1464
|
+
"description": "Canonical full Beeper/Matrix chat ID returned by this adapter",
|
|
1465
|
+
"minLength": 3,
|
|
1466
|
+
"maxLength": 2048
|
|
1467
|
+
},
|
|
1468
|
+
"state": {
|
|
1469
|
+
"type": "string",
|
|
1470
|
+
"description": "Exact presence state",
|
|
1471
|
+
"minLength": 1,
|
|
1472
|
+
"maxLength": 16,
|
|
1473
|
+
"enum": [
|
|
1474
|
+
"typing",
|
|
1475
|
+
"paused"
|
|
1476
|
+
]
|
|
1477
|
+
},
|
|
1478
|
+
"duration_seconds": {
|
|
1479
|
+
"type": "number",
|
|
1480
|
+
"description": "Bounded typing duration before a separately journaled paused dispatch",
|
|
1481
|
+
"minimum": 1,
|
|
1482
|
+
"maximum": 30
|
|
1483
|
+
}
|
|
1484
|
+
},
|
|
1485
|
+
"required": [
|
|
1486
|
+
"account_id",
|
|
1487
|
+
"conversation_id",
|
|
1488
|
+
"state"
|
|
1489
|
+
]
|
|
1490
|
+
},
|
|
1491
|
+
"localCli": {
|
|
1492
|
+
"surface": "beeper",
|
|
1493
|
+
"action": "presence.set",
|
|
1494
|
+
"contractVersion": 1,
|
|
1495
|
+
"timeoutMs": 120000,
|
|
1496
|
+
"maxOutputBytes": 10485760
|
|
1497
|
+
}
|
|
1498
|
+
}
|
|
1499
|
+
}
|
|
1500
|
+
}
|