discord-ops 0.22.0 → 0.23.3

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 (38) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +108 -29
  3. package/dist/cli/validate.d.ts.map +1 -1
  4. package/dist/cli/validate.js +48 -0
  5. package/dist/cli/validate.js.map +1 -1
  6. package/dist/config/index.d.ts +23 -4
  7. package/dist/config/index.d.ts.map +1 -1
  8. package/dist/config/index.js +84 -4
  9. package/dist/config/index.js.map +1 -1
  10. package/dist/config/profiles.d.ts +7 -0
  11. package/dist/config/profiles.d.ts.map +1 -1
  12. package/dist/config/profiles.js +23 -1
  13. package/dist/config/profiles.js.map +1 -1
  14. package/dist/config/schema.d.ts +166 -15
  15. package/dist/config/schema.d.ts.map +1 -1
  16. package/dist/config/schema.js +33 -2
  17. package/dist/config/schema.js.map +1 -1
  18. package/dist/config/validate.d.ts.map +1 -1
  19. package/dist/config/validate.js +25 -6
  20. package/dist/config/validate.js.map +1 -1
  21. package/dist/profiles/index.d.ts.map +1 -1
  22. package/dist/profiles/index.js +2 -0
  23. package/dist/profiles/index.js.map +1 -1
  24. package/dist/routing/resolver.d.ts +5 -0
  25. package/dist/routing/resolver.d.ts.map +1 -1
  26. package/dist/routing/resolver.js +79 -16
  27. package/dist/routing/resolver.js.map +1 -1
  28. package/dist/server.d.ts.map +1 -1
  29. package/dist/server.js +50 -2
  30. package/dist/server.js.map +1 -1
  31. package/dist/tools/index.d.ts.map +1 -1
  32. package/dist/tools/index.js +2 -0
  33. package/dist/tools/index.js.map +1 -1
  34. package/dist/tools/system/list-bots.d.ts +2 -0
  35. package/dist/tools/system/list-bots.d.ts.map +1 -0
  36. package/dist/tools/system/list-bots.js +49 -0
  37. package/dist/tools/system/list-bots.js.map +1 -0
  38. package/package.json +1 -1
@@ -1,50 +1,169 @@
1
1
  import { z } from "zod";
2
2
  export declare const notificationType: z.ZodUnion<[z.ZodEnum<["ci_build", "deploy", "release", "error", "alert", "announcement", "dev"]>, z.ZodString]>;
3
3
  export type NotificationType = z.infer<typeof notificationType>;
4
+ export declare const ToolProfileEnum: z.ZodEnum<["full", "monitoring", "readonly", "moderation", "messaging", "channels", "webhooks"]>;
5
+ export type ToolProfileName = z.infer<typeof ToolProfileEnum>;
6
+ /** Named bot with identity metadata */
7
+ export declare const BotPersonaSchema: z.ZodObject<{
8
+ name: z.ZodString;
9
+ role: z.ZodOptional<z.ZodString>;
10
+ description: z.ZodOptional<z.ZodString>;
11
+ token_env: z.ZodString;
12
+ default_profile: z.ZodOptional<z.ZodEnum<["full", "monitoring", "readonly", "moderation", "messaging", "channels", "webhooks"]>>;
13
+ profile_add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
14
+ profile_remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ name: string;
17
+ token_env: string;
18
+ role?: string | undefined;
19
+ description?: string | undefined;
20
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
21
+ profile_add?: string[] | undefined;
22
+ profile_remove?: string[] | undefined;
23
+ }, {
24
+ name: string;
25
+ token_env: string;
26
+ role?: string | undefined;
27
+ description?: string | undefined;
28
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
29
+ profile_add?: string[] | undefined;
30
+ profile_remove?: string[] | undefined;
31
+ }>;
32
+ export type BotPersona = z.infer<typeof BotPersonaSchema>;
33
+ /** Channel value: plain snowflake string OR object with bot override */
34
+ export declare const ChannelConfigSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
35
+ id: z.ZodString;
36
+ bot: z.ZodOptional<z.ZodString>;
37
+ }, "strip", z.ZodTypeAny, {
38
+ id: string;
39
+ bot?: string | undefined;
40
+ }, {
41
+ id: string;
42
+ bot?: string | undefined;
43
+ }>]>;
44
+ export type ChannelConfig = z.infer<typeof ChannelConfigSchema>;
4
45
  export declare const ProjectConfigSchema: z.ZodObject<{
5
46
  guild_id: z.ZodString;
6
- channels: z.ZodRecord<z.ZodString, z.ZodString>;
47
+ channels: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodObject<{
48
+ id: z.ZodString;
49
+ bot: z.ZodOptional<z.ZodString>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ id: string;
52
+ bot?: string | undefined;
53
+ }, {
54
+ id: string;
55
+ bot?: string | undefined;
56
+ }>]>>;
7
57
  default_channel: z.ZodOptional<z.ZodString>;
8
58
  token_env: z.ZodOptional<z.ZodString>;
59
+ bot: z.ZodOptional<z.ZodString>;
60
+ tool_profile: z.ZodOptional<z.ZodEnum<["full", "monitoring", "readonly", "moderation", "messaging", "channels", "webhooks"]>>;
61
+ profile_add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
62
+ profile_remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
9
63
  owners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10
64
  notify_owners_on: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEnum<["ci_build", "deploy", "release", "error", "alert", "announcement", "dev"]>, z.ZodString]>, "many">>;
11
65
  }, "strip", z.ZodTypeAny, {
66
+ channels: Record<string, string | {
67
+ id: string;
68
+ bot?: string | undefined;
69
+ }>;
12
70
  guild_id: string;
13
- channels: Record<string, string>;
14
- default_channel?: string | undefined;
15
71
  token_env?: string | undefined;
72
+ profile_add?: string[] | undefined;
73
+ profile_remove?: string[] | undefined;
74
+ bot?: string | undefined;
75
+ default_channel?: string | undefined;
76
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
16
77
  owners?: string[] | undefined;
17
78
  notify_owners_on?: string[] | undefined;
18
79
  }, {
80
+ channels: Record<string, string | {
81
+ id: string;
82
+ bot?: string | undefined;
83
+ }>;
19
84
  guild_id: string;
20
- channels: Record<string, string>;
21
- default_channel?: string | undefined;
22
85
  token_env?: string | undefined;
86
+ profile_add?: string[] | undefined;
87
+ profile_remove?: string[] | undefined;
88
+ bot?: string | undefined;
89
+ default_channel?: string | undefined;
90
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
23
91
  owners?: string[] | undefined;
24
92
  notify_owners_on?: string[] | undefined;
25
93
  }>;
26
94
  export type ProjectConfig = z.infer<typeof ProjectConfigSchema>;
27
- export declare const ToolProfileEnum: z.ZodEnum<["full", "monitoring", "readonly", "moderation"]>;
28
95
  export declare const GlobalConfigSchema: z.ZodObject<{
96
+ bots: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
97
+ name: z.ZodString;
98
+ role: z.ZodOptional<z.ZodString>;
99
+ description: z.ZodOptional<z.ZodString>;
100
+ token_env: z.ZodString;
101
+ default_profile: z.ZodOptional<z.ZodEnum<["full", "monitoring", "readonly", "moderation", "messaging", "channels", "webhooks"]>>;
102
+ profile_add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
103
+ profile_remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
104
+ }, "strip", z.ZodTypeAny, {
105
+ name: string;
106
+ token_env: string;
107
+ role?: string | undefined;
108
+ description?: string | undefined;
109
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
110
+ profile_add?: string[] | undefined;
111
+ profile_remove?: string[] | undefined;
112
+ }, {
113
+ name: string;
114
+ token_env: string;
115
+ role?: string | undefined;
116
+ description?: string | undefined;
117
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
118
+ profile_add?: string[] | undefined;
119
+ profile_remove?: string[] | undefined;
120
+ }>>>;
29
121
  projects: z.ZodRecord<z.ZodString, z.ZodObject<{
30
122
  guild_id: z.ZodString;
31
- channels: z.ZodRecord<z.ZodString, z.ZodString>;
123
+ channels: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodObject<{
124
+ id: z.ZodString;
125
+ bot: z.ZodOptional<z.ZodString>;
126
+ }, "strip", z.ZodTypeAny, {
127
+ id: string;
128
+ bot?: string | undefined;
129
+ }, {
130
+ id: string;
131
+ bot?: string | undefined;
132
+ }>]>>;
32
133
  default_channel: z.ZodOptional<z.ZodString>;
33
134
  token_env: z.ZodOptional<z.ZodString>;
135
+ bot: z.ZodOptional<z.ZodString>;
136
+ tool_profile: z.ZodOptional<z.ZodEnum<["full", "monitoring", "readonly", "moderation", "messaging", "channels", "webhooks"]>>;
137
+ profile_add: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
138
+ profile_remove: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
34
139
  owners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
140
  notify_owners_on: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEnum<["ci_build", "deploy", "release", "error", "alert", "announcement", "dev"]>, z.ZodString]>, "many">>;
36
141
  }, "strip", z.ZodTypeAny, {
142
+ channels: Record<string, string | {
143
+ id: string;
144
+ bot?: string | undefined;
145
+ }>;
37
146
  guild_id: string;
38
- channels: Record<string, string>;
39
- default_channel?: string | undefined;
40
147
  token_env?: string | undefined;
148
+ profile_add?: string[] | undefined;
149
+ profile_remove?: string[] | undefined;
150
+ bot?: string | undefined;
151
+ default_channel?: string | undefined;
152
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
41
153
  owners?: string[] | undefined;
42
154
  notify_owners_on?: string[] | undefined;
43
155
  }, {
156
+ channels: Record<string, string | {
157
+ id: string;
158
+ bot?: string | undefined;
159
+ }>;
44
160
  guild_id: string;
45
- channels: Record<string, string>;
46
- default_channel?: string | undefined;
47
161
  token_env?: string | undefined;
162
+ profile_add?: string[] | undefined;
163
+ profile_remove?: string[] | undefined;
164
+ bot?: string | undefined;
165
+ default_channel?: string | undefined;
166
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
48
167
  owners?: string[] | undefined;
49
168
  notify_owners_on?: string[] | undefined;
50
169
  }>>;
@@ -52,24 +171,56 @@ export declare const GlobalConfigSchema: z.ZodObject<{
52
171
  notification_routing: z.ZodOptional<z.ZodRecord<z.ZodUnion<[z.ZodEnum<["ci_build", "deploy", "release", "error", "alert", "announcement", "dev"]>, z.ZodString]>, z.ZodString>>;
53
172
  }, "strip", z.ZodTypeAny, {
54
173
  projects: Record<string, {
174
+ channels: Record<string, string | {
175
+ id: string;
176
+ bot?: string | undefined;
177
+ }>;
55
178
  guild_id: string;
56
- channels: Record<string, string>;
57
- default_channel?: string | undefined;
58
179
  token_env?: string | undefined;
180
+ profile_add?: string[] | undefined;
181
+ profile_remove?: string[] | undefined;
182
+ bot?: string | undefined;
183
+ default_channel?: string | undefined;
184
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
59
185
  owners?: string[] | undefined;
60
186
  notify_owners_on?: string[] | undefined;
61
187
  }>;
188
+ bots?: Record<string, {
189
+ name: string;
190
+ token_env: string;
191
+ role?: string | undefined;
192
+ description?: string | undefined;
193
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
194
+ profile_add?: string[] | undefined;
195
+ profile_remove?: string[] | undefined;
196
+ }> | undefined;
62
197
  default_project?: string | undefined;
63
198
  notification_routing?: Record<string, string> | undefined;
64
199
  }, {
65
200
  projects: Record<string, {
201
+ channels: Record<string, string | {
202
+ id: string;
203
+ bot?: string | undefined;
204
+ }>;
66
205
  guild_id: string;
67
- channels: Record<string, string>;
68
- default_channel?: string | undefined;
69
206
  token_env?: string | undefined;
207
+ profile_add?: string[] | undefined;
208
+ profile_remove?: string[] | undefined;
209
+ bot?: string | undefined;
210
+ default_channel?: string | undefined;
211
+ tool_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
70
212
  owners?: string[] | undefined;
71
213
  notify_owners_on?: string[] | undefined;
72
214
  }>;
215
+ bots?: Record<string, {
216
+ name: string;
217
+ token_env: string;
218
+ role?: string | undefined;
219
+ description?: string | undefined;
220
+ default_profile?: "full" | "monitoring" | "readonly" | "moderation" | "messaging" | "channels" | "webhooks" | undefined;
221
+ profile_add?: string[] | undefined;
222
+ profile_remove?: string[] | undefined;
223
+ }> | undefined;
73
224
  default_project?: string | undefined;
74
225
  notification_routing?: Record<string, string> | undefined;
75
226
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,gBAAgB,kHAA4D,CAAC;AAC1F,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,6DAA2D,CAAC;AAExF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,sBAAsB;;;;;;;;;EAGjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;EAM1B,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,gBAAgB,kHAA4D,CAAC;AAC1F,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,kGAQ1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,uCAAuC;AACvC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;EAQ3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,wEAAwE;AACxE,eAAO,MAAM,mBAAmB;;;;;;;;;IAM9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,sBAAsB;;;;;;;;;EAGjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;EAM1B,CAAC"}
@@ -10,16 +10,47 @@ const BUILTIN_NOTIFICATION_TYPES = [
10
10
  ];
11
11
  // Open union: built-in values are documented suggestions, but any string is valid.
12
12
  export const notificationType = z.union([z.enum(BUILTIN_NOTIFICATION_TYPES), z.string()]);
13
+ export const ToolProfileEnum = z.enum([
14
+ "full",
15
+ "monitoring",
16
+ "readonly",
17
+ "moderation",
18
+ "messaging",
19
+ "channels",
20
+ "webhooks",
21
+ ]);
22
+ /** Named bot with identity metadata */
23
+ export const BotPersonaSchema = z.object({
24
+ name: z.string().min(1).max(100),
25
+ role: z.string().max(500).optional(),
26
+ description: z.string().max(2000).optional(),
27
+ token_env: z.string(),
28
+ default_profile: ToolProfileEnum.optional(),
29
+ profile_add: z.array(z.string()).optional(),
30
+ profile_remove: z.array(z.string()).optional(),
31
+ });
32
+ /** Channel value: plain snowflake string OR object with bot override */
33
+ export const ChannelConfigSchema = z.union([
34
+ z.string().regex(/^\d{17,20}$/),
35
+ z.object({
36
+ id: z.string().regex(/^\d{17,20}$/),
37
+ bot: z.string().optional(),
38
+ }),
39
+ ]);
13
40
  export const ProjectConfigSchema = z.object({
14
41
  guild_id: z.string().regex(/^\d{17,20}$/, "Must be a valid Discord snowflake ID"),
15
- channels: z.record(z.string(), z.string().regex(/^\d{17,20}$/)),
42
+ channels: z.record(z.string(), ChannelConfigSchema),
16
43
  default_channel: z.string().optional(),
17
44
  token_env: z.string().optional(),
45
+ bot: z.string().optional(),
46
+ tool_profile: ToolProfileEnum.optional(),
47
+ profile_add: z.array(z.string()).optional(),
48
+ profile_remove: z.array(z.string()).optional(),
18
49
  owners: z.array(z.string().regex(/^\d{17,20}$/)).optional(),
19
50
  notify_owners_on: z.array(notificationType).optional(),
20
51
  });
21
- export const ToolProfileEnum = z.enum(["full", "monitoring", "readonly", "moderation"]);
22
52
  export const GlobalConfigSchema = z.object({
53
+ bots: z.record(z.string(), BotPersonaSchema).optional(),
23
54
  projects: z.record(z.string(), ProjectConfigSchema),
24
55
  default_project: z.string().optional(),
25
56
  notification_routing: z.record(notificationType, z.string()).optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,0BAA0B,GAAG;IACjC,UAAU;IACV,QAAQ;IACR,SAAS;IACT,OAAO;IACP,OAAO;IACP,cAAc;IACd,KAAK;CACG,CAAC;AAEX,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAG1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,sCAAsC,CAAC;IACjF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3D,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC;IACnD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,oBAAoB,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxE,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,oBAAoB,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxE,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC5C,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5C,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5E,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/config/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,sBAAsB,CAqI3E"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/config/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,sBAAsB,CAwJ3E"}
@@ -15,20 +15,38 @@ export function validateConfig(config) {
15
15
  const guildToProjects = new Map();
16
16
  const channelToProjects = new Map();
17
17
  for (const [name, project] of projectEntries) {
18
- // Track token state
18
+ // Track token state — check bot-level token first, then project-level, then default
19
19
  const tokenEnv = project.token_env;
20
- const tokenSet = tokenEnv ? !!process.env[tokenEnv] : !!config.defaultToken;
20
+ let tokenSet;
21
+ if (project.bot && config.global.bots?.[project.bot]) {
22
+ tokenSet = !!process.env[config.global.bots[project.bot].token_env];
23
+ }
24
+ else if (tokenEnv) {
25
+ tokenSet = !!process.env[tokenEnv];
26
+ }
27
+ else {
28
+ tokenSet = !!config.defaultToken;
29
+ }
30
+ // Normalize channels to plain ID strings for validation output
31
+ const normalizedChannels = {};
32
+ for (const [alias, value] of Object.entries(project.channels)) {
33
+ normalizedChannels[alias] = typeof value === "string" ? value : value.id;
34
+ }
21
35
  projects.push({
22
36
  name,
23
37
  guildId: project.guild_id,
24
- channels: project.channels,
38
+ channels: normalizedChannels,
25
39
  defaultChannel: project.default_channel,
26
40
  tokenEnv,
27
41
  tokenSet,
28
42
  });
29
43
  // Check token availability
30
44
  if (!tokenSet) {
31
- if (tokenEnv) {
45
+ if (project.bot && config.global.bots?.[project.bot]) {
46
+ const bot = config.global.bots[project.bot];
47
+ errors.push(`Project "${name}": bot "${project.bot}" token_env "${bot.token_env}" is not set in environment`);
48
+ }
49
+ else if (tokenEnv) {
32
50
  errors.push(`Project "${name}": token_env "${tokenEnv}" is not set in environment`);
33
51
  }
34
52
  else {
@@ -39,8 +57,9 @@ export function validateConfig(config) {
39
57
  const guildProjects = guildToProjects.get(project.guild_id) ?? [];
40
58
  guildProjects.push(name);
41
59
  guildToProjects.set(project.guild_id, guildProjects);
42
- // Track channel ID usage
43
- for (const [alias, channelId] of Object.entries(project.channels)) {
60
+ // Track channel ID usage (channels can be plain strings or objects with id/bot)
61
+ for (const [alias, channelValue] of Object.entries(project.channels)) {
62
+ const channelId = typeof channelValue === "string" ? channelValue : channelValue.id;
44
63
  const channelProjects = channelToProjects.get(channelId) ?? [];
45
64
  channelProjects.push(`${name}/${alias}`);
46
65
  channelToProjects.set(channelId, channelProjects);
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/config/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/config/validate.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAoB;IACjD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAwB,EAAE,CAAC;IAEzC,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE9D,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IACjE,CAAC;IAED,oDAAoD;IACpD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoB,CAAC;IACpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEtD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,cAAc,EAAE,CAAC;QAC7C,oFAAoF;QACpF,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,QAAiB,CAAC;QACtB,IAAI,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACnC,CAAC;QAED,+DAA+D;QAC/D,MAAM,kBAAkB,GAA2B,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9D,kBAAkB,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3E,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,QAAQ;YACzB,QAAQ,EAAE,kBAAkB;YAC5B,cAAc,EAAE,OAAO,CAAC,eAAe;YACvC,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QAEH,2BAA2B;QAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5C,MAAM,CAAC,IAAI,CACT,YAAY,IAAI,WAAW,OAAO,CAAC,GAAG,gBAAgB,GAAG,CAAC,SAAS,6BAA6B,CACjG,CAAC;YACJ,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,iBAAiB,QAAQ,6BAA6B,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,2DAA2D,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAErD,gFAAgF;QAChF,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrE,MAAM,SAAS,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;YACpF,MAAM,eAAe,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC/D,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;YACzC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QACpD,CAAC;QAED,mDAAmD;QACnD,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1E,MAAM,CAAC,IAAI,CACT,YAAY,IAAI,uBAAuB,OAAO,CAAC,eAAe,qCAAqC,CACpG,CAAC;QACJ,CAAC;QAED,2BAA2B;QAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,8BAA8B,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,eAAe,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,qCAAqC;YACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACjB,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvC,OAAO,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC;YACpC,CAAC,CAAC,CACH,CAAC;YACF,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACpB,QAAQ,CAAC,IAAI,CACX,SAAS,OAAO,qDAAqD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBACvF,4CAA4C,CAC/C,CAAC;YACJ,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC7B,8CAA8C;gBAC9C,QAAQ,CAAC,IAAI,CACX,SAAS,OAAO,2BAA2B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAC9F,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1B,qCAAqC;gBACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC7B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACvC,OAAO,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC;gBACpC,CAAC,CAAC,CACH,CAAC;gBACF,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBACpB,QAAQ,CAAC,IAAI,CACX,WAAW,SAAS,qDAAqD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3F,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACvC,MAAM,kBAAkB,GAAG,MAAM,CAAC,UAAU,EAAE,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;QACvF,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;YAClE,IAAI,cAAc,EAAE,CAAC;gBACnB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBAC/E,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;wBACpC,QAAQ,CAAC,IAAI,CACX,0BAA0B,IAAI,oBAAoB,KAAK,6CAA6C,kBAAkB,GAAG,CAC1H,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YAC3D,MAAM,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,CAAC,eAAe,8BAA8B,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profiles/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,eAAO,MAAM,aAAa,gGAQhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,CA6C1D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAQxE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,WAAW,CAEzD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,EAAE,CAmEjG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profiles/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,eAAO,MAAM,aAAa,gGAQhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,CA+C1D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAQxE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,WAAW,CAEzD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,EAAE,CAmEjG"}
@@ -20,6 +20,7 @@ export const PROFILES = {
20
20
  "create_thread",
21
21
  "health_check",
22
22
  "list_projects",
23
+ "list_bots",
23
24
  ],
24
25
  readonly: [
25
26
  "get_messages",
@@ -28,6 +29,7 @@ export const PROFILES = {
28
29
  "get_guild",
29
30
  "health_check",
30
31
  "list_projects",
32
+ "list_bots",
31
33
  ],
32
34
  moderation: [
33
35
  "get_messages",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profiles/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profiles/index.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,11 @@ export interface ResolvedTarget {
10
10
  * The audit logger and error sanitizer strip tokens automatically.
11
11
  */
12
12
  token?: string;
13
+ /** Bot persona metadata (name, role) for agent context. Never includes token. */
14
+ bot?: {
15
+ name: string;
16
+ role?: string;
17
+ };
13
18
  }
14
19
  export interface ResolveParams {
15
20
  /** Direct channel ID — highest priority */
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/routing/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,oBAAoB,CAAC;AAG3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA2C7C"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/routing/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAIlB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA6D7C"}
@@ -1,6 +1,7 @@
1
- import { getTokenForProject } from "../config/index.js";
1
+ import { getTokenForProject, getTokenForBot, getBotPersona, } from "../config/index.js";
2
2
  import { resolveProject, getDefaultProjectName } from "../config/profiles.js";
3
3
  import { fuzzyFind } from "./fuzzy.js";
4
+ import { logger } from "../utils/logger.js";
4
5
  /**
5
6
  * Resolves a target guild + channel from flexible input params.
6
7
  *
@@ -32,49 +33,111 @@ export async function resolveTarget(params, config, discord) {
32
33
  if (!project) {
33
34
  return { error: `Project "${projectName}" not found in config` };
34
35
  }
35
- const token = getTokenForProject(projectName, config);
36
36
  // Resolve channel via config aliases or notification routing
37
- const channelId = resolveChannel(params, project);
38
- if (channelId) {
39
- return { guildId: project.guildId, channelId, project: projectName, token };
37
+ const resolved = resolveChannelWithBot(params, project);
38
+ if (resolved) {
39
+ const token = resolveTokenForChannel(resolved.botName, projectName, config);
40
+ const botPersona = resolveBotPersona(resolved.botName, projectName, resolved.alias, config);
41
+ return {
42
+ guildId: project.guildId,
43
+ channelId: resolved.channelId,
44
+ project: projectName,
45
+ token,
46
+ ...(botPersona ? { bot: botPersona } : {}),
47
+ };
40
48
  }
41
49
  // Fallback: live Discord channel name lookup (fuzzy)
42
50
  if (params.channel && discord && project.guildId) {
43
- const liveChannelId = await discord.findChannelByName(project.guildId, params.channel, token);
51
+ const defaultToken = resolveTokenForChannel(undefined, projectName, config);
52
+ const liveChannelId = await discord.findChannelByName(project.guildId, params.channel, defaultToken);
44
53
  if (liveChannelId) {
45
- return { guildId: project.guildId, channelId: liveChannelId, project: projectName, token };
54
+ const botPersona = resolveBotPersona(project.bot, projectName, undefined, config);
55
+ return {
56
+ guildId: project.guildId,
57
+ channelId: liveChannelId,
58
+ project: projectName,
59
+ token: defaultToken,
60
+ ...(botPersona ? { bot: botPersona } : {}),
61
+ };
46
62
  }
47
63
  }
48
64
  return {
49
65
  error: `Cannot resolve channel "${params.channel ?? params.notification_type ?? "(none)"}" for project "${projectName}". Provide channel, notification_type, or set default_channel`,
50
66
  };
51
67
  }
52
- function resolveChannel(params, project) {
68
+ function resolveChannelWithBot(params, project) {
53
69
  // Explicit channel alias — exact then fuzzy on configured alias keys
54
70
  if (params.channel) {
55
71
  const exact = project.channels[params.channel];
56
- if (exact)
57
- return exact;
72
+ if (exact) {
73
+ return {
74
+ channelId: exact,
75
+ alias: params.channel,
76
+ botName: project.channelBots[params.channel] ?? project.bot,
77
+ };
78
+ }
58
79
  // Fuzzy match against configured alias keys
59
80
  const aliases = Object.keys(project.channels).map((k) => ({
60
81
  id: project.channels[k],
61
82
  name: k,
62
83
  }));
63
84
  const fuzzyMatch = fuzzyFind(aliases, params.channel);
64
- if (fuzzyMatch)
65
- return fuzzyMatch.item.id;
85
+ if (fuzzyMatch) {
86
+ return {
87
+ channelId: fuzzyMatch.item.id,
88
+ alias: fuzzyMatch.item.name,
89
+ botName: project.channelBots[fuzzyMatch.item.name] ?? project.bot,
90
+ };
91
+ }
66
92
  return undefined;
67
93
  }
68
94
  // Notification type → channel alias → channel ID
69
95
  if (params.notification_type && project.notificationRouting) {
70
96
  const channelAlias = project.notificationRouting[params.notification_type];
71
- if (channelAlias) {
72
- return project.channels[channelAlias];
97
+ if (channelAlias && project.channels[channelAlias]) {
98
+ return {
99
+ channelId: project.channels[channelAlias],
100
+ alias: channelAlias,
101
+ botName: project.channelBots[channelAlias] ?? project.bot,
102
+ };
73
103
  }
74
104
  }
75
105
  // Default channel
76
- if (project.defaultChannel) {
77
- return project.channels[project.defaultChannel];
106
+ if (project.defaultChannel && project.channels[project.defaultChannel]) {
107
+ return {
108
+ channelId: project.channels[project.defaultChannel],
109
+ alias: project.defaultChannel,
110
+ botName: project.channelBots[project.defaultChannel] ?? project.bot,
111
+ };
112
+ }
113
+ return undefined;
114
+ }
115
+ /**
116
+ * Resolves the token for a channel, preferring bot-specific tokens.
117
+ */
118
+ function resolveTokenForChannel(botName, projectName, config) {
119
+ if (botName && config.global.bots?.[botName]) {
120
+ try {
121
+ return getTokenForBot(botName, config);
122
+ }
123
+ catch (err) {
124
+ logger.warn(`Bot "${botName}" token unavailable, falling back to project token for "${projectName}"`, { error: err instanceof Error ? err.message : String(err) });
125
+ }
126
+ }
127
+ return getTokenForProject(projectName, config);
128
+ }
129
+ /**
130
+ * Builds a safe bot persona object (no token) for the resolved target.
131
+ */
132
+ function resolveBotPersona(botName, projectName, channelAlias, config) {
133
+ if (botName && config.global.bots?.[botName]) {
134
+ const bot = config.global.bots[botName];
135
+ return { name: bot.name, role: bot.role };
136
+ }
137
+ // Try getBotPersona for channel-level override resolution
138
+ const persona = getBotPersona(projectName, channelAlias, config);
139
+ if (persona) {
140
+ return { name: persona.name, role: persona.role };
78
141
  }
79
142
  return undefined;
80
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/routing/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/routing/resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAuBpD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;CAClB;AAOD,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,kBAAkB,CA4K1F"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA6BpD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;CAClB;AAOD,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,kBAAkB,CA8N1F"}