@songsid/agend 2.2.0-alpha.2 → 2.2.0-alpha.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 (239) hide show
  1. package/README.md +4 -4
  2. package/README.zh-TW.md +4 -4
  3. package/dist/agent-endpoint.d.ts +4 -1
  4. package/dist/agent-endpoint.js +14 -2
  5. package/dist/agent-endpoint.js.map +1 -1
  6. package/dist/atomic-write.d.ts +21 -0
  7. package/dist/atomic-write.js +65 -0
  8. package/dist/atomic-write.js.map +1 -0
  9. package/dist/auth-api.js +2 -0
  10. package/dist/auth-api.js.map +1 -1
  11. package/dist/backend/codex.d.ts +7 -0
  12. package/dist/backend/codex.js +7 -0
  13. package/dist/backend/codex.js.map +1 -1
  14. package/dist/backend/muse.d.ts +7 -0
  15. package/dist/backend/muse.js +7 -0
  16. package/dist/backend/muse.js.map +1 -1
  17. package/dist/backend/types.d.ts +6 -0
  18. package/dist/backend/types.js.map +1 -1
  19. package/dist/binary-probe.d.ts +80 -0
  20. package/dist/binary-probe.js +182 -0
  21. package/dist/binary-probe.js.map +1 -0
  22. package/dist/cache-service.d.ts +17 -1
  23. package/dist/cache-service.js +39 -4
  24. package/dist/cache-service.js.map +1 -1
  25. package/dist/channel/adapters/discord.d.ts +5 -1
  26. package/dist/channel/adapters/discord.js +56 -11
  27. package/dist/channel/adapters/discord.js.map +1 -1
  28. package/dist/channel/adapters/telegram.d.ts +38 -1
  29. package/dist/channel/adapters/telegram.js +82 -0
  30. package/dist/channel/adapters/telegram.js.map +1 -1
  31. package/dist/channel/mcp-tools.js +1 -1
  32. package/dist/channel/mcp-tools.js.map +1 -1
  33. package/dist/channel/tool-router.d.ts +8 -1
  34. package/dist/channel/tool-router.js +4 -2
  35. package/dist/channel/tool-router.js.map +1 -1
  36. package/dist/channel/types.d.ts +21 -0
  37. package/dist/cli.js +133 -38
  38. package/dist/cli.js.map +1 -1
  39. package/dist/connection-secrets.d.ts +5 -0
  40. package/dist/connection-secrets.js.map +1 -1
  41. package/dist/cpu-profile.js +50 -0
  42. package/dist/cpu-profile.js.map +1 -1
  43. package/dist/daemon.d.ts +12 -0
  44. package/dist/daemon.js +166 -26
  45. package/dist/daemon.js.map +1 -1
  46. package/dist/delivery-outbox.d.ts +1 -0
  47. package/dist/delivery-outbox.js +12 -0
  48. package/dist/delivery-outbox.js.map +1 -1
  49. package/dist/discord-permissions.d.ts +33 -0
  50. package/dist/discord-permissions.js +42 -0
  51. package/dist/discord-permissions.js.map +1 -0
  52. package/dist/env-file.d.ts +11 -0
  53. package/dist/env-file.js +27 -0
  54. package/dist/env-file.js.map +1 -0
  55. package/dist/fleet-context.d.ts +5 -0
  56. package/dist/fleet-context.js.map +1 -1
  57. package/dist/fleet-level-config.d.ts +8 -1
  58. package/dist/fleet-level-config.js +31 -0
  59. package/dist/fleet-level-config.js.map +1 -1
  60. package/dist/fleet-manager.d.ts +76 -7
  61. package/dist/fleet-manager.js +599 -127
  62. package/dist/fleet-manager.js.map +1 -1
  63. package/dist/fleet-stop-budget.d.ts +22 -0
  64. package/dist/fleet-stop-budget.js +95 -0
  65. package/dist/fleet-stop-budget.js.map +1 -0
  66. package/dist/kiro-transcript-lane.d.ts +8 -4
  67. package/dist/kiro-transcript-lane.js +66 -44
  68. package/dist/kiro-transcript-lane.js.map +1 -1
  69. package/dist/locale.js +82 -0
  70. package/dist/locale.js.map +1 -1
  71. package/dist/next-steps.d.ts +5 -0
  72. package/dist/next-steps.js +26 -0
  73. package/dist/next-steps.js.map +1 -0
  74. package/dist/outbound-handlers.js +8 -0
  75. package/dist/outbound-handlers.js.map +1 -1
  76. package/dist/outbound-schemas.d.ts +4 -0
  77. package/dist/outbound-schemas.js +6 -1
  78. package/dist/outbound-schemas.js.map +1 -1
  79. package/dist/outbox-open-error.d.ts +7 -0
  80. package/dist/outbox-open-error.js +15 -0
  81. package/dist/outbox-open-error.js.map +1 -0
  82. package/dist/pane-context-cache.d.ts +25 -0
  83. package/dist/pane-context-cache.js +73 -0
  84. package/dist/pane-context-cache.js.map +1 -0
  85. package/dist/paths.d.ts +0 -7
  86. package/dist/paths.js +8 -2
  87. package/dist/paths.js.map +1 -1
  88. package/dist/provider-probe.d.ts +15 -0
  89. package/dist/provider-probe.js +20 -0
  90. package/dist/provider-probe.js.map +1 -1
  91. package/dist/public-link-progress.d.ts +73 -0
  92. package/dist/public-link-progress.js +190 -0
  93. package/dist/public-link-progress.js.map +1 -0
  94. package/dist/public-web-gateway.js +1 -1
  95. package/dist/public-web-gateway.js.map +1 -1
  96. package/dist/public-web-link.d.ts +6 -1
  97. package/dist/public-web-link.js +87 -15
  98. package/dist/public-web-link.js.map +1 -1
  99. package/dist/quickstart-api.d.ts +93 -20
  100. package/dist/quickstart-api.js +194 -62
  101. package/dist/quickstart-api.js.map +1 -1
  102. package/dist/quickstart.d.ts +15 -0
  103. package/dist/quickstart.js +100 -29
  104. package/dist/quickstart.js.map +1 -1
  105. package/dist/reply-buttons-controller.d.ts +98 -0
  106. package/dist/reply-buttons-controller.js +174 -0
  107. package/dist/reply-buttons-controller.js.map +1 -0
  108. package/dist/reply-buttons.d.ts +113 -0
  109. package/dist/reply-buttons.js +208 -0
  110. package/dist/reply-buttons.js.map +1 -0
  111. package/dist/reply-dedup.js +3 -1
  112. package/dist/reply-dedup.js.map +1 -1
  113. package/dist/restart-guard.d.ts +1 -0
  114. package/dist/restart-guard.js +8 -3
  115. package/dist/restart-guard.js.map +1 -1
  116. package/dist/service-activation.d.ts +15 -2
  117. package/dist/service-activation.js +81 -4
  118. package/dist/service-activation.js.map +1 -1
  119. package/dist/service-installer.js +19 -1
  120. package/dist/service-installer.js.map +1 -1
  121. package/dist/settings-api.js +53 -12
  122. package/dist/settings-api.js.map +1 -1
  123. package/dist/settings-authority.d.ts +11 -0
  124. package/dist/settings-authority.js +128 -0
  125. package/dist/settings-authority.js.map +1 -0
  126. package/dist/settings-change.d.ts +5 -0
  127. package/dist/settings-change.js +4 -3
  128. package/dist/settings-change.js.map +1 -1
  129. package/dist/settings-confirmation.d.ts +3 -0
  130. package/dist/settings-confirmation.js +7 -1
  131. package/dist/settings-confirmation.js.map +1 -1
  132. package/dist/settings-effect.js +19 -7
  133. package/dist/settings-effect.js.map +1 -1
  134. package/dist/settings-http-confirmation.js +1 -1
  135. package/dist/settings-http-confirmation.js.map +1 -1
  136. package/dist/settings-redaction.d.ts +18 -0
  137. package/dist/settings-redaction.js +58 -0
  138. package/dist/settings-redaction.js.map +1 -0
  139. package/dist/setup-form.d.ts +9 -1
  140. package/dist/setup-form.js +25 -1
  141. package/dist/setup-form.js.map +1 -1
  142. package/dist/setup-host.js +13 -3
  143. package/dist/setup-host.js.map +1 -1
  144. package/dist/setup-wizard.js +26 -19
  145. package/dist/setup-wizard.js.map +1 -1
  146. package/dist/systemd-runtime.d.ts +15 -0
  147. package/dist/systemd-runtime.js +41 -0
  148. package/dist/systemd-runtime.js.map +1 -0
  149. package/dist/tmux-control.d.ts +22 -0
  150. package/dist/tmux-control.js +82 -17
  151. package/dist/tmux-control.js.map +1 -1
  152. package/dist/token-env-name.d.ts +37 -0
  153. package/dist/token-env-name.js +93 -0
  154. package/dist/token-env-name.js.map +1 -0
  155. package/dist/tool-permissions.js +5 -3
  156. package/dist/tool-permissions.js.map +1 -1
  157. package/dist/topic-commands.d.ts +7 -16
  158. package/dist/topic-commands.js +45 -83
  159. package/dist/topic-commands.js.map +1 -1
  160. package/dist/transcript-monitor.js +3 -0
  161. package/dist/transcript-monitor.js.map +1 -1
  162. package/dist/transcript-sources.d.ts +68 -0
  163. package/dist/transcript-sources.js +336 -29
  164. package/dist/transcript-sources.js.map +1 -1
  165. package/dist/transcript-turns.d.ts +39 -0
  166. package/dist/transcript-turns.js +58 -0
  167. package/dist/transcript-turns.js.map +1 -0
  168. package/dist/tunnel/cloudflared-install.d.ts +18 -0
  169. package/dist/tunnel/cloudflared-install.js +15 -1
  170. package/dist/tunnel/cloudflared-install.js.map +1 -1
  171. package/dist/turn-reply-guard.d.ts +3 -0
  172. package/dist/turn-reply-guard.js.map +1 -1
  173. package/dist/ui/chat-render.js +32 -6
  174. package/dist/ui/chat-store.js +21 -1
  175. package/dist/ui/chat-strings.js +8 -0
  176. package/dist/ui/chat-thread.js +109 -52
  177. package/dist/ui/first-run.js +64 -0
  178. package/dist/ui/html-attachment.js +26 -0
  179. package/dist/ui/panel-chat.js +13 -5
  180. package/dist/ui/panel-fleet.js +5 -5
  181. package/dist/ui/panel-settings.js +18 -8
  182. package/dist/ui/preview-panel.js +38 -3
  183. package/dist/ui/settings-apply.js +3 -1
  184. package/dist/ui/settings-dialogs.js +95 -25
  185. package/dist/ui/settings-discord.js +130 -0
  186. package/dist/ui/settings-model.js +21 -0
  187. package/dist/ui/settings-strings.js +46 -6
  188. package/dist/ui/settings-token.js +54 -0
  189. package/dist/ui/settings-wizard.js +63 -29
  190. package/dist/ui/shared/app-shell.js +19 -33
  191. package/dist/ui/shared/app-store.js +5 -3
  192. package/dist/ui/shared/app-stream.js +2 -1
  193. package/dist/ui/shared/app.css +34 -2
  194. package/dist/ui/shared/app.js +2 -1
  195. package/dist/ui/shared/instance-nav.js +310 -0
  196. package/dist/ui/shared/panel-view.js +12 -190
  197. package/dist/ui/shared/view-roster-store.js +5 -0
  198. package/dist/ui/shared/view-strings.js +12 -0
  199. package/dist/update-dispatch.d.ts +1 -1
  200. package/dist/update-dispatch.js +1 -1
  201. package/dist/update-install.d.ts +15 -3
  202. package/dist/update-install.js +41 -13
  203. package/dist/update-install.js.map +1 -1
  204. package/dist/update-launch.d.ts +22 -0
  205. package/dist/update-launch.js +106 -0
  206. package/dist/update-launch.js.map +1 -0
  207. package/dist/update-marker.js +3 -8
  208. package/dist/update-marker.js.map +1 -1
  209. package/dist/usage/format-rich.js +7 -1
  210. package/dist/usage/format-rich.js.map +1 -1
  211. package/dist/usage/i18n-keys.d.ts +1 -1
  212. package/dist/usage/i18n-keys.js +1 -1
  213. package/dist/usage/i18n-keys.js.map +1 -1
  214. package/dist/usage/providers.d.ts +4 -0
  215. package/dist/usage/providers.js +2 -1
  216. package/dist/usage/providers.js.map +1 -1
  217. package/dist/usage/usage-api.js +48 -2
  218. package/dist/usage/usage-api.js.map +1 -1
  219. package/dist/view-api.d.ts +40 -0
  220. package/dist/view-api.js +28 -10
  221. package/dist/view-api.js.map +1 -1
  222. package/dist/web-api.d.ts +8 -0
  223. package/dist/web-api.js +50 -16
  224. package/dist/web-api.js.map +1 -1
  225. package/dist/web-auth.d.ts +8 -0
  226. package/dist/web-auth.js +34 -8
  227. package/dist/web-auth.js.map +1 -1
  228. package/dist/web-chat-history.d.ts +21 -0
  229. package/dist/web-chat-history.js +44 -0
  230. package/dist/web-chat-history.js.map +1 -1
  231. package/dist/web-host-guard.d.ts +18 -2
  232. package/dist/web-host-guard.js +30 -5
  233. package/dist/web-host-guard.js.map +1 -1
  234. package/dist/web-session.d.ts +7 -1
  235. package/dist/web-session.js +23 -2
  236. package/dist/web-session.js.map +1 -1
  237. package/launcher/postinstall.cjs +8 -4
  238. package/package.json +1 -1
  239. package/templates/systemd.service.ejs +3 -3
@@ -10,7 +10,8 @@ const immediate = new Set([
10
10
  "echo_to_channel", "status_emojis", "persona", "emoji", "hang_detector", "guardian", "watchdog", "timeout_minutes",
11
11
  "enabled", "startup_concurrency", "spawn_concurrency", "spawn_stagger_ms", "warm_cap", "idle_timeout",
12
12
  ]);
13
- const secretKeys = /^(?:token|secret|password|api_key|bot_token|web_token)$/i;
13
+ /** A config key whose value is a credential: confirmed by fingerprint, never shown (and redacted on read, #1490). */
14
+ export const SETTINGS_SECRET_KEY = /^(?:token|secret|password|api_key|bot_token|web_token)$/i;
14
15
  const publicKeys = new Set(["id", "type", "group_id", "general_channel_id", "bot_token_env", "token_env", "mode",
15
16
  "working_directory", "project_roots", "adapter_id", "adapterId", "channelId", "instanceName", "createdBy", "createdAt",
16
17
  "allowed_hosts", "protocol", "name", "directory", "topic_name", "topic_id", "channel_id", "systemPrompt", "workflow", "primary", "pre_task_command", "instructions", "tool_permissions", "mcp_tools", "skip_permissions"]);
@@ -78,9 +79,9 @@ export function settingsChangeDiff(before, after, options) {
78
79
  section = "access";
79
80
  const key = path.at(-1) ?? "configuration", label = settingsDisplay(path.join("."));
80
81
  // Under an immediate key, only its known children are settings; a secret or an id list is still confirmed below.
81
- if (unknownImmediateChild(path) && !secretKeys.test(key) && !idLists.has(key))
82
+ if (unknownImmediateChild(path) && !SETTINGS_SECRET_KEY.test(key) && !idLists.has(key))
82
83
  throw new SettingsConfirmationError(400, "unsupported_sensitive_effect");
83
- if (secretKeys.test(key)) {
84
+ if (SETTINGS_SECRET_KEY.test(key)) {
84
85
  section = "secret";
85
86
  add(`${label}: fingerprint ${fingerprint(old)} → ${fingerprint(next)}`);
86
87
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"settings-change.js","sourceRoot":"","sources":["../src/settings-change.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-change.js","sourceRoot":"","sources":["../src/settings-change.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { SettingsExecution } from "./settings-transaction.js";
2
+ import type { SettingsChangeAuthority } from "./settings-authority.js";
2
3
  export declare const SETTINGS_CONFIRMATION_TTL_MS: number;
3
4
  export type SettingsChangeSection = "access" | "secret" | "channel";
4
5
  export type SettingsChangeState = "pending" | "applying" | "applied" | "rejected" | "expired" | "stale" | "failed";
@@ -44,6 +45,7 @@ export interface SettingsChangeProposal {
44
45
  remainingMs?: number;
45
46
  requestFingerprint?: string;
46
47
  affectedConnections?: readonly string[];
48
+ authority?: SettingsChangeAuthority;
47
49
  /** Session, token epoch, exposure and fleet lifecycle; never extends expiry. */
48
50
  current(): boolean;
49
51
  /** Recheck the original configuration before admitting the effect. */
@@ -87,6 +89,7 @@ export declare class SettingsConfirmationStore {
87
89
  };
88
90
  findRequest(session: string, key: string, fingerprint: string): SettingsPendingView | null;
89
91
  affectedConnections(id: string): readonly string[];
92
+ authorityOf(id: string): SettingsChangeAuthority | null;
90
93
  inspectHost(id: string): {
91
94
  view: SettingsPendingView;
92
95
  fingerprint: string;
@@ -28,7 +28,8 @@ export class SettingsConfirmationStore {
28
28
  now() { return this.options.now?.() ?? performance.now(); }
29
29
  wall() { return this.options.wallNow?.() ?? Date.now(); }
30
30
  audit(event, entry, extra = {}) {
31
- this.options.audit(event, { id: entry.view.id, section: entry.view.section, source: entry.view.source, ...extra });
31
+ this.options.audit(event, { id: entry.view.id, section: entry.view.section, source: entry.view.source,
32
+ authority: structuredClone(entry.authority), ...extra });
32
33
  }
33
34
  display(label) {
34
35
  return label.slice(0, 256).replace(/[\p{Cc}\p{Cf}]/gu, char => `\\u{${char.codePointAt(0).toString(16)}}`).replace(/@/g, "[at]").replace(/[\\`*_~[\]()<>|]/g, char => "\\" + char);
@@ -91,6 +92,7 @@ export class SettingsConfirmationStore {
91
92
  const id = randomBytes(16).toString("hex");
92
93
  const requested = this.wall();
93
94
  const entry = { session: proposal.session, key: proposal.key, fingerprint: proposal.fingerprint,
95
+ authority: structuredClone(proposal.authority ?? { connections: [], primaryGeneral: false, unknown: true }),
94
96
  snapshotFingerprint: settingsFingerprint(proposal.snapshot?.() ?? null),
95
97
  deadline: this.now() + ttl, requestFingerprint: proposal.requestFingerprint, proposal, view: { id, state: "pending", section: proposal.section,
96
98
  requested_at: requested, requested_by: this.display(proposal.requestedBy), expires_at: requested + ttl,
@@ -114,6 +116,10 @@ export class SettingsConfirmationStore {
114
116
  return this.snapshot(entry);
115
117
  }
116
118
  affectedConnections(id) { return this.records.get(id)?.proposal?.affectedConnections ?? []; }
119
+ authorityOf(id) {
120
+ const entry = this.records.get(id);
121
+ return entry ? structuredClone(entry.authority) : null;
122
+ }
117
123
  inspectHost(id) {
118
124
  this.prune();
119
125
  const entry = this.records.get(id);
@@ -1 +1 @@
1
- {"version":3,"file":"settings-confirmation.js","sourceRoot":"","sources":["../src/settings-confirmation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-confirmation.js","sourceRoot":"","sources":["../src/settings-confirmation.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { normalizeSettingsInstancePatch } from "./settings-instance-patch.js";
2
2
  import { basename } from "node:path";
3
- import { draftQuickstart, planQuickstart, validateWizardInput, wizardChannels } from "./quickstart-api.js";
3
+ import { agentConflict, draftQuickstart, newConnectionConflict, planQuickstart, validateWizardInput, withExistingAgent, wizardChannels } from "./quickstart-api.js";
4
4
  import { settingsChangeDiff } from "./settings-change.js";
5
5
  import { SettingsConfirmationError } from "./settings-confirmation.js";
6
6
  import { validateFleetConfig, validateClassicBotConfig } from "./config-validator.js";
7
+ import { settingsEffectAuthority, settingsSecretAuthority } from "./settings-authority.js";
7
8
  export function isSettingsMutation(method, path) {
8
9
  if (!["POST", "PUT", "PATCH", "DELETE"].includes(method))
9
10
  return false;
@@ -19,6 +20,8 @@ function record(body) {
19
20
  export function prepareSettingsEffect(method, path, body, context, binding, key) {
20
21
  const cfg = context.config, before = { fleet: structuredClone(cfg), classic: structuredClone(context.classic) }, after = structuredClone(before);
21
22
  const operation = `${method} ${path}`;
23
+ const scoped = (diff, authority) => diff
24
+ ? { ...diff, authority: authority ?? settingsEffectAuthority(before.fleet, after.fleet, before.classic, after.classic) } : null;
22
25
  const secret = path.match(/^\/api\/settings\/(?:provider-secrets|secrets)\/([^/]+)\/apply$/);
23
26
  const connection = path.match(/^\/api\/settings\/connections\/([^/]+)\/(secret|binding)\/apply$/);
24
27
  if (secret || connection) {
@@ -35,10 +38,10 @@ export function prepareSettingsEffect(method, path, body, context, binding, key)
35
38
  delete candidate.options.general_channel_id;
36
39
  else if (proof.binding.general_channel_id !== undefined)
37
40
  candidate.options.general_channel_id = proof.binding.general_channel_id;
38
- return { diff: settingsChangeDiff({ channels: [current] }, { channels: [candidate] }, { operation, force: true }), proof };
41
+ return { diff: scoped(settingsChangeDiff({ channels: [current] }, { channels: [candidate] }, { operation, force: true }), { connections: [target], primaryGeneral: false, unknown: false }), proof };
39
42
  }
40
43
  const diff = settingsChangeDiff(null, null, { operation, secret: { key: proof.key, before: proof.previous, after: proof.secret }, force: true });
41
- return { diff: { ...diff, affectedConnections: connection ? [target] : [] }, proof };
44
+ return { diff: scoped({ ...diff, affectedConnections: connection ? [target] : [] }, settingsSecretAuthority(cfg, connection ? target : undefined, proof.key)), proof };
42
45
  }
43
46
  let force = false;
44
47
  if (path === "/api/settings/fleet/channels") {
@@ -118,12 +121,21 @@ export function prepareSettingsEffect(method, path, body, context, binding, key)
118
121
  throw new SettingsConfirmationError(400, "invalid_quickstart");
119
122
  if (validateWizardInput(patch))
120
123
  throw new SettingsConfirmationError(400, "invalid_quickstart");
121
- const channels = wizardChannels(cfg), plan = planQuickstart(patch, { channels, has_fleet: !!Object.keys(cfg.instances).length, backends: [] });
124
+ const channels = wizardChannels(cfg);
125
+ // #1519 P1 (S1): a new connection only — one that would take another's id or token env is refused, not proposed.
126
+ if (newConnectionConflict(patch, { channels }))
127
+ throw new SettingsConfirmationError(409, "connection_exists");
128
+ if (agentConflict(patch, cfg))
129
+ throw new SettingsConfirmationError(409, "agent_conflict");
130
+ const plan = planQuickstart(withExistingAgent(patch, cfg), { channels, has_fleet: !!Object.keys(cfg.instances).length, backends: [] });
122
131
  const draft = draftQuickstart(cfg, patch, plan);
123
132
  const normalizedBefore = structuredClone(cfg);
124
133
  normalizedBefore.channels = cfg.channels ?? (cfg.channel ? [cfg.channel] : []);
125
134
  delete normalizedBefore.channel;
126
- return { diff: settingsChangeDiff(normalizedBefore, draft, { operation: `${operation} instance ${patch.instance_name}`, force: true, secret: { key: patch.token_env, after: patch.token } }) };
135
+ const what = patch.connection_only === true ? `connection ${plan.channel_id}` : `instance ${patch.instance_name}`;
136
+ before.fleet = normalizedBefore;
137
+ after.fleet = draft;
138
+ return { diff: scoped(settingsChangeDiff(normalizedBefore, draft, { operation: `${operation} ${what}`, force: true, secret: { key: patch.token_env, after: patch.token } })) };
127
139
  }
128
140
  else if (path === "/ui/instances") {
129
141
  const payload = record(body), channels = cfg?.channels ?? (cfg?.channel ? [cfg.channel] : []);
@@ -134,7 +146,7 @@ export function prepareSettingsEffect(method, path, body, context, binding, key)
134
146
  channels: channels.slice(0, 1).map((item, index) => ({ id: item.id ?? item.type ?? `channel-${index}`, type: item.type, group_id: item.group_id })),
135
147
  ...Object.fromEntries(Object.entries(payload).filter(([key]) => !["topic_name", "directory"].includes(key))) };
136
148
  // Target allocation is deferred; the approved request and current owner binding stay pinned.
137
- return { diff: settingsChangeDiff({}, { new_instance: draft }, { operation, force: true }) };
149
+ return { diff: scoped(settingsChangeDiff({}, { new_instance: draft }, { operation, force: true }), { connections: [], primaryGeneral: true, unknown: false }) };
138
150
  }
139
151
  else {
140
152
  if (!cfg)
@@ -164,6 +176,6 @@ export function prepareSettingsEffect(method, path, body, context, binding, key)
164
176
  throw new SettingsConfirmationError(400, "invalid_settings_effect");
165
177
  if (!validateClassicBotConfig(after.classic).valid && validateClassicBotConfig(before.classic).valid)
166
178
  throw new SettingsConfirmationError(400, "invalid_classic_effect");
167
- return { diff: settingsChangeDiff(before, after, { operation, force }) };
179
+ return { diff: scoped(settingsChangeDiff(before, after, { operation, force })) };
168
180
  }
169
181
  //# sourceMappingURL=settings-effect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings-effect.js","sourceRoot":"","sources":["../src/settings-effect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-effect.js","sourceRoot":"","sources":["../src/settings-effect.ts"],"names":[],"mappings":"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"}
@@ -83,7 +83,7 @@ export class SettingsHttpConfirmation {
83
83
  const payload = { method, url: url.pathname + url.search, key, body: Buffer.from(raw), binding };
84
84
  const result = this.store.propose({ session: principal.id, key: key ?? `operation:${requestFingerprint}`,
85
85
  requestFingerprint, fingerprint: effect.diff.fingerprint, section: effect.diff.section, requestedBy: principal.label,
86
- source: principal.source, summary: effect.diff.summary, affectedConnections: effect.diff.affectedConnections,
86
+ source: principal.source, summary: effect.diff.summary, affectedConnections: effect.diff.affectedConnections, authority: effect.diff.authority,
87
87
  bytes: raw.length, remainingMs: effect.proof?.remainingMs,
88
88
  current: () => principal.current(), snapshot: () => this.options.snapshot(),
89
89
  unchanged: async () => (await this.options.baseline()).fingerprint === baseline.fingerprint && settingsFingerprint(this.options.snapshot()) === snapshot,
@@ -1 +1 @@
1
- {"version":3,"file":"settings-http-confirmation.js","sourceRoot":"","sources":["../src/settings-http-confirmation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-http-confirmation.js","sourceRoot":"","sources":["../src/settings-http-confirmation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * #1490 (row 18): what Settings shows in place of a credential written inline in fleet.yaml (a hand-written
3
+ * `bot_token`, say). #1496 keeps Settings from adding or changing one; this keeps it from reading one back out.
4
+ */
5
+ export declare const REDACTED_SECRET = "[configured - redacted]";
6
+ /** A copy of `value` with every credential-named string replaced by REDACTED_SECRET. */
7
+ export declare function redactInlineSecrets<T>(value: T): T;
8
+ /**
9
+ * A write built from a redacted read carries REDACTED_SECRET back under a credential-named key: put the value it
10
+ * stands for in its place, from `previous` at the same path, so a save never writes the placeholder over a real
11
+ * credential. A placeholder with no credential behind it (a new key, or one the save moved) is refused: `{ path }`
12
+ * names it. Under any other key the same text is an ordinary string, saved as sent.
13
+ */
14
+ export declare function restoreRedactedSecrets<T>(next: T, previous: unknown): {
15
+ value: T;
16
+ } | {
17
+ path: string;
18
+ };
@@ -0,0 +1,58 @@
1
+ import { SETTINGS_SECRET_KEY } from "./settings-change.js";
2
+ /**
3
+ * #1490 (row 18): what Settings shows in place of a credential written inline in fleet.yaml (a hand-written
4
+ * `bot_token`, say). #1496 keeps Settings from adding or changing one; this keeps it from reading one back out.
5
+ */
6
+ export const REDACTED_SECRET = "[configured - redacted]";
7
+ const record = (v) => !!v && typeof v === "object" && !Array.isArray(v);
8
+ /** Sets an own property, even one named `__proto__` (a plain assignment would hit the prototype setter instead). */
9
+ const own = (out, key, value) => {
10
+ Object.defineProperty(out, key, { value, writable: true, enumerable: true, configurable: true });
11
+ };
12
+ const credential = (key, value) => key !== undefined && SETTINGS_SECRET_KEY.test(key) && typeof value === "string" && value !== "";
13
+ /** A copy of `value` with every credential-named string replaced by REDACTED_SECRET. */
14
+ export function redactInlineSecrets(value) {
15
+ if (Array.isArray(value))
16
+ return value.map(item => redactInlineSecrets(item));
17
+ if (!record(value))
18
+ return value;
19
+ const out = {};
20
+ for (const [key, child] of Object.entries(value))
21
+ own(out, key, credential(key, child) ? REDACTED_SECRET : redactInlineSecrets(child));
22
+ return out;
23
+ }
24
+ /**
25
+ * A write built from a redacted read carries REDACTED_SECRET back under a credential-named key: put the value it
26
+ * stands for in its place, from `previous` at the same path, so a save never writes the placeholder over a real
27
+ * credential. A placeholder with no credential behind it (a new key, or one the save moved) is refused: `{ path }`
28
+ * names it. Under any other key the same text is an ordinary string, saved as sent.
29
+ */
30
+ export function restoreRedactedSecrets(next, previous) {
31
+ const walk = (value, before, key, at) => {
32
+ if (value === REDACTED_SECRET && key !== undefined && SETTINGS_SECRET_KEY.test(key)) {
33
+ return credential(key, before) ? { value: before } : { path: at };
34
+ }
35
+ if (Array.isArray(value)) {
36
+ const out = [];
37
+ for (const [index, item] of value.entries()) {
38
+ const step = walk(item, Array.isArray(before) ? before[index] : undefined, undefined, `${at}[${index}]`);
39
+ if ("path" in step)
40
+ return step;
41
+ out.push(step.value);
42
+ }
43
+ return { value: out };
44
+ }
45
+ if (!record(value))
46
+ return { value };
47
+ const out = {};
48
+ for (const [child, item] of Object.entries(value)) {
49
+ const step = walk(item, record(before) && Object.hasOwn(before, child) ? before[child] : undefined, child, at ? `${at}.${child}` : child);
50
+ if ("path" in step)
51
+ return step;
52
+ own(out, child, step.value);
53
+ }
54
+ return { value: out };
55
+ };
56
+ return walk(next, previous, undefined, "");
57
+ }
58
+ //# sourceMappingURL=settings-redaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-redaction.js","sourceRoot":"","sources":["../src/settings-redaction.ts"],"names":[],"mappings":"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"}
@@ -15,4 +15,12 @@
15
15
  * prove they also have the code they learn nothing from it.
16
16
  */
17
17
  export declare const SETUP_CODE_PAGE_HTML = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<!-- Proof that a request reached THIS listener and not merely something that\n answers 200. The tunnel's readiness probe looks for exactly this. It is the\n sid, which is already in the URL, so it discloses nothing new. -->\n<meta name=\"agend-setup\" content=\"__AGEND_SETUP_MARKER__\">\n<title>Set up AgEnD</title>\n<style>\n body { font-family: Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; margin: 0; background: #ffffff; color: #111827; }\n main { max-width: 420px; margin: 0 auto; padding: 64px 20px; }\n h1 { font-size: 20px; margin: 0 0 8px; }\n p { color: #6b7280; font-size: 13px; margin: 0 0 20px; }\n input { width: 100%; padding: 12px; border: 1px solid #e5e7eb; border-radius: 6px; font-size: 20px; letter-spacing: 3px; text-align: center; text-transform: uppercase; box-sizing: border-box; }\n button { width: 100%; margin-top: 12px; padding: 12px; border: 1px solid #2563eb; border-radius: 6px; background: #2563eb; color: #fff; font-size: 15px; cursor: pointer; }\n button:disabled { opacity: .5; cursor: default; }\n .err { color: #dc2626; font-size: 13px; margin-top: 12px; min-height: 18px; }\n</style>\n</head>\n<body>\n<main>\n <h1>Set up AgEnD</h1>\n <p>Enter the setup code shown in the terminal where you ran <code>agend setup</code>.</p>\n <form id=\"f\">\n <input id=\"code\" autocomplete=\"off\" autocapitalize=\"characters\" spellcheck=\"false\" placeholder=\"ABCD-EFGH\" maxlength=\"12\" autofocus>\n <button id=\"go\" type=\"submit\">Continue</button>\n </form>\n <div class=\"err\" id=\"msg\"></div>\n</main>\n<script>\n(() => {\n \"use strict\";\n const msg = document.getElementById(\"msg\");\n const go = document.getElementById(\"go\");\n document.getElementById(\"f\").addEventListener(\"submit\", async (event) => {\n event.preventDefault();\n go.disabled = true;\n msg.textContent = \"\";\n let res;\n try {\n res = await fetch(\"open\", {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({ code: document.getElementById(\"code\").value }),\n });\n } catch {\n msg.textContent = \"Could not reach the setup page.\";\n go.disabled = false;\n return;\n }\n if (res.ok) { location.reload(); return; }\n let body = null; try { body = await res.json(); } catch {}\n msg.textContent = (body && body.error) || \"That code was not accepted.\";\n // A spent budget ends the page; there is nothing useful left to type into.\n if (res.status !== 410) go.disabled = false;\n });\n})();\n</script>\n</body>\n</html>\n";
18
- export declare const SETUP_FORM_HTML = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>Set up AgEnD</title>\n<style>\n * { box-sizing: border-box; }\n body { font-family: Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; margin: 0; background: #ffffff; color: #111827; }\n main { max-width: 640px; margin: 0 auto; padding: 32px 20px 64px; }\n h1 { font-size: 20px; margin: 0 0 4px; }\n .sub { color: #6b7280; font-size: 13px; }\n .step { border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px; margin-top: 16px; }\n .step h2 { font-size: 14px; margin: 0 0 12px; }\n label { display: block; font-size: 13px; font-weight: 600; margin: 12px 0 4px; }\n input, select { width: 100%; padding: 8px 10px; border: 1px solid #e5e7eb; border-radius: 6px; font-size: 14px; }\n button { padding: 8px 14px; border: 1px solid #e5e7eb; border-radius: 6px; background: #fff; font-size: 14px; cursor: pointer; }\n button.primary { background: #2563eb; color: #fff; border-color: #2563eb; }\n button:disabled { opacity: .5; cursor: default; }\n .row { display: flex; gap: 8px; align-items: center; margin-top: 12px; flex-wrap: wrap; }\n .msg { font-size: 13px; }\n .ok { color: #059669; } .err { color: #dc2626; }\n pre { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 6px; padding: 12px; font-size: 12px; overflow: auto; }\n</style>\n</head>\n<body>\n<main>\n <h1>Set up AgEnD</h1>\n <div class=\"sub\" id=\"intro\">This page is open only while setup is running. It closes itself when you finish, or after 15 minutes.</div>\n\n <div class=\"step\">\n <h2>1 \u00B7 Agent</h2>\n <label for=\"backend\">Backend</label>\n <select id=\"backend\"></select>\n <div class=\"sub\" id=\"backendHint\"></div>\n <label for=\"dir\">Working directory (absolute path)</label>\n <input id=\"dir\" placeholder=\"/home/you/projects/app\">\n <label for=\"name\">First agent name</label>\n <input id=\"name\" value=\"agent-1\">\n </div>\n\n <div class=\"step\">\n <h2>2 \u00B7 Platform</h2>\n <div class=\"row\">\n <button id=\"pickTelegram\" class=\"primary\">Telegram</button>\n <button id=\"pickDiscord\">Discord</button>\n </div>\n <div class=\"sub\" id=\"platformHint\">Create a bot with @BotFather, then add it to a group.</div>\n </div>\n\n <div class=\"step\">\n <h2>3 \u00B7 Credentials</h2>\n <label for=\"token\">Bot token</label>\n <input id=\"token\" type=\"password\" placeholder=\"123456:ABC-DEF\u2026\">\n <div class=\"sub\">Written to ~/.agend/.env and never shown again.</div>\n <label for=\"tokenEnv\">Environment variable</label>\n <input id=\"tokenEnv\" value=\"AGEND_BOT_TOKEN\">\n <div class=\"row\"><button id=\"verify\">Verify</button><span class=\"msg\" id=\"verifyMsg\"></span></div>\n <div id=\"platformFields\"></div>\n </div>\n\n <div class=\"step\">\n <h2>4 \u00B7 Review and start</h2>\n <div class=\"row\"><button id=\"preview\">Show what will be written</button></div>\n <pre id=\"planOut\" hidden></pre>\n <div class=\"row\"><button id=\"finish\" class=\"primary\" disabled>Create and start AgEnD</button><span class=\"msg\" id=\"finishMsg\"></span></div>\n </div>\n</main>\n<script>\n(() => {\n \"use strict\";\n const $ = (id) => document.getElementById(id);\n const state = { platform: \"telegram\", identity: null, guilds: [], offset: 0, plan: null };\n // Relative to the page's own directory, which is /s/<sid>/. An absolute path\n // would leave that namespace and 404 \u2014 the sid is where this page lives, not\n // a prefix bolted on to it.\n const api = async (path, opts) => {\n const res = await fetch(path, Object.assign({ headers: { \"Content-Type\": \"application/json\" } }, opts || {}));\n let body = null; try { body = await res.json(); } catch {}\n return { ok: res.ok, status: res.status, body };\n };\n\n async function loadEnvironment() {\n const res = await api(\"api/settings/quickstart/environment\");\n if (formFrozen) return;\n const backends = res.body?.backends || [];\n $(\"backend\").innerHTML = \"\";\n for (const name of backends.length ? backends : [\"claude-code\"]) {\n const opt = document.createElement(\"option\"); opt.value = name; opt.textContent = name; $(\"backend\").append(opt);\n }\n $(\"backendHint\").textContent = backends.length\n ? \"Found on this host: \" + backends.join(\", \")\n : \"No backend CLI found on this host \u2014 install one first.\";\n }\n\n function setPlatform(platform) {\n if (formFrozen) return;\n state.platform = platform;\n state.identity = null; $(\"verifyMsg\").textContent = \"\";\n $(\"pickTelegram\").className = platform === \"telegram\" ? \"primary\" : \"\";\n $(\"pickDiscord\").className = platform === \"discord\" ? \"primary\" : \"\";\n $(\"platformHint\").textContent = platform === \"telegram\"\n ? \"Create a bot with @BotFather, then add it to a group.\"\n : \"Create an application in the Discord developer portal and invite the bot to your server.\";\n renderPlatformFields();\n }\n\n // Only the ids that platform has \u2014 the same question the CLI asks.\n function renderPlatformFields() {\n if (formFrozen) return;\n const host = $(\"platformFields\"); host.innerHTML = \"\";\n const field = (id, labelText, hint) => {\n const label = document.createElement(\"label\"); label.textContent = labelText; label.htmlFor = id;\n const input = document.createElement(\"input\"); input.id = id;\n host.append(label, input);\n if (hint) { const h = document.createElement(\"div\"); h.className = \"sub\"; h.textContent = hint; host.append(h); }\n return input;\n };\n if (state.platform === \"discord\") {\n const guild = document.createElement(\"select\"); guild.id = \"guild\";\n const label = document.createElement(\"label\"); label.textContent = \"Server (guild)\"; label.htmlFor = \"guild\";\n host.append(label, guild);\n for (const g of state.guilds) { const opt = document.createElement(\"option\"); opt.value = g.id; opt.textContent = g.name + \" (\" + g.id + \")\"; guild.append(opt); }\n field(\"general\", \"General channel id\");\n field(\"admin\", \"Your Discord user id\", \"Becomes the first allowed user.\");\n } else {\n field(\"group\", \"Group id\", \"Or post any message in the group and press Detect.\");\n const row = document.createElement(\"div\"); row.className = \"row\";\n const detect = document.createElement(\"button\"); detect.id = \"detect\"; detect.textContent = \"Detect from a message\";\n detect.onclick = detectGroup; row.append(detect);\n const msg = document.createElement(\"span\"); msg.className = \"msg\"; msg.id = \"detectMsg\"; row.append(msg);\n host.append(row);\n field(\"admin\", \"Your Telegram user id\", \"Becomes the first allowed user.\");\n }\n }\n\n async function detectGroup() {\n if (formFrozen) return;\n $(\"detectMsg\").textContent = \"Waiting for a message in the group\u2026\";\n const res = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"await-telegram-start\", token: $(\"token\").value.trim(), offset: state.offset }) });\n if (formFrozen) return;\n if (!res.ok) { $(\"detectMsg\").textContent = res.body?.error || \"Failed.\"; return; }\n state.offset = res.body.offset;\n if (res.body.found) {\n $(\"group\").value = String(res.body.found.groupId);\n $(\"admin\").value = String(res.body.found.userId);\n $(\"detectMsg\").textContent = \"Found.\";\n } else $(\"detectMsg\").textContent = \"No group message yet \u2014 post one and press Detect again.\";\n }\n\n function input() {\n return {\n platform: state.platform,\n token_env: $(\"tokenEnv\").value.trim(),\n backend: $(\"backend\").value,\n working_directory: $(\"dir\").value.trim(),\n instance_name: $(\"name\").value.trim(),\n group_id: $(\"group\") ? $(\"group\").value.trim() || undefined : undefined,\n guild_id: $(\"guild\") ? $(\"guild\").value || undefined : undefined,\n general_channel_id: $(\"general\") ? $(\"general\").value.trim() || undefined : undefined,\n admin_user_id: $(\"admin\") ? $(\"admin\").value.trim() || undefined : undefined,\n };\n }\n\n $(\"verify\").onclick = async () => {\n if (formFrozen) return;\n $(\"verifyMsg\").textContent = \"Asking the provider\u2026\";\n const token = $(\"token\").value.trim();\n const res = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"verify\", platform: state.platform, token }) });\n if (formFrozen) return;\n state.identity = res.body?.identity || { valid: false };\n $(\"verifyMsg\").className = \"msg \" + (state.identity.valid ? \"ok\" : \"err\");\n $(\"verifyMsg\").textContent = state.identity.valid ? \"\u2713 \" + (state.identity.username || \"verified\") : \"\u2717 \" + (state.identity.reason || \"rejected\");\n if (state.identity.valid && state.platform === \"discord\") {\n const guilds = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"guilds\", token }) });\n if (formFrozen) return;\n state.guilds = guilds.body?.guilds || [];\n renderPlatformFields();\n }\n };\n\n $(\"preview\").onclick = async () => {\n if (formFrozen) return;\n const res = await api(\"api/settings/quickstart/plan\", { method: \"POST\", body: JSON.stringify(input()) });\n if (formFrozen) return;\n if (!res.ok) { $(\"planOut\").hidden = false; $(\"planOut\").textContent = res.body?.error || \"Failed.\"; return; }\n state.plan = res.body;\n $(\"planOut\").hidden = false;\n $(\"planOut\").textContent = JSON.stringify(res.body, null, 2);\n $(\"finish\").disabled = !state.identity?.valid;\n };\n\n let approvedSetup = false;\n let formFrozen = false;\n let submission = null;\n let pollGeneration = 0;\n const freezeFields = (frozen) => {\n formFrozen = frozen;\n for (const field of document.querySelectorAll(\"main input, main select, #verify, #preview, #pickTelegram, #pickDiscord, #detect\")) field.disabled = frozen;\n };\n const restoreEditing = (message) => {\n pollGeneration++; approvedSetup = false; submission = null; state.identity = null;\n freezeFields(false); $(\"finish\").disabled = true; $(\"finish\").textContent = \"Create and start AgEnD\";\n $(\"finishMsg\").className = \"msg err\"; $(\"finishMsg\").textContent = message;\n };\n for (const field of document.querySelectorAll(\"main input, main select\")) field.addEventListener(\"input\", () => {\n approvedSetup = false; submission = null; $(\"finish\").textContent = \"Create and start AgEnD\";\n });\n const watchPending = (pendingId) => {\n const generation = ++pollGeneration;\n freezeFields(true); $(\"finish\").disabled = true;\n $(\"finishMsg\").textContent = \"On the host, run: agend settings confirm \" + pendingId;\n const poll = async () => {\n if (generation !== pollGeneration) return;\n try {\n const result = await api(\"api/settings/pending/\" + pendingId);\n if (generation !== pollGeneration) return;\n if (!result.ok) { restoreEditing(\"Setup confirmation is no longer available. Review and enter the token again.\"); return; }\n const pending = result.body;\n if (pending.state === \"pending\" || pending.state === \"applying\") { setTimeout(poll, 1000); return; }\n if (pending.state !== \"applied\") { restoreEditing(pending.outcome?.message || \"Change was not applied. Review and enter the token again.\"); return; }\n approvedSetup = true; submission = null; $(\"finish\").disabled = false; $(\"finish\").textContent = \"Start AgEnD\";\n $(\"finishMsg\").textContent = \"Configuration confirmed. Select Start AgEnD to finish setup.\";\n } catch { if (generation === pollGeneration) setTimeout(poll, 1000); }\n };\n setTimeout(poll, 1000);\n };\n $(\"finish\").onclick = async () => {\n $(\"finish\").disabled = true;\n try {\n if (approvedSetup) {\n const finished = await api(\"setup/finish\", { method: \"POST\" });\n if (!finished.ok) { restoreEditing(finished.body?.error || \"Confirmation is no longer current.\"); return; }\n $(\"finishMsg\").textContent = \"AgEnD is starting. Continue in the channel you configured.\";\n if (finished.body?.watch !== false) waitForFleet();\n return;\n }\n // Preserve bytes and key on a lost HTTP response; a deliberate retry after\n // a terminal outcome receives a new key and requires secret reentry.\n submission ||= { key: crypto.randomUUID(), body: JSON.stringify(Object.assign({}, input(), { token: $(\"token\").value.trim() })) };\n freezeFields(true);\n $(\"finishMsg\").textContent = \"Requesting host confirmation\u2026\";\n const commit = await api(\"api/settings/quickstart/commit\", { method: \"POST\", headers: { \"Content-Type\": \"application/json\", \"Idempotency-Key\": submission.key }, body: submission.body });\n if (!commit.ok) { restoreEditing(commit.body?.error || \"Failed.\"); return; }\n if (commit.body?.result !== \"pending_confirmation\" || !commit.body.pending_change?.id) { restoreEditing(\"Expected a pending host confirmation.\"); return; }\n $(\"token\").value = \"\"; submission = null;\n watchPending(commit.body.pending_change.id);\n } catch { $(\"finishMsg\").textContent = \"Connection failed. Retry to find the same confirmation.\"; $(\"finish\").disabled = false; }\n };\n // Same-cookie reloads rediscover an unresolved consent request without a secret.\n api(\"api/settings/pending\").then(result => {\n const pending = result.ok && Array.isArray(result.body) && result.body.find(item => item.state === \"pending\" || item.state === \"applying\");\n if (pending) { watchPending(pending.id); return; }\n api(\"setup/status\").then(status => {\n if (!status.ok || !status.body?.finish_ready || submission || pollGeneration) return;\n approvedSetup = true; freezeFields(true); $(\"finish\").disabled = false; $(\"finish\").textContent = \"Start AgEnD\";\n $(\"finishMsg\").textContent = \"Configuration confirmed. Select Start AgEnD to finish setup.\";\n }).catch(() => {});\n }).catch(() => {});\n\n // The host is gone; the fleet is binding the same port. Connection refused is\n // the expected state in between, so it is not an error until the cap.\n function waitForFleet() {\n const deadline = Date.now() + 60_000;\n const tick = async () => {\n try {\n const res = await fetch(\"/health\", { cache: \"no-store\" });\n if (res.status) {\n $(\"finishMsg\").className = \"msg ok\";\n $(\"finishMsg\").textContent = \"AgEnD is up. Talk to it in the channel you just set up.\";\n return;\n }\n } catch { /* not listening yet */ }\n if (Date.now() > deadline) {\n $(\"finishMsg\").className = \"msg err\";\n $(\"finishMsg\").textContent = \"AgEnD has not come up within 60 seconds. Run `agend start` on the machine itself and check fleet.log \u2014 this page cannot tell you any more.\";\n return;\n }\n setTimeout(tick, 1000);\n };\n setTimeout(tick, 1500);\n }\n\n $(\"pickTelegram\").onclick = () => setPlatform(\"telegram\");\n $(\"pickDiscord\").onclick = () => setPlatform(\"discord\");\n loadEnvironment();\n setPlatform(\"telegram\");\n})();\n</script>\n</body>\n</html>\n";
18
+ export declare const SETUP_FORM_HTML = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>Set up AgEnD</title>\n<style>\n * { box-sizing: border-box; }\n body { font-family: Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; margin: 0; background: #ffffff; color: #111827; }\n main { max-width: 640px; margin: 0 auto; padding: 32px 20px 64px; }\n h1 { font-size: 20px; margin: 0 0 4px; }\n .sub { color: #6b7280; font-size: 13px; }\n .step { border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px; margin-top: 16px; }\n .step h2 { font-size: 14px; margin: 0 0 12px; }\n label { display: block; font-size: 13px; font-weight: 600; margin: 12px 0 4px; }\n input, select { width: 100%; padding: 8px 10px; border: 1px solid #e5e7eb; border-radius: 6px; font-size: 14px; }\n button { padding: 8px 14px; border: 1px solid #e5e7eb; border-radius: 6px; background: #fff; font-size: 14px; cursor: pointer; }\n button.primary { background: #2563eb; color: #fff; border-color: #2563eb; }\n button:disabled { opacity: .5; cursor: default; }\n .row { display: flex; gap: 8px; align-items: center; margin-top: 12px; flex-wrap: wrap; }\n .msg { font-size: 13px; }\n .ok { color: #059669; } .err { color: #dc2626; }\n pre { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 6px; padding: 12px; font-size: 12px; overflow: auto; }\n</style>\n</head>\n<body>\n<main>\n <h1>Set up AgEnD</h1>\n <div class=\"sub\" id=\"intro\">This page is open only while setup is running. It closes itself when you finish, or after 15 minutes.</div>\n\n <div class=\"step\">\n <h2>1 \u00B7 Agent</h2>\n <label for=\"backend\">Backend</label>\n <select id=\"backend\"></select>\n <div class=\"sub\" id=\"backendHint\"></div>\n <label for=\"dir\">Working directory (absolute path)</label>\n <input id=\"dir\" placeholder=\"/home/you/projects/app\">\n <label for=\"name\">First agent name</label>\n <input id=\"name\" value=\"agent-1\">\n </div>\n\n <div class=\"step\">\n <h2>2 \u00B7 Platform</h2>\n <div class=\"row\">\n <button id=\"pickTelegram\" class=\"primary\">Telegram</button>\n <button id=\"pickDiscord\">Discord</button>\n </div>\n <div class=\"sub\" id=\"platformHint\">Create a bot with @BotFather, then add it to a group.</div>\n </div>\n\n <div class=\"step\">\n <h2>3 \u00B7 Credentials</h2>\n <label for=\"token\">Bot token</label>\n <input id=\"token\" type=\"password\" placeholder=\"123456:ABC-DEF\u2026\">\n <div class=\"sub\">Written to ~/.agend/.env and never shown again.</div>\n <label for=\"tokenEnv\">Environment variable</label>\n <input id=\"tokenEnv\" value=\"AGEND_BOT_TOKEN\">\n <div class=\"row\"><button id=\"verify\">Verify</button><span class=\"msg\" id=\"verifyMsg\"></span></div>\n <div id=\"platformFields\"></div>\n </div>\n\n <div class=\"step\">\n <h2>4 \u00B7 Review and start</h2>\n <div class=\"row\"><button id=\"preview\">Show what will be written</button></div>\n <pre id=\"planOut\" hidden></pre>\n <div class=\"row\"><button id=\"finish\" class=\"primary\" disabled>Create and start AgEnD</button><span class=\"msg\" id=\"finishMsg\"></span></div>\n </div>\n</main>\n<script>\n(() => {\n \"use strict\";\n const $ = (id) => document.getElementById(id);\n const state = { platform: \"telegram\", identity: null, guilds: [], offset: 0, plan: null };\n // Relative to the page's own directory, which is /s/<sid>/. An absolute path\n // would leave that namespace and 404 \u2014 the sid is where this page lives, not\n // a prefix bolted on to it.\n const api = async (path, opts) => {\n const res = await fetch(path, Object.assign({ headers: { \"Content-Type\": \"application/json\" } }, opts || {}));\n let body = null; try { body = await res.json(); } catch {}\n return { ok: res.ok, status: res.status, body };\n };\n\n async function loadEnvironment() {\n const res = await api(\"api/settings/quickstart/environment\");\n if (formFrozen) return;\n const backends = res.body?.backends || [];\n $(\"backend\").innerHTML = \"\";\n for (const name of backends.length ? backends : [\"claude-code\"]) {\n const opt = document.createElement(\"option\"); opt.value = name; opt.textContent = name; $(\"backend\").append(opt);\n }\n $(\"backendHint\").textContent = backends.length\n ? \"Found on this host: \" + backends.join(\", \")\n : \"No backend CLI found on this host \u2014 install one first.\";\n }\n\n function setPlatform(platform) {\n if (formFrozen) return;\n state.platform = platform;\n state.identity = null; $(\"verifyMsg\").textContent = \"\";\n $(\"pickTelegram\").className = platform === \"telegram\" ? \"primary\" : \"\";\n $(\"pickDiscord\").className = platform === \"discord\" ? \"primary\" : \"\";\n $(\"platformHint\").textContent = platform === \"telegram\"\n ? \"Create a bot with @BotFather, then add it to a group.\"\n : \"Create an application in the Discord developer portal and invite the bot to your server.\";\n renderPlatformFields();\n }\n\n // Only the ids that platform has \u2014 the same question the CLI asks.\n function renderPlatformFields() {\n if (formFrozen) return;\n const host = $(\"platformFields\"); host.innerHTML = \"\";\n const field = (id, labelText, hint) => {\n const label = document.createElement(\"label\"); label.textContent = labelText; label.htmlFor = id;\n const input = document.createElement(\"input\"); input.id = id;\n host.append(label, input);\n if (hint) { const h = document.createElement(\"div\"); h.className = \"sub\"; h.textContent = hint; host.append(h); }\n return input;\n };\n if (state.platform === \"discord\") {\n const guild = document.createElement(\"select\"); guild.id = \"guild\";\n const label = document.createElement(\"label\"); label.textContent = \"Server (guild)\"; label.htmlFor = \"guild\";\n host.append(label, guild);\n for (const g of state.guilds) { const opt = document.createElement(\"option\"); opt.value = g.id; opt.textContent = g.name + \" (\" + g.id + \")\"; guild.append(opt); }\n field(\"general\", \"General channel id\");\n field(\"admin\", \"Your Discord user id\", \"Becomes the first allowed user.\");\n } else {\n field(\"group\", \"Group id\", \"Or post any message in the group and press Detect.\");\n const row = document.createElement(\"div\"); row.className = \"row\";\n const detect = document.createElement(\"button\"); detect.id = \"detect\"; detect.textContent = \"Detect from a message\";\n detect.onclick = detectGroup; row.append(detect);\n const msg = document.createElement(\"span\"); msg.className = \"msg\"; msg.id = \"detectMsg\"; row.append(msg);\n host.append(row);\n field(\"admin\", \"Your Telegram user id\", \"Becomes the first allowed user.\");\n }\n }\n\n async function detectGroup() {\n if (formFrozen) return;\n $(\"detectMsg\").textContent = \"Waiting for a message in the group\u2026\";\n const res = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"await-telegram-start\", token: $(\"token\").value.trim(), offset: state.offset }) });\n if (formFrozen) return;\n if (!res.ok) { $(\"detectMsg\").textContent = res.body?.error || \"Failed.\"; return; }\n state.offset = res.body.offset;\n if (res.body.found) {\n $(\"group\").value = String(res.body.found.groupId);\n $(\"admin\").value = String(res.body.found.userId);\n $(\"detectMsg\").textContent = \"Found.\";\n } else $(\"detectMsg\").textContent = \"No group message yet \u2014 post one and press Detect again.\";\n }\n\n function input() {\n return {\n platform: state.platform,\n token_env: $(\"tokenEnv\").value.trim(),\n backend: $(\"backend\").value,\n working_directory: $(\"dir\").value.trim(),\n instance_name: $(\"name\").value.trim(),\n group_id: $(\"group\") ? $(\"group\").value.trim() || undefined : undefined,\n guild_id: $(\"guild\") ? $(\"guild\").value || undefined : undefined,\n general_channel_id: $(\"general\") ? $(\"general\").value.trim() || undefined : undefined,\n admin_user_id: $(\"admin\") ? $(\"admin\").value.trim() || undefined : undefined,\n };\n }\n\n $(\"verify\").onclick = async () => {\n if (formFrozen) return;\n $(\"verifyMsg\").textContent = \"Asking the provider\u2026\";\n const token = $(\"token\").value.trim();\n const res = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"verify\", platform: state.platform, token }) });\n if (formFrozen) return;\n state.identity = res.body?.identity || { valid: false };\n $(\"verifyMsg\").className = \"msg \" + (state.identity.valid ? \"ok\" : \"err\");\n $(\"verifyMsg\").textContent = state.identity.valid ? \"\u2713 \" + (state.identity.username || \"verified\") : \"\u2717 \" + (state.identity.reason || \"rejected\");\n if (state.identity.valid && state.platform === \"discord\") {\n const guilds = await api(\"api/settings/quickstart/probe\", { method: \"POST\", body: JSON.stringify({ action: \"guilds\", token }) });\n if (formFrozen) return;\n state.guilds = guilds.body?.guilds || [];\n renderPlatformFields();\n }\n };\n\n $(\"preview\").onclick = async () => {\n if (formFrozen) return;\n const res = await api(\"api/settings/quickstart/plan\", { method: \"POST\", body: JSON.stringify(input()) });\n if (formFrozen) return;\n if (!res.ok) { $(\"planOut\").hidden = false; $(\"planOut\").textContent = res.body?.error || \"Failed.\"; return; }\n state.plan = res.body;\n $(\"planOut\").hidden = false;\n $(\"planOut\").textContent = JSON.stringify(res.body, null, 2);\n $(\"finish\").disabled = !state.identity?.valid;\n };\n\n let approvedSetup = false;\n let formFrozen = false;\n let submission = null;\n let pollGeneration = 0;\n const freezeFields = (frozen) => {\n formFrozen = frozen;\n for (const field of document.querySelectorAll(\"main input, main select, #verify, #preview, #pickTelegram, #pickDiscord, #detect\")) field.disabled = frozen;\n };\n const restoreEditing = (message) => {\n pollGeneration++; approvedSetup = false; submission = null; state.identity = null;\n freezeFields(false); $(\"finish\").disabled = true; $(\"finish\").textContent = \"Create and start AgEnD\";\n $(\"finishMsg\").className = \"msg err\"; $(\"finishMsg\").textContent = message;\n };\n for (const field of document.querySelectorAll(\"main input, main select\")) field.addEventListener(\"input\", () => {\n approvedSetup = false; submission = null; $(\"finish\").textContent = \"Create and start AgEnD\";\n });\n const watchPending = (pendingId) => {\n const generation = ++pollGeneration;\n freezeFields(true); $(\"finish\").disabled = true;\n $(\"finishMsg\").textContent = \"On the host, run: agend settings confirm \" + pendingId;\n const poll = async () => {\n if (generation !== pollGeneration) return;\n try {\n const result = await api(\"api/settings/pending/\" + pendingId);\n if (generation !== pollGeneration) return;\n if (!result.ok) { restoreEditing(\"Setup confirmation is no longer available. Review and enter the token again.\"); return; }\n const pending = result.body;\n if (pending.state === \"pending\" || pending.state === \"applying\") { setTimeout(poll, 1000); return; }\n if (pending.state !== \"applied\") { restoreEditing(pending.outcome?.message || \"Change was not applied. Review and enter the token again.\"); return; }\n approvedSetup = true; submission = null; $(\"finish\").disabled = false; $(\"finish\").textContent = \"Start AgEnD\";\n $(\"finishMsg\").textContent = \"Configuration confirmed. Select Start AgEnD to finish setup.\";\n } catch { if (generation === pollGeneration) setTimeout(poll, 1000); }\n };\n setTimeout(poll, 1000);\n };\n $(\"finish\").onclick = async () => {\n $(\"finish\").disabled = true;\n try {\n if (approvedSetup) {\n const finished = await api(\"setup/finish\", { method: \"POST\" });\n if (!finished.ok) { restoreEditing(finished.body?.error || \"Confirmation is no longer current.\"); return; }\n $(\"finishMsg\").textContent = \"AgEnD is starting. Continue in the channel you configured.\";\n if (finished.body?.watch !== false) waitForFleet();\n return;\n }\n // Preserve bytes and key on a lost HTTP response; a deliberate retry after\n // a terminal outcome receives a new key and requires secret reentry.\n submission ||= { key: crypto.randomUUID(), body: JSON.stringify(Object.assign({}, input(), { token: $(\"token\").value.trim() })) };\n freezeFields(true);\n $(\"finishMsg\").textContent = \"Requesting host confirmation\u2026\";\n const commit = await api(\"api/settings/quickstart/commit\", { method: \"POST\", headers: { \"Content-Type\": \"application/json\", \"Idempotency-Key\": submission.key }, body: submission.body });\n if (!commit.ok) { restoreEditing(commit.body?.error || \"Failed.\"); return; }\n if (commit.body?.result !== \"pending_confirmation\" || !commit.body.pending_change?.id) { restoreEditing(\"Expected a pending host confirmation.\"); return; }\n $(\"token\").value = \"\"; submission = null;\n watchPending(commit.body.pending_change.id);\n } catch { $(\"finishMsg\").textContent = \"Connection failed. Retry to find the same confirmation.\"; $(\"finish\").disabled = false; }\n };\n // Same-cookie reloads rediscover an unresolved consent request without a secret.\n api(\"api/settings/pending\").then(result => {\n const pending = result.ok && Array.isArray(result.body) && result.body.find(item => item.state === \"pending\" || item.state === \"applying\");\n if (pending) { watchPending(pending.id); return; }\n api(\"setup/status\").then(status => {\n if (!status.ok || !status.body?.finish_ready || submission || pollGeneration) return;\n approvedSetup = true; freezeFields(true); $(\"finish\").disabled = false; $(\"finish\").textContent = \"Start AgEnD\";\n $(\"finishMsg\").textContent = \"Configuration confirmed. Select Start AgEnD to finish setup.\";\n }).catch(() => {});\n }).catch(() => {});\n\n // The host is gone; the fleet is binding the same port. Connection refused is\n // the expected state in between, so it is not an error until the cap.\n function waitForFleet() {\n const deadline = Date.now() + 60_000;\n const tick = async () => {\n try {\n const res = await fetch(\"/health\", { cache: \"no-store\" });\n if (res.status) {\n $(\"finishMsg\").className = \"msg ok\";\n // #1519 P7: the fleet answers on this address now \u2014 its dashboard is here too.\n $(\"finishMsg\").textContent = \"AgEnD is up. Talk to it in the channel you just set up, or open its dashboard: \";\n const link = document.createElement(\"a\"); link.href = \"/\"; link.textContent = location.origin + \"/\";\n $(\"finishMsg\").append(link, \" (sign in with agend web --code on the machine running AgEnD, or send /dashboard to your bot).\");\n return;\n }\n } catch { /* not listening yet */ }\n if (Date.now() > deadline) {\n $(\"finishMsg\").className = \"msg err\";\n $(\"finishMsg\").textContent = \"AgEnD has not come up within 60 seconds. Run `agend start` on the machine itself and check fleet.log \u2014 this page cannot tell you any more.\";\n return;\n }\n setTimeout(tick, 1000);\n };\n setTimeout(tick, 1500);\n }\n\n $(\"pickTelegram\").onclick = () => setPlatform(\"telegram\");\n $(\"pickDiscord\").onclick = () => setPlatform(\"discord\");\n loadEnvironment();\n setPlatform(\"telegram\");\n})();\n</script>\n</body>\n</html>\n";
19
+ /**
20
+ * #1490: the setup pages' Content-Security-Policy. Their one `<script>` and one `<style>` are inline, so each response
21
+ * gets a fresh nonce for exactly those (setupPage); nothing else may run, load from elsewhere, post elsewhere, or frame
22
+ * the page. fetch() goes to this origin only (the setup host's own API).
23
+ */
24
+ export declare function setupContentSecurityPolicy(nonce: string): string;
25
+ /** A setup page with `nonce` on its inline `<script>` and `<style>` tags — the only ones the policy admits. */
26
+ export declare function setupPage(html: string, nonce: string): string;