← All components
Interaction / component

Agent Presence

A compact agent disclosure with readable state, stable activity and caller-owned actions.

Live preview
Preparing preview…

Take it with you.

SOURCE ACCESS

Preview freely. Unlock the files.

Enter the shared password to copy the complete source, download every file, and install components in your app.

Access lasts 24 hours. Your preview settings stay with you.

Component notes

  • Original native nonmodal disclosure with caller-owned activity, summary, actions and result slots. Explicit actions replace the legacy callback button.
  • The gallery defaults to Atlas / idle and a Local example Theme Lab. Start validates inputs, derives colors and measures contrast; approval exports inspectable CSS. State study shows appearance without fabricated history.
  • Portable Demo accepts initialTheme (Studio theme / #8cbfa1) and allowArtifactCopy (true by default). The gallery adapter defaults copying off until explicitly authorized; this flag is not a security authority.
  • Escape returns focus and outside pointer closes. Latest eight unique activities are retained. Replay and Pause preserve local work; explicit Reset starts a fresh example. Changing status cancels unfinished work; changing tabs preserves it.
  • Header and Chat use seven original indicator poses, actual local checklist/word-count actions, and no model service. Bind AgentStatusSequence state or AgentPresence status from your request owner; motion never completes it.
  • All local work survives Pause/Replay in the new contexts. The original Theme Lab remains available as Presence; its export follows explicit user approval.
React 19.2Modern browsersNative disclosure

Chungus UI · Project-authored source; distribution terms remain a release decision.

Props

PropTypeDefaultDescription
namestring'Agent'Agent name; accepted ranges and choices are shown in the controls.
status'idle' | 'thinking' | 'working' | 'waiting' | 'complete' | 'error' | 'cancelled''idle'Status; accepted ranges and choices are shown in the controls.
activitiesAgentActivity[][]Caller-owned items with stable id, title, optional detail and queued/active/complete/error/cancelled status. Latest eight unique IDs are retained in caller order.
summarystringundefinedReadable collapsed stage or outcome summary.
actionsReactNodeundefinedExpanded native caller actions; takes precedence over the legacy action.
resultReactNodeundefinedExpanded inspectable result content.
avatarReactNodeundefinedOptional caller artwork; primitive has no bundled avatar dependency.
openbooleanundefinedControlled expanded state; omit for internal disclosure state.
onOpenChange(open: boolean) => voidundefinedReceives native disclosure changes; pair with open for controlled operation.
dismissBoundaryRefRefObject<HTMLElement | null>undefinedOptional related-control boundary for outside pointer dismissal. The disclosure root is always inside; Escape remains scoped to the disclosure. Omit for root-only dismissal.
onAction() => voidundefinedEnables a real waiting or retry action; caller owns the work.
actionLabelstringContinue / Try againOptional readable label for a waiting/error action.
pausedbooleanfalseSuspend decoration without changing caller state, retained text, local input or results.
replayTokennumber0Restart decoration while retaining caller state and local work in the new contexts. Legacy Thought/Lattice Demo explicitly restarts its synthetic interaction.
classNamestring''Additional scoped host class.
indicatorclassic | sequenceclassicAgentPresence: keep the original indicator or select the seven original sequence poses.
headlinestringGive your agent a clear brief.Header/Chat: context heading; the original Presence composition uses its original heading.
stateAgentStatusworkingControlledExample: caller state maps to AgentPresence status. All seven states stay authoritative.