@herdctl/core 4.2.0 → 5.0.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.
Files changed (46) hide show
  1. package/dist/fleet-manager/chat-manager-interface.d.ts +116 -0
  2. package/dist/fleet-manager/chat-manager-interface.d.ts.map +1 -0
  3. package/dist/fleet-manager/chat-manager-interface.js +11 -0
  4. package/dist/fleet-manager/chat-manager-interface.js.map +1 -0
  5. package/dist/fleet-manager/context.d.ts +24 -5
  6. package/dist/fleet-manager/context.d.ts.map +1 -1
  7. package/dist/fleet-manager/event-types.d.ts +135 -0
  8. package/dist/fleet-manager/event-types.d.ts.map +1 -1
  9. package/dist/fleet-manager/fleet-manager.d.ts +18 -6
  10. package/dist/fleet-manager/fleet-manager.d.ts.map +1 -1
  11. package/dist/fleet-manager/fleet-manager.js +79 -20
  12. package/dist/fleet-manager/fleet-manager.js.map +1 -1
  13. package/dist/fleet-manager/index.d.ts +2 -3
  14. package/dist/fleet-manager/index.d.ts.map +1 -1
  15. package/dist/fleet-manager/index.js +4 -1
  16. package/dist/fleet-manager/index.js.map +1 -1
  17. package/dist/fleet-manager/status-queries.d.ts +5 -6
  18. package/dist/fleet-manager/status-queries.d.ts.map +1 -1
  19. package/dist/fleet-manager/status-queries.js +52 -59
  20. package/dist/fleet-manager/status-queries.js.map +1 -1
  21. package/dist/fleet-manager/types.d.ts +11 -31
  22. package/dist/fleet-manager/types.d.ts.map +1 -1
  23. package/dist/runner/index.d.ts +1 -1
  24. package/dist/runner/index.d.ts.map +1 -1
  25. package/dist/runner/index.js.map +1 -1
  26. package/dist/scheduler/__tests__/scheduler.test.js +9 -7
  27. package/dist/scheduler/__tests__/scheduler.test.js.map +1 -1
  28. package/dist/scheduler/scheduler.js +5 -4
  29. package/dist/scheduler/scheduler.js.map +1 -1
  30. package/package.json +1 -1
  31. package/dist/fleet-manager/__tests__/discord-manager.test.d.ts +0 -8
  32. package/dist/fleet-manager/__tests__/discord-manager.test.d.ts.map +0 -1
  33. package/dist/fleet-manager/__tests__/discord-manager.test.js +0 -3508
  34. package/dist/fleet-manager/__tests__/discord-manager.test.js.map +0 -1
  35. package/dist/fleet-manager/__tests__/slack-manager.test.d.ts +0 -11
  36. package/dist/fleet-manager/__tests__/slack-manager.test.d.ts.map +0 -1
  37. package/dist/fleet-manager/__tests__/slack-manager.test.js +0 -983
  38. package/dist/fleet-manager/__tests__/slack-manager.test.js.map +0 -1
  39. package/dist/fleet-manager/discord-manager.d.ts +0 -353
  40. package/dist/fleet-manager/discord-manager.d.ts.map +0 -1
  41. package/dist/fleet-manager/discord-manager.js +0 -1087
  42. package/dist/fleet-manager/discord-manager.js.map +0 -1
  43. package/dist/fleet-manager/slack-manager.d.ts +0 -201
  44. package/dist/fleet-manager/slack-manager.d.ts.map +0 -1
  45. package/dist/fleet-manager/slack-manager.js +0 -576
  46. package/dist/fleet-manager/slack-manager.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"slack-manager.test.js","sourceRoot":"","sources":["../../../src/fleet-manager/__tests__/slack-manager.test.ts"],"names":[],"mappings":"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"}
@@ -1,353 +0,0 @@
1
- /**
2
- * Discord Manager Module
3
- *
4
- * Manages Discord connectors for agents that have `chat.discord` configured.
5
- * This module is responsible for:
6
- * - Creating one DiscordConnector instance per Discord-enabled agent
7
- * - Managing connector lifecycle (start/stop)
8
- * - Providing access to connectors for status queries
9
- *
10
- * Note: This module dynamically imports @herdctl/discord at runtime to avoid
11
- * a hard dependency. The @herdctl/core package can be used without Discord support.
12
- *
13
- * @module discord-manager
14
- */
15
- import type { FleetManagerContext } from "./context.js";
16
- /**
17
- * Discord connection status (mirrors @herdctl/discord types)
18
- */
19
- export type DiscordConnectionStatus = "disconnected" | "connecting" | "connected" | "reconnecting" | "disconnecting" | "error";
20
- /**
21
- * Discord connector state (mirrors @herdctl/discord types)
22
- */
23
- export interface DiscordConnectorState {
24
- status: DiscordConnectionStatus;
25
- connectedAt: string | null;
26
- disconnectedAt: string | null;
27
- reconnectAttempts: number;
28
- lastError: string | null;
29
- botUser: {
30
- id: string;
31
- username: string;
32
- discriminator: string;
33
- } | null;
34
- rateLimits: {
35
- totalCount: number;
36
- lastRateLimitAt: string | null;
37
- isRateLimited: boolean;
38
- currentResetTime: number;
39
- };
40
- messageStats: {
41
- received: number;
42
- sent: number;
43
- ignored: number;
44
- };
45
- }
46
- /**
47
- * Discord embed field (mirrors @herdctl/discord types)
48
- */
49
- export interface DiscordReplyEmbedField {
50
- name: string;
51
- value: string;
52
- inline?: boolean;
53
- }
54
- /**
55
- * Discord embed for rich message formatting (mirrors @herdctl/discord types)
56
- */
57
- export interface DiscordReplyEmbed {
58
- title: string;
59
- description?: string;
60
- color?: number;
61
- fields?: DiscordReplyEmbedField[];
62
- footer?: {
63
- text: string;
64
- };
65
- timestamp?: string;
66
- }
67
- /**
68
- * Payload for sending rich messages via reply (mirrors @herdctl/discord types)
69
- */
70
- export interface DiscordReplyPayload {
71
- embeds: DiscordReplyEmbed[];
72
- }
73
- /**
74
- * Message event payload from DiscordConnector
75
- */
76
- export interface DiscordMessageEvent {
77
- agentName: string;
78
- /** The processed prompt (with mention stripped) */
79
- prompt: string;
80
- /** Conversation context including recent message history */
81
- context: {
82
- messages: Array<{
83
- author: string;
84
- content: string;
85
- isBot: boolean;
86
- timestamp: string;
87
- }>;
88
- wasMentioned: boolean;
89
- prompt: string;
90
- };
91
- /** Discord-specific metadata */
92
- metadata: {
93
- /** ID of the guild (server), null for DMs */
94
- guildId: string | null;
95
- /** ID of the channel */
96
- channelId: string;
97
- /** ID of the message */
98
- messageId: string;
99
- /** ID of the user who sent the message */
100
- userId: string;
101
- /** Username of the user who sent the message */
102
- username: string;
103
- /** Whether this was triggered by a mention */
104
- wasMentioned: boolean;
105
- /** Channel mode that was applied */
106
- mode: "mention" | "auto";
107
- };
108
- /** Function to send a reply in the same channel (text or embed payload) */
109
- reply: (content: string | DiscordReplyPayload) => Promise<void>;
110
- /** Start typing indicator, returns stop function */
111
- startTyping: () => () => void;
112
- }
113
- /**
114
- * Error event payload from DiscordConnector
115
- */
116
- export interface DiscordErrorEvent {
117
- agentName: string;
118
- error: Error;
119
- }
120
- /**
121
- * Minimal interface for a Discord connector
122
- */
123
- interface IDiscordConnector {
124
- connect(): Promise<void>;
125
- disconnect(): Promise<void>;
126
- isConnected(): boolean;
127
- getState(): DiscordConnectorState;
128
- readonly agentName: string;
129
- readonly sessionManager: ISessionManager;
130
- on(event: "message", listener: (payload: DiscordMessageEvent) => void): this;
131
- on(event: "error", listener: (payload: DiscordErrorEvent) => void): this;
132
- on(event: string, listener: (...args: unknown[]) => void): this;
133
- off(event: string, listener: (...args: unknown[]) => void): this;
134
- }
135
- /**
136
- * Session manager interface (minimal for our needs)
137
- */
138
- interface ISessionManager {
139
- readonly agentName: string;
140
- getOrCreateSession(channelId: string): Promise<{
141
- sessionId: string;
142
- isNew: boolean;
143
- }>;
144
- getSession(channelId: string): Promise<{
145
- sessionId: string;
146
- lastMessageAt: string;
147
- } | null>;
148
- setSession(channelId: string, sessionId: string): Promise<void>;
149
- touchSession(channelId: string): Promise<void>;
150
- clearSession(channelId: string): Promise<boolean>;
151
- cleanupExpiredSessions(): Promise<number>;
152
- getActiveSessionCount(): Promise<number>;
153
- }
154
- /**
155
- * DiscordManager handles Discord connections for agents
156
- *
157
- * This class encapsulates the creation and lifecycle management of
158
- * DiscordConnector instances for agents that have Discord chat configured.
159
- */
160
- export declare class DiscordManager {
161
- private ctx;
162
- private connectors;
163
- private initialized;
164
- constructor(ctx: FleetManagerContext);
165
- /**
166
- * Initialize Discord connectors for all configured agents
167
- *
168
- * This method:
169
- * 1. Checks if @herdctl/discord package is available
170
- * 2. Iterates through agents to find those with Discord configured
171
- * 3. Creates a DiscordConnector for each Discord-enabled agent
172
- *
173
- * Should be called during FleetManager initialization.
174
- */
175
- initialize(): Promise<void>;
176
- /**
177
- * Connect all Discord connectors
178
- *
179
- * Connects each connector to the Discord gateway and subscribes to events.
180
- * Errors are logged but don't stop other connectors from connecting.
181
- */
182
- start(): Promise<void>;
183
- /**
184
- * Disconnect all Discord connectors gracefully
185
- *
186
- * Sessions are automatically persisted to disk on every update,
187
- * so they survive bot restarts. This method logs session state
188
- * before disconnecting for monitoring purposes.
189
- *
190
- * Errors are logged but don't prevent other connectors from disconnecting.
191
- */
192
- stop(): Promise<void>;
193
- /**
194
- * Get a connector for a specific agent
195
- *
196
- * @param agentName - Name of the agent
197
- * @returns The DiscordConnector instance, or undefined if not found
198
- */
199
- getConnector(agentName: string): IDiscordConnector | undefined;
200
- /**
201
- * Get all connector names
202
- *
203
- * @returns Array of agent names that have Discord connectors
204
- */
205
- getConnectorNames(): string[];
206
- /**
207
- * Get the number of active connectors
208
- *
209
- * @returns Number of connectors that are currently connected
210
- */
211
- getConnectedCount(): number;
212
- /**
213
- * Check if a specific agent has a Discord connector
214
- *
215
- * @param agentName - Name of the agent
216
- * @returns true if the agent has a Discord connector
217
- */
218
- hasConnector(agentName: string): boolean;
219
- /**
220
- * Handle an incoming Discord message
221
- *
222
- * This method:
223
- * 1. Gets or creates a session for the channel
224
- * 2. Builds job context from the message
225
- * 3. Executes the job via trigger
226
- * 4. Sends the response back to Discord
227
- *
228
- * @param agentName - Name of the agent handling the message
229
- * @param event - The Discord message event
230
- */
231
- private handleMessage;
232
- /**
233
- * Extract text content from an SDK message
234
- *
235
- * Handles various message formats from the Claude Agent SDK
236
- */
237
- private extractMessageContent;
238
- /** Maximum characters for tool output in Discord embed fields */
239
- private static readonly TOOL_OUTPUT_MAX_CHARS;
240
- /** Embed colors */
241
- private static readonly EMBED_COLOR_DEFAULT;
242
- private static readonly EMBED_COLOR_ERROR;
243
- private static readonly EMBED_COLOR_SYSTEM;
244
- private static readonly EMBED_COLOR_SUCCESS;
245
- /** Tool title emojis */
246
- private static readonly TOOL_EMOJIS;
247
- /**
248
- * Extract tool_use blocks from an assistant message's content blocks
249
- *
250
- * Returns id, name, and input for each tool_use block so we can
251
- * track pending calls and pair them with results.
252
- */
253
- private extractToolUseBlocks;
254
- /**
255
- * Get a human-readable summary of tool input
256
- */
257
- private getToolInputSummary;
258
- /**
259
- * Extract tool results from a user message
260
- *
261
- * Returns output, error status, and the tool_use_id for matching
262
- * to the pending tool_use that produced this result.
263
- */
264
- private extractToolResults;
265
- /**
266
- * Extract content from a top-level tool_use_result value
267
- */
268
- private extractToolResultContent;
269
- /**
270
- * Format duration in milliseconds to a human-readable string
271
- */
272
- private static formatDuration;
273
- /**
274
- * Build a Discord embed for a tool call result
275
- *
276
- * Combines the tool_use info (name, input) with the tool_result
277
- * (output, error status) into a compact Discord embed.
278
- *
279
- * @param toolUse - The tool_use block info (name, input, startTime)
280
- * @param toolResult - The tool result (output, isError)
281
- * @param maxOutputChars - Maximum characters for output (defaults to TOOL_OUTPUT_MAX_CHARS)
282
- */
283
- private buildToolEmbed;
284
- /**
285
- * Handle errors from Discord connectors
286
- *
287
- * Logs errors without crashing the connector
288
- *
289
- * @param agentName - Name of the agent that encountered the error
290
- * @param error - The error that occurred
291
- */
292
- private handleError;
293
- /** Discord's maximum message length */
294
- private static readonly MAX_MESSAGE_LENGTH;
295
- /**
296
- * Format an error message for Discord display
297
- *
298
- * Creates a user-friendly error message with guidance on how to proceed.
299
- *
300
- * @param error - The error that occurred
301
- * @returns Formatted error message string
302
- */
303
- formatErrorMessage(error: Error): string;
304
- /**
305
- * Split a response into chunks that fit Discord's 2000 character limit
306
- *
307
- * This method intelligently splits text:
308
- * - Preserves code blocks when possible (closing and reopening across chunks)
309
- * - Splits at natural boundaries (newlines, then spaces)
310
- * - Never splits mid-word
311
- *
312
- * @param text - The text to split
313
- * @returns Array of text chunks, each under 2000 characters
314
- */
315
- splitResponse(text: string): string[];
316
- /**
317
- * Find the best point to split text, preserving code blocks
318
- *
319
- * @param text - Text to split
320
- * @param maxLength - Maximum chunk length
321
- * @returns Object with the chunk and remaining text
322
- */
323
- private findSplitPoint;
324
- /**
325
- * Analyze text to determine if it ends inside a code block
326
- *
327
- * @param text - Text to analyze
328
- * @returns Object indicating if inside a block and the language if so
329
- */
330
- private analyzeCodeBlocks;
331
- /**
332
- * Find a natural break point in text (newline or space)
333
- *
334
- * Prefers breaking at:
335
- * 1. Double newlines (paragraph breaks)
336
- * 2. Single newlines
337
- * 3. Spaces
338
- *
339
- * @param text - Text to search
340
- * @param maxLength - Maximum position to search
341
- * @returns Index of the best split point
342
- */
343
- private findNaturalBreak;
344
- /**
345
- * Send a response to Discord, splitting if necessary
346
- *
347
- * @param reply - The reply function from the message event
348
- * @param content - The content to send
349
- */
350
- sendResponse(reply: (content: string) => Promise<void>, content: string): Promise<void>;
351
- }
352
- export {};
353
- //# sourceMappingURL=discord-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discord-manager.d.ts","sourceRoot":"","sources":["../../src/fleet-manager/discord-manager.ts"],"names":[],"mappings":"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"}