跳到正文
GitHub·· 7 天前AI 评分62

Sensus 发布全屏 TUI:左侧真实 shell,右侧 AI 智能体侧栏

zbejas/sensus

AI 导读

Sensus 是一个全屏 TUI,左侧窗格为每个标签页提供原生 PTY 的真实交互 shell,右侧是 AI 智能体聊天侧栏。智能体可读取 cwd、shell、近期输出和 git 状态作为上下文,默认在隐藏 shell 中执行调查,也可按请求向可见窗格输入内容,但 Enter 始终需要确认。

正文

sensus: a terminal you live in

A fullscreen TUI that hosts a real, interactive shell in a large left pane with an AI agent chat sidebar on the right. The agent sees your terminal, investigates in a hidden shell, and can type into your visible pane on request.

Platform: Linux | macOS Runtime: Bun >= 1.4.2 Docs Website


sensus: a terminal pane with the agent chat sidebar

Topbar layout

sensus with the tabs on top, on the disk session

Install (Linux & macOS):

curl -fsSL https://sensus.sh/install | bash

All install options ↓

Why Sensus?

Sensus puts the agent inside the terminal you already use:

  • A real shell. The left pane is one native PTY per tab, rendered by OpenTUI's embedded Ghostty VT. vim, htop, colors, mouse, and scrollback behave like a real terminal.
  • The agent sees your terminal. cwd, shell, recent output, and git status are context. It investigates in a hidden shell without touching your screen, and can type into your visible pane on request.
  • Approvals by default. Every read, command, write, and MCP call shows an inline card (y/n/a) unless you saved an allow rule. The agent can type into your pane, but Enter is always confirmed.
  • Your model, your endpoint. OpenAI-compatible (the default), OpenAI Responses, Anthropic, or Google Gemini. Your config, sessions, and memory stay on your machine.
  • It remembers. Plain-markdown memory and on-demand skills, plus searchable session transcripts that survive restarts.

The 60-second tour

  • The left pane is your shell; type in it as usual. Shift+Tab moves focus to the chat.
  • Ask the agent for something and answer the approval cards with y / n / a.
  • The agent works in a hidden shell by default. Say "run it in my terminal" and it types into the visible pane instead.
  • Ctrl+T opens another tab (another shell and another chat). Ctrl+W closes it.
  • Quitting (or Ctrl+A d) detaches: the local daemon keeps your shells and any running agent turn alive, ready to re-attach on the next boot. sensus kill is the kill switch.

Install

curl -fsSL https://sensus.sh/install | bash
sensus   # first run opens the guided setup inside sensus

The installer detects your platform, verifies checksums, installs to ~/.local/bin, warns if that is not on your PATH, and scaffolds a starter config without overwriting an existing one. It is safe to re-run. Update an installed copy in place with sensus update (--check only reports; sensus upgrade is the alias). Sensus needs Linux or macOS on x86_64/aarch64 and works over SSH; Bun is only needed to build from source.

System-wide (-g), pinned releases, updates, and building from source: Install and Build from source.

Documentation

The manual lives at sensus.sh/docs.

Development

git clone https://github.com/zbejas/sensus.git sensus && cd sensus
bun install
bun run dev          # run from source (interactive)
bun run typecheck    # tsc --noEmit, must pass
bun run test:unit    # unit suite (~15s), the day-to-day loop
bun run test:smoke   # smoke suite, boots the real app in an outer tmux driver
bun test             # full suite, the final gate
bun run build        # standalone binary -> dist/sensus
./scripts/build-install.sh   # build + install (user by default; -g for global)

Requires Bun ≥ 1.4.2 to run from source and to build the binary. The contributor knowledge base starts at docs/architecture.md; the manual's Build from source page covers the same ground for users.

来源:GitHub · github.com