Agent settings #
/settings uses Octane and the pinned public Kumo components. One mounted native
owner connection serves model settings, custom instructions, memory, tool
availability and installation details. Public SSR contains no saved owner data.
The provider and model choices come from getModelCatalog; getModelSettings
returns only the selected configuration and Anthropic credential presence.
Workers AI needs no provider key. Selecting Anthropic in the editor requires a
saved key before the UI enables Save model. Saving changes future turns,
including scheduled tasks; it does not change a turn already running.
The password field calls the existing setProviderKey callable to save, replace
or remove the encrypted Anthropic key. The key exists only in the mounted input
state and authenticated RPC request, never in URLs, browser storage, generic
agent state, public HTML or readback responses. Inputs clear after successful or
failed key mutations, connection loss, and navigation. Retrying a failed key
update requires re-entry. Configured means stored, not validated; Settings does
not contact a paid provider to test credentials. Removing the selected provider's
key can stop future turns until the user adds a key or saves a Workers AI model.
A transient disconnection disables writes and offers Reconnect. Unsaved model, instruction and memory drafts survive that reconnect; current saved settings and memories reload without replacing those drafts. Memory edits retain their original version so stale writes still fail the existing concurrency check. Async replies from a retired connection or mount cannot update the current editor. Native session expiry (close code 4001) and denied authentication preflight remove all private Settings panels and drafts, including installation information.
getRuntimeInfo is an authenticated, explicitly constructed DTO containing only
application version, installation ID, effective runtime/control-plane origins and
curated tool descriptors. Application version is embedded from package.json when
the Worker is built. It is not the release manifest's git revision, deployed
release identity, update availability or a migration version. Those installation
and upgrade workflows are tracked separately.
Memory, URL reading and scheduling are included. Browser-backed search/reading and shell report configuration presence only, not remote entitlement, service health or container startup. Settings performs no health probes. Reserved Worker Loader functionality is not advertised as an available tool.
Validation uses the packaged Worker and Chromium in pnpm test:settings: real
model and key RPC saves/reloads, native validation failures, secret readback and
SSR exclusions, descriptor allowlist, reconnect/draft and expiry behavior,
stale replies after navigation, existing instructions/memory CRUD, and 375px
layout and 14px content checks.
Diagnostics uses the same owner connection to download a bounded JSON support file for the runtime and optionally one existing conversation. The selector can show conversation names; the file excludes them and all conversation/tool content and secrets. Scope, retention, unavailable usage/cost and incomplete outcomes are visible before download. See Agent diagnostics.