Documentation menu
Concept

Human interfaces

An agent is easier to trust and direct when its interface lives with its behavior and reflects its real state.

Browser: app.tsx

Co-locate a React interface beside any agent. Ayjnt generates a typed hook for the agent route, serves the app at the instance URL, and synchronizes durable state to connected clients.

Use the browser when the work benefits from visualization, ongoing monitoring, rich input, collaboration, or an approval surface. A root agents/app.tsx can provide an application-level home, dashboard, or session list.

Terminal: cli.ts

A root CLI runs in Bun and receives typed handles to every agent and workflow. It can be a one-shot command, an interactive prompt, or a full-screen terminal application. Because it owns the local runtime, calls reach agents in-process.

Use the terminal when work starts from a repository, composes well in scripts, needs local files, or belongs in a developer's existing flow.

Use both

The interfaces are peers, not separate backends. A coding harness can run in a full-screen terminal while its root browser app shows every session, transcript, and usage total. Both interact with the same durable agent state.

Design the interface around the decision

A status dashboard, an approval queue, a chess board, and a coding terminal are all agent interfaces. Ayjnt does not force them into a chat box.