@beeper/desktop-mcp 0.1.5 → 4.2.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 +10 -14
- package/docs-search-tool.d.mts +44 -0
- package/docs-search-tool.d.mts.map +1 -0
- package/docs-search-tool.d.ts +44 -0
- package/docs-search-tool.d.ts.map +1 -0
- package/docs-search-tool.js +43 -0
- package/docs-search-tool.js.map +1 -0
- package/docs-search-tool.mjs +39 -0
- package/docs-search-tool.mjs.map +1 -0
- package/handlers/get-accounts.d.mts +3 -0
- package/handlers/get-accounts.d.mts.map +1 -0
- package/handlers/get-accounts.d.ts +3 -0
- package/handlers/get-accounts.d.ts.map +1 -0
- package/handlers/get-accounts.js +32 -0
- package/handlers/get-accounts.js.map +1 -0
- package/handlers/get-accounts.mjs +28 -0
- package/handlers/get-accounts.mjs.map +1 -0
- package/handlers/get-chat.d.mts +3 -0
- package/handlers/get-chat.d.mts.map +1 -0
- package/handlers/get-chat.d.ts +3 -0
- package/handlers/get-chat.d.ts.map +1 -0
- package/handlers/get-chat.js +20 -0
- package/handlers/get-chat.js.map +1 -0
- package/handlers/get-chat.mjs +16 -0
- package/handlers/get-chat.mjs.map +1 -0
- package/handlers/index.d.mts +3 -0
- package/handlers/index.d.mts.map +1 -0
- package/handlers/index.d.ts +3 -0
- package/handlers/index.d.ts.map +1 -0
- package/handlers/index.js +30 -0
- package/handlers/index.js.map +1 -0
- package/handlers/index.mjs +27 -0
- package/handlers/index.mjs.map +1 -0
- package/handlers/list-chats.d.mts +3 -0
- package/handlers/list-chats.d.mts.map +1 -0
- package/handlers/list-chats.d.ts +3 -0
- package/handlers/list-chats.d.ts.map +1 -0
- package/handlers/list-chats.js +46 -0
- package/handlers/list-chats.js.map +1 -0
- package/handlers/list-chats.mjs +42 -0
- package/handlers/list-chats.mjs.map +1 -0
- package/handlers/list-messages.d.mts +3 -0
- package/handlers/list-messages.d.mts.map +1 -0
- package/handlers/list-messages.d.ts +3 -0
- package/handlers/list-messages.d.ts.map +1 -0
- package/handlers/list-messages.js +34 -0
- package/handlers/list-messages.js.map +1 -0
- package/handlers/list-messages.mjs +30 -0
- package/handlers/list-messages.mjs.map +1 -0
- package/handlers/open-app.d.mts +3 -0
- package/handlers/open-app.d.mts.map +1 -0
- package/handlers/open-app.d.ts +3 -0
- package/handlers/open-app.d.ts.map +1 -0
- package/handlers/open-app.js +26 -0
- package/handlers/open-app.js.map +1 -0
- package/handlers/open-app.mjs +22 -0
- package/handlers/open-app.mjs.map +1 -0
- package/handlers/search-chats.d.mts +3 -0
- package/handlers/search-chats.d.mts.map +1 -0
- package/handlers/search-chats.d.ts +3 -0
- package/handlers/search-chats.d.ts.map +1 -0
- package/handlers/search-chats.js +38 -0
- package/handlers/search-chats.js.map +1 -0
- package/handlers/search-chats.mjs +34 -0
- package/handlers/search-chats.mjs.map +1 -0
- package/handlers/search-messages.d.mts +3 -0
- package/handlers/search-messages.d.mts.map +1 -0
- package/handlers/search-messages.d.ts +3 -0
- package/handlers/search-messages.d.ts.map +1 -0
- package/handlers/search-messages.js +11 -0
- package/handlers/search-messages.js.map +1 -0
- package/handlers/search-messages.mjs +7 -0
- package/handlers/search-messages.mjs.map +1 -0
- package/handlers/search.d.mts +3 -0
- package/handlers/search.d.mts.map +1 -0
- package/handlers/search.d.ts +3 -0
- package/handlers/search.d.ts.map +1 -0
- package/handlers/search.js +29 -0
- package/handlers/search.js.map +1 -0
- package/handlers/search.mjs +25 -0
- package/handlers/search.mjs.map +1 -0
- package/handlers/send-message.d.mts +3 -0
- package/handlers/send-message.d.mts.map +1 -0
- package/handlers/send-message.d.ts +3 -0
- package/handlers/send-message.d.ts.map +1 -0
- package/handlers/send-message.js +20 -0
- package/handlers/send-message.js.map +1 -0
- package/handlers/send-message.mjs +16 -0
- package/handlers/send-message.mjs.map +1 -0
- package/handlers/utils.d.mts +29 -0
- package/handlers/utils.d.mts.map +1 -0
- package/handlers/utils.d.ts +29 -0
- package/handlers/utils.d.ts.map +1 -0
- package/handlers/utils.js +296 -0
- package/handlers/utils.js.map +1 -0
- package/handlers/utils.mjs +282 -0
- package/handlers/utils.mjs.map +1 -0
- package/http.d.mts +6 -0
- package/http.d.mts.map +1 -1
- package/http.d.ts +6 -0
- package/http.d.ts.map +1 -1
- package/http.js +7 -4
- package/http.js.map +1 -1
- package/http.mjs +3 -3
- package/http.mjs.map +1 -1
- package/options.d.mts +1 -0
- package/options.d.mts.map +1 -1
- package/options.d.ts +1 -0
- package/options.d.ts.map +1 -1
- package/options.js +13 -6
- package/options.js.map +1 -1
- package/options.mjs +13 -6
- package/options.mjs.map +1 -1
- package/package.json +23 -2
- package/server.d.mts.map +1 -1
- package/server.d.ts.map +1 -1
- package/server.js +8 -4
- package/server.js.map +1 -1
- package/server.mjs +8 -4
- package/server.mjs.map +1 -1
- package/src/docs-search-tool.ts +48 -0
- package/src/handlers/get-accounts.ts +28 -0
- package/src/handlers/get-chat.ts +18 -0
- package/src/handlers/index.ts +29 -0
- package/src/handlers/list-chats.ts +47 -0
- package/src/handlers/list-messages.ts +33 -0
- package/src/handlers/open-app.ts +20 -0
- package/src/handlers/search-chats.ts +39 -0
- package/src/handlers/search-messages.ts +8 -0
- package/src/handlers/search.ts +24 -0
- package/src/handlers/send-message.ts +17 -0
- package/src/handlers/utils.ts +381 -0
- package/src/http.ts +3 -3
- package/src/options.ts +17 -7
- package/src/server.ts +8 -5
- package/src/tools/accounts/get-accounts.ts +3 -3
- package/src/tools/chats/archive-chat.ts +6 -6
- package/src/tools/chats/get-chat.ts +6 -7
- package/src/tools/chats/reminders/clear-chat-reminder.ts +10 -8
- package/src/tools/chats/reminders/set-chat-reminder.ts +6 -5
- package/src/tools/chats/search-chats.ts +5 -5
- package/src/tools/index.ts +8 -5
- package/src/tools/messages/list-messages.ts +51 -0
- package/src/tools/messages/search-messages.ts +6 -7
- package/src/tools/messages/send-message.ts +5 -5
- package/src/tools/{app/open-in-app.ts → top-level/focus-app.ts} +6 -6
- package/src/tools/{app → top-level}/search.ts +3 -3
- package/tools/accounts/get-accounts.js +3 -3
- package/tools/accounts/get-accounts.js.map +1 -1
- package/tools/accounts/get-accounts.mjs +3 -3
- package/tools/accounts/get-accounts.mjs.map +1 -1
- package/tools/chats/archive-chat.d.mts.map +1 -1
- package/tools/chats/archive-chat.d.ts.map +1 -1
- package/tools/chats/archive-chat.js +6 -5
- package/tools/chats/archive-chat.js.map +1 -1
- package/tools/chats/archive-chat.mjs +6 -5
- package/tools/chats/archive-chat.mjs.map +1 -1
- package/tools/chats/get-chat.d.mts.map +1 -1
- package/tools/chats/get-chat.d.ts.map +1 -1
- package/tools/chats/get-chat.js +6 -6
- package/tools/chats/get-chat.js.map +1 -1
- package/tools/chats/get-chat.mjs +6 -6
- package/tools/chats/get-chat.mjs.map +1 -1
- package/tools/chats/reminders/clear-chat-reminder.d.mts.map +1 -1
- package/tools/chats/reminders/clear-chat-reminder.d.ts.map +1 -1
- package/tools/chats/reminders/clear-chat-reminder.js +10 -7
- package/tools/chats/reminders/clear-chat-reminder.js.map +1 -1
- package/tools/chats/reminders/clear-chat-reminder.mjs +10 -7
- package/tools/chats/reminders/clear-chat-reminder.mjs.map +1 -1
- package/tools/chats/reminders/set-chat-reminder.d.mts.map +1 -1
- package/tools/chats/reminders/set-chat-reminder.d.ts.map +1 -1
- package/tools/chats/reminders/set-chat-reminder.js +6 -5
- package/tools/chats/reminders/set-chat-reminder.js.map +1 -1
- package/tools/chats/reminders/set-chat-reminder.mjs +6 -5
- package/tools/chats/reminders/set-chat-reminder.mjs.map +1 -1
- package/tools/chats/search-chats.js +5 -5
- package/tools/chats/search-chats.js.map +1 -1
- package/tools/chats/search-chats.mjs +5 -5
- package/tools/chats/search-chats.mjs.map +1 -1
- package/tools/index.d.mts.map +1 -1
- package/tools/index.d.ts.map +1 -1
- package/tools/index.js +8 -5
- package/tools/index.js.map +1 -1
- package/tools/index.mjs +8 -5
- package/tools/index.mjs.map +1 -1
- package/tools/messages/list-messages.d.mts +45 -0
- package/tools/messages/list-messages.d.mts.map +1 -0
- package/tools/messages/list-messages.d.ts +45 -0
- package/tools/messages/list-messages.d.ts.map +1 -0
- package/tools/messages/list-messages.js +47 -0
- package/tools/messages/list-messages.js.map +1 -0
- package/tools/messages/list-messages.mjs +43 -0
- package/tools/messages/list-messages.mjs.map +1 -0
- package/tools/messages/search-messages.d.mts.map +1 -1
- package/tools/messages/search-messages.d.ts.map +1 -1
- package/tools/messages/search-messages.js +6 -6
- package/tools/messages/search-messages.js.map +1 -1
- package/tools/messages/search-messages.mjs +6 -6
- package/tools/messages/search-messages.mjs.map +1 -1
- package/tools/messages/send-message.js +5 -5
- package/tools/messages/send-message.js.map +1 -1
- package/tools/messages/send-message.mjs +5 -5
- package/tools/messages/send-message.mjs.map +1 -1
- package/tools/{app/open-in-app.d.ts → top-level/focus-app.d.mts} +1 -1
- package/tools/top-level/focus-app.d.mts.map +1 -0
- package/tools/{app/open-in-app.d.mts → top-level/focus-app.d.ts} +1 -1
- package/tools/top-level/focus-app.d.ts.map +1 -0
- package/tools/{app/open-in-app.js → top-level/focus-app.js} +7 -7
- package/tools/top-level/focus-app.js.map +1 -0
- package/tools/{app/open-in-app.mjs → top-level/focus-app.mjs} +7 -7
- package/tools/top-level/focus-app.mjs.map +1 -0
- package/tools/top-level/search.d.mts.map +1 -0
- package/tools/top-level/search.d.ts.map +1 -0
- package/tools/{app → top-level}/search.js +3 -3
- package/tools/top-level/search.js.map +1 -0
- package/tools/{app → top-level}/search.mjs +3 -3
- package/tools/top-level/search.mjs.map +1 -0
- package/tools/app/open-in-app.d.mts.map +0 -1
- package/tools/app/open-in-app.d.ts.map +0 -1
- package/tools/app/open-in-app.js.map +0 -1
- package/tools/app/open-in-app.mjs.map +0 -1
- package/tools/app/search.d.mts.map +0 -1
- package/tools/app/search.d.ts.map +0 -1
- package/tools/app/search.js.map +0 -1
- package/tools/app/search.mjs.map +0 -1
- /package/tools/{app → top-level}/search.d.mts +0 -0
- /package/tools/{app → top-level}/search.d.ts +0 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const types_1 = require("../tools/types.js");
|
|
5
|
+
const utils_1 = require("./utils.js");
|
|
6
|
+
const handler = async (client, args) => {
|
|
7
|
+
const body = args;
|
|
8
|
+
const output = await client.messages.search(body);
|
|
9
|
+
const lines = [];
|
|
10
|
+
lines.push('# Messages');
|
|
11
|
+
const items = output.items || [];
|
|
12
|
+
const hasMore = !!output.hasMore;
|
|
13
|
+
if (hasMore) {
|
|
14
|
+
lines.push(`\nShowing ${items.length} messages (more available)`);
|
|
15
|
+
if (output.oldestCursor) {
|
|
16
|
+
lines.push(`Next page (older): cursor='${output.oldestCursor}', direction='before'`);
|
|
17
|
+
}
|
|
18
|
+
if (output.newestCursor) {
|
|
19
|
+
lines.push(`Previous page (newer): cursor='${output.newestCursor}', direction='after'`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else if (items.length > 0) {
|
|
23
|
+
lines.push(`\nShowing ${items.length} message${items.length === 1 ? '' : 's'}`);
|
|
24
|
+
}
|
|
25
|
+
if (items.length === 0) {
|
|
26
|
+
lines.push('\nNo messages found.');
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
lines.push((0, utils_1.mapMessagesToText)(output, body, undefined));
|
|
30
|
+
}
|
|
31
|
+
return (0, types_1.asTextContentResult)(lines.join('\n'));
|
|
32
|
+
};
|
|
33
|
+
exports.handler = handler;
|
|
34
|
+
//# sourceMappingURL=list-messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-messages.js","sourceRoot":"","sources":["../src/handlers/list-messages.ts"],"names":[],"mappings":";;;AAAA,6CAA2E;AAC3E,sCAA4C;AAErC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAElD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAEzB,MAAM,KAAK,GAAI,MAAc,CAAC,KAAK,IAAI,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAE,MAAc,CAAC,OAAO,CAAC;IAE1C,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,4BAA4B,CAAC,CAAC;QAClE,IAAK,MAAc,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,8BAA+B,MAAc,CAAC,YAAY,uBAAuB,CAAC,CAAC;QAChG,CAAC;QACD,IAAK,MAAc,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kCAAmC,MAAc,CAAC,YAAY,sBAAsB,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,WAAW,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,MAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,IAAA,2BAAmB,EAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AA7BW,QAAA,OAAO,WA6BlB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { asTextContentResult } from "../tools/types.mjs";
|
|
2
|
+
import { mapMessagesToText } from "./utils.mjs";
|
|
3
|
+
export const handler = async (client, args) => {
|
|
4
|
+
const body = args;
|
|
5
|
+
const output = await client.messages.search(body);
|
|
6
|
+
const lines = [];
|
|
7
|
+
lines.push('# Messages');
|
|
8
|
+
const items = output.items || [];
|
|
9
|
+
const hasMore = !!output.hasMore;
|
|
10
|
+
if (hasMore) {
|
|
11
|
+
lines.push(`\nShowing ${items.length} messages (more available)`);
|
|
12
|
+
if (output.oldestCursor) {
|
|
13
|
+
lines.push(`Next page (older): cursor='${output.oldestCursor}', direction='before'`);
|
|
14
|
+
}
|
|
15
|
+
if (output.newestCursor) {
|
|
16
|
+
lines.push(`Previous page (newer): cursor='${output.newestCursor}', direction='after'`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
else if (items.length > 0) {
|
|
20
|
+
lines.push(`\nShowing ${items.length} message${items.length === 1 ? '' : 's'}`);
|
|
21
|
+
}
|
|
22
|
+
if (items.length === 0) {
|
|
23
|
+
lines.push('\nNo messages found.');
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
lines.push(mapMessagesToText(output, body, undefined));
|
|
27
|
+
}
|
|
28
|
+
return asTextContentResult(lines.join('\n'));
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=list-messages.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-messages.mjs","sourceRoot":"","sources":["../src/handlers/list-messages.ts"],"names":[],"mappings":"OAAO,EAAE,mBAAmB,EAAwB;OAC7C,EAAE,iBAAiB,EAAE;AAE5B,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAElD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAEzB,MAAM,KAAK,GAAI,MAAc,CAAC,KAAK,IAAI,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAE,MAAc,CAAC,OAAO,CAAC;IAE1C,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,4BAA4B,CAAC,CAAC;QAClE,IAAK,MAAc,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,8BAA+B,MAAc,CAAC,YAAY,uBAAuB,CAAC,CAAC;QAChG,CAAC;QACD,IAAK,MAAc,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kCAAmC,MAAc,CAAC,YAAY,sBAAsB,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,WAAW,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-app.d.mts","sourceRoot":"","sources":["../src/handlers/open-app.ts"],"names":[],"mappings":"OAAO,EAAuB,KAAK,eAAe,EAAE;AAEpD,eAAO,MAAM,OAAO,EAAE,eAiBrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-app.d.ts","sourceRoot":"","sources":["../src/handlers/open-app.ts"],"names":[],"mappings":"OAAO,EAAuB,KAAK,eAAe,EAAE;AAEpD,eAAO,MAAM,OAAO,EAAE,eAiBrB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const types_1 = require("../tools/types.js");
|
|
5
|
+
const handler = async (client, args) => {
|
|
6
|
+
const body = args;
|
|
7
|
+
const output = await client.focus(body);
|
|
8
|
+
const lines = [];
|
|
9
|
+
if (output.success) {
|
|
10
|
+
lines.push('Beeper was opened.');
|
|
11
|
+
if (body?.chatID) {
|
|
12
|
+
const chatRef = String(body.chatID);
|
|
13
|
+
lines.push(`Focused chat: ${chatRef}`);
|
|
14
|
+
}
|
|
15
|
+
if (body?.draftText)
|
|
16
|
+
lines.push(`Draft text populated: ${body.draftText}`);
|
|
17
|
+
if (body?.draftAttachmentPath)
|
|
18
|
+
lines.push(`Draft attachment populated: ${body.draftAttachmentPath}`);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
lines.push('Failed to open Beeper.');
|
|
22
|
+
}
|
|
23
|
+
return (0, types_1.asTextContentResult)(lines.join('\n'));
|
|
24
|
+
};
|
|
25
|
+
exports.handler = handler;
|
|
26
|
+
//# sourceMappingURL=open-app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-app.js","sourceRoot":"","sources":["../src/handlers/open-app.ts"],"names":[],"mappings":";;;AAAA,6CAA2E;AAEpE,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAExC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,EAAE,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3E,IAAI,IAAI,EAAE,mBAAmB;YAAE,KAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACvG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,IAAA,2BAAmB,EAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAjBW,QAAA,OAAO,WAiBlB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { asTextContentResult } from "../tools/types.mjs";
|
|
2
|
+
export const handler = async (client, args) => {
|
|
3
|
+
const body = args;
|
|
4
|
+
const output = await client.focus(body);
|
|
5
|
+
const lines = [];
|
|
6
|
+
if (output.success) {
|
|
7
|
+
lines.push('Beeper was opened.');
|
|
8
|
+
if (body?.chatID) {
|
|
9
|
+
const chatRef = String(body.chatID);
|
|
10
|
+
lines.push(`Focused chat: ${chatRef}`);
|
|
11
|
+
}
|
|
12
|
+
if (body?.draftText)
|
|
13
|
+
lines.push(`Draft text populated: ${body.draftText}`);
|
|
14
|
+
if (body?.draftAttachmentPath)
|
|
15
|
+
lines.push(`Draft attachment populated: ${body.draftAttachmentPath}`);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
lines.push('Failed to open Beeper.');
|
|
19
|
+
}
|
|
20
|
+
return asTextContentResult(lines.join('\n'));
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=open-app.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-app.mjs","sourceRoot":"","sources":["../src/handlers/open-app.ts"],"names":[],"mappings":"OAAO,EAAE,mBAAmB,EAAwB;AAEpD,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAExC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,EAAE,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3E,IAAI,IAAI,EAAE,mBAAmB;YAAE,KAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACvG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-chats.d.mts","sourceRoot":"","sources":["../src/handlers/search-chats.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAmCrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-chats.d.ts","sourceRoot":"","sources":["../src/handlers/search-chats.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAmCrB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const utils_1 = require("./utils.js");
|
|
5
|
+
const handler = async (client, args) => {
|
|
6
|
+
const body = args;
|
|
7
|
+
const output = await client.chats.search(body);
|
|
8
|
+
const lines = [];
|
|
9
|
+
lines.push('# Chats');
|
|
10
|
+
const items = output.items || [];
|
|
11
|
+
const hasMore = !!output.hasMore;
|
|
12
|
+
if (hasMore) {
|
|
13
|
+
lines.push(`\nFound ${items.length}+ chats (showing ${items.length})`);
|
|
14
|
+
if (output.oldestCursor) {
|
|
15
|
+
lines.push(`Next page (older): cursor='${output.oldestCursor}', direction='before'`);
|
|
16
|
+
}
|
|
17
|
+
if (output.newestCursor) {
|
|
18
|
+
lines.push(`Previous page (newer): cursor='${output.newestCursor}', direction='after'`);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
else if (items.length > 0) {
|
|
22
|
+
lines.push(`\nFound ${items.length} chat${items.length === 1 ? '' : 's'}`);
|
|
23
|
+
}
|
|
24
|
+
if (items.length === 0) {
|
|
25
|
+
lines.push('\nNo chats found.');
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
for (const chat of items) {
|
|
29
|
+
lines.push((0, utils_1.formatChatToMarkdown)(chat, undefined));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
lines.push('\n# Using this information\n');
|
|
33
|
+
lines.push('- Pass the "chatID" to get_chat or search_messages for details about a chat, or send_message to send a message to a chat.');
|
|
34
|
+
lines.push('- Link the "open" link to the user to allow them to view the chat in Beeper Desktop.');
|
|
35
|
+
return (0, utils_1.asMarkdownContentResult)(lines);
|
|
36
|
+
};
|
|
37
|
+
exports.handler = handler;
|
|
38
|
+
//# sourceMappingURL=search-chats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-chats.js","sourceRoot":"","sources":["../src/handlers/search-chats.ts"],"names":[],"mappings":";;;AACA,sCAAwE;AAEjE,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAEjC,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,oBAAoB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACvE,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,8BAA8B,MAAM,CAAC,YAAY,uBAAuB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,kCAAkC,MAAM,CAAC,YAAY,sBAAsB,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,QAAQ,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC3C,KAAK,CAAC,IAAI,CACR,2HAA2H,CAC5H,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAC;IACnG,OAAO,IAAA,+BAAuB,EAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAnCW,QAAA,OAAO,WAmClB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { asMarkdownContentResult, formatChatToMarkdown } from "./utils.mjs";
|
|
2
|
+
export const handler = async (client, args) => {
|
|
3
|
+
const body = args;
|
|
4
|
+
const output = await client.chats.search(body);
|
|
5
|
+
const lines = [];
|
|
6
|
+
lines.push('# Chats');
|
|
7
|
+
const items = output.items || [];
|
|
8
|
+
const hasMore = !!output.hasMore;
|
|
9
|
+
if (hasMore) {
|
|
10
|
+
lines.push(`\nFound ${items.length}+ chats (showing ${items.length})`);
|
|
11
|
+
if (output.oldestCursor) {
|
|
12
|
+
lines.push(`Next page (older): cursor='${output.oldestCursor}', direction='before'`);
|
|
13
|
+
}
|
|
14
|
+
if (output.newestCursor) {
|
|
15
|
+
lines.push(`Previous page (newer): cursor='${output.newestCursor}', direction='after'`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
else if (items.length > 0) {
|
|
19
|
+
lines.push(`\nFound ${items.length} chat${items.length === 1 ? '' : 's'}`);
|
|
20
|
+
}
|
|
21
|
+
if (items.length === 0) {
|
|
22
|
+
lines.push('\nNo chats found.');
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
for (const chat of items) {
|
|
26
|
+
lines.push(formatChatToMarkdown(chat, undefined));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
lines.push('\n# Using this information\n');
|
|
30
|
+
lines.push('- Pass the "chatID" to get_chat or search_messages for details about a chat, or send_message to send a message to a chat.');
|
|
31
|
+
lines.push('- Link the "open" link to the user to allow them to view the chat in Beeper Desktop.');
|
|
32
|
+
return asMarkdownContentResult(lines);
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=search-chats.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-chats.mjs","sourceRoot":"","sources":["../src/handlers/search-chats.ts"],"names":[],"mappings":"OACO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE;AAExD,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAEjC,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,oBAAoB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACvE,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,8BAA8B,MAAM,CAAC,YAAY,uBAAuB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,kCAAkC,MAAM,CAAC,YAAY,sBAAsB,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,QAAQ,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC3C,KAAK,CAAC,IAAI,CACR,2HAA2H,CAC5H,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAC;IACnG,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-messages.d.mts","sourceRoot":"","sources":["../src/handlers/search-messages.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAIrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-messages.d.ts","sourceRoot":"","sources":["../src/handlers/search-messages.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAIrB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const utils_1 = require("./utils.js");
|
|
5
|
+
const handler = async (client, args) => {
|
|
6
|
+
const body = args;
|
|
7
|
+
const output = await client.messages.search(body);
|
|
8
|
+
return (0, utils_1.asMarkdownContentResult)((0, utils_1.mapMessagesToText)(output, body, undefined));
|
|
9
|
+
};
|
|
10
|
+
exports.handler = handler;
|
|
11
|
+
//# sourceMappingURL=search-messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-messages.js","sourceRoot":"","sources":["../src/handlers/search-messages.ts"],"names":[],"mappings":";;;AACA,sCAAqE;AAE9D,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,IAAA,+BAAuB,EAAC,IAAA,yBAAiB,EAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AAJW,QAAA,OAAO,WAIlB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { mapMessagesToText, asMarkdownContentResult } from "./utils.mjs";
|
|
2
|
+
export const handler = async (client, args) => {
|
|
3
|
+
const body = args;
|
|
4
|
+
const output = await client.messages.search(body);
|
|
5
|
+
return asMarkdownContentResult(mapMessagesToText(output, body, undefined));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=search-messages.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-messages.mjs","sourceRoot":"","sources":["../src/handlers/search-messages.ts"],"names":[],"mappings":"OACO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE;AAErD,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,uBAAuB,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.mts","sourceRoot":"","sources":["../src/handlers/search.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAoBrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../src/handlers/search.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAoBrB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const utils_1 = require("./utils.js");
|
|
5
|
+
const handler = async (client, args) => {
|
|
6
|
+
const body = args;
|
|
7
|
+
const output = await client.search(body);
|
|
8
|
+
const lines = [];
|
|
9
|
+
if (body?.query)
|
|
10
|
+
lines.push(`Query: "${body.query}"`);
|
|
11
|
+
const results = output?.results;
|
|
12
|
+
if (results?.chats?.length) {
|
|
13
|
+
lines.push('\n# Chats');
|
|
14
|
+
for (const chat of results.chats)
|
|
15
|
+
lines.push((0, utils_1.formatChatToMarkdown)(chat, undefined));
|
|
16
|
+
}
|
|
17
|
+
if (results?.in_groups?.length) {
|
|
18
|
+
lines.push('\n# In Groups');
|
|
19
|
+
for (const chat of results.in_groups)
|
|
20
|
+
lines.push((0, utils_1.formatChatToMarkdown)(chat, undefined));
|
|
21
|
+
}
|
|
22
|
+
if (results?.messages?.items?.length) {
|
|
23
|
+
lines.push('\n# Messages');
|
|
24
|
+
lines.push((0, utils_1.mapMessagesToText)(results.messages, body, undefined));
|
|
25
|
+
}
|
|
26
|
+
return (0, utils_1.asMarkdownContentResult)(lines);
|
|
27
|
+
};
|
|
28
|
+
exports.handler = handler;
|
|
29
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../src/handlers/search.ts"],"names":[],"mappings":";;;AACA,sCAA2F;AAEpF,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,EAAE,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,CAAC;IAChC,IAAI,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,IAAA,4BAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,IAAA,yBAAiB,EAAC,OAAO,CAAC,QAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,IAAA,+BAAuB,EAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AApBW,QAAA,OAAO,WAoBlB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { asMarkdownContentResult, formatChatToMarkdown, mapMessagesToText } from "./utils.mjs";
|
|
2
|
+
export const handler = async (client, args) => {
|
|
3
|
+
const body = args;
|
|
4
|
+
const output = await client.search(body);
|
|
5
|
+
const lines = [];
|
|
6
|
+
if (body?.query)
|
|
7
|
+
lines.push(`Query: "${body.query}"`);
|
|
8
|
+
const results = output?.results;
|
|
9
|
+
if (results?.chats?.length) {
|
|
10
|
+
lines.push('\n# Chats');
|
|
11
|
+
for (const chat of results.chats)
|
|
12
|
+
lines.push(formatChatToMarkdown(chat, undefined));
|
|
13
|
+
}
|
|
14
|
+
if (results?.in_groups?.length) {
|
|
15
|
+
lines.push('\n# In Groups');
|
|
16
|
+
for (const chat of results.in_groups)
|
|
17
|
+
lines.push(formatChatToMarkdown(chat, undefined));
|
|
18
|
+
}
|
|
19
|
+
if (results?.messages?.items?.length) {
|
|
20
|
+
lines.push('\n# Messages');
|
|
21
|
+
lines.push(mapMessagesToText(results.messages, body, undefined));
|
|
22
|
+
}
|
|
23
|
+
return asMarkdownContentResult(lines);
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=search.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.mjs","sourceRoot":"","sources":["../src/handlers/search.ts"],"names":[],"mappings":"OACO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE;AAE3E,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,EAAE,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,CAAC;IAChC,IAAI,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.d.mts","sourceRoot":"","sources":["../src/handlers/send-message.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAarB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.d.ts","sourceRoot":"","sources":["../src/handlers/send-message.ts"],"names":[],"mappings":"OAAO,KAAK,EAAE,eAAe,EAAE;AAG/B,eAAO,MAAM,OAAO,EAAE,eAarB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = void 0;
|
|
4
|
+
const utils_1 = require("./utils.js");
|
|
5
|
+
const handler = async (client, args) => {
|
|
6
|
+
const body = args;
|
|
7
|
+
const output = await client.messages.send(body);
|
|
8
|
+
const lines = [];
|
|
9
|
+
if (output.pendingMessageID) {
|
|
10
|
+
const deeplink = (0, utils_1.createOpenLink)('', body?.chatID ?? '');
|
|
11
|
+
if (deeplink)
|
|
12
|
+
lines.push(`**Open the chat in Beeper**: ${deeplink}`);
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
lines.push('Failed to send message.');
|
|
16
|
+
}
|
|
17
|
+
return (0, utils_1.asMarkdownContentResult)(lines);
|
|
18
|
+
};
|
|
19
|
+
exports.handler = handler;
|
|
20
|
+
//# sourceMappingURL=send-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.js","sourceRoot":"","sources":["../src/handlers/send-message.ts"],"names":[],"mappings":";;;AACA,sCAAkE;AAE3D,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAA,sBAAc,EAAC,EAAE,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,IAAA,+BAAuB,EAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAbW,QAAA,OAAO,WAalB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { asMarkdownContentResult, createOpenLink } from "./utils.mjs";
|
|
2
|
+
export const handler = async (client, args) => {
|
|
3
|
+
const body = args;
|
|
4
|
+
const output = await client.messages.send(body);
|
|
5
|
+
const lines = [];
|
|
6
|
+
if (output.pendingMessageID) {
|
|
7
|
+
const deeplink = createOpenLink('', body?.chatID ?? '');
|
|
8
|
+
if (deeplink)
|
|
9
|
+
lines.push(`**Open the chat in Beeper**: ${deeplink}`);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
lines.push('Failed to send message.');
|
|
13
|
+
}
|
|
14
|
+
return asMarkdownContentResult(lines);
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=send-message.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.mjs","sourceRoot":"","sources":["../src/handlers/send-message.ts"],"names":[],"mappings":"OACO,EAAE,uBAAuB,EAAE,cAAc,EAAE;AAElD,MAAM,CAAC,MAAM,OAAO,GAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type * as Shared from '@beeper/desktop-api/resources/shared';
|
|
2
|
+
import type * as ChatsAPI from '@beeper/desktop-api/resources/chats/chats';
|
|
3
|
+
import { ToolCallResult } from "../tools/types.mjs";
|
|
4
|
+
type Message = Shared.Message;
|
|
5
|
+
type Chat = ChatsAPI.Chat;
|
|
6
|
+
type User = Shared.User;
|
|
7
|
+
type MessageReaction = NonNullable<Message['reactions']>[number];
|
|
8
|
+
export declare const formatRelativeDate: (date: Date) => string;
|
|
9
|
+
export declare const formatBytes: (bytes: number, decimals?: number) => string;
|
|
10
|
+
export declare function groupReactions(reactions: MessageReaction[]): {
|
|
11
|
+
[key: string]: MessageReaction[];
|
|
12
|
+
};
|
|
13
|
+
export declare const getParticipantName: (participant: User, preferFirstName?: boolean) => string;
|
|
14
|
+
export declare const createOpenLink: (baseURL: string, localChatIDOrChatID: string, messageKey?: string) => string;
|
|
15
|
+
export declare const formatParticipantsToMarkdown: (participants: User[] | undefined, limit?: number) => string;
|
|
16
|
+
export declare const formatReactionsToMarkdown: (reactions: Message["reactions"], participants?: Map<string, User>) => string;
|
|
17
|
+
export declare const formatAttachmentToMarkdown: (attachment: Shared.Attachment | undefined) => string;
|
|
18
|
+
export declare const formatChatToMarkdown: (chat: Chat, baseURL: string | undefined) => string;
|
|
19
|
+
export declare const mapMessagesToText: (output: Shared.MessagesCursorSearch, input?: {
|
|
20
|
+
query?: string;
|
|
21
|
+
sender?: string;
|
|
22
|
+
mediaTypes?: string[];
|
|
23
|
+
}, ctx?: {
|
|
24
|
+
apiBaseURL?: string;
|
|
25
|
+
maxTextLength?: number;
|
|
26
|
+
}) => string;
|
|
27
|
+
export declare function asMarkdownContentResult(text: string | string[]): ToolCallResult;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=utils.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.mts","sourceRoot":"","sources":["../src/handlers/utils.ts"],"names":[],"mappings":"OAUO,KAAK,KAAK,MAAM,MAAM,sCAAsC;OAC5D,KAAK,KAAK,QAAQ,MAAM,2CAA2C;OACnE,EAAE,cAAc,EAAE;AAIzB,KAAK,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,KAAK,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;AAC1B,KAAK,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;AACxB,KAAK,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,kBAAkB,GAAI,MAAM,IAAI,WAwB5C,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,iBAAY,WAQtD,CAAC;AAKF,wBAAgB,cAAc,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAAA;CAAE,CASjG;AAED,eAAO,MAAM,kBAAkB,GAAI,aAAa,IAAI,EAAE,kBAAkB,OAAO,KAAG,MAOhE,CAAC;AAEnB,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,EAAE,qBAAqB,MAAM,EAAE,aAAa,MAAM,WACG,CAAC;AAEpG,eAAO,MAAM,4BAA4B,GAAI,cAAc,IAAI,EAAE,GAAG,SAAS,EAAE,cAAS,KAAG,MAc1F,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,WAAW,OAAO,CAAC,WAAW,CAAC,EAC/B,eAAe,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAC/B,MA8BF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,YAAY,MAAM,CAAC,UAAU,GAAG,SAAS,KAAG,MA2BtF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,IAAI,EAAE,SAAS,MAAM,GAAG,SAAS,KAAG,MAqB9E,CAAC;AAkBF,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,CAAC,oBAAoB,EACnC,QAAQ;IACN,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,EACD,MAAM;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,WAgKtD,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,CAS/E"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type * as Shared from '@beeper/desktop-api/resources/shared';
|
|
2
|
+
import type * as ChatsAPI from '@beeper/desktop-api/resources/chats/chats';
|
|
3
|
+
import { ToolCallResult } from "../tools/types.js";
|
|
4
|
+
type Message = Shared.Message;
|
|
5
|
+
type Chat = ChatsAPI.Chat;
|
|
6
|
+
type User = Shared.User;
|
|
7
|
+
type MessageReaction = NonNullable<Message['reactions']>[number];
|
|
8
|
+
export declare const formatRelativeDate: (date: Date) => string;
|
|
9
|
+
export declare const formatBytes: (bytes: number, decimals?: number) => string;
|
|
10
|
+
export declare function groupReactions(reactions: MessageReaction[]): {
|
|
11
|
+
[key: string]: MessageReaction[];
|
|
12
|
+
};
|
|
13
|
+
export declare const getParticipantName: (participant: User, preferFirstName?: boolean) => string;
|
|
14
|
+
export declare const createOpenLink: (baseURL: string, localChatIDOrChatID: string, messageKey?: string) => string;
|
|
15
|
+
export declare const formatParticipantsToMarkdown: (participants: User[] | undefined, limit?: number) => string;
|
|
16
|
+
export declare const formatReactionsToMarkdown: (reactions: Message["reactions"], participants?: Map<string, User>) => string;
|
|
17
|
+
export declare const formatAttachmentToMarkdown: (attachment: Shared.Attachment | undefined) => string;
|
|
18
|
+
export declare const formatChatToMarkdown: (chat: Chat, baseURL: string | undefined) => string;
|
|
19
|
+
export declare const mapMessagesToText: (output: Shared.MessagesCursorSearch, input?: {
|
|
20
|
+
query?: string;
|
|
21
|
+
sender?: string;
|
|
22
|
+
mediaTypes?: string[];
|
|
23
|
+
}, ctx?: {
|
|
24
|
+
apiBaseURL?: string;
|
|
25
|
+
maxTextLength?: number;
|
|
26
|
+
}) => string;
|
|
27
|
+
export declare function asMarkdownContentResult(text: string | string[]): ToolCallResult;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/handlers/utils.ts"],"names":[],"mappings":"OAUO,KAAK,KAAK,MAAM,MAAM,sCAAsC;OAC5D,KAAK,KAAK,QAAQ,MAAM,2CAA2C;OACnE,EAAE,cAAc,EAAE;AAIzB,KAAK,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,KAAK,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;AAC1B,KAAK,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;AACxB,KAAK,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,kBAAkB,GAAI,MAAM,IAAI,WAwB5C,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,iBAAY,WAQtD,CAAC;AAKF,wBAAgB,cAAc,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAAA;CAAE,CASjG;AAED,eAAO,MAAM,kBAAkB,GAAI,aAAa,IAAI,EAAE,kBAAkB,OAAO,KAAG,MAOhE,CAAC;AAEnB,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,EAAE,qBAAqB,MAAM,EAAE,aAAa,MAAM,WACG,CAAC;AAEpG,eAAO,MAAM,4BAA4B,GAAI,cAAc,IAAI,EAAE,GAAG,SAAS,EAAE,cAAS,KAAG,MAc1F,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,WAAW,OAAO,CAAC,WAAW,CAAC,EAC/B,eAAe,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAC/B,MA8BF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,YAAY,MAAM,CAAC,UAAU,GAAG,SAAS,KAAG,MA2BtF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,IAAI,EAAE,SAAS,MAAM,GAAG,SAAS,KAAG,MAqB9E,CAAC;AAkBF,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,CAAC,oBAAoB,EACnC,QAAQ;IACN,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,EACD,MAAM;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,WAgKtD,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,CAS/E"}
|