---
title: <TUI>
description: Declare a workflow-owned React terminal UI for OpenTUI-capable clients.
---

`<TUI>` is the terminal counterpart to [`<UI>`](/components/ui). It declares the
React entry a workflow wants an OpenTUI-capable client to render for terminal
monitoring. The component renders nothing in the workflow graph; clients read
the declaration from workflow metadata and choose the appropriate terminal host.

```tsx
import { TUI, Workflow } from "smithers-orchestrator";

export default smithers(() => (
  <Workflow name="terminal-view">
    <TUI entry="./tui/terminal-view.tsx" title="Terminal View" />
    {/* normal workflow nodes */}
  </Workflow>
));
```

## Props

`<TUI>` accepts the same view declaration fields as `<UI>`: `entry`, `source`,
`exportName`, `title`, `props`, and literal `children`. Prefer `entry` for a
real terminal app so the OpenTUI host can load the full React component tree.
