Skip to content

Variable: ACTOR_STORAGE_KEY

const ACTOR_STORAGE_KEY: "aiui-actor" = "aiui-actor"

Defined in: aiui-intent-runtime/src/instrumentation.ts:149

The sessionStorage key that relabels this tab's turns: set it to "agent" (or any label) and every subsequent hello from this tab carries that actor; remove it to fall back to "human".

This is the whole opt-in mechanism, and it is deliberately not a heuristic. The obvious heuristic — navigator.webdriver — is browser-wide: the shared session browser (Chrome for Testing, launched for CDP) sets it for the human's tabs and the agent's tabs alike, so it labeled people as agents. Per-tab storage matches how the browser is actually shared (the agent drives its own tab), survives reloads within that tab, and dies with it. An agent (or a CI harness) flips it with one evaluate:

sessionStorage.setItem("aiui-actor", "agent")

Mislabeling tolerance is asymmetric by design: an unflagged agent turn showing as human is acceptable; a person's turn showing as agent was the bug that retired the heuristic.