Terminal & Activity Tab
Every agent session in Kangentic has a dedicated terminal powered by xterm.js. You can watch agents work in real-time, review their output, and interact when needed.
Bottom Panel
Section titled “Bottom Panel”The bottom panel is your primary monitoring interface for the current project’s sessions; for every project’s agents at once, open the Agent Monitor. It has two types of tabs:
Session Tabs
Section titled “Session Tabs”Each running agent gets its own terminal tab. Click a tab to switch between sessions; double-click one to open the task’s detail window. The active tab is highlighted, and each tab carries a state indicator:
- Green spinner - the agent is actively working
- Amber dot - the agent is idle or waiting for input; it pulses on tabs you have not viewed since the agent went idle
- Green dot - the session is running but has no activity data yet
- Gray dot - the session is not running
A task’s terminal is only ever in one place. While its detail window is open - on the board, inside the Agent Monitor, or in a detached pop-out - the session’s tab leaves the panel and returns when that window closes. Once no tabs remain, the panel collapses.
Activity Tab
Section titled “Activity Tab”The leftmost tab is the Activity Tab - a structured list of events from all sessions. Unlike the terminal tabs which show raw PTY output, the Activity Tab shows clean, readable entries:
- Tool calls (which tool, which file)
- Idle events (agent stopped or is waiting)
- Session state changes (spawned, suspended, resumed)
The Activity Tab is a plain DOM list (not a terminal emulator), so it’s lightweight and easy to scan. It’s the best way to get an overview of what all your agents are doing without switching between individual terminal tabs.
Resize
Section titled “Resize”Drag the panel divider to resize the bottom panel. The terminal resizes to match. Resize events are debounced during drag to prevent output corruption and excessive re-rendering.
Per-Session Terminals
Section titled “Per-Session Terminals”Each running agent gets its own terminal tab showing:
- The agent’s conversation output
- Any commands the agent runs
- File modifications and tool usage
- Agent thinking and decision-making
You can have multiple terminal tabs open simultaneously and switch between them to monitor different agents.
While a session’s CLI boots - a fresh spawn, a resume after a restart, or a move that restarts the session - a shimmer overlay covers the terminal with a context-aware label saying what is happening, then lifts the moment real output arrives. The Command Terminal shows the same overlay while its CLI initializes.
Task Detail Dialog
Section titled “Task Detail Dialog”Click a task card to open its detail window - a modeless window you can drag, resize, snap, and tile over the board (several can be open at once). It includes a full terminal view that takes ownership from the bottom panel while open, giving you a larger view for focused work. The same handoff happens when a detail window opens inside the Agent Monitor - wherever the detail is, that is where the terminal lives. Press Ctrl+Shift+M / Cmd+Shift+M to maximize, Ctrl+Shift+Arrows / Cmd+Shift+Arrows to snap, and drag the vertical divider to resize the terminal against the Browser or Changes pane - see Task Detail Window.
When you close the window (Escape, Ctrl+Shift+W / Cmd+Shift+W, a middle-click on its title bar, a click outside it, or pausing the agent from the header), the bottom panel reclaims the terminal session automatically and the agent keeps running.
Features
Section titled “Features”Scrollback
Section titled “Scrollback”Terminal sessions maintain a full scrollback buffer. Scroll up to review earlier agent output without losing your place. The buffer persists for the lifetime of the session.
WebGL Acceleration
Section titled “WebGL Acceleration”Terminal rendering uses WebGL for hardware-accelerated text drawing. If WebGL is unavailable (e.g., in some VM environments) or the GPU drops the WebGL context, xterm.js automatically falls back to its DOM renderer (Kangentic retries WebGL a couple of times after a context loss before settling on DOM for the rest of the session).
File Drop
Section titled “File Drop”Drag files from your file manager onto the terminal to insert their file paths into the active session. An image file (PNG, JPEG, GIF, WebP, BMP, SVG) is inserted with an agent-readable reference, the same way as a pasted image (below); any other file is inserted as its bare path. Paths containing spaces are automatically quoted. Multiple files are inserted as a space-separated list. A visual overlay appears when files are dragged over the terminal area.
Copy, Paste, and Select
Section titled “Copy, Paste, and Select”Select text in the terminal to copy it. Copying is routed through the main process, so it works reliably regardless of window focus, and soft-wrapped lines are rejoined so long paths and commands copy cleanly. On all platforms, you can also right-click in the terminal to paste from the clipboard. TUI agents that emit OSC 52 clipboard sequences (for example, copying a mouse selection inside Claude Code’s TUI) can set your system clipboard directly; for safety, Kangentic honors these writes but never lets a TUI read your clipboard back.
Ctrl+V / Cmd+V pastes clipboard text directly. If the clipboard holds an image instead - a screenshot, say - Kangentic saves it to a temporary file and inserts an agent-readable reference to it, since most CLIs do not recognize a bare file path as an image. Claude Code receives an explicit “Read this image: …” instruction pointing at the saved file (more reliable than the CLI’s own clipboard reader, which can silently miss a Windows Snipping Tool image); other agents receive the file path. Paths are quoted for the active shell.
The saved image gets the same 2000 px long-edge cap as a pasted attachment, which the terminal path previously skipped entirely. The temp directory is also pruned on each paste: files older than 24 hours go, and only the 40 most recent are kept regardless of age. Nothing had ever deleted from it before, so it grew for the life of the install. Pruning is best-effort and runs on the paste path, so a file another process is holding open is simply retried on the next paste rather than turning into a failed paste.
Copyable Output Blocks
Section titled “Copyable Output Blocks”Per-message and per-tool-output copy buttons live in the read-only conversation viewer - opened from a task detail window’s View conversation pill or a Conversation Memory search hit: hover a turn to reveal a copy button that grabs that block’s clean content. In the live terminal, use plain selection copy (above).
Voice Dictation
Section titled “Voice Dictation”Kangentic can transcribe speech into the terminal input with local push-to-talk voice-to-text. Enable it in Settings > Dictation, then hold the push-to-talk key (bound under Hotkeys) and speak; on release the transcription is inserted and, by default, submitted to the agent. Transcription runs on-device (a streaming preview model plus a more accurate refinement pass), with punctuation, language, and a trailing-capture buffer all configurable, and an optional cloud backend for the final pass.
A terminal is one of several destinations. Since v0.36.0 a focused text field anywhere in the app outranks every terminal, so dictation also fills a task title, a search box, or a field on a page loaded in the Browser pane. See Where the Text Goes for the full resolution order, and Dictation for the feature.
Terminal Colors
Section titled “Terminal Colors”The Terminal settings tab (Settings > Terminal) styles every terminal surface at once - the bottom panel, the task-detail terminal, and the Command Terminal window. These are global, machine-level cosmetics, not per-project.
Colors
Section titled “Colors”Set the terminal background, foreground, and cursor color with individual color swatches. Any slot you leave alone falls back to the built-in default: a near-black #0c0c0c background with #e4e4e7 foreground and cursor. Reset to default clears every customization at once.
Presets
Section titled “Presets”A preset grid seeds the swatches in one click. The built-in default comes first, followed by a theme-match preset that mirrors your current app theme (skipped when it would just duplicate the default), then a set of curated schemes. Picking a preset fills the swatches, which you can then fine-tune.
ANSI palette
Section titled “ANSI palette”The 16-color ANSI palette agents use for colored output (git diff, ls --color, and TUI chrome) is a fixed built-in based on Windows Terminal’s Campbell scheme. It is not individually editable - only background, foreground, and cursor are user-set - so colored CLI output stays legible against whatever background you choose.
Font Family is a system-font picker: start typing and choose from the fonts installed on your machine via an autocomplete field. Font Size and Cursor Style (block, underline, or bar) sit alongside it, and a Word delete on Backspace toggle makes plain Backspace delete the previous whole word. Like colors, these apply to every terminal surface.
Context Bar
Section titled “Context Bar”An info strip sits beneath the terminal (and inside the task detail dialog) showing live session telemetry:
- Shell and agent version the session was launched with
- Elapsed time - a ticking wall-clock timer since the session started
- Model, session cost, and token usage (input + output)
- Tool calls - a live count of completed tool calls. Click the pill to expand a per-tool breakdown.
- Context window fraction (e.g.
28k / 200k) with a progress bar. The tooltip breaks this down into cache vs. conversation tokens. - Rate-limit bars (Claude only) - two bars show your current 5-hour session window and weekly plan-usage quota, with a reset-time hint on hover. These only appear when Claude reports quota usage in its
status.json.
Most pills are individually toggleable under Settings -> Context Bar or the contextBar.* keys - see Configuration Reference. The model and effort pills always show when the adapter reports them and double as click-targets for the per-task model/effort picker, so they have no show/hide toggles.
Model Picker
Section titled “Model Picker”The model dropdown (in the context bar picker and in per-task and per-column override dialogs) is fed by two sources: the models the agent CLI advertises, plus a persistent cache of every model ID Kangentic has seen you actually use. New models are discovered automatically - switch to one via the CLI’s /model command and it appears in the dropdowns from then on, surviving restarts, with no app update needed.
To keep the list readable, near-duplicate IDs are grouped and given friendly, humanized labels. Each base model gets one row; a 1M chip on the row selects its [1m] long-context variant; and a small context-window badge (like 200K or 1M) shows the model’s context size, learned from real usage rather than hardcoded. Whole superseded model generations and dated snapshot builds (like claude-haiku-4-5-20251001) collapse into an Older versions section that auto-expands when your search only matches one of them. Opening the dropdown also rescans for newly installed models, so a model you just gained access to shows up without a restart. Every exact model string stays selectable - grouping is display-only and the chosen ID is passed verbatim at spawn time.
Terminal Preview on Cards
Section titled “Terminal Preview on Cards”Task cards can show a small live preview of their terminal output directly on the board. This lets you glance at agent progress without opening a terminal tab or the detail dialog.
Terminal preview is off by default. Set terminal.showPreview to true in the config file to enable it.
Terminal and Session State
Section titled “Terminal and Session State”The terminal state is tied to the agent session:
- Running sessions - Terminal is live, showing real-time output
- Suspended sessions - Terminal shows the last output before suspension. When resumed, new output continues from where it left off.
- Completed sessions - Terminal is read-only, showing the full session history
Keyboard Shortcuts
Section titled “Keyboard Shortcuts”Standard terminal keyboard shortcuts work within Kangentic’s terminal:
| Shortcut | Action |
|---|---|
| Ctrl+C | Send interrupt to the agent process (Ctrl on every platform) |
| Ctrl+C / Cmd+C (also Ctrl+Shift+C / Cmd+Shift+C) | Copy selected text - on Windows and Linux, plain Ctrl+C copies only while text is selected, so Ctrl+Shift+C always copies |
| Ctrl+V / Cmd+V (also Ctrl+Shift+V / Cmd+Shift+V) | Paste from clipboard |
| Right-click | Paste from clipboard |
Next steps
Section titled “Next steps”Next: Activity Detection - the activity state shown next to each terminal.
See also:
- Notifications - desktop alerts when terminals go idle
- Agent Monitor - every project’s sessions in one surface
- Session Persistence - how terminal scrollback survives restarts
Kangentic is free and open source. A star helps other people find it.
Star on GitHub