@songsid/agend 2.2.0-beta.2 → 2.2.0-beta.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -24
- package/README.zh-TW.md +40 -24
- package/dist/agent-cli-instructions.md +6 -2
- package/dist/agent-cli.js +15 -7
- package/dist/agent-cli.js.map +1 -1
- package/dist/agent-endpoint.js +3 -0
- package/dist/agent-endpoint.js.map +1 -1
- package/dist/agent-whats-new.js +16 -4
- package/dist/agent-whats-new.js.map +1 -1
- package/dist/auth-api.d.ts +3 -1
- package/dist/auth-api.js +17 -1
- package/dist/auth-api.js.map +1 -1
- package/dist/backend/antigravity.d.ts +33 -0
- package/dist/backend/antigravity.js +126 -18
- package/dist/backend/antigravity.js.map +1 -1
- package/dist/backend/claude-carry.d.ts +22 -0
- package/dist/backend/claude-carry.js +170 -0
- package/dist/backend/claude-carry.js.map +1 -0
- package/dist/backend/claude-code.d.ts +65 -2
- package/dist/backend/claude-code.js +226 -33
- package/dist/backend/claude-code.js.map +1 -1
- package/dist/backend/codex-metadata.d.ts +33 -0
- package/dist/backend/codex-metadata.js +122 -18
- package/dist/backend/codex-metadata.js.map +1 -1
- package/dist/backend/codex.d.ts +3 -0
- package/dist/backend/codex.js +17 -1
- package/dist/backend/codex.js.map +1 -1
- package/dist/backend/credential-profile.d.ts +40 -3
- package/dist/backend/credential-profile.js +113 -5
- package/dist/backend/credential-profile.js.map +1 -1
- package/dist/backend/effort-metadata.d.ts +37 -1
- package/dist/backend/effort-metadata.js +86 -15
- package/dist/backend/effort-metadata.js.map +1 -1
- package/dist/backend/grok.d.ts +4 -0
- package/dist/backend/grok.js +14 -0
- package/dist/backend/grok.js.map +1 -1
- package/dist/backend/kiro.d.ts +27 -1
- package/dist/backend/kiro.js +63 -10
- package/dist/backend/kiro.js.map +1 -1
- package/dist/backend/launch-effort.d.ts +61 -0
- package/dist/backend/launch-effort.js +170 -0
- package/dist/backend/launch-effort.js.map +1 -0
- package/dist/backend/muse.d.ts +84 -0
- package/dist/backend/muse.js +449 -53
- package/dist/backend/muse.js.map +1 -1
- package/dist/backend/types.d.ts +48 -2
- package/dist/backend/types.js +12 -1
- package/dist/backend/types.js.map +1 -1
- package/dist/backend-command.d.ts +91 -0
- package/dist/backend-command.js +122 -0
- package/dist/backend-command.js.map +1 -0
- package/dist/background-work-ended.d.ts +18 -0
- package/dist/background-work-ended.js +30 -0
- package/dist/background-work-ended.js.map +1 -0
- package/dist/cache-service.d.ts +2 -0
- package/dist/cache-service.js +2 -1
- package/dist/cache-service.js.map +1 -1
- package/dist/channel/adapters/discord.d.ts +26 -1
- package/dist/channel/adapters/discord.js +103 -3
- package/dist/channel/adapters/discord.js.map +1 -1
- package/dist/channel/adapters/telegram.d.ts +35 -3
- package/dist/channel/adapters/telegram.js +122 -23
- package/dist/channel/adapters/telegram.js.map +1 -1
- package/dist/channel/mcp-tools.js +5 -3
- package/dist/channel/mcp-tools.js.map +1 -1
- package/dist/channel/message-edit-errors.d.ts +5 -0
- package/dist/channel/message-edit-errors.js +24 -0
- package/dist/channel/message-edit-errors.js.map +1 -0
- package/dist/channel/telegram-markdown.d.ts +6 -0
- package/dist/channel/telegram-markdown.js +104 -0
- package/dist/channel/telegram-markdown.js.map +1 -0
- package/dist/channel/tool-router.d.ts +2 -0
- package/dist/channel/tool-router.js +6 -5
- package/dist/channel/tool-router.js.map +1 -1
- package/dist/channel/types.d.ts +46 -4
- package/dist/cli.js +184 -34
- package/dist/cli.js.map +1 -1
- package/dist/command-table.d.ts +2 -2
- package/dist/command-table.js +5 -2
- package/dist/command-table.js.map +1 -1
- package/dist/compact-watch.d.ts +86 -0
- package/dist/compact-watch.js +288 -0
- package/dist/compact-watch.js.map +1 -0
- package/dist/config-validator.js +55 -5
- package/dist/config-validator.js.map +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/cross-instance-envelope.js +2 -0
- package/dist/cross-instance-envelope.js.map +1 -1
- package/dist/daemon.d.ts +129 -1
- package/dist/daemon.js +754 -94
- package/dist/daemon.js.map +1 -1
- package/dist/delivery-outbox.d.ts +64 -8
- package/dist/delivery-outbox.js +315 -24
- package/dist/delivery-outbox.js.map +1 -1
- package/dist/delivery-reconciliation.d.ts +18 -1
- package/dist/delivery-reconciliation.js +67 -2
- package/dist/delivery-reconciliation.js.map +1 -1
- package/dist/doctor.js +7 -0
- package/dist/doctor.js.map +1 -1
- package/dist/fleet-context.d.ts +12 -1
- package/dist/fleet-manager.d.ts +392 -19
- package/dist/fleet-manager.js +2030 -275
- package/dist/fleet-manager.js.map +1 -1
- package/dist/forged-envelope-scan.d.ts +4 -3
- package/dist/forged-envelope-scan.js +4 -3
- package/dist/forged-envelope-scan.js.map +1 -1
- package/dist/general-knowledge/skills/credential-profiles/SKILL.md +84 -16
- package/dist/general-knowledge/skills/cross-instance-messaging/SKILL.md +16 -1
- package/dist/general-knowledge/skills/model-discovery/SKILL.md +4 -1
- package/dist/general-knowledge/skills/worker-collaboration/SKILL.md +4 -0
- package/dist/host-memory.d.ts +10 -0
- package/dist/host-memory.js +33 -1
- package/dist/host-memory.js.map +1 -1
- package/dist/human-delivery-receipts.d.ts +83 -0
- package/dist/human-delivery-receipts.js +194 -0
- package/dist/human-delivery-receipts.js.map +1 -0
- package/dist/install-lock.d.ts +18 -1
- package/dist/install-lock.js +30 -3
- package/dist/install-lock.js.map +1 -1
- package/dist/instance-avatar.d.ts +5 -4
- package/dist/instance-avatar.js +12 -8
- package/dist/instance-avatar.js.map +1 -1
- package/dist/instance-config-impact.js +1 -0
- package/dist/instance-config-impact.js.map +1 -1
- package/dist/instance-lifecycle.d.ts +25 -6
- package/dist/instance-lifecycle.js +76 -27
- package/dist/instance-lifecycle.js.map +1 -1
- package/dist/instructions.d.ts +1 -1
- package/dist/instructions.js +3 -3
- package/dist/instructions.js.map +1 -1
- package/dist/kiro-compact-pane.d.ts +38 -0
- package/dist/kiro-compact-pane.js +57 -0
- package/dist/kiro-compact-pane.js.map +1 -0
- package/dist/kiro-log-gate.d.ts +42 -0
- package/dist/kiro-log-gate.js +39 -0
- package/dist/kiro-log-gate.js.map +1 -0
- package/dist/launchd-handoff.d.ts +43 -0
- package/dist/launchd-handoff.js +56 -0
- package/dist/launchd-handoff.js.map +1 -0
- package/dist/locale.js +268 -42
- package/dist/locale.js.map +1 -1
- package/dist/log-service.d.ts +99 -0
- package/dist/log-service.js +243 -0
- package/dist/log-service.js.map +1 -0
- package/dist/log-steps.d.ts +169 -0
- package/dist/log-steps.js +858 -0
- package/dist/log-steps.js.map +1 -0
- package/dist/login-controller.d.ts +20 -3
- package/dist/login-controller.js +71 -19
- package/dist/login-controller.js.map +1 -1
- package/dist/login-flows.d.ts +5 -2
- package/dist/login-flows.js +5 -4
- package/dist/login-flows.js.map +1 -1
- package/dist/login-shell.d.ts +21 -0
- package/dist/login-shell.js +98 -0
- package/dist/login-shell.js.map +1 -0
- package/dist/memory-pressure.d.ts +13 -1
- package/dist/memory-pressure.js +50 -10
- package/dist/memory-pressure.js.map +1 -1
- package/dist/needs-you-hub.js +2 -0
- package/dist/needs-you-hub.js.map +1 -1
- package/dist/needs-you-live.d.ts +6 -0
- package/dist/needs-you-live.js +23 -3
- package/dist/needs-you-live.js.map +1 -1
- package/dist/outbound-handlers.d.ts +100 -0
- package/dist/outbound-handlers.js +277 -93
- package/dist/outbound-handlers.js.map +1 -1
- package/dist/outbound-schemas.d.ts +30 -15
- package/dist/outbound-schemas.js +23 -5
- package/dist/outbound-schemas.js.map +1 -1
- package/dist/provider-probe.d.ts +29 -0
- package/dist/provider-probe.js +198 -2
- package/dist/provider-probe.js.map +1 -1
- package/dist/public-link-progress.d.ts +1 -1
- package/dist/public-link-progress.js +8 -2
- package/dist/public-link-progress.js.map +1 -1
- package/dist/public-preview.d.ts +101 -0
- package/dist/public-preview.js +236 -0
- package/dist/public-preview.js.map +1 -0
- package/dist/public-web-gateway.d.ts +2 -0
- package/dist/public-web-gateway.js +20 -6
- package/dist/public-web-gateway.js.map +1 -1
- package/dist/public-web-link.d.ts +24 -1
- package/dist/public-web-link.js +63 -9
- package/dist/public-web-link.js.map +1 -1
- package/dist/quickstart-api.d.ts +1 -1
- package/dist/quickstart-api.js +8 -6
- package/dist/quickstart-api.js.map +1 -1
- package/dist/quickstart.d.ts +12 -0
- package/dist/quickstart.js +36 -6
- package/dist/quickstart.js.map +1 -1
- package/dist/reply-buttons-controller.d.ts +89 -5
- package/dist/reply-buttons-controller.js +273 -8
- package/dist/reply-buttons-controller.js.map +1 -1
- package/dist/reply-buttons.d.ts +48 -3
- package/dist/reply-buttons.js +105 -10
- package/dist/reply-buttons.js.map +1 -1
- package/dist/reply-polls.d.ts +85 -0
- package/dist/reply-polls.js +154 -0
- package/dist/reply-polls.js.map +1 -0
- package/dist/restart-guard.d.ts +6 -3
- package/dist/restart-guard.js +6 -3
- package/dist/restart-guard.js.map +1 -1
- package/dist/restart-progress.d.ts +33 -2
- package/dist/restart-progress.js +30 -2
- package/dist/restart-progress.js.map +1 -1
- package/dist/sd-notify.d.ts +22 -1
- package/dist/sd-notify.js +63 -10
- package/dist/sd-notify.js.map +1 -1
- package/dist/service-activation.d.ts +15 -7
- package/dist/service-activation.js +42 -26
- package/dist/service-activation.js.map +1 -1
- package/dist/service-installer.d.ts +55 -0
- package/dist/service-installer.js +90 -3
- package/dist/service-installer.js.map +1 -1
- package/dist/service-plan.d.ts +11 -0
- package/dist/service-plan.js +23 -0
- package/dist/service-plan.js.map +1 -1
- package/dist/settings-api.js +14 -4
- package/dist/settings-api.js.map +1 -1
- package/dist/settings-change.js +4 -2
- package/dist/settings-change.js.map +1 -1
- package/dist/settings-effect.js +2 -0
- package/dist/settings-effect.js.map +1 -1
- package/dist/spawn-gate.js +5 -1
- package/dist/spawn-gate.js.map +1 -1
- package/dist/spawn-hold-reply.d.ts +12 -0
- package/dist/spawn-hold-reply.js +39 -0
- package/dist/spawn-hold-reply.js.map +1 -0
- package/dist/systemd-peer-bus.d.ts +95 -0
- package/dist/systemd-peer-bus.js +430 -0
- package/dist/systemd-peer-bus.js.map +1 -0
- package/dist/systemd-runtime.d.ts +27 -1
- package/dist/systemd-runtime.js +69 -7
- package/dist/systemd-runtime.js.map +1 -1
- package/dist/tips.js +1 -1
- package/dist/tips.js.map +1 -1
- package/dist/tool-permissions.js +3 -3
- package/dist/tool-permissions.js.map +1 -1
- package/dist/tool-progress.js +3 -2
- package/dist/tool-progress.js.map +1 -1
- package/dist/topic-commands.d.ts +71 -4
- package/dist/topic-commands.js +167 -34
- package/dist/topic-commands.js.map +1 -1
- package/dist/transcript-delta-reader.d.ts +3 -3
- package/dist/transcript-delta-reader.js +8 -8
- package/dist/transcript-delta-reader.js.map +1 -1
- package/dist/transcript-jsonl.d.ts +85 -3
- package/dist/transcript-jsonl.js +156 -13
- package/dist/transcript-jsonl.js.map +1 -1
- package/dist/transcript-monitor.d.ts +11 -0
- package/dist/transcript-monitor.js +61 -13
- package/dist/transcript-monitor.js.map +1 -1
- package/dist/transcript-sources.d.ts +24 -0
- package/dist/transcript-sources.js +211 -56
- package/dist/transcript-sources.js.map +1 -1
- package/dist/tunnel/cloudflared.d.ts +7 -15
- package/dist/tunnel/cloudflared.js +36 -1
- package/dist/tunnel/cloudflared.js.map +1 -1
- package/dist/tunnel/purpose-lane.d.ts +5 -1
- package/dist/tunnel/purpose-lane.js +14 -7
- package/dist/tunnel/purpose-lane.js.map +1 -1
- package/dist/tunnel/types.d.ts +5 -1
- package/dist/tunnel/types.js.map +1 -1
- package/dist/turn-resume.d.ts +2 -0
- package/dist/turn-resume.js +1 -1
- package/dist/turn-resume.js.map +1 -1
- package/dist/types.d.ts +22 -0
- package/dist/ui/chat-commands.js +1 -0
- package/dist/ui/chat-mentions.js +63 -0
- package/dist/ui/chat-render.js +80 -10
- package/dist/ui/chat-store.js +70 -6
- package/dist/ui/chat-strings.js +62 -32
- package/dist/ui/chat-thread.js +199 -24
- package/dist/ui/chat-time.js +80 -0
- package/dist/ui/chat-tour.js +17 -14
- package/dist/ui/panel-chat.js +45 -21
- package/dist/ui/panel-details.js +2 -0
- package/dist/ui/panel-fleet.js +213 -58
- package/dist/ui/panel-log.js +428 -0
- package/dist/ui/panel-needs.js +14 -10
- package/dist/ui/panel-settings.js +82 -17
- package/dist/ui/preview-panel.js +55 -15
- package/dist/ui/preview-status.js +28 -0
- package/dist/ui/preview.js +44 -3
- package/dist/ui/settings-dialogs.js +11 -6
- package/dist/ui/settings-model.js +3 -1
- package/dist/ui/settings-strings.js +32 -12
- package/dist/ui/settings-token.js +8 -1
- package/dist/ui/settings-wizard.js +5 -3
- package/dist/ui/shared/app-i18n.js +41 -15
- package/dist/ui/shared/app-prefs.js +250 -0
- package/dist/ui/shared/app-route.js +6 -1
- package/dist/ui/shared/app-shell.js +165 -8
- package/dist/ui/shared/app-store.js +5 -1
- package/dist/ui/shared/app-stream.js +26 -5
- package/dist/ui/shared/app.css +170 -30
- package/dist/ui/shared/app.js +11 -1
- package/dist/ui/shared/fonts/README.md +1 -1
- package/dist/ui/shared/header-tools.js +83 -13
- package/dist/ui/shared/instance-nav.js +178 -51
- package/dist/ui/shared/instance-switch.js +8 -5
- package/dist/ui/shared/panel-view.js +21 -4
- package/dist/ui/shared/signin.js +15 -9
- package/dist/ui/shared/theme.js +39 -7
- package/dist/ui/shared/tokens.css +1 -1
- package/dist/ui/shared/ui-icons.js +2 -0
- package/dist/ui/shared/usage-dialog.js +23 -5
- package/dist/ui/shared/view-strings.js +40 -4
- package/dist/ui/signin.html +8 -3
- package/dist/unrecognised-prompt.d.ts +23 -0
- package/dist/unrecognised-prompt.js +74 -0
- package/dist/unrecognised-prompt.js.map +1 -0
- package/dist/update-check.d.ts +31 -0
- package/dist/update-check.js +47 -0
- package/dist/update-check.js.map +1 -1
- package/dist/update-install.d.ts +13 -1
- package/dist/update-install.js +16 -4
- package/dist/update-install.js.map +1 -1
- package/dist/update-launch.d.ts +48 -1
- package/dist/update-launch.js +159 -5
- package/dist/update-launch.js.map +1 -1
- package/dist/update-marker.d.ts +51 -0
- package/dist/update-marker.js +61 -0
- package/dist/update-marker.js.map +1 -1
- package/dist/usage/i18n-keys.d.ts +1 -1
- package/dist/usage/i18n-keys.js +1 -1
- package/dist/usage/i18n-keys.js.map +1 -1
- package/dist/usage/providers.d.ts +62 -13
- package/dist/usage/providers.js +256 -68
- package/dist/usage/providers.js.map +1 -1
- package/dist/usage/statusline-usage.d.ts +6 -2
- package/dist/usage/statusline-usage.js +10 -4
- package/dist/usage/statusline-usage.js.map +1 -1
- package/dist/view-api.js +31 -9
- package/dist/view-api.js.map +1 -1
- package/dist/web-api.d.ts +82 -4
- package/dist/web-api.js +632 -88
- package/dist/web-api.js.map +1 -1
- package/dist/web-auth.js +5 -2
- package/dist/web-auth.js.map +1 -1
- package/dist/web-chat-history.d.ts +26 -1
- package/dist/web-chat-history.js +47 -8
- package/dist/web-chat-history.js.map +1 -1
- package/dist/web-commands.d.ts +41 -5
- package/dist/web-commands.js +25 -7
- package/dist/web-commands.js.map +1 -1
- package/dist/web-login.d.ts +14 -0
- package/dist/web-login.js +4 -2
- package/dist/web-login.js.map +1 -1
- package/dist/web-mentions.d.ts +44 -0
- package/dist/web-mentions.js +75 -0
- package/dist/web-mentions.js.map +1 -0
- package/dist/web-prefs.d.ts +81 -0
- package/dist/web-prefs.js +297 -0
- package/dist/web-prefs.js.map +1 -0
- package/dist/web-preview.d.ts +14 -1
- package/dist/web-preview.js +35 -13
- package/dist/web-preview.js.map +1 -1
- package/dist/web-profile.d.ts +32 -0
- package/dist/web-profile.js +132 -0
- package/dist/web-profile.js.map +1 -0
- package/dist/web-reply-files.d.ts +45 -0
- package/dist/web-reply-files.js +223 -0
- package/dist/web-reply-files.js.map +1 -0
- package/dist/web-schedules.d.ts +12 -0
- package/dist/web-schedules.js +34 -0
- package/dist/web-schedules.js.map +1 -0
- package/dist/web-server-drain.d.ts +10 -0
- package/dist/web-server-drain.js +50 -0
- package/dist/web-server-drain.js.map +1 -0
- package/dist/web-session.d.ts +14 -0
- package/dist/web-session.js +11 -1
- package/dist/web-session.js.map +1 -1
- package/dist/web-settings-patch.d.ts +3 -1
- package/dist/web-settings-patch.js +4 -1
- package/dist/web-settings-patch.js.map +1 -1
- package/dist/web-shell-routes.d.ts +4 -0
- package/dist/web-shell-routes.js +9 -0
- package/dist/web-shell-routes.js.map +1 -1
- package/dist/web-upload.d.ts +135 -7
- package/dist/web-upload.js +315 -51
- package/dist/web-upload.js.map +1 -1
- package/launcher/install-admission.cjs +61 -6
- package/package.json +3 -3
- package/templates/launchd.plist.ejs +3 -1
- package/templates/systemd.service.ejs +2 -1
package/dist/web-api.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type HumanOrigin } from "./human-delivery-receipts.js";
|
|
1
2
|
import type { CachedImage } from "./web-images.js";
|
|
2
3
|
import type { SettingsExecution } from "./settings-transaction.js";
|
|
3
4
|
import type { PaneContextSource } from "./pane-context-cache.js";
|
|
@@ -8,6 +9,9 @@ import { type PreviewAvailability } from "./web-preview.js";
|
|
|
8
9
|
import { type WebChatHistory } from "./web-chat-history.js";
|
|
9
10
|
import { type WebFileLedger } from "./web-upload.js";
|
|
10
11
|
import type { WebSessionStore } from "./web-session.js";
|
|
12
|
+
import { type WebPrefsStore } from "./web-prefs.js";
|
|
13
|
+
import { type WebAccount } from "./web-profile.js";
|
|
14
|
+
import { type MentionNames, type MentionQuery } from "./web-mentions.js";
|
|
11
15
|
import type { ExplicitInstanceRemoval } from "./instance-removal.js";
|
|
12
16
|
/**
|
|
13
17
|
* Push a single SSE frame to every client. If a client throws (closed socket
|
|
@@ -35,6 +39,8 @@ export interface WebApiContext {
|
|
|
35
39
|
web?: {
|
|
36
40
|
echo_to_channel?: boolean;
|
|
37
41
|
usage_panel?: boolean;
|
|
42
|
+
upload_max_file_mb?: number;
|
|
43
|
+
upload_max_total_mb?: number;
|
|
38
44
|
};
|
|
39
45
|
defaults?: {
|
|
40
46
|
backend?: string;
|
|
@@ -65,7 +71,11 @@ export interface WebApiContext {
|
|
|
65
71
|
} | null;
|
|
66
72
|
getGroupIdForInstance?(name: string): string;
|
|
67
73
|
/** Reserve display ordering before IPC handoff, then settle delivery without waiting for the echo. */
|
|
68
|
-
reserveWebChannelEcho?(name: string, sendEcho: () => Promise<unknown
|
|
74
|
+
reserveWebChannelEcho?(name: string, sendEcho: () => Promise<unknown>, opts?: {
|
|
75
|
+
copy?: boolean;
|
|
76
|
+
}): (accepted: boolean) => void;
|
|
77
|
+
/** #1666: the cancel/progress bubble a platform inbound starts, posted in the instance's topic. */
|
|
78
|
+
startWebChatProgress?(name: string): Promise<void>;
|
|
69
79
|
readonly daemons: Map<string, unknown>;
|
|
70
80
|
readonly eventLog: {
|
|
71
81
|
logActivity(event: string, sender: string, summary: string, receiver?: string, detail?: string): void;
|
|
@@ -97,9 +107,10 @@ export interface WebApiContext {
|
|
|
97
107
|
* (#1320 part B). Resolves the entries and adapters itself; returns how
|
|
98
108
|
* many channels were posted to. Never rejects the web send on failure.
|
|
99
109
|
*/
|
|
100
|
-
sendClassicWebEcho?(instance: string, text: string): Promise<number>;
|
|
110
|
+
sendClassicWebEcho?(instance: string, text: string, sender?: string): Promise<number>;
|
|
101
111
|
/** false: definitely not delivered (the instance's IPC is gone, or it was restarted meanwhile). */
|
|
102
112
|
deliverToInstance(instanceName: string, payload: Record<string, unknown>): Promise<boolean | void>;
|
|
113
|
+
deliverHumanToInstance?(instanceName: string, payload: Record<string, unknown>, origin: HumanOrigin, originalBody: string): Promise<boolean | void>;
|
|
103
114
|
getUiStatus(): unknown;
|
|
104
115
|
/** Current owned pane reader shared with status; absent means context is unavailable. */
|
|
105
116
|
getPaneContextSource?(name: string): PaneContextSource | null;
|
|
@@ -107,6 +118,8 @@ export interface WebApiContext {
|
|
|
107
118
|
previewForUi?(hostHeader: string | undefined, secure: boolean): PreviewAvailability & {
|
|
108
119
|
boot: string | null;
|
|
109
120
|
};
|
|
121
|
+
/** #1723: the same for a page of the public link (exposure `exposureId`, at `dashboardOrigin`); absent: none there. */
|
|
122
|
+
publicPreviewForUi?(exposureId: string, dashboardOrigin: string): PublicPreviewForUi;
|
|
110
123
|
emitSseEvent(event: string, data: unknown): void;
|
|
111
124
|
/** The web chat's recent messages (history + SSE replay); absent in contexts that have no chat. */
|
|
112
125
|
readonly webChatHistory?: WebChatHistory;
|
|
@@ -116,6 +129,8 @@ export interface WebApiContext {
|
|
|
116
129
|
webImage?(kind: "bot" | "avatar", key: string): CachedImage | null;
|
|
117
130
|
/** #1630: one Discord server emoji of the fleet's bots, from the host cache (fetched once); null for any other id. */
|
|
118
131
|
webEmoji?(id: string): Promise<CachedImage | null>;
|
|
132
|
+
/** #1682: names for mention ids (only those asked; from memory, never a request); absent: no names. */
|
|
133
|
+
webMentionNames?(query: MentionQuery): MentionNames;
|
|
119
134
|
/** #1630: the custom emoji of the servers the fleet's Discord bots are in. */
|
|
120
135
|
webEmojiList?(): Promise<Array<{
|
|
121
136
|
id: string;
|
|
@@ -124,14 +139,20 @@ export interface WebApiContext {
|
|
|
124
139
|
}>>;
|
|
125
140
|
/** Absent means SSE_HEARTBEAT_MS; a test shortens it. */
|
|
126
141
|
readonly sseHeartbeatMs?: number;
|
|
142
|
+
/** #1665: the web preferences kept on the host (one bucket: the operator's); absent: /ui/prefs is not offered. */
|
|
143
|
+
readonly webPrefs?: WebPrefsStore;
|
|
127
144
|
startInstance(name: string, config: unknown, topicMode: boolean): Promise<void>;
|
|
128
|
-
stopInstance(name: string): Promise<
|
|
145
|
+
stopInstance(name: string): Promise<{
|
|
146
|
+
backgroundWorkEnded: boolean;
|
|
147
|
+
}>;
|
|
129
148
|
/** The fleet prompts open on the dashboard (web track C4); absent: none are offered. */
|
|
130
149
|
listWebPrompts?(): unknown[];
|
|
131
150
|
/** #1386: everything waiting on the person, every world (the web is global). */
|
|
132
151
|
needsYouItems?(): unknown[];
|
|
133
152
|
/** #1389: the org chart's structure (fleet.yaml's teams, General, descriptions, thread links); absent: an empty chart. */
|
|
134
153
|
orgChart?(): unknown;
|
|
154
|
+
/** #1218: an instance's Log steps, read on demand (null: no such instance; `{ enabled: false }`: the Log is off). */
|
|
155
|
+
logSteps?(name: string, q: import("./log-service.js").LogQuery): Promise<unknown>;
|
|
135
156
|
/** #1468: the prompt-cache expiry analysis for a window ("24h" | "7d" | "30d"); absent: not offered. */
|
|
136
157
|
cacheReport?(window: string): Promise<unknown>;
|
|
137
158
|
/** #1269: an instance's chat command from the web chat (web-commands.ts); absent: not offered. */
|
|
@@ -142,10 +163,25 @@ export interface WebApiContext {
|
|
|
142
163
|
confirm?: string;
|
|
143
164
|
}, opts: {
|
|
144
165
|
publicLink: boolean;
|
|
166
|
+
person?: WebPerson;
|
|
145
167
|
}): Promise<{
|
|
146
168
|
status: number;
|
|
147
169
|
body: unknown;
|
|
148
170
|
}>;
|
|
171
|
+
/**
|
|
172
|
+
* #1827: a web person — for the account a session is bound to (none: the operator) — as agents and chats see them.
|
|
173
|
+
* Absent: everyone is "web-user", as before.
|
|
174
|
+
*/
|
|
175
|
+
webPerson?(owner?: WebAccount): WebPerson;
|
|
176
|
+
/** #1827: set (or, with null, clear) a person's own name; refused with a reason. */
|
|
177
|
+
setWebPersonName?(owner: WebAccount | undefined, raw: unknown): {
|
|
178
|
+
ok: true;
|
|
179
|
+
person: WebPerson;
|
|
180
|
+
} | {
|
|
181
|
+
ok: false;
|
|
182
|
+
status: number;
|
|
183
|
+
error: string;
|
|
184
|
+
};
|
|
149
185
|
/** #1386: the web's Acknowledge of a delivery item; `principal` is "web:<session handle>" or "cli". */
|
|
150
186
|
acknowledgeNeedsItem?(id: string, principal: string): {
|
|
151
187
|
status: number;
|
|
@@ -157,9 +193,14 @@ export interface WebApiContext {
|
|
|
157
193
|
error?: string;
|
|
158
194
|
}>;
|
|
159
195
|
/** #1266: a click on an agent reply's button. */
|
|
160
|
-
clickWebReplyButton?(instance: string, id: string, index: number
|
|
196
|
+
clickWebReplyButton?(instance: string, id: string, index: number, voter?: {
|
|
197
|
+
key: string;
|
|
198
|
+
userId: string;
|
|
199
|
+
name: string;
|
|
200
|
+
}): Promise<{
|
|
161
201
|
status: number;
|
|
162
202
|
error?: string;
|
|
203
|
+
options?: number[];
|
|
163
204
|
}>;
|
|
164
205
|
/** Interrupt the current reply and drop what was queued for it; false when the instance is not running. */
|
|
165
206
|
cancelInstance?(name: string): boolean;
|
|
@@ -207,23 +248,60 @@ export interface WebApiContext {
|
|
|
207
248
|
};
|
|
208
249
|
list(target?: string): unknown[];
|
|
209
250
|
create(params: unknown): unknown;
|
|
251
|
+
/** #1724: the update MCP update_schedule makes (cron and at clear each other). */
|
|
252
|
+
update?(id: string, params: Record<string, unknown>): unknown;
|
|
253
|
+
/** #1426: a pending retry of a schedule's occurrence, for the row's "retrying". */
|
|
254
|
+
getRetry?(id: string): unknown;
|
|
210
255
|
delete(id: string): void;
|
|
211
256
|
} | null;
|
|
212
257
|
}
|
|
258
|
+
/** #1827: a web person as the web chat shows them to agents and chats. */
|
|
259
|
+
export interface WebPerson {
|
|
260
|
+
/** Their key in the web preferences (web-profile.ts webPersonKey): never shown. */
|
|
261
|
+
readonly key: string;
|
|
262
|
+
/** Signed in as an account (a sign-in code DMed to it), or the operator. */
|
|
263
|
+
readonly bound: boolean;
|
|
264
|
+
/** What agents see as the id: the bound account's user id on its platform (still `via web`), or "web-user". */
|
|
265
|
+
readonly userId: string;
|
|
266
|
+
/** Their poll ballot's key: the account's `<connection>:<user id>` (as on the platform), or the operator's. */
|
|
267
|
+
readonly voterKey: string;
|
|
268
|
+
/** The name in use: the one they chose, else their account's name at sign-in, else "web-user". */
|
|
269
|
+
readonly name: string;
|
|
270
|
+
/** Whether the name in use is one they chose. */
|
|
271
|
+
readonly set: boolean;
|
|
272
|
+
/** Their account's name at sign-in, made safe (bound only). */
|
|
273
|
+
readonly platformName?: string;
|
|
274
|
+
}
|
|
213
275
|
/**
|
|
214
276
|
* Handle a Web UI request. Returns true if handled, false to pass through.
|
|
215
277
|
*/
|
|
216
278
|
export declare function handleWebRequest(req: IncomingMessage, res: ServerResponse, url: URL, ctx: WebApiContext): boolean;
|
|
279
|
+
/**
|
|
280
|
+
* #1723: a public-link page's preview: where it may frame from (`frameSrc` — the quick-tunnel wildcard while its own
|
|
281
|
+
* preview tunnel is starting or up, the exact origin for a configured web.preview_origin, null for none) and, once
|
|
282
|
+
* the preview tunnel failed, why (`detail`, a fixed reason the page words).
|
|
283
|
+
*/
|
|
284
|
+
export type PublicPreviewForUi = PreviewAvailability & {
|
|
285
|
+
boot: string | null;
|
|
286
|
+
frameSrc: string | null;
|
|
287
|
+
detail?: string;
|
|
288
|
+
};
|
|
217
289
|
export interface AppShellContext {
|
|
218
290
|
previewForUi?(hostHeader: string | undefined, secure: boolean): (PreviewAvailability & {
|
|
219
291
|
boot: string | null;
|
|
220
292
|
}) | null;
|
|
293
|
+
publicPreviewForUi?(exposureId: string, dashboardOrigin: string): PublicPreviewForUi;
|
|
221
294
|
/** #1523 N3: `web.usage_panel` — the header's ◔ is offered unless it is false (the page needs no probe read for it). */
|
|
222
295
|
readonly fleetConfig?: {
|
|
223
296
|
web?: {
|
|
224
297
|
usage_panel?: boolean;
|
|
298
|
+
log_tab?: boolean;
|
|
299
|
+
upload_max_file_mb?: number;
|
|
300
|
+
upload_max_total_mb?: number;
|
|
225
301
|
};
|
|
226
302
|
} | null;
|
|
303
|
+
/** #1665: the host's theme and language go into the page itself, so a device paints them before any script reads. */
|
|
304
|
+
readonly webPrefs?: WebPrefsStore;
|
|
227
305
|
}
|
|
228
306
|
export type AppShellMode = "full" | "view-only";
|
|
229
307
|
/** The app shell page for one entry, under the panels' CSP; it may frame exactly <preview origin>/frame, and only
|