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?
optionalfilter?: (entry) =>boolean
Defined in: packages/aiui-oracle/src/aiui-tools.ts:96
Arbitrary extra filtering (composes with scope).
Parameters
entry
ControlSurfaceEntry
Returns
boolean
report?
optionalreport?:boolean
Defined in: packages/aiui-oracle/src/aiui-tools.ts:98
Include the report snapshot tool. Default true.
scope?
optionalscope?: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.