Skip to content

Interface: ControlSurfaceToolsOptions

Defined in: packages/aiui-oracle/src/aiui-tools.ts:80

The oracle — a realtime voice control surface for aiui apps: a chromeless session engine (pluggable transport + key source, one normalized ledger) plus opt-in widgets. Contract of record: the aiui-oracle proposal (pdum_aiui git history).

Properties

filter?

optional filter?: (entry) => boolean

Defined in: packages/aiui-oracle/src/aiui-tools.ts:96

Arbitrary extra filtering (composes with scope).

Parameters

entry

ControlSurfaceEntry

Returns

boolean


report?

optional report?: boolean

Defined in: packages/aiui-oracle/src/aiui-tools.ts:98

Include the report snapshot tool. Default true.


scope?

optional scope?: string | { name: string; }

Defined in: packages/aiui-oracle/src/aiui-tools.ts:94

Keep only one scope's SURFACE (an aiui Scope or its name). The control surface is DOCUMENT-global — in a composed document (the gallery mounting many demos) an unscoped projection hands this oracle EVERY app's controls, so a per-app oracle passes its own scope. Omit deliberately for a host-level oracle that drives the whole document.

"A scope's surface" is aiui-viz's surfaceViewFor — the scope's own subtree PLUS unscoped declarations — so an embedded oracle sees exactly what the equivalent agent toolkit (registerStandardTools) serves. An app whose declarations carry no scope at all keeps working when a sibling app mounts beside it, which a bare <scope>/ prefix test silently broke.