@herdctl/discord 1.1.1 → 1.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/README.md +14 -1
- package/dist/__tests__/attachments.test.d.ts +8 -0
- package/dist/__tests__/attachments.test.d.ts.map +1 -0
- package/dist/__tests__/attachments.test.js +439 -0
- package/dist/__tests__/attachments.test.js.map +1 -0
- package/dist/__tests__/discord-connector.test.js +4 -1
- package/dist/__tests__/discord-connector.test.js.map +1 -1
- package/dist/__tests__/embeds.test.d.ts +2 -0
- package/dist/__tests__/embeds.test.d.ts.map +1 -0
- package/dist/__tests__/embeds.test.js +47 -0
- package/dist/__tests__/embeds.test.js.map +1 -0
- package/dist/__tests__/logger.test.js +4 -1
- package/dist/__tests__/logger.test.js.map +1 -1
- package/dist/__tests__/manager.test.js +1193 -28
- package/dist/__tests__/manager.test.js.map +1 -1
- package/dist/__tests__/message-normalizer.test.d.ts +2 -0
- package/dist/__tests__/message-normalizer.test.d.ts.map +1 -0
- package/dist/__tests__/message-normalizer.test.js +83 -0
- package/dist/__tests__/message-normalizer.test.js.map +1 -0
- package/dist/__tests__/runtime-parity.test.d.ts +2 -0
- package/dist/__tests__/runtime-parity.test.d.ts.map +1 -0
- package/dist/__tests__/runtime-parity.test.js +157 -0
- package/dist/__tests__/runtime-parity.test.js.map +1 -0
- package/dist/auto-mode-handler.d.ts.map +1 -1
- package/dist/auto-mode-handler.js +9 -0
- package/dist/auto-mode-handler.js.map +1 -1
- package/dist/commands/__tests__/command-manager.test.js +63 -3
- package/dist/commands/__tests__/command-manager.test.js.map +1 -1
- package/dist/commands/__tests__/extended-commands.test.d.ts +2 -0
- package/dist/commands/__tests__/extended-commands.test.d.ts.map +1 -0
- package/dist/commands/__tests__/extended-commands.test.js +159 -0
- package/dist/commands/__tests__/extended-commands.test.js.map +1 -0
- package/dist/commands/__tests__/help.test.js +5 -6
- package/dist/commands/__tests__/help.test.js.map +1 -1
- package/dist/commands/__tests__/reset.test.js +14 -6
- package/dist/commands/__tests__/reset.test.js.map +1 -1
- package/dist/commands/__tests__/status.test.js +27 -25
- package/dist/commands/__tests__/status.test.js.map +1 -1
- package/dist/commands/cancel.d.ts +3 -0
- package/dist/commands/cancel.d.ts.map +1 -0
- package/dist/commands/cancel.js +7 -0
- package/dist/commands/cancel.js.map +1 -0
- package/dist/commands/command-manager.d.ts +4 -1
- package/dist/commands/command-manager.d.ts.map +1 -1
- package/dist/commands/command-manager.js +65 -3
- package/dist/commands/command-manager.js.map +1 -1
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +33 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/help.d.ts +1 -1
- package/dist/commands/help.d.ts.map +1 -1
- package/dist/commands/help.js +26 -12
- package/dist/commands/help.js.map +1 -1
- package/dist/commands/index.d.ts +12 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +12 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/new.d.ts +3 -0
- package/dist/commands/new.d.ts.map +1 -0
- package/dist/commands/new.js +22 -0
- package/dist/commands/new.js.map +1 -0
- package/dist/commands/ping.d.ts +3 -0
- package/dist/commands/ping.d.ts.map +1 -0
- package/dist/commands/ping.js +22 -0
- package/dist/commands/ping.js.map +1 -0
- package/dist/commands/reset.d.ts +1 -1
- package/dist/commands/reset.d.ts.map +1 -1
- package/dist/commands/reset.js +13 -13
- package/dist/commands/reset.js.map +1 -1
- package/dist/commands/retry.d.ts +3 -0
- package/dist/commands/retry.d.ts.map +1 -0
- package/dist/commands/retry.js +25 -0
- package/dist/commands/retry.js.map +1 -0
- package/dist/commands/session.d.ts +3 -0
- package/dist/commands/session.d.ts.map +1 -0
- package/dist/commands/session.js +47 -0
- package/dist/commands/session.js.map +1 -0
- package/dist/commands/skill.d.ts +3 -0
- package/dist/commands/skill.d.ts.map +1 -0
- package/dist/commands/skill.js +44 -0
- package/dist/commands/skill.js.map +1 -0
- package/dist/commands/skills.d.ts +3 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +30 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/status.d.ts +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +25 -18
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts +3 -0
- package/dist/commands/stop.d.ts.map +1 -0
- package/dist/commands/stop.js +25 -0
- package/dist/commands/stop.js.map +1 -0
- package/dist/commands/tools.d.ts +3 -0
- package/dist/commands/tools.d.ts.map +1 -0
- package/dist/commands/tools.js +30 -0
- package/dist/commands/tools.js.map +1 -0
- package/dist/commands/types.d.ts +71 -1
- package/dist/commands/types.d.ts.map +1 -1
- package/dist/commands/usage.d.ts +3 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +58 -0
- package/dist/commands/usage.js.map +1 -0
- package/dist/discord-connector.d.ts +10 -1
- package/dist/discord-connector.d.ts.map +1 -1
- package/dist/discord-connector.js +153 -8
- package/dist/discord-connector.js.map +1 -1
- package/dist/embeds.d.ts +47 -0
- package/dist/embeds.d.ts.map +1 -0
- package/dist/embeds.js +121 -0
- package/dist/embeds.js.map +1 -0
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/manager.d.ts +53 -24
- package/dist/manager.d.ts.map +1 -1
- package/dist/manager.js +1031 -217
- package/dist/manager.js.map +1 -1
- package/dist/mention-handler.d.ts.map +1 -1
- package/dist/mention-handler.js +27 -0
- package/dist/mention-handler.js.map +1 -1
- package/dist/message-normalizer.d.ts +40 -0
- package/dist/message-normalizer.d.ts.map +1 -0
- package/dist/message-normalizer.js +99 -0
- package/dist/message-normalizer.js.map +1 -0
- package/dist/types.d.ts +80 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/voice-transcriber.d.ts +31 -0
- package/dist/voice-transcriber.d.ts.map +1 -0
- package/dist/voice-transcriber.js +44 -0
- package/dist/voice-transcriber.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-normalizer.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/message-normalizer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { normalizeDiscordMessage } from "../message-normalizer.js";
|
|
3
|
+
describe("normalizeDiscordMessage", () => {
|
|
4
|
+
it("extracts assistant final content and tool uses", () => {
|
|
5
|
+
const events = normalizeDiscordMessage({
|
|
6
|
+
type: "assistant",
|
|
7
|
+
message: {
|
|
8
|
+
id: "msg-1",
|
|
9
|
+
stop_reason: "end_turn",
|
|
10
|
+
content: [
|
|
11
|
+
{ type: "text", text: "Done." },
|
|
12
|
+
{ type: "tool_use", id: "tool-1", name: "Bash", input: { command: "ls -la" } },
|
|
13
|
+
],
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
expect(events).toHaveLength(1);
|
|
17
|
+
expect(events[0]).toMatchObject({
|
|
18
|
+
kind: "assistant_final",
|
|
19
|
+
content: "Done.",
|
|
20
|
+
messageId: "msg-1",
|
|
21
|
+
});
|
|
22
|
+
if (events[0].kind === "assistant_final") {
|
|
23
|
+
expect(events[0].toolUses).toHaveLength(1);
|
|
24
|
+
expect(events[0].toolUses[0].name).toBe("Bash");
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
it("extracts stream_event text delta", () => {
|
|
28
|
+
const events = normalizeDiscordMessage({
|
|
29
|
+
type: "stream_event",
|
|
30
|
+
event: {
|
|
31
|
+
type: "content_block_delta",
|
|
32
|
+
delta: { type: "text_delta", text: "hello " },
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
expect(events).toEqual([{ kind: "assistant_delta", delta: "hello " }]);
|
|
36
|
+
});
|
|
37
|
+
it("extracts tool results from top-level tool_use_result", () => {
|
|
38
|
+
const events = normalizeDiscordMessage({
|
|
39
|
+
type: "user",
|
|
40
|
+
tool_use_result: "output text",
|
|
41
|
+
});
|
|
42
|
+
expect(events).toHaveLength(1);
|
|
43
|
+
expect(events[0].kind).toBe("tool_results");
|
|
44
|
+
if (events[0].kind === "tool_results") {
|
|
45
|
+
expect(events[0].results).toHaveLength(1);
|
|
46
|
+
expect(events[0].results[0]).toMatchObject({ output: "output text", isError: false });
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
it("normalizes tool_progress and auth_status", () => {
|
|
50
|
+
const toolProgress = normalizeDiscordMessage({
|
|
51
|
+
type: "tool_progress",
|
|
52
|
+
tool_name: "Bash",
|
|
53
|
+
});
|
|
54
|
+
expect(toolProgress).toEqual([{ kind: "tool_progress", content: "Tool Bash in progress" }]);
|
|
55
|
+
const auth = normalizeDiscordMessage({
|
|
56
|
+
type: "auth_status",
|
|
57
|
+
output: ["Refreshing token", "Retrying..."],
|
|
58
|
+
});
|
|
59
|
+
expect(auth).toEqual([
|
|
60
|
+
{ kind: "auth_status", content: "Refreshing token\nRetrying...", isError: false },
|
|
61
|
+
]);
|
|
62
|
+
});
|
|
63
|
+
it("produces equivalent result events for SDK and CLI-style result payloads", () => {
|
|
64
|
+
const sdkResult = normalizeDiscordMessage({
|
|
65
|
+
type: "result",
|
|
66
|
+
result: "All done",
|
|
67
|
+
is_error: false,
|
|
68
|
+
duration_ms: 1200,
|
|
69
|
+
num_turns: 2,
|
|
70
|
+
usage: { input_tokens: 100, output_tokens: 50 },
|
|
71
|
+
});
|
|
72
|
+
const cliSyntheticResult = normalizeDiscordMessage({
|
|
73
|
+
type: "result",
|
|
74
|
+
result: "All done",
|
|
75
|
+
is_error: false,
|
|
76
|
+
duration_ms: 1200,
|
|
77
|
+
num_turns: 2,
|
|
78
|
+
usage: { input_tokens: 100, output_tokens: 50 },
|
|
79
|
+
});
|
|
80
|
+
expect(sdkResult).toEqual(cliSyntheticResult);
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=message-normalizer.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-normalizer.test.js","sourceRoot":"","sources":["../../src/__tests__/message-normalizer.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-parity.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/runtime-parity.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { normalizeDiscordMessage } from "../message-normalizer.js";
|
|
3
|
+
function renderTimeline(messages) {
|
|
4
|
+
const lines = [];
|
|
5
|
+
for (const message of messages) {
|
|
6
|
+
for (const event of normalizeDiscordMessage(message)) {
|
|
7
|
+
switch (event.kind) {
|
|
8
|
+
case "assistant_delta":
|
|
9
|
+
lines.push(`delta:${event.delta}`);
|
|
10
|
+
break;
|
|
11
|
+
case "assistant_final":
|
|
12
|
+
if (event.content) {
|
|
13
|
+
lines.push(`answer:${event.content}`);
|
|
14
|
+
}
|
|
15
|
+
if (event.toolUses.length > 0) {
|
|
16
|
+
lines.push(`tools:${event.toolUses.map((t) => t.name).join(",")}`);
|
|
17
|
+
}
|
|
18
|
+
break;
|
|
19
|
+
case "tool_results":
|
|
20
|
+
for (const result of event.results) {
|
|
21
|
+
lines.push(`tool_result:${result.isError ? "error" : "ok"}:${result.output.slice(0, 40)}`);
|
|
22
|
+
}
|
|
23
|
+
break;
|
|
24
|
+
case "system_status":
|
|
25
|
+
lines.push(`system:${event.status}`);
|
|
26
|
+
break;
|
|
27
|
+
case "tool_progress":
|
|
28
|
+
lines.push(`progress:${event.content}`);
|
|
29
|
+
break;
|
|
30
|
+
case "auth_status":
|
|
31
|
+
lines.push(`auth:${event.isError ? "error" : "ok"}:${event.content}`);
|
|
32
|
+
break;
|
|
33
|
+
case "result":
|
|
34
|
+
lines.push(`result:${event.isError ? "error" : "ok"}:${event.resultText ?? ""}`);
|
|
35
|
+
break;
|
|
36
|
+
case "error":
|
|
37
|
+
lines.push(`error:${event.message}`);
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return lines;
|
|
43
|
+
}
|
|
44
|
+
const fixtures = [
|
|
45
|
+
{
|
|
46
|
+
name: "tool-heavy flow",
|
|
47
|
+
sdk: [
|
|
48
|
+
{
|
|
49
|
+
type: "assistant",
|
|
50
|
+
message: {
|
|
51
|
+
id: "a1",
|
|
52
|
+
stop_reason: null,
|
|
53
|
+
content: [{ type: "tool_use", id: "t1", name: "Bash", input: { command: "ls -la" } }],
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: "user",
|
|
58
|
+
message: {
|
|
59
|
+
content: [{ type: "tool_result", tool_use_id: "t1", content: "file-a\nfile-b" }],
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
type: "assistant",
|
|
64
|
+
message: {
|
|
65
|
+
id: "a1",
|
|
66
|
+
stop_reason: "end_turn",
|
|
67
|
+
content: [{ type: "text", text: "Done with listing." }],
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
{ type: "result", result: "Done with listing.", is_error: false },
|
|
71
|
+
],
|
|
72
|
+
cli: [
|
|
73
|
+
{
|
|
74
|
+
type: "assistant",
|
|
75
|
+
message: {
|
|
76
|
+
id: "a1",
|
|
77
|
+
stop_reason: null,
|
|
78
|
+
content: [{ type: "tool_use", id: "t1", name: "Bash", input: { command: "ls -la" } }],
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
{ type: "user", tool_use_result: "file-a\nfile-b" },
|
|
82
|
+
{
|
|
83
|
+
type: "assistant",
|
|
84
|
+
message: {
|
|
85
|
+
id: "a1",
|
|
86
|
+
stop_reason: "end_turn",
|
|
87
|
+
content: [{ type: "text", text: "Done with listing." }],
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
{ type: "result", result: "Done with listing.", is_error: false },
|
|
91
|
+
],
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
name: "streaming answer flow",
|
|
95
|
+
sdk: [
|
|
96
|
+
{
|
|
97
|
+
type: "stream_event",
|
|
98
|
+
event: { type: "content_block_delta", delta: { type: "text_delta", text: "Hello " } },
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
type: "stream_event",
|
|
102
|
+
event: { type: "content_block_delta", delta: { type: "text_delta", text: "world" } },
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: "assistant",
|
|
106
|
+
message: {
|
|
107
|
+
id: "a2",
|
|
108
|
+
stop_reason: "end_turn",
|
|
109
|
+
content: [{ type: "text", text: "Hello world" }],
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
{ type: "result", result: "Hello world", is_error: false },
|
|
113
|
+
],
|
|
114
|
+
cli: [
|
|
115
|
+
{
|
|
116
|
+
type: "stream_event",
|
|
117
|
+
event: { type: "content_block_delta", delta: { type: "text_delta", text: "Hello " } },
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: "stream_event",
|
|
121
|
+
event: { type: "content_block_delta", delta: { type: "text_delta", text: "world" } },
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
type: "assistant",
|
|
125
|
+
message: {
|
|
126
|
+
id: "a2",
|
|
127
|
+
stop_reason: "end_turn",
|
|
128
|
+
content: [{ type: "text", text: "Hello world" }],
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
{ type: "result", result: "Hello world", is_error: false },
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: "error/status flow",
|
|
136
|
+
sdk: [
|
|
137
|
+
{ type: "tool_progress", tool_name: "Read" },
|
|
138
|
+
{ type: "auth_status", output: ["Authenticating"] },
|
|
139
|
+
{ type: "auth_status", error: "Token expired" },
|
|
140
|
+
{ type: "error", content: "Execution failed" },
|
|
141
|
+
{ type: "result", result: "Execution failed", is_error: true },
|
|
142
|
+
],
|
|
143
|
+
cli: [
|
|
144
|
+
{ type: "tool_progress", tool_name: "Read" },
|
|
145
|
+
{ type: "auth_status", output: ["Authenticating"] },
|
|
146
|
+
{ type: "auth_status", error: "Token expired" },
|
|
147
|
+
{ type: "error", message: "Execution failed" },
|
|
148
|
+
{ type: "result", result: "Execution failed", is_error: true },
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
];
|
|
152
|
+
describe("runtime stream parity", () => {
|
|
153
|
+
it.each(fixtures)("produces equivalent visible timeline for $name", (fixture) => {
|
|
154
|
+
expect(renderTimeline(fixture.sdk)).toEqual(renderTimeline(fixture.cli));
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
//# sourceMappingURL=runtime-parity.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-parity.test.js","sourceRoot":"","sources":["../../src/__tests__/runtime-parity.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-mode-handler.d.ts","sourceRoot":"","sources":["../src/auto-mode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM1E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzB,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,CAEnF;AAMD;;GAEG;AACH,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,gCAAgC,KAAK,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,EAAE,GACrB;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQrD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,MAAM,EAAE,YAAY,EAAE,EACtB,QAAQ,CAAC,EAAE,MAAM,GAChB,qBAAqB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"auto-mode-handler.d.ts","sourceRoot":"","sources":["../src/auto-mode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM1E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzB,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,CAEnF;AAMD;;GAEG;AACH,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,gCAAgC,KAAK,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,EAAE,GACrB;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQrD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,MAAM,EAAE,YAAY,EAAE,EACtB,QAAQ,CAAC,EAAE,MAAM,GAChB,qBAAqB,GAAG,IAAI,CA0C9B"}
|
|
@@ -133,6 +133,15 @@ export function resolveChannelConfig(channelId, guildId, guilds, dmConfig) {
|
|
|
133
133
|
}
|
|
134
134
|
const channelConfig = guildConfig.channels?.find((c) => c.id === channelId);
|
|
135
135
|
if (!channelConfig) {
|
|
136
|
+
// Fall back to guild-level default mode (e.g., respond to @mentions in any channel)
|
|
137
|
+
if (guildConfig.default_channel_mode) {
|
|
138
|
+
return {
|
|
139
|
+
mode: guildConfig.default_channel_mode,
|
|
140
|
+
contextMessages: DEFAULT_CHANNEL_CONTEXT_MESSAGES,
|
|
141
|
+
isDM: false,
|
|
142
|
+
guildId,
|
|
143
|
+
};
|
|
144
|
+
}
|
|
136
145
|
return null;
|
|
137
146
|
}
|
|
138
147
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-mode-handler.js","sourceRoot":"","sources":["../src/auto-mode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,iBAAiB,IAAI,qBAAqB,EAC1C,SAAS,IAAI,aAAa,EAC1B,WAAW,IAAI,eAAe,GAE/B,MAAM,eAAe,CAAC;AAqBvB,gFAAgF;AAChF,yDAAyD;AACzD,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,QAAiB;IACzC,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,QAAiB;IACjE,OAAO,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,2CAA2C;AAC3C,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAAiB,EACjB,MAAsB;IAEtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,OAAsB,EACtB,MAAsB,EACtB,QAAiB;IAEjB,aAAa;IACb,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,2BAA2B;QAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC;YACzB,eAAe,EAAE,2BAA2B;YAC5C,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,wBAAwB;IACxB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IAC5E,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,eAAe,EAAE,aAAa,CAAC,gBAAgB;QAC/C,IAAI,EAAE,KAAK;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"auto-mode-handler.js","sourceRoot":"","sources":["../src/auto-mode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,iBAAiB,IAAI,qBAAqB,EAC1C,SAAS,IAAI,aAAa,EAC1B,WAAW,IAAI,eAAe,GAE/B,MAAM,eAAe,CAAC;AAqBvB,gFAAgF;AAChF,yDAAyD;AACzD,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,QAAiB;IACzC,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,QAAiB;IACjE,OAAO,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,2CAA2C;AAC3C,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAAiB,EACjB,MAAsB;IAEtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,OAAsB,EACtB,MAAsB,EACtB,QAAiB;IAEjB,aAAa;IACb,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,2BAA2B;QAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC;YACzB,eAAe,EAAE,2BAA2B;YAC5C,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,wBAAwB;IACxB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IAC5E,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,oFAAoF;QACpF,IAAI,WAAW,CAAC,oBAAoB,EAAE,CAAC;YACrC,OAAO;gBACL,IAAI,EAAE,WAAW,CAAC,oBAAoB;gBACtC,eAAe,EAAE,gCAAgC;gBACjD,IAAI,EAAE,KAAK;gBACX,OAAO;aACR,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,eAAe,EAAE,aAAa,CAAC,gBAAgB;QAC/C,IAAI,EAAE,KAAK;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -17,6 +17,7 @@ vi.mock("discord.js", async () => {
|
|
|
17
17
|
REST: MockREST,
|
|
18
18
|
Routes: {
|
|
19
19
|
applicationCommands: (clientId) => `/applications/${clientId}/commands`,
|
|
20
|
+
applicationGuildCommands: (clientId, guildId) => `/applications/${clientId}/guilds/${guildId}/commands`,
|
|
20
21
|
},
|
|
21
22
|
};
|
|
22
23
|
});
|
|
@@ -130,8 +131,19 @@ describe("CommandManager", () => {
|
|
|
130
131
|
});
|
|
131
132
|
const commands = manager.getCommands();
|
|
132
133
|
expect(commands.has("help")).toBe(true);
|
|
134
|
+
expect(commands.has("ping")).toBe(true);
|
|
135
|
+
expect(commands.has("config")).toBe(true);
|
|
136
|
+
expect(commands.has("tools")).toBe(true);
|
|
137
|
+
expect(commands.has("usage")).toBe(true);
|
|
138
|
+
expect(commands.has("skills")).toBe(true);
|
|
139
|
+
expect(commands.has("skill")).toBe(true);
|
|
133
140
|
expect(commands.has("reset")).toBe(true);
|
|
134
141
|
expect(commands.has("status")).toBe(true);
|
|
142
|
+
expect(commands.has("new")).toBe(true);
|
|
143
|
+
expect(commands.has("session")).toBe(true);
|
|
144
|
+
expect(commands.has("stop")).toBe(true);
|
|
145
|
+
expect(commands.has("cancel")).toBe(true);
|
|
146
|
+
expect(commands.has("retry")).toBe(true);
|
|
135
147
|
});
|
|
136
148
|
});
|
|
137
149
|
describe("registerCommands", () => {
|
|
@@ -150,6 +162,22 @@ describe("CommandManager", () => {
|
|
|
150
162
|
body: expect.any(Array),
|
|
151
163
|
}));
|
|
152
164
|
});
|
|
165
|
+
it("registers commands at guild scope when configured", async () => {
|
|
166
|
+
const manager = new CommandManager({
|
|
167
|
+
agentName: "test-agent",
|
|
168
|
+
client,
|
|
169
|
+
botToken: "test-token",
|
|
170
|
+
sessionManager,
|
|
171
|
+
getConnectorState: () => connectorState,
|
|
172
|
+
logger,
|
|
173
|
+
commandRegistration: {
|
|
174
|
+
scope: "guild",
|
|
175
|
+
guildId: "guild-123",
|
|
176
|
+
},
|
|
177
|
+
});
|
|
178
|
+
await manager.registerCommands();
|
|
179
|
+
expect(mockRestPut).toHaveBeenCalledWith(expect.stringContaining("/guilds/guild-123/commands"), expect.any(Object));
|
|
180
|
+
});
|
|
153
181
|
it("logs successful registration", async () => {
|
|
154
182
|
const manager = new CommandManager({
|
|
155
183
|
agentName: "test-agent",
|
|
@@ -285,9 +313,15 @@ describe("CommandManager", () => {
|
|
|
285
313
|
const interaction = createMockInteraction("help");
|
|
286
314
|
await manager.handleInteraction(interaction);
|
|
287
315
|
const reply = interaction.reply;
|
|
288
|
-
// Help command should include agent name in
|
|
316
|
+
// Help command should include agent name in embed footer
|
|
289
317
|
expect(reply).toHaveBeenCalledWith(expect.objectContaining({
|
|
290
|
-
|
|
318
|
+
embeds: expect.arrayContaining([
|
|
319
|
+
expect.objectContaining({
|
|
320
|
+
footer: expect.objectContaining({
|
|
321
|
+
text: expect.stringContaining("my-agent"),
|
|
322
|
+
}),
|
|
323
|
+
}),
|
|
324
|
+
]),
|
|
291
325
|
}));
|
|
292
326
|
});
|
|
293
327
|
});
|
|
@@ -303,7 +337,33 @@ describe("CommandManager", () => {
|
|
|
303
337
|
});
|
|
304
338
|
const commands = manager.getCommands();
|
|
305
339
|
expect(commands).toBeInstanceOf(Map);
|
|
306
|
-
expect(commands.size).toBe(
|
|
340
|
+
expect(commands.size).toBe(14);
|
|
341
|
+
});
|
|
342
|
+
});
|
|
343
|
+
describe("handleAutocomplete", () => {
|
|
344
|
+
it("responds with skill suggestions", async () => {
|
|
345
|
+
const manager = new CommandManager({
|
|
346
|
+
agentName: "test-agent",
|
|
347
|
+
client,
|
|
348
|
+
botToken: "test-token",
|
|
349
|
+
sessionManager,
|
|
350
|
+
getConnectorState: () => connectorState,
|
|
351
|
+
logger,
|
|
352
|
+
commandActions: {
|
|
353
|
+
listSkills: vi.fn().mockResolvedValue([
|
|
354
|
+
{ name: "cloudflare-deploy", description: "Deploy apps to Cloudflare" },
|
|
355
|
+
{ name: "pdf", description: "Work with PDF documents" },
|
|
356
|
+
]),
|
|
357
|
+
},
|
|
358
|
+
});
|
|
359
|
+
const interaction = {
|
|
360
|
+
commandName: "skill",
|
|
361
|
+
options: { getFocused: vi.fn().mockReturnValue("pdf") },
|
|
362
|
+
respond: vi.fn().mockResolvedValue(undefined),
|
|
363
|
+
responded: false,
|
|
364
|
+
};
|
|
365
|
+
await manager.handleAutocomplete(interaction);
|
|
366
|
+
expect(interaction.respond).toHaveBeenCalledWith(expect.arrayContaining([expect.objectContaining({ value: "pdf" })]));
|
|
307
367
|
});
|
|
308
368
|
});
|
|
309
369
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-manager.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/command-manager.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command-manager.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/command-manager.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extended-commands.test.d.ts","sourceRoot":"","sources":["../../../src/commands/__tests__/extended-commands.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { configCommand } from "../config.js";
|
|
3
|
+
import { newCommand } from "../new.js";
|
|
4
|
+
import { pingCommand } from "../ping.js";
|
|
5
|
+
import { retryCommand } from "../retry.js";
|
|
6
|
+
import { sessionCommand } from "../session.js";
|
|
7
|
+
import { skillCommand } from "../skill.js";
|
|
8
|
+
import { skillsCommand } from "../skills.js";
|
|
9
|
+
import { stopCommand } from "../stop.js";
|
|
10
|
+
import { toolsCommand } from "../tools.js";
|
|
11
|
+
import { usageCommand } from "../usage.js";
|
|
12
|
+
function makeContext() {
|
|
13
|
+
const interaction = {
|
|
14
|
+
channelId: "channel-1",
|
|
15
|
+
reply: vi.fn().mockResolvedValue(undefined),
|
|
16
|
+
options: {
|
|
17
|
+
getString: vi.fn((key) => (key === "name" ? "pdf" : "inspect this file")),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
const sessionManager = {
|
|
21
|
+
getSession: vi.fn().mockResolvedValue({
|
|
22
|
+
sessionId: "session-1234567890abcdefghijkl",
|
|
23
|
+
lastMessageAt: new Date().toISOString(),
|
|
24
|
+
}),
|
|
25
|
+
clearSession: vi.fn().mockResolvedValue(true),
|
|
26
|
+
};
|
|
27
|
+
return {
|
|
28
|
+
interaction,
|
|
29
|
+
client: {},
|
|
30
|
+
agentName: "test-agent",
|
|
31
|
+
sessionManager,
|
|
32
|
+
connectorState: {
|
|
33
|
+
status: "connected",
|
|
34
|
+
connectedAt: new Date().toISOString(),
|
|
35
|
+
disconnectedAt: null,
|
|
36
|
+
reconnectAttempts: 0,
|
|
37
|
+
lastError: null,
|
|
38
|
+
botUser: null,
|
|
39
|
+
rateLimits: {
|
|
40
|
+
totalCount: 0,
|
|
41
|
+
lastRateLimitAt: null,
|
|
42
|
+
isRateLimited: false,
|
|
43
|
+
currentResetTime: 0,
|
|
44
|
+
},
|
|
45
|
+
messageStats: { received: 0, sent: 0, ignored: 0 },
|
|
46
|
+
},
|
|
47
|
+
commandActions: {
|
|
48
|
+
stopRun: vi.fn().mockResolvedValue({ success: true, message: "stopped" }),
|
|
49
|
+
retryRun: vi.fn().mockResolvedValue({ success: true, message: "retried" }),
|
|
50
|
+
runSkill: vi.fn().mockResolvedValue({ success: true, message: "skill started" }),
|
|
51
|
+
listSkills: vi.fn().mockResolvedValue([{ name: "pdf", description: "Work with PDFs" }]),
|
|
52
|
+
getUsage: vi.fn().mockResolvedValue({
|
|
53
|
+
timestamp: new Date().toISOString(),
|
|
54
|
+
numTurns: 2,
|
|
55
|
+
inputTokens: 120,
|
|
56
|
+
outputTokens: 30,
|
|
57
|
+
isError: false,
|
|
58
|
+
}),
|
|
59
|
+
getCumulativeUsage: vi.fn().mockResolvedValue({
|
|
60
|
+
totalRuns: 5,
|
|
61
|
+
totalSuccesses: 4,
|
|
62
|
+
totalFailures: 1,
|
|
63
|
+
totalCostUsd: 0.1234,
|
|
64
|
+
totalInputTokens: 5000,
|
|
65
|
+
totalOutputTokens: 1200,
|
|
66
|
+
totalDurationMs: 45000,
|
|
67
|
+
firstRunAt: new Date(Date.now() - 3600000).toISOString(),
|
|
68
|
+
lastRunAt: new Date().toISOString(),
|
|
69
|
+
}),
|
|
70
|
+
getAgentConfig: vi.fn().mockResolvedValue({
|
|
71
|
+
runtime: "sdk",
|
|
72
|
+
model: "claude-sonnet-4",
|
|
73
|
+
permissionMode: "acceptEdits",
|
|
74
|
+
workingDirectory: "/tmp/project",
|
|
75
|
+
allowedTools: ["Read"],
|
|
76
|
+
deniedTools: [],
|
|
77
|
+
mcpServers: ["filesystem"],
|
|
78
|
+
}),
|
|
79
|
+
getSessionInfo: vi.fn().mockResolvedValue({
|
|
80
|
+
activeJobId: "job-123",
|
|
81
|
+
lastPrompt: "hello",
|
|
82
|
+
}),
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
describe("extended commands", () => {
|
|
87
|
+
it("executes /new", async () => {
|
|
88
|
+
const ctx = makeContext();
|
|
89
|
+
await newCommand.execute(ctx);
|
|
90
|
+
expect(ctx.interaction.reply).toHaveBeenCalledOnce();
|
|
91
|
+
});
|
|
92
|
+
it("executes /session", async () => {
|
|
93
|
+
const ctx = makeContext();
|
|
94
|
+
await sessionCommand.execute(ctx);
|
|
95
|
+
expect(ctx.interaction.reply).toHaveBeenCalledOnce();
|
|
96
|
+
});
|
|
97
|
+
it("executes /stop", async () => {
|
|
98
|
+
const ctx = makeContext();
|
|
99
|
+
await stopCommand.execute(ctx);
|
|
100
|
+
expect(ctx.interaction.reply).toHaveBeenCalledOnce();
|
|
101
|
+
});
|
|
102
|
+
it("executes /retry", async () => {
|
|
103
|
+
const ctx = makeContext();
|
|
104
|
+
await retryCommand.execute(ctx);
|
|
105
|
+
expect(ctx.interaction.reply).toHaveBeenCalledOnce();
|
|
106
|
+
});
|
|
107
|
+
it("executes /skills and /skill", async () => {
|
|
108
|
+
const ctx = makeContext();
|
|
109
|
+
await skillsCommand.execute(ctx);
|
|
110
|
+
await skillCommand.execute(ctx);
|
|
111
|
+
expect(ctx.interaction.reply).toHaveBeenCalledTimes(2);
|
|
112
|
+
});
|
|
113
|
+
it("executes /usage, /tools, /config, and /ping", async () => {
|
|
114
|
+
const ctx = makeContext();
|
|
115
|
+
await usageCommand.execute(ctx);
|
|
116
|
+
await toolsCommand.execute(ctx);
|
|
117
|
+
await configCommand.execute(ctx);
|
|
118
|
+
await pingCommand.execute(ctx);
|
|
119
|
+
expect(ctx.interaction.reply).toHaveBeenCalledTimes(4);
|
|
120
|
+
});
|
|
121
|
+
it("/usage shows both last run and cumulative embeds", async () => {
|
|
122
|
+
const ctx = makeContext();
|
|
123
|
+
await usageCommand.execute(ctx);
|
|
124
|
+
const call = ctx.interaction.reply.mock.calls[0][0];
|
|
125
|
+
expect(call.embeds).toHaveLength(2);
|
|
126
|
+
expect(call.embeds[0].title).toBe("Last Run");
|
|
127
|
+
expect(call.embeds[1].title).toBe("Session Totals");
|
|
128
|
+
expect(call.embeds[1].description).toContain("5");
|
|
129
|
+
expect(call.embeds[1].description).toContain("4 ok");
|
|
130
|
+
expect(call.ephemeral).toBe(true);
|
|
131
|
+
});
|
|
132
|
+
it("/usage shows only cumulative when no last run", async () => {
|
|
133
|
+
const ctx = makeContext();
|
|
134
|
+
ctx.commandActions.getUsage = vi.fn().mockResolvedValue(null);
|
|
135
|
+
await usageCommand.execute(ctx);
|
|
136
|
+
const call = ctx.interaction.reply.mock.calls[0][0];
|
|
137
|
+
expect(call.embeds).toHaveLength(1);
|
|
138
|
+
expect(call.embeds[0].title).toBe("Session Totals");
|
|
139
|
+
});
|
|
140
|
+
it("/usage shows empty message when no data", async () => {
|
|
141
|
+
const ctx = makeContext();
|
|
142
|
+
ctx.commandActions.getUsage = vi.fn().mockResolvedValue(null);
|
|
143
|
+
ctx.commandActions.getCumulativeUsage = vi.fn().mockResolvedValue({
|
|
144
|
+
totalRuns: 0,
|
|
145
|
+
totalSuccesses: 0,
|
|
146
|
+
totalFailures: 0,
|
|
147
|
+
totalCostUsd: 0,
|
|
148
|
+
totalInputTokens: 0,
|
|
149
|
+
totalOutputTokens: 0,
|
|
150
|
+
totalDurationMs: 0,
|
|
151
|
+
firstRunAt: "",
|
|
152
|
+
lastRunAt: "",
|
|
153
|
+
});
|
|
154
|
+
await usageCommand.execute(ctx);
|
|
155
|
+
const call = ctx.interaction.reply.mock.calls[0][0];
|
|
156
|
+
expect(call.content).toContain("No usage data");
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
//# sourceMappingURL=extended-commands.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extended-commands.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/extended-commands.test.ts"],"names":[],"mappings":"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"}
|