@songsid/agend 2.0.11-beta.2 → 2.0.11-beta.20

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 (42) hide show
  1. package/dist/channel/adapters/discord.d.ts +2 -0
  2. package/dist/channel/adapters/discord.js +38 -34
  3. package/dist/channel/adapters/discord.js.map +1 -1
  4. package/dist/channel/factory.d.ts +4 -0
  5. package/dist/channel/factory.js +1 -0
  6. package/dist/channel/factory.js.map +1 -1
  7. package/dist/channel/mcp-tools.js +3 -0
  8. package/dist/channel/mcp-tools.js.map +1 -1
  9. package/dist/channel/tool-router.js +29 -2
  10. package/dist/channel/tool-router.js.map +1 -1
  11. package/dist/classic-channel-manager.d.ts +59 -12
  12. package/dist/classic-channel-manager.js +121 -30
  13. package/dist/classic-channel-manager.js.map +1 -1
  14. package/dist/cli.js +83 -13
  15. package/dist/cli.js.map +1 -1
  16. package/dist/config-validator.d.ts +20 -0
  17. package/dist/config-validator.js +146 -0
  18. package/dist/config-validator.js.map +1 -0
  19. package/dist/daemon.js +25 -3
  20. package/dist/daemon.js.map +1 -1
  21. package/dist/fleet-manager.d.ts +27 -5
  22. package/dist/fleet-manager.js +311 -166
  23. package/dist/fleet-manager.js.map +1 -1
  24. package/dist/instance-lifecycle.d.ts +1 -1
  25. package/dist/instance-lifecycle.js +4 -4
  26. package/dist/instance-lifecycle.js.map +1 -1
  27. package/dist/outbound-schemas.d.ts +1 -0
  28. package/dist/outbound-schemas.js +1 -0
  29. package/dist/outbound-schemas.js.map +1 -1
  30. package/dist/quickstart.js +226 -21
  31. package/dist/quickstart.js.map +1 -1
  32. package/dist/service-installer.js +1 -7
  33. package/dist/service-installer.js.map +1 -1
  34. package/dist/settings-api.d.ts +33 -0
  35. package/dist/settings-api.js +283 -0
  36. package/dist/settings-api.js.map +1 -0
  37. package/dist/ui/settings.html +397 -0
  38. package/dist/ui/view.html +464 -0
  39. package/dist/view-api.d.ts +29 -0
  40. package/dist/view-api.js +361 -0
  41. package/dist/view-api.js.map +1 -0
  42. package/package.json +1 -3
@@ -9,6 +9,7 @@ export interface DiscordAdapterOptions {
9
9
  guildId: string;
10
10
  categoryName?: string;
11
11
  generalChannelId?: string;
12
+ registerCommands?: boolean;
12
13
  }
13
14
  export declare class DiscordAdapter extends EventEmitter implements ChannelAdapter {
14
15
  readonly type = "discord";
@@ -22,6 +23,7 @@ export declare class DiscordAdapter extends EventEmitter implements ChannelAdapt
22
23
  private openChannels;
23
24
  private categoryName;
24
25
  private generalChannelId?;
26
+ private registerCommands;
25
27
  private queue;
26
28
  private lastChatId;
27
29
  private attachmentUrls;
@@ -20,6 +20,7 @@ export class DiscordAdapter extends EventEmitter {
20
20
  openChannels = new Set();
21
21
  categoryName;
22
22
  generalChannelId;
23
+ registerCommands;
23
24
  queue;
24
25
  lastChatId = null;
25
26
  attachmentUrls = new Map();
@@ -33,6 +34,7 @@ export class DiscordAdapter extends EventEmitter {
33
34
  this.guildId = opts.guildId;
34
35
  this.categoryName = opts.categoryName ?? "AgEnD Agents";
35
36
  this.generalChannelId = opts.generalChannelId;
37
+ this.registerCommands = opts.registerCommands !== false;
36
38
  mkdirSync(this.inboxDir, { recursive: true });
37
39
  this.client = new Client({
38
40
  intents: [
@@ -301,40 +303,42 @@ export class DiscordAdapter extends EventEmitter {
301
303
  async start() {
302
304
  this.queue.start();
303
305
  this.client.once("ready", async () => {
304
- // Register classic bot slash commands
305
- try {
306
- await this.client.application?.commands.set([
307
- { name: "start", description: "Start an agent in this channel" },
308
- { name: "stop", description: "Stop the agent in this channel" },
309
- {
310
- name: "chat", description: "Send a message to the agent",
311
- options: [{ name: "message", description: "Your message", type: 3, required: true }],
312
- },
313
- { name: "status", description: "Show fleet status and costs" },
314
- { name: "sysinfo", description: "System diagnostics" },
315
- { name: "ctx", description: "Show agent context usage" },
316
- { name: "restart", description: "🔒 Graceful restart all instances" },
317
- { name: "update", description: "🔒 Update AgEnD to latest version" },
318
- { name: "doctor", description: "🔒 Run health diagnostics" },
319
- { name: "compact", description: "🔒 Compact agent context window" },
320
- { name: "collab", description: "🔒 Toggle bot/webhook collaboration mode" },
321
- {
322
- name: "save", description: "🔒 Save the agent's conversation",
323
- options: [
324
- { name: "filename", description: "File name to save as", type: 3, required: true },
325
- { name: "force", description: "Overwrite if file exists", type: 5, required: false },
326
- ],
327
- },
328
- {
329
- name: "load", description: "🔒 Load a saved conversation",
330
- options: [{ name: "filename", description: "File name to load", type: 3, required: true }],
331
- },
332
- { name: "cancel", description: "Interrupt the agent's current operation (sends Escape)" },
333
- ]);
334
- }
335
- catch (err) {
336
- // Non-fatal — slash commands may fail on network issues
337
- }
306
+ // Register classic bot slash commands (skipped for a secondary bot sharing
307
+ // a guild with the primary — only the primary owns the guild's commands).
308
+ if (this.registerCommands)
309
+ try {
310
+ await this.client.application?.commands.set([
311
+ { name: "start", description: "Start an agent in this channel" },
312
+ { name: "stop", description: "Stop the agent in this channel" },
313
+ {
314
+ name: "chat", description: "Send a message to the agent",
315
+ options: [{ name: "message", description: "Your message", type: 3, required: true }],
316
+ },
317
+ { name: "status", description: "Show fleet status and costs" },
318
+ { name: "sysinfo", description: "System diagnostics" },
319
+ { name: "ctx", description: "Show agent context usage" },
320
+ { name: "restart", description: "🔒 Graceful restart all instances" },
321
+ { name: "update", description: "🔒 Update AgEnD to latest version" },
322
+ { name: "doctor", description: "🔒 Run health diagnostics" },
323
+ { name: "compact", description: "🔒 Compact agent context window" },
324
+ { name: "collab", description: "🔒 Toggle bot/webhook collaboration mode" },
325
+ {
326
+ name: "save", description: "🔒 Save the agent's conversation",
327
+ options: [
328
+ { name: "filename", description: "File name to save as", type: 3, required: true },
329
+ { name: "force", description: "Overwrite if file exists", type: 5, required: false },
330
+ ],
331
+ },
332
+ {
333
+ name: "load", description: "🔒 Load a saved conversation",
334
+ options: [{ name: "filename", description: "File name to load", type: 3, required: true }],
335
+ },
336
+ { name: "cancel", description: "Interrupt the agent's current operation (sends Escape)" },
337
+ ]);
338
+ }
339
+ catch (err) {
340
+ // Non-fatal — slash commands may fail on network issues
341
+ }
338
342
  this.emit("started", this.client.user?.username ?? "discord-bot", this.client.user?.id);
339
343
  });
340
344
  await this.client.login(this.botToken);
@@ -1 +1 @@
1
- {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../../src/channel/adapters/discord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../../src/channel/adapters/discord.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,10 @@ export interface AdapterOpts {
6
6
  botToken: string;
7
7
  accessManager: AccessManager;
8
8
  inboxDir: string;
9
+ /** Register slash commands on start (Discord). Default true. Set false for a
10
+ * secondary bot sharing a guild with the primary, so it doesn't duplicate the
11
+ * guild's slash commands — only the primary registers them. */
12
+ registerCommands?: boolean;
9
13
  }
10
14
  /** Factory function that external adapter packages must default-export. */
11
15
  export type AdapterFactory = (config: ChannelConfig, opts: AdapterOpts) => ChannelAdapter;
@@ -49,6 +49,7 @@ export async function createAdapter(config, opts) {
49
49
  guildId: config.group_id != null ? String(config.group_id) : "",
50
50
  categoryName: config.options?.category_name ?? undefined,
51
51
  generalChannelId: config.options?.general_channel_id ?? undefined,
52
+ registerCommands: opts.registerCommands,
52
53
  });
53
54
  }
54
55
  // Plugin adapters — try multiple package name conventions (kept for community/future adapters)
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/channel/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/channel/factory.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,8 @@ const DEFS = [
29
29
  "Edit a message the bot previously sent. Useful for interim progress updates."],
30
30
  ["download_attachment", schemas.DownloadAttachmentArgs,
31
31
  "Download a file attachment from a channel message. Returns the local file path ready to Read."],
32
+ ["validate_config", schemas.ValidateConfigArgs,
33
+ "Validate the fleet's config. Reads fleet.yaml + classicBot.yaml and returns { fleet, classic } validation results, each with errors[] and warnings[]."],
32
34
  ["create_schedule", schemas.CreateScheduleArgs,
33
35
  "Create a cron-based schedule. When triggered, sends a message to the target instance."],
34
36
  ["list_schedules", schemas.ListSchedulesArgs,
@@ -104,6 +106,7 @@ export const TOOL_SETS = {
104
106
  "reply", "react", "edit_message",
105
107
  "send_to_instance", "broadcast", "list_instances", "describe_instance",
106
108
  "list_decisions", "post_decision", "task", "set_display_name", "set_description",
109
+ "validate_config",
107
110
  ],
108
111
  minimal: ["reply", "send_to_instance", "list_decisions", "download_attachment"],
109
112
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../src/channel/mcp-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../src/channel/mcp-tools.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
- import { resolve, sep } from "node:path";
2
- import { realpathSync, existsSync } from "node:fs";
1
+ import { resolve, sep, join } from "node:path";
2
+ import { realpathSync, existsSync, readFileSync } from "node:fs";
3
+ import yaml from "js-yaml";
3
4
  import { getAgendHome } from "../paths.js";
5
+ import { validateFleetConfig, validateClassicBotConfig } from "../config-validator.js";
4
6
  const STATE_DIR = resolve(getAgendHome()) + sep;
5
7
  const INBOX_SEG = sep + "inbox" + sep;
6
8
  /** Block files inside the state dir (except inbox/) from being sent out. */
@@ -70,6 +72,31 @@ export function routeToolCall(adapter, tool, args, threadId, respond) {
70
72
  .then(path => respond(path))
71
73
  .catch(e => respond(null, e.message));
72
74
  return true;
75
+ case "validate_config": {
76
+ // Stateless — reads the on-disk config; no adapter needed. Any instance
77
+ // (incl. general) can call it to lint fleet.yaml + classicBot.yaml.
78
+ const home = getAgendHome();
79
+ const loadYaml = (p) => {
80
+ if (!existsSync(p))
81
+ return undefined;
82
+ try {
83
+ return yaml.load(readFileSync(p, "utf-8"));
84
+ }
85
+ catch (e) {
86
+ return { __parseError: e.message };
87
+ }
88
+ };
89
+ const fleetRaw = loadYaml(join(home, "fleet.yaml"));
90
+ const classicRaw = loadYaml(join(home, "classicBot.yaml"));
91
+ const fleet = (fleetRaw && typeof fleetRaw === "object" && "__parseError" in fleetRaw)
92
+ ? { valid: false, errors: [{ path: "fleet.yaml", message: `YAML parse error: ${fleetRaw.__parseError}` }], warnings: [] }
93
+ : validateFleetConfig(fleetRaw ?? {});
94
+ const classic = (classicRaw && typeof classicRaw === "object" && "__parseError" in classicRaw)
95
+ ? { valid: false, errors: [{ path: "classicBot.yaml", message: `YAML parse error: ${classicRaw.__parseError}` }], warnings: [] }
96
+ : validateClassicBotConfig(classicRaw);
97
+ respond({ fleet, classic });
98
+ return true;
99
+ }
73
100
  default:
74
101
  return false;
75
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tool-router.js","sourceRoot":"","sources":["../../src/channel/tool-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-router.js","sourceRoot":"","sources":["../../src/channel/tool-router.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import type { Logger } from "./logger.js";
2
2
  export interface ClassicChannel {
3
3
  channelId: string;
4
+ /**
5
+ * Which bot adapter owns this channel's agent. `undefined` only transiently
6
+ * for legacy (pre-multi-bot) entries loaded before the primary adapter id is
7
+ * known — {@link ClassicChannelManager.setPrimaryAdapterId} migrates those to
8
+ * the primary. Enables same-channel multi-bot: two bots in one channel are
9
+ * distinct entries keyed by (channelId, adapterId).
10
+ */
11
+ adapterId?: string;
4
12
  name: string;
5
13
  instanceName: string;
6
14
  backend?: string;
@@ -11,8 +19,14 @@ export interface ClassicChannel {
11
19
  createdAt: string;
12
20
  createdBy: string;
13
21
  }
14
- /** Derive instance name from channel name + last 4 digits of channelId */
15
- export declare function classicInstanceName(sanitizedName: string, channelId: string): string;
22
+ /**
23
+ * Derive instance name from channel name + last 4 digits of channelId.
24
+ * When `adapterId` is given (a non-primary bot in the same channel), append a
25
+ * sanitized adapter suffix so two bots in one channel get distinct instance
26
+ * names (dirs / tmux windows / IPC). The primary bot passes `undefined` to keep
27
+ * the historical name — single-bot users see no change across the upgrade.
28
+ */
29
+ export declare function classicInstanceName(sanitizedName: string, channelId: string, adapterId?: string): string;
16
30
  /**
17
31
  * Manages classic bot channel lifecycle — register/unregister/persist.
18
32
  * Persists to ~/.agend/classicBot.yaml with per-channel backend override.
@@ -21,11 +35,31 @@ export declare function classicInstanceName(sanitizedName: string, channelId: st
21
35
  export declare class ClassicChannelManager {
22
36
  private dataDir;
23
37
  private logger;
38
+ /** Keyed by compositeKey(channelId, adapterId) — see {@link ClassicChannel.adapterId}. */
24
39
  private channels;
40
+ /** Distinct channelIds across all adapters — makes hasChannel() O(1) (hot path: every inbound). */
41
+ private channelIds;
25
42
  private defaults;
26
43
  private readonly configPath;
27
44
  private lastMtime;
45
+ /** The primary (channels[0]) adapter id. Legacy entries migrate to it; it also names without a suffix. */
46
+ private primaryAdapterId?;
28
47
  constructor(dataDir: string, logger: Logger);
48
+ /**
49
+ * Record which adapter is primary. Migrates any legacy (adapterId-less)
50
+ * entries onto it and rewrites the file in the new format. Idempotent.
51
+ */
52
+ setPrimaryAdapterId(adapterId: string): void;
53
+ /** Map key for a (channelId, adapterId) pair. adapterId-less = legacy entry (pre-migration). */
54
+ private compositeKey;
55
+ /** Rebuild the channelId presence set from the entry map (call after any mutation). */
56
+ private rebuildChannelIds;
57
+ /**
58
+ * Resolve the entry for a channel as seen by a specific bot. Exact
59
+ * (channelId, adapterId) match wins; the primary adapter also matches a
60
+ * not-yet-migrated legacy entry as a defensive fallback.
61
+ */
62
+ private find;
29
63
  private load;
30
64
  private save;
31
65
  /** Poll for external file changes (call periodically, e.g. every 30s) */
@@ -42,23 +76,36 @@ export declare class ClassicChannelManager {
42
76
  /** Check if a user is admin. Empty/unset admin_users = no admins (secure default). */
43
77
  isAdmin(userId: string): boolean;
44
78
  /** Toggle collab mode for a channel. Returns new state. */
45
- toggleCollab(channelId: string): boolean;
46
- isCollab(channelId: string): boolean;
47
- getPreTaskCommand(channelId: string): string | undefined;
79
+ toggleCollab(channelId: string, adapterId?: string): boolean;
80
+ isCollab(channelId: string, adapterId?: string): boolean;
81
+ getPreTaskCommand(channelId: string, adapterId?: string): string | undefined;
48
82
  /** Context lines fallback: per-channel → defaults → 5 */
49
- getContextLines(channelId: string): number;
83
+ getContextLines(channelId: string, adapterId?: string): number;
50
84
  /** Backend fallback: per-channel → classic defaults → fleetDefault → "claude-code" */
51
- getBackend(channelId: string, fleetDefault?: string): string;
85
+ getBackend(channelId: string, adapterId?: string, fleetDefault?: string): string;
52
86
  /** Get model for a channel — channel override → defaults → fleet default */
53
- getModel(channelId: string, fleetDefault?: string): string | undefined;
87
+ getModel(channelId: string, adapterId?: string, fleetDefault?: string): string | undefined;
54
88
  /** Get backend for an instance by name */
55
89
  getBackendByInstance(instanceName: string, fleetDefault?: string): string;
56
90
  getChannelIdByInstance(instanceName: string): string | undefined;
57
- isClassicChannel(channelId: string): boolean;
58
- get(channelId: string): ClassicChannel | undefined;
91
+ /** The bot adapter that owns an instance's channel (for restart rebind). */
92
+ getAdapterIdByInstance(instanceName: string): string | undefined;
93
+ /**
94
+ * Resolve the instance a given bot should route to in a channel. Returns
95
+ * undefined if this adapter has no agent here (e.g. a sibling same-guild bot
96
+ * that never ran /start) — callers must NOT fall back to another bot's agent.
97
+ */
98
+ getInstanceByChannel(channelId: string, adapterId?: string): string | undefined;
99
+ /** Instance name for a new registration, applying the primary-adapter naming rule. */
100
+ deriveInstanceName(channelName: string, channelId: string, adapterId?: string): string;
101
+ /** Whether ANY bot has an agent in this channel (adapter-independent). O(1). */
102
+ hasChannel(channelId: string): boolean;
103
+ /** Exact per-bot check. adapterId omitted matches only a legacy entry. */
104
+ isClassicChannel(channelId: string, adapterId?: string): boolean;
105
+ get(channelId: string, adapterId?: string): ClassicChannel | undefined;
59
106
  getAll(): ClassicChannel[];
60
- register(channelId: string, instanceName: string, channelName: string, userId: string): ClassicChannel;
61
- unregister(channelId: string): ClassicChannel | undefined;
107
+ register(channelId: string, adapterId: string | undefined, instanceName: string, channelName: string, userId: string): ClassicChannel;
108
+ unregister(channelId: string, adapterId?: string): ClassicChannel | undefined;
62
109
  static chatLogDir(instanceName: string): string;
63
110
  static logMessage(instanceName: string, username: string, text: string, timestamp: Date, replyToText?: string): void;
64
111
  /** Delete chat log files older than retentionDays. Dates parsed as local to avoid UTC off-by-one. */