agentcord 0.1.9 → 0.2.0
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/{bot-MOK6APSV.js → bot-HGP3MV5P.js} +14 -44
- package/dist/cli.js +1 -1
- package/package.json +1 -1
|
@@ -738,6 +738,12 @@ function detectNumberedOptions(text) {
|
|
|
738
738
|
const hasQuestion = /\?\s*$/.test(preamble.trim()) || /\b(which|choose|select|pick|prefer|would you like|how would you|what approach|option)\b/.test(preamble);
|
|
739
739
|
return hasQuestion ? options : null;
|
|
740
740
|
}
|
|
741
|
+
var ABORT_PATTERNS = ["abort", "cancel", "interrupt", "killed", "signal"];
|
|
742
|
+
function isAbortError(err) {
|
|
743
|
+
if (err instanceof Error && err.name === "AbortError") return true;
|
|
744
|
+
const msg = (err.message || "").toLowerCase();
|
|
745
|
+
return ABORT_PATTERNS.some((p) => msg.includes(p));
|
|
746
|
+
}
|
|
741
747
|
function detectYesNoPrompt(text) {
|
|
742
748
|
const lower = text.toLowerCase();
|
|
743
749
|
return /\b(y\/n|yes\/no|confirm|proceed)\b/.test(lower) || /\?\s*$/.test(text.trim()) && /\b(should|would you|do you want|shall)\b/.test(lower);
|
|
@@ -948,13 +954,6 @@ function buildSystemPromptParts(session) {
|
|
|
948
954
|
if (modePrompt) parts.push(modePrompt);
|
|
949
955
|
return parts;
|
|
950
956
|
}
|
|
951
|
-
function resetProviderSession(sessionId) {
|
|
952
|
-
const session = sessions.get(sessionId);
|
|
953
|
-
if (session) {
|
|
954
|
-
session.providerSessionId = void 0;
|
|
955
|
-
saveSessions();
|
|
956
|
-
}
|
|
957
|
-
}
|
|
958
957
|
async function* sendPrompt(sessionId, prompt) {
|
|
959
958
|
const session = sessions.get(sessionId);
|
|
960
959
|
if (!session) throw new Error(`Session "${sessionId}" not found`);
|
|
@@ -985,7 +984,7 @@ async function* sendPrompt(sessionId, prompt) {
|
|
|
985
984
|
}
|
|
986
985
|
session.messageCount++;
|
|
987
986
|
} catch (err) {
|
|
988
|
-
if (err
|
|
987
|
+
if (isAbortError(err)) {
|
|
989
988
|
} else {
|
|
990
989
|
throw err;
|
|
991
990
|
}
|
|
@@ -1026,7 +1025,7 @@ async function* continueSession(sessionId) {
|
|
|
1026
1025
|
}
|
|
1027
1026
|
session.messageCount++;
|
|
1028
1027
|
} catch (err) {
|
|
1029
|
-
if (err
|
|
1028
|
+
if (isAbortError(err)) {
|
|
1030
1029
|
} else {
|
|
1031
1030
|
throw err;
|
|
1032
1031
|
}
|
|
@@ -1254,15 +1253,6 @@ function renderCodexTodoListEmbed(event) {
|
|
|
1254
1253
|
}
|
|
1255
1254
|
|
|
1256
1255
|
// src/output-handler.ts
|
|
1257
|
-
var ABORT_PATTERNS = ["abort", "cancel", "interrupt", "killed", "signal"];
|
|
1258
|
-
function isAbortLike(err) {
|
|
1259
|
-
if (err.name === "AbortError") return true;
|
|
1260
|
-
const msg = (err.message || "").toLowerCase();
|
|
1261
|
-
return ABORT_PATTERNS.some((p) => msg.includes(p));
|
|
1262
|
-
}
|
|
1263
|
-
function isAbortError(errors) {
|
|
1264
|
-
return errors.some((e) => ABORT_PATTERNS.some((p) => e.toLowerCase().includes(p)));
|
|
1265
|
-
}
|
|
1266
1256
|
var expandableStore = /* @__PURE__ */ new Map();
|
|
1267
1257
|
var expandCounter = 0;
|
|
1268
1258
|
var pendingAnswersStore = /* @__PURE__ */ new Map();
|
|
@@ -1730,10 +1720,6 @@ ${statusLine}`);
|
|
|
1730
1720
|
${event.errors.join("\n")}
|
|
1731
1721
|
\`\`\``);
|
|
1732
1722
|
}
|
|
1733
|
-
if (!event.success && !isAbortError(event.errors)) {
|
|
1734
|
-
resetProviderSession(sessionId);
|
|
1735
|
-
streamer.append("\n-# Session reset \u2014 next message will start a fresh provider session.");
|
|
1736
|
-
}
|
|
1737
1723
|
await streamer.finalize();
|
|
1738
1724
|
const components = [];
|
|
1739
1725
|
const checkText = lastText || "";
|
|
@@ -1762,13 +1748,11 @@ ${event.message}
|
|
|
1762
1748
|
}
|
|
1763
1749
|
} catch (err) {
|
|
1764
1750
|
await streamer.finalize();
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
resetProviderSession(sessionId);
|
|
1751
|
+
if (!isAbortError(err)) {
|
|
1752
|
+
const errMsg = err.message || "";
|
|
1768
1753
|
const embed = new EmbedBuilder2().setColor(15158332).setTitle("Error").setDescription(`\`\`\`
|
|
1769
1754
|
${errMsg}
|
|
1770
|
-
|
|
1771
|
-
-# Session reset \u2014 next message will start a fresh provider session.`);
|
|
1755
|
+
\`\`\``);
|
|
1772
1756
|
await channel.send({ embeds: [embed] });
|
|
1773
1757
|
}
|
|
1774
1758
|
} finally {
|
|
@@ -3055,17 +3039,7 @@ async function handleMessage(message) {
|
|
|
3055
3039
|
userLastMessage.set(message.author.id, now);
|
|
3056
3040
|
if (session.isGenerating) {
|
|
3057
3041
|
abortSession(session.id);
|
|
3058
|
-
|
|
3059
|
-
while (session.isGenerating && Date.now() < deadline) {
|
|
3060
|
-
await new Promise((r) => setTimeout(r, 100));
|
|
3061
|
-
}
|
|
3062
|
-
if (session.isGenerating) {
|
|
3063
|
-
await message.reply({
|
|
3064
|
-
content: "Could not interrupt the current generation. Try `/session stop`.",
|
|
3065
|
-
allowedMentions: { repliedUser: false }
|
|
3066
|
-
});
|
|
3067
|
-
return;
|
|
3068
|
-
}
|
|
3042
|
+
await new Promise((r) => setTimeout(r, 200));
|
|
3069
3043
|
}
|
|
3070
3044
|
const text = message.content.trim();
|
|
3071
3045
|
const imageAttachments = message.attachments.filter(
|
|
@@ -3126,15 +3100,11 @@ ${result.value.content}
|
|
|
3126
3100
|
const stream = sendPrompt(session.id, prompt);
|
|
3127
3101
|
await handleOutputStream(stream, channel, session.id, session.verbose, session.mode, session.provider);
|
|
3128
3102
|
} catch (err) {
|
|
3129
|
-
|
|
3130
|
-
const isAbort = err.name === "AbortError" || /abort|cancel|interrupt/i.test(errMsg);
|
|
3131
|
-
if (isAbort) {
|
|
3103
|
+
if (isAbortError(err)) {
|
|
3132
3104
|
return;
|
|
3133
3105
|
}
|
|
3134
|
-
resetProviderSession(session.id);
|
|
3135
3106
|
await message.reply({
|
|
3136
|
-
content: `Error: ${
|
|
3137
|
-
-# Session reset \u2014 next message will start a fresh provider session.`,
|
|
3107
|
+
content: `Error: ${err.message || "Unknown error"}`,
|
|
3138
3108
|
allowedMentions: { repliedUser: false }
|
|
3139
3109
|
});
|
|
3140
3110
|
}
|
package/dist/cli.js
CHANGED
|
@@ -18,7 +18,7 @@ switch (command) {
|
|
|
18
18
|
console.log("Run \x1B[36magentcord setup\x1B[0m to configure.\n");
|
|
19
19
|
process.exit(1);
|
|
20
20
|
}
|
|
21
|
-
const { startBot } = await import("./bot-
|
|
21
|
+
const { startBot } = await import("./bot-HGP3MV5P.js");
|
|
22
22
|
console.log("agentcord starting...");
|
|
23
23
|
await startBot();
|
|
24
24
|
break;
|