@hmawla/co-assistant 1.0.7 → 1.0.8
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/dist/cli/index.js +28 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/index.js +22 -2
- package/dist/index.js.map +1 -1
- package/heartbeats/email-reply-check.heartbeat.md +13 -14
- package/package.json +1 -1
- package/plugins/gmail/index.compiled.mjs +146 -10
- package/plugins/gmail/plugin.json +1 -1
- package/plugins/gmail/tools.ts +240 -11
package/dist/cli/index.js
CHANGED
|
@@ -976,6 +976,7 @@ var init_plugin_health = __esm({
|
|
|
976
976
|
var message_exports = {};
|
|
977
977
|
__export(message_exports, {
|
|
978
978
|
createMessageHandler: () => createMessageHandler,
|
|
979
|
+
safeSendMarkdown: () => safeSendMarkdown,
|
|
979
980
|
splitMessage: () => splitMessage
|
|
980
981
|
});
|
|
981
982
|
function splitMessage(text, maxLength = 4096) {
|
|
@@ -1001,6 +1002,19 @@ function splitMessage(text, maxLength = 4096) {
|
|
|
1001
1002
|
}
|
|
1002
1003
|
return chunks.filter((c) => c.length > 0);
|
|
1003
1004
|
}
|
|
1005
|
+
async function safeSendMarkdown(sendFn, text, extra = {}) {
|
|
1006
|
+
try {
|
|
1007
|
+
await sendFn(text, { parse_mode: "Markdown", ...extra });
|
|
1008
|
+
} catch (err) {
|
|
1009
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
1010
|
+
if (msg.includes("can't parse entities")) {
|
|
1011
|
+
const plain = text.replace(/[*_`]/g, "");
|
|
1012
|
+
await sendFn(plain, extra);
|
|
1013
|
+
} else {
|
|
1014
|
+
throw err;
|
|
1015
|
+
}
|
|
1016
|
+
}
|
|
1017
|
+
}
|
|
1004
1018
|
function createMessageHandler(deps) {
|
|
1005
1019
|
const { sessionManager: sessionManager2, conversationRepo } = deps;
|
|
1006
1020
|
return async (ctx, text) => {
|
|
@@ -3209,7 +3223,11 @@ ${state.processedIds.map((id) => `- ${id}`).join("\n")}` : "No previously proces
|
|
|
3209
3223
|
`;
|
|
3210
3224
|
const chunks = splitMessage(header + clean);
|
|
3211
3225
|
for (const chunk of chunks) {
|
|
3212
|
-
await
|
|
3226
|
+
await safeSendMarkdown(
|
|
3227
|
+
(text, extra) => ctx.reply(text, extra),
|
|
3228
|
+
chunk,
|
|
3229
|
+
replyOpts
|
|
3230
|
+
);
|
|
3213
3231
|
}
|
|
3214
3232
|
}
|
|
3215
3233
|
} catch (err) {
|
|
@@ -3300,7 +3318,10 @@ ${state.processedIds.map((id) => `- ${id}`).join("\n")}` : "No previously proces
|
|
|
3300
3318
|
const fullMessage = header + response;
|
|
3301
3319
|
const chunks = splitMessage(fullMessage);
|
|
3302
3320
|
for (const chunk of chunks) {
|
|
3303
|
-
await
|
|
3321
|
+
await safeSendMarkdown(
|
|
3322
|
+
(text, extra) => bot.getBot().telegram.sendMessage(chatId, text, extra),
|
|
3323
|
+
chunk
|
|
3324
|
+
);
|
|
3304
3325
|
}
|
|
3305
3326
|
} catch (err) {
|
|
3306
3327
|
this.logger.error({ err, eventName }, "Failed to send heartbeat response via Telegram");
|
|
@@ -4581,7 +4602,7 @@ function registerHeartbeatCommand(program2) {
|
|
|
4581
4602
|
const { getConfig: getConfig2 } = await Promise.resolve().then(() => (init_config(), config_exports));
|
|
4582
4603
|
const { copilotClient: copilotClient2 } = await Promise.resolve().then(() => (init_client(), client_exports));
|
|
4583
4604
|
const { sessionManager: sessionManager2 } = await Promise.resolve().then(() => (init_session(), session_exports));
|
|
4584
|
-
const { splitMessage: splitMessage2 } = await Promise.resolve().then(() => (init_message(), message_exports));
|
|
4605
|
+
const { splitMessage: splitMessage2, safeSendMarkdown: safeSendMarkdown2 } = await Promise.resolve().then(() => (init_message(), message_exports));
|
|
4585
4606
|
let config;
|
|
4586
4607
|
try {
|
|
4587
4608
|
config = getConfig2();
|
|
@@ -4672,7 +4693,10 @@ ${state.processedIds.map((id) => `- ${id}`).join("\n")}` : "No previously proces
|
|
|
4672
4693
|
`;
|
|
4673
4694
|
const chunks = splitMessage2(header + cleanResponse);
|
|
4674
4695
|
for (const chunk of chunks) {
|
|
4675
|
-
await
|
|
4696
|
+
await safeSendMarkdown2(
|
|
4697
|
+
(text, extra) => telegram.sendMessage(chatId, text, extra),
|
|
4698
|
+
chunk
|
|
4699
|
+
);
|
|
4676
4700
|
}
|
|
4677
4701
|
console.log(" \u2713 Sent to Telegram");
|
|
4678
4702
|
} catch (err) {
|