In-Browser Terminal
A terminal in the Agenhood console, linked over WebSocket, giving a shell inside an agent's container.
The in-browser terminal is an xterm.js-based terminal in the Agenhood web console that connects over WebSocket directly into a running agent's container, giving a real interactive shell inside the agent's sandboxed environment.
How it works in Agenhood
Opening the in-browser terminal for an agent establishes a WebSocket connection from the console into that agent's running container, and attaches a shell session to it. Input typed in the browser is sent over the connection and executed inside the container, and the resulting output is streamed back and rendered by xterm.js, the same terminal emulation library used in several browser-based development tools. Because it connects to the same container the agent itself runs in, commands run through the in-browser terminal see the same filesystem, including the agent's persistent workspace, and the same environment as the agent's own tool calls.
Why it matters
An agent's automated tool calls cover the actions the agent itself decides to take, but a person sometimes needs to inspect or intervene directly, for example to check a file, install a missing dependency, or run a one-off diagnostic command. The in-browser terminal provides that access without requiring a separate SSH client, a locally configured cluster tool, or direct network access to the container, since it runs entirely through the browser and the console's own connection to the platform. It also removes the need to open extra firewall rules or manage per-agent SSH keys just to get a shell for occasional debugging.
Related concepts
Giving a browser-based terminal a direct WebSocket connection into a sandboxed container is a general pattern used across cloud IDEs, container platforms, and remote development tools; Agenhood applies it to give operators a manual shell into an otherwise autonomous agent's environment. This is distinct from the live task viewer, which shows an agent's own automated actions on a specific task, whereas the in-browser terminal is a separate, manually driven session into the container, independent of any particular task. It can be opened whether or not any task is currently running, since it attaches to the container itself rather than to a task's execution. Because the terminal has the same level of access as the agent, changes made through it, such as editing or deleting a file, persist in the workspace exactly as if the agent itself had made them.