# A Complete Guide to the EONYX Interactive TUI


The main way to work with EONYX is the terminal interface.
Streaming answers, a command palette, pickers and dialogs.
Here is everything worth knowing to move fast.

<!--more-->

## ⌨️ Keyboard and commands

### Hotkeys

| Key       | Action                                       |
| --------- | -------------------------------------------- |
| `Enter`   | send message                                 |
| `Ctrl+J`  | line break in the input field                |
| `↑ / ↓`   | history of your messages                     |
| `Esc`     | interrupt the running turn                   |
| `/`       | command palette (on empty input)             |
| `@`       | file path completion (Tab inserts)           |
| `?`       | help (on empty input)                        |
| `Ctrl+P`  | command palette                              |
| `Ctrl+N`  | switch model                                 |
| `Ctrl+S`  | session manager                              |
| `Ctrl+K`  | skills and MCP servers (on/off)              |
| `Ctrl+O`  | expand/collapse tool output                  |
| `Ctrl+R`  | expand/collapse model reasoning              |
| `Ctrl+C`  | quit                                         |
| `! <cmd>` | run a shell command                          |

### Command palette

`/` on empty input, or `Ctrl+P`, opens the palette.
It has two tabs and `Tab` switches between them.
System commands: new session, clear context, yolo, plan, timestamps, switch model, sessions, capabilities, quit.
Working ones: attach, check, IP, export.
Arrows wrap around and `Enter` runs.

Slash commands also work typed by hand: `/new`, `/clear`, `/add [path]`, `/rename <title>`, `/fork`, `/export`, `/yolo`, `/plan`, `/timestamps`, `/model`, `/sessions [query]`, `/help`, `/quit`.

### Pickers and completion

- **Model.** `Ctrl+N` or `/model` lists the configured models, with the current one marked.
- **Sessions.** `Ctrl+S` or `/sessions` opens the list. `r` renames, `f` forks, `d` deletes. `/sessions <query>` searches titles and text.
- **Files.** Type `@` and start a path. A candidate menu appears, directories first, and `Tab` inserts. That is the quick way to attach files to a message.

## 🖥️ What is on screen

### Header

The header carries the working directory, the git branch and the session number or title.
Then the mode: ` SAFE `, ` YOLO ` or ` PLAN `.
Then the model and the counters: `input↑ output↓`, cached tokens, session time, cost `$…`.
And the **context indicator**, `{ctx N%}`.

{{< admonition type="tip" title="Watch {ctx N%}" >}}
`{ctx N%}` is how full the context window is.
At **80%** it lights up, and auto-summarization of the older turns starts at the same point.
A high percentage is fine.
EONYX compacts the history on its own.
{{< /admonition >}}

### Skills and MCP

`Ctrl+K` opens the capabilities dialog, with **Skills** and **MCP** tabs.
Any skill or server flips off and on with `✓` and `✗`.
For a skill that rebuilds the catalogue in the system prompt.
For MCP it hides the server's tools from the model.
The header shows what is active, in `# skills` and `» mcp`.

### Output and reasoning

- **`Ctrl+O`** switches tool output between a short summary and the full text. Long listings and files are collapsed by default so the transcript stays readable.
- **`Ctrl+R`** expands the model's thinking block, on reasoning models. It is collapsed to one line by default.

## 💬 Actions from the chat

### Shell in the chat

`!<command>` runs in the agent's shared shell session.
It **writes the command and its output into the conversation**.
So the model sees what you did and how the state changed, directory and variables included.

```text
! go test ./...
```

### Export and fork

- **`/export`** saves the conversation to markdown, at `<project>/.eonyx/exports/eonyx-<id>.md`.
- **`/fork`**, or `f` in the session list, branches the conversation into a new session and leaves the original alone. A handy save point before a risky direction.

## 📋 Summary

{{< admonition type="abstract" title="Cheat sheet" >}}
- **Navigation**
  - palette `/` or `Ctrl+P`; pickers for model (`Ctrl+N`), sessions (`Ctrl+S`), capabilities (`Ctrl+K`)
  - `@` — completion and attaching files, `Tab` inserts
- **Screen**
  - header: path, branch, mode, model, tokens, cost, `{ctx N%}`
  - `Ctrl+O` / `Ctrl+R` — expand tool output / reasoning
- **Actions from the chat**
  - `!<cmd>` — shell in the chat, recorded into the history
  - `/export`, `/fork` — export and branching
{{< /admonition >}}

