The side panel next to your chat can hold a terminal of your own: a shell that starts in the chat's workspace folder, where you type commands yourself. It stays yours: Oda does not type in it, does not read its output, and nothing from it joins the chat.
A new terminal starts at 80 columns by 24 rows, smaller when the environment caps it lower. The terminal comes from the Terminal tab switch under Settings > Developer > Advanced features; if the entry does not appear, check that switch first. Advanced features covers the switches.
/ bin/ sh on POSIX systems or cmd. exe on Windows.Selected shell is not available in this execution environment. Oda does not start a different shell in its place.Reading terminal environment…, then Starting…, then Connecting…; the shell's screen appears once it is attached.Process exited (<code>) with the exit code. The shell is never restarted on its own; use New terminal in the tab for a fresh one.Unavailable and offers Retry.This view is read-only. and offers Take control; the shell keeps running.This terminal no longer exists. Open a new terminal. and a New terminal button replaces it in place. Nothing restarts on its own.Commands you type here run with the rights of your own account on this computer, exactly as if you opened the shell yourself. Oda does not elevate them, and the chat's access mode, its approval prompts and Oda's sandbox do not apply to this terminal; changing the access mode leaves running terminals as they are. See Workspaces, files and permissions for the modes themselves.
The shells Oda keeps for its own commands are a different surface; see Persistent shells.
| What | Limit |
|---|---|
| Terminals in one chat | 8 at a time, counting exited terminals and ones still opening |
| New terminal | 80 columns by 24 rows, smaller when the environment caps it lower |
| Screen | up to 500 columns by 200 rows |
| Scrollback | about the last 1000 lines |
| One input | 64 KiB |
| Terminal name | 1 to 120 characters |
| Unattended close | after about 2 hours without activity, only when no open tab holds the terminal |
In the chat's workspace folder. The terminal belongs to the chat, and it opens there with the shell you chose last, or the environment's default the first time. Workspaces, files and permissions explains workspace folders.
The environment's default comes first, then the shells verified on this computer: zsh, bash, fish, pwsh, powershell and cmd. Your last choice is remembered and marked in the list, so you usually just press New terminal.
Only shells Oda can verify are offered. A shell path that cannot be verified is refused with Selected shell is not available in this execution environment, and Oda does not start a different shell in its place. Pick one of the offered shells, or reinstall your shell on this computer and open the list again.
No. The terminal belongs to you: Oda does not type in it and does not read its output, and nothing typed or printed here joins the chat's transcript. It works like a shell you open yourself, next to your chat.
No. Commands you type run with the rights of your own account on this computer, and Oda does not elevate them. The chat's access mode, its approval prompts and Oda's sandbox do not apply to your terminal, and changing the access mode leaves running terminals as they are.
Each terminal tab reattaches to its shell and restores the screen. If the shell is gone, for example because Oda quit in between, the tab reads This terminal no longer exists. and a New terminal button replaces it in place; nothing restarts on its own.
No. Closing ends the shell and every process it started, and a closed terminal cannot be recreated; open a new terminal instead. If the cleanup cannot finish in one go, the app retries it in the background.
Only one view of a terminal owns the keyboard at a time: the newest one. The other view reads This view is read-only. and offers Take control; choose it in the view you are working in. Both views see the same shell, and the shell keeps running.
A terminal that no open tab holds is closed after about two hours without activity. Only time in which the shell is definitely idle counts, so a command that keeps working is not reclaimed. Open a new terminal when you need one again.
Typing is buffered up to 64 KiB at a time, and a very large paste can fill that buffer: the tab shows The input buffer is full. Use Reconnect and send the text in smaller pieces; the shell keeps running.
That view fell behind the terminal's output buffer. It reports Terminal output consumer exceeded its buffer; reconnect to recover the current screen; reconnect, and the current screen is restored. The shell keeps running while you do.