원클릭으로
multiplexing
Native windows/splits/panes (absorb tmux). Load when touching multiplex module, keybinds, or session persistence.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Native windows/splits/panes (absorb tmux). Load when touching multiplex module, keybinds, or session persistence.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
AI layer embeds the Pi SDK. Load when touching AI module, harness integration, providers, MCP decision, or chat UI.
Overall stack and module shape for nyxterm. Load when touching Tauri commands, PTY wiring, frontend↔backend IPC, or xterm rendering.
Conventional Commits, work-unit commits, NO Co-Authored-By. Load before creating any commit.
Project philosophy and decision-making heuristics. Load before scope debates, feature proposals, or refactors.
Engram embedded + MCP fallback. Topic key conventions. Load when touching anything memory-related or starting/closing a session.
Flake structure, Home Manager module, nixGL wrapper. Load when touching flake.nix, packaging, or NixOS integration.
| name | multiplexing |
| description | Native windows/splits/panes (absorb tmux). Load when touching multiplex module, keybinds, or session persistence. |
| triggers | ["tmux","multiplex","split","pane","copy mode","session","Ctrl+Space","workspace"] |
Goal: absorb tmux into the core. Users on this stack today run Ghostty → tmux → shell. We collapse that to nyxterm → shell.
Ctrl+Space. Configurable. (Matches the user's tmux config.)prefix | = vertical, prefix - = horizontal. (Match tmux convention.)Ctrl+Shift+h/j/k/l (no prefix needed, like vim-tmux-navigator).prefix H/J/K/L.prefix z.prefix c.prefix 0..9, prefix n/p.prefix s.prefix x (with confirm).prefix d.prefix [. Vi keys. v = visual, y = yank to system clipboard (via wl-copy or platform equivalent).Critical: NO keybinds may shadow xterm escape sequences (e.g., Ctrl+M is Enter, can't be rebound). Validate at config-load.
Reference: tmux-resurrect + tmux-continuum behavior, reimplemented natively.
Window
└── PaneTree (binary tree)
├── Split (vertical | horizontal, ratio: f32)
│ ├── PaneTree (left/top)
│ └── PaneTree (right/bottom)
└── Leaf (Pane)
├── PtySession id
├── cwd
├── title
└── ...
Leaf panes can be:
The grid logic is content-type agnostic. Only the leaf knows what it is.
State machine:
prefix [ enters copy mode → buffer cursor at last line.h/j/k/l, w/b/e, 0/$, gg/G, /? search.v = char-visual, V = line-visual, Ctrl+v = block-visual.y = yank to system clipboard (wl-clipboard on Wayland, xclip on X11, OSC 52 fallback).q or Esc = exit copy mode.git-status epic), pane index, active count.prefix s picker (fuzzy-filterable).nyxterm/session/<session-id>/layout — pane tree snapshotnyxterm/session/<session-id>/cwd-map — pane → cwdnyxterm/session/<session-id>/last-active — timestampSessions are user-named (prefix S to rename) and survive restarts.