@songsid/agend 2.1.7-beta.5 → 2.1.7-beta.7

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 (63) hide show
  1. package/dist/backend/codex.d.ts +34 -9
  2. package/dist/backend/codex.js +197 -33
  3. package/dist/backend/codex.js.map +1 -1
  4. package/dist/backend/grok.js +51 -0
  5. package/dist/backend/grok.js.map +1 -1
  6. package/dist/channel/adapters/discord.d.ts +11 -0
  7. package/dist/channel/adapters/discord.js +16 -2
  8. package/dist/channel/adapters/discord.js.map +1 -1
  9. package/dist/channel/types.d.ts +2 -0
  10. package/dist/cli.js +79 -132
  11. package/dist/cli.js.map +1 -1
  12. package/dist/completion-install.d.ts +32 -0
  13. package/dist/completion-install.js +125 -1
  14. package/dist/completion-install.js.map +1 -1
  15. package/dist/config-validator.js +45 -0
  16. package/dist/config-validator.js.map +1 -1
  17. package/dist/daemon.d.ts +4 -1
  18. package/dist/daemon.js +23 -6
  19. package/dist/daemon.js.map +1 -1
  20. package/dist/delivery-outbox.d.ts +109 -0
  21. package/dist/delivery-outbox.js +306 -10
  22. package/dist/delivery-outbox.js.map +1 -1
  23. package/dist/fleet-manager.d.ts +67 -7
  24. package/dist/fleet-manager.js +215 -59
  25. package/dist/fleet-manager.js.map +1 -1
  26. package/dist/general-knowledge/skills/cross-instance-messaging/SKILL.md +10 -0
  27. package/dist/instance-config-impact.js +5 -0
  28. package/dist/instance-config-impact.js.map +1 -1
  29. package/dist/instance-lifecycle.d.ts +10 -2
  30. package/dist/instance-lifecycle.js +50 -32
  31. package/dist/instance-lifecycle.js.map +1 -1
  32. package/dist/instructions.d.ts +17 -0
  33. package/dist/instructions.js +24 -1
  34. package/dist/instructions.js.map +1 -1
  35. package/dist/locale.js +2 -0
  36. package/dist/locale.js.map +1 -1
  37. package/dist/ls-rows.d.ts +50 -0
  38. package/dist/ls-rows.js +152 -0
  39. package/dist/ls-rows.js.map +1 -0
  40. package/dist/outbound-handlers.d.ts +1 -1
  41. package/dist/outbound-handlers.js +6 -7
  42. package/dist/outbound-handlers.js.map +1 -1
  43. package/dist/outbound-schemas.d.ts +2 -1
  44. package/dist/outbound-schemas.js +3 -2
  45. package/dist/outbound-schemas.js.map +1 -1
  46. package/dist/quickstart.js +9 -3
  47. package/dist/quickstart.js.map +1 -1
  48. package/dist/remote-credential-check.d.ts +26 -7
  49. package/dist/remote-credential-check.js +157 -10
  50. package/dist/remote-credential-check.js.map +1 -1
  51. package/dist/settings-api.d.ts +17 -0
  52. package/dist/settings-api.js +62 -1
  53. package/dist/settings-api.js.map +1 -1
  54. package/dist/status-emojis.d.ts +118 -0
  55. package/dist/status-emojis.js +206 -0
  56. package/dist/status-emojis.js.map +1 -0
  57. package/dist/types.d.ts +12 -0
  58. package/dist/ui/dashboard.html +7 -5
  59. package/dist/ui/settings.html +168 -6
  60. package/dist/ui/view.html +138 -45
  61. package/dist/usage/usage-api.js +30 -0
  62. package/dist/usage/usage-api.js.map +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../src/quickstart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../src/quickstart.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  /**
2
- * Advisory detection of GitHub tokens embedded in HTTPS git remote URLs (#855, #963).
2
+ * Detection and repair of GitHub tokens embedded in HTTPS git remote URLs (#855, #963).
3
3
  *
4
- * AgEnD never writes a credential into a remote URL. The #855 token came from a
5
- * user-level `url.<base>.insteadOf` rewrite, which `git remote -v` applies, so
6
- * the effective URL printed there carried the PAT. This module only reports
7
- * that such a URL exists; it never changes a remote or a credential.
4
+ * A token can be embedded directly in a remote URL or supplied by a broad
5
+ * user-level `url.<base>.insteadOf` rewrite, which `git remote -v` applies. On
6
+ * worktree creation we move GitHub authentication to `gh auth setup-git`, strip
7
+ * any URL userinfo, and add an exact clean URL rewrite in the shared repository
8
+ * config so a broader global rewrite cannot put the token back in `remote -v`.
8
9
  *
9
10
  * Only the URL's authority is inspected, never the raw string: the authority
10
11
  * ends at the first `/`, `?` or `#`, and the userinfo is everything before its
@@ -12,7 +13,10 @@
12
13
  * query or fragment therefore can never match, and neither can one after the
13
14
  * last `@`, which is the host.
14
15
  *
15
- * Scope: HTTPS/HTTP GitHub tokens only. `ssh://` and scp-style
16
+ * Scope: HTTPS GitHub remotes can be repaired with GitHub CLI's HTTPS helper.
17
+ * HTTP GitHub remotes with embedded credentials are detected but fail closed;
18
+ * they are never stripped because the HTTPS-only helper cannot authenticate
19
+ * them. `ssh://` and scp-style
16
20
  * (`git@github.com:owner/repo`) remotes authenticate with keys and are out of
17
21
  * scope, as are other forges' token formats.
18
22
  */
@@ -30,10 +34,25 @@ export declare function httpsUserinfo(url: string): string | null;
30
34
  export declare function userinfoHasGitHubToken(userinfo: string): boolean;
31
35
  /** One remote URL: does its HTTPS userinfo carry a GitHub token? */
32
36
  export declare function urlHasEmbeddedGitHubToken(url: string): boolean;
37
+ /** Remove token-bearing userinfo from a GitHub HTTPS URL without returning it elsewhere. */
38
+ export declare function stripEmbeddedGitHubToken(url: string): string | null;
33
39
  /**
34
40
  * Scan `git remote -v` output (`<name>\t<url> (fetch|push)` per line). Returns
35
41
  * only a boolean so no caller can end up logging the URL or the token.
36
42
  */
37
43
  export declare function remoteListHasEmbeddedGitHubToken(remoteVerboseOutput: string): boolean;
44
+ export type GitConfigRunner = (args: string[]) => Promise<string>;
45
+ /** Safe, fixed error text: command failures must never echo a credential-bearing URL. */
46
+ export declare const EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED = "Cannot create a worktree safely: use an HTTPS GitHub remote and configure GitHub CLI authentication before retrying.";
47
+ /**
48
+ * Move embedded GitHub remote credentials out of `git remote -v` before adding
49
+ * a linked worktree. The caller supplies only argument-vector Git execution;
50
+ * tokens are never passed to loggers or interpolated into a shell command.
51
+ *
52
+ * Git applies the longest `insteadOf` prefix. The exact clean URL rule shadows
53
+ * the broad global rewrite that otherwise re-inserts the token. GitHub CLI's
54
+ * credential helper then provides authentication for that clean URL.
55
+ */
56
+ export declare function secureGitHubRemotesForWorktree(runGit: GitConfigRunner, setupGitHubCredentialHelper: () => Promise<void>): Promise<boolean>;
38
57
  /** Advisory text. Deliberately contains neither the URL nor the token. */
39
- export declare const EMBEDDED_CREDENTIAL_REMOTE_WARNING: string;
58
+ export declare const EMBEDDED_CREDENTIAL_REMOTE_WARNING = "A git remote contained an embedded GitHub credential; worktree creation moved authentication to GitHub CLI and cleaned the shared repository remote config.";
@@ -1,10 +1,11 @@
1
1
  /**
2
- * Advisory detection of GitHub tokens embedded in HTTPS git remote URLs (#855, #963).
2
+ * Detection and repair of GitHub tokens embedded in HTTPS git remote URLs (#855, #963).
3
3
  *
4
- * AgEnD never writes a credential into a remote URL. The #855 token came from a
5
- * user-level `url.<base>.insteadOf` rewrite, which `git remote -v` applies, so
6
- * the effective URL printed there carried the PAT. This module only reports
7
- * that such a URL exists; it never changes a remote or a credential.
4
+ * A token can be embedded directly in a remote URL or supplied by a broad
5
+ * user-level `url.<base>.insteadOf` rewrite, which `git remote -v` applies. On
6
+ * worktree creation we move GitHub authentication to `gh auth setup-git`, strip
7
+ * any URL userinfo, and add an exact clean URL rewrite in the shared repository
8
+ * config so a broader global rewrite cannot put the token back in `remote -v`.
8
9
  *
9
10
  * Only the URL's authority is inspected, never the raw string: the authority
10
11
  * ends at the first `/`, `?` or `#`, and the userinfo is everything before its
@@ -12,7 +13,10 @@
12
13
  * query or fragment therefore can never match, and neither can one after the
13
14
  * last `@`, which is the host.
14
15
  *
15
- * Scope: HTTPS/HTTP GitHub tokens only. `ssh://` and scp-style
16
+ * Scope: HTTPS GitHub remotes can be repaired with GitHub CLI's HTTPS helper.
17
+ * HTTP GitHub remotes with embedded credentials are detected but fail closed;
18
+ * they are never stripped because the HTTPS-only helper cannot authenticate
19
+ * them. `ssh://` and scp-style
16
20
  * (`git@github.com:owner/repo`) remotes authenticate with keys and are out of
17
21
  * scope, as are other forges' token formats.
18
22
  */
@@ -63,6 +67,26 @@ export function urlHasEmbeddedGitHubToken(url) {
63
67
  const userinfo = httpsUserinfo(url);
64
68
  return userinfo !== null && userinfoHasGitHubToken(userinfo);
65
69
  }
70
+ /** Remove token-bearing userinfo from a GitHub HTTPS URL without returning it elsewhere. */
71
+ export function stripEmbeddedGitHubToken(url) {
72
+ if (!urlHasEmbeddedGitHubToken(url))
73
+ return null;
74
+ const match = /^(https?:\/\/)([^/?#\s]*)(.*)$/i.exec(url.trim());
75
+ if (!match)
76
+ return null;
77
+ try {
78
+ const parsed = new URL(url.trim());
79
+ if (parsed.protocol !== "https:" || parsed.hostname.toLowerCase() !== "github.com")
80
+ return null;
81
+ }
82
+ catch {
83
+ return null;
84
+ }
85
+ const at = match[2].lastIndexOf("@");
86
+ if (at < 0)
87
+ return null;
88
+ return `${match[1]}${match[2].slice(at + 1)}${match[3]}`;
89
+ }
66
90
  /**
67
91
  * Scan `git remote -v` output (`<name>\t<url> (fetch|push)` per line). Returns
68
92
  * only a boolean so no caller can end up logging the URL or the token.
@@ -73,9 +97,132 @@ export function remoteListHasEmbeddedGitHubToken(remoteVerboseOutput) {
73
97
  return url ? urlHasEmbeddedGitHubToken(url) : false;
74
98
  });
75
99
  }
100
+ /** Safe, fixed error text: command failures must never echo a credential-bearing URL. */
101
+ export const EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED = "Cannot create a worktree safely: use an HTTPS GitHub remote and configure GitHub CLI authentication before retrying.";
102
+ function remoteRows(remoteVerboseOutput) {
103
+ return remoteVerboseOutput.split("\n").flatMap(line => {
104
+ const [name, rawUrl] = line.split("\t");
105
+ const url = rawUrl?.replace(/\s+\((?:fetch|push)\)\s*$/, "");
106
+ return name && url ? [{ name, url }] : [];
107
+ });
108
+ }
109
+ function githubHttpsUrl(url) {
110
+ try {
111
+ const parsed = new URL(url);
112
+ return parsed.protocol === "https:" && parsed.hostname.toLowerCase() === "github.com";
113
+ }
114
+ catch {
115
+ return false;
116
+ }
117
+ }
118
+ function isGitConfigNotFound(error) {
119
+ return typeof error === "object" && error !== null && "code" in error && error.code === 1;
120
+ }
121
+ /**
122
+ * Move embedded GitHub remote credentials out of `git remote -v` before adding
123
+ * a linked worktree. The caller supplies only argument-vector Git execution;
124
+ * tokens are never passed to loggers or interpolated into a shell command.
125
+ *
126
+ * Git applies the longest `insteadOf` prefix. The exact clean URL rule shadows
127
+ * the broad global rewrite that otherwise re-inserts the token. GitHub CLI's
128
+ * credential helper then provides authentication for that clean URL.
129
+ */
130
+ export async function secureGitHubRemotesForWorktree(runGit, setupGitHubCredentialHelper) {
131
+ let before;
132
+ try {
133
+ before = await runGit(["remote", "-v"]);
134
+ }
135
+ catch {
136
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
137
+ }
138
+ const flaggedRows = remoteRows(before).filter(row => urlHasEmbeddedGitHubToken(row.url));
139
+ if (flaggedRows.length === 0)
140
+ return false;
141
+ // Refuse unsupported credential hosts before changing anything. This repair
142
+ // is intentionally scoped to GitHub HTTPS remotes and its `gh` helper.
143
+ if (flaggedRows.some(row => stripEmbeddedGitHubToken(row.url) === null)) {
144
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
145
+ }
146
+ try {
147
+ await setupGitHubCredentialHelper();
148
+ }
149
+ catch {
150
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
151
+ }
152
+ let names;
153
+ try {
154
+ names = (await runGit(["remote"])).split(/\r?\n/).filter(Boolean);
155
+ }
156
+ catch {
157
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
158
+ }
159
+ const cleanUrls = new Set();
160
+ for (const name of names) {
161
+ for (const key of ["url", "pushurl"]) {
162
+ const configKey = `remote.${name}.${key}`;
163
+ let configured;
164
+ try {
165
+ configured = (await runGit(["config", "--local", "--get-all", configKey]))
166
+ .split(/\r?\n/).filter(Boolean);
167
+ }
168
+ catch (error) {
169
+ if (isGitConfigNotFound(error))
170
+ continue;
171
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
172
+ }
173
+ const cleaned = configured.map(url => stripEmbeddedGitHubToken(url) ?? url);
174
+ const changed = cleaned.some((url, index) => url !== configured[index]);
175
+ if (changed && configured.length !== 1) {
176
+ // Do not collapse a multi-URL remote or risk partially rewriting it.
177
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
178
+ }
179
+ if (changed) {
180
+ try {
181
+ await runGit(["config", "--local", "--replace-all", configKey, cleaned[0]]);
182
+ }
183
+ catch {
184
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
185
+ }
186
+ }
187
+ for (const url of cleaned)
188
+ if (githubHttpsUrl(url))
189
+ cleanUrls.add(url);
190
+ }
191
+ }
192
+ if (cleanUrls.size === 0)
193
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
194
+ try {
195
+ for (const url of cleanUrls) {
196
+ // The base and prefix are clean. Longest-prefix matching makes this
197
+ // identity rewrite take precedence over a broad global credential URL.
198
+ await runGit(["config", "--local", "--add", `url.${url}.insteadOf`, url]);
199
+ }
200
+ const after = await runGit(["remote", "-v"]);
201
+ if (remoteListHasEmbeddedGitHubToken(after)) {
202
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
203
+ }
204
+ for (const name of names) {
205
+ for (const key of ["url", "pushurl"]) {
206
+ let values;
207
+ try {
208
+ values = (await runGit(["config", "--local", "--get-all", `remote.${name}.${key}`]))
209
+ .split(/\r?\n/).filter(Boolean);
210
+ }
211
+ catch (error) {
212
+ if (isGitConfigNotFound(error))
213
+ continue;
214
+ throw error;
215
+ }
216
+ if (values.some(urlHasEmbeddedGitHubToken))
217
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
218
+ }
219
+ }
220
+ }
221
+ catch {
222
+ throw new Error(EMBEDDED_CREDENTIAL_REMOTE_REPAIR_FAILED);
223
+ }
224
+ return true;
225
+ }
76
226
  /** Advisory text. Deliberately contains neither the URL nor the token. */
77
- export const EMBEDDED_CREDENTIAL_REMOTE_WARNING = "A git remote of this repository embeds a GitHub token in its HTTPS URL (user:token@host). "
78
- + "This is advisory only; AgEnD did not add it and has not changed it. The usual source is a "
79
- + "url.<base>.insteadOf rewrite in ~/.gitconfig: consider a credential helper "
80
- + "(e.g. 'gh auth git-credential') so the token stops appearing in `git remote -v` and logs.";
227
+ export const EMBEDDED_CREDENTIAL_REMOTE_WARNING = "A git remote contained an embedded GitHub credential; worktree creation moved authentication to GitHub CLI and cleaned the shared repository remote config.";
81
228
  //# sourceMappingURL=remote-credential-check.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote-credential-check.js","sourceRoot":"","sources":["../src/remote-credential-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-credential-check.js","sourceRoot":"","sources":["../src/remote-credential-check.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,9 @@
14
14
  * POST /api/settings/reload → SIGHUP hot-reload
15
15
  * POST /api/settings/instances/:name/pause → manually pause a running instance
16
16
  * POST /api/settings/instances/:name/wake → manually wake a paused instance
17
+ * GET /api/settings/status-emojis → status-emoji keys, built-ins, pickable sets
18
+ * POST /api/settings/status-emojis/preview → resolve a map exactly as the bots will
19
+ * GET /api/settings/status-emojis/guild-emojis?channel=<id>[&refresh=1] → a Discord server's emojis
17
20
  *
18
21
  * Auth: all routes require the web.token — enforced by the global web-token gate
19
22
  * in fleet-manager BEFORE this handler runs (settings paths are not exempt), so
@@ -54,6 +57,20 @@ export interface SettingsApiContext {
54
57
  /** Non-null when the running config and fleet.yaml disagree on a
55
58
  * startup-only key, in which case a restart cannot clear the fleet row. */
56
59
  fleetSignatureMismatchKeys?(): string[] | null;
60
+ /** #1005: a Discord connection's server emojis, fetched with its bot token and cached. */
61
+ listGuildEmojis?(channelId: string, refresh?: boolean): Promise<{
62
+ ok: true;
63
+ fetched_at: number;
64
+ emojis: Array<{
65
+ id: string;
66
+ name: string;
67
+ animated: boolean;
68
+ available: boolean;
69
+ }>;
70
+ } | {
71
+ ok: false;
72
+ error: string;
73
+ }>;
57
74
  /** True when a running adapter is already long-polling this bot token. */
58
75
  isBotTokenInUse?(token: string): boolean;
59
76
  /** Secure Connections & Bots operations. The outer fleet HTTP server has
@@ -10,6 +10,7 @@ import { viewOf } from "./apply-job.js";
10
10
  import { handleQuickstartRequest } from "./quickstart-api.js";
11
11
  import { requestSessionBinding, } from "./connection-secrets.js";
12
12
  import { providerRegistryEnvKeys, isReservedProviderEnvKey } from "./provider-secret-registry.js";
13
+ import { STATUS_EMOJI_CONFIG_KEYS, STATUS_EMOJI_SUGGESTIONS, TELEGRAM_REACTION_EMOJIS, builtinStatusEmojis, customEmojiValue, emojiImageUrl, previewStatusEmojis, } from "./status-emojis.js";
13
14
  const __dirname = dirname(fileURLToPath(import.meta.url));
14
15
  function json(res, code, body, noStore = false) {
15
16
  res.writeHead(code, {
@@ -159,6 +160,66 @@ export function handleSettingsRequest(req, res, url, ctx) {
159
160
  }
160
161
  return true;
161
162
  }
163
+ // ── Status emojis (#1005) ──
164
+ // The picker and preview resolve on the server with the same code the
165
+ // reaction path runs, so what Settings shows is what a bot stamps.
166
+ if (method === "GET" && path === "/api/settings/status-emojis") {
167
+ json(res, 200, {
168
+ keys: STATUS_EMOJI_CONFIG_KEYS,
169
+ builtins: { discord: builtinStatusEmojis("discord"), telegram: builtinStatusEmojis("telegram") },
170
+ telegram_allowed: [...TELEGRAM_REACTION_EMOJIS],
171
+ suggestions: STATUS_EMOJI_SUGGESTIONS,
172
+ });
173
+ return true;
174
+ }
175
+ if (method === "POST" && path === "/api/settings/status-emojis/preview") {
176
+ readBody(req, 64 * 1024).then(buf => {
177
+ let body;
178
+ try {
179
+ body = JSON.parse(buf.toString("utf-8") || "{}");
180
+ }
181
+ catch {
182
+ return json(res, 400, { error: "invalid JSON" });
183
+ }
184
+ if (!body || typeof body !== "object" || Array.isArray(body))
185
+ return json(res, 400, { error: "expected an object" });
186
+ // The platform is the connection's type when one is named; an explicit
187
+ // platform covers a connection that is not saved yet.
188
+ const channels = ctx.fleetConfig?.channels ?? (ctx.fleetConfig?.channel ? [ctx.fleetConfig.channel] : []);
189
+ const named = typeof body.channel_id === "string" && body.channel_id
190
+ ? channels.find(ch => (ch.id ?? ch.type) === body.channel_id) : channels[0];
191
+ const platform = typeof body.platform === "string" ? body.platform : named?.type;
192
+ json(res, 200, previewStatusEmojis({
193
+ platform,
194
+ platformConfig: "channel_config" in body ? body.channel_config : named?.options?.status_emojis,
195
+ instanceConfig: body.instance_config,
196
+ }));
197
+ }).catch(() => json(res, 400, { error: "bad request" }));
198
+ return true;
199
+ }
200
+ if (method === "GET" && path === "/api/settings/status-emojis/guild-emojis") {
201
+ if (!ctx.listGuildEmojis) {
202
+ json(res, 501, { error: "guild emoji listing unavailable" });
203
+ return true;
204
+ }
205
+ const channelId = url.searchParams.get("channel") ?? "";
206
+ if (!channelId) {
207
+ json(res, 400, { error: "channel required" });
208
+ return true;
209
+ }
210
+ ctx.listGuildEmojis(channelId, url.searchParams.get("refresh") === "1").then(result => {
211
+ if (!result.ok)
212
+ return json(res, 409, { error: result.error });
213
+ json(res, 200, {
214
+ fetched_at: result.fetched_at,
215
+ emojis: result.emojis.map(e => {
216
+ const value = customEmojiValue(e);
217
+ return { ...e, value, image_url: emojiImageUrl(value) };
218
+ }),
219
+ });
220
+ }).catch(() => json(res, 502, { error: "guild emoji listing failed" }));
221
+ return true;
222
+ }
162
223
  // ── Secure Connections & Bots ──
163
224
  // These routes deliberately do not reuse the broad fleet/channel CRUD API:
164
225
  // a token is accepted only in a body, verified server-side, and never echoed
@@ -911,7 +972,7 @@ export function handleSettingsRequest(req, res, url, ctx) {
911
972
  }
912
973
  // ── Instances (create / patch / delete) ──
913
974
  const validName = (n) => !!n && /^[^\\/\x00]+$/.test(n);
914
- const nullableInstanceOverrides = new Set(["model", "auto_pause_after", "hang_detector", "agent_mode", "tool_set", "tool_progress", "reply_completion_guard", "log_level", "lightweight", "model_failover", "display_name"]);
975
+ const nullableInstanceOverrides = new Set(["model", "auto_pause_after", "hang_detector", "agent_mode", "tool_set", "tool_progress", "reply_completion_guard", "log_level", "lightweight", "model_failover", "display_name", "status_emojis"]);
915
976
  const removesInstanceOverride = (key, value) => nullableInstanceOverrides.has(key)
916
977
  && (value === null || (key === "model" && typeof value === "string" && value.trim() === ""));
917
978
  const rawInstancePatches = (name, patch) => {