Scenario Operations Tool — tmux-backed monitoring pane launcher
Project description
ops_eyes
ops_eyes is a terminal-based scenario operations tool that launches and manages named sets of monitoring panes inside a tmux session. An interactive curses selector lets you choose a scenario; each scenario brings up a pre-configured set of panes running whatever commands you need — htop, journalctl -f, watch, custom scripts, or anything else.
Features
- Curses-based scenario selector (keyboard + mouse)
- Per-scenario pane layout, commands, and descriptions stored in YAML
- Live pane management inside tmux: add (F2), delete (F3), edit name/command (F4), zoom (F5), swap order (F6)
- Layout cycling (F1): tiled, even-horizontal, even-vertical, main-horizontal, main-vertical
- Geometry persistence: pane sizes and order saved back to YAML on exit
- Scenario management in selector: new (N), copy (C), edit metadata (E), delete (D), reorder (←/→), save (S), reload (R)
- First-run prompt to copy the bundled example config into
~/.ops_eyes.yaml
Requirements
- Python 3.8 or later
- tmux 2.1 or later — must be installed separately:
sudo apt install tmux # Debian / Ubuntu sudo dnf install tmux # Fedora / RHEL brew install tmux # macOS
Installation
pip install ops_eyes
The ops_eyes command will be available immediately after install.
Quick Start
# Launch the interactive selector
ops_eyes
# Jump directly to a named scenario
ops_eyes my-scenario
# List configured scenarios
ops_eyes --list
# Use a custom config file
ops_eyes --config /path/to/my.yaml
Configuration
On first run, ops_eyes will offer to copy the bundled example config to ~/.ops_eyes.yaml. You can also create or edit ~/.ops_eyes.yaml directly.
Config format
scenarios:
my-servers:
description: Production servers overview
layout: tiled
panes:
- name: web-01
command: ssh web-01 'htop'
- name: db-01
command: ssh db-01 'htop'
- name: logs
command: ssh web-01 'journalctl -f'
- name: terminal
command: '' # interactive shell
Top-level keys inside a scenario:
| Key | Default | Description |
|---|---|---|
description |
"" |
Human-readable description shown in the selector |
layout |
tiled |
Initial tmux layout: tiled, even-horizontal, even-vertical, main-horizontal, main-vertical |
panes |
[] |
Ordered list of pane definitions |
Pane keys:
| Key | Description |
|---|---|
name |
Label shown in the pane border |
command |
Shell command to run; empty string for an interactive shell |
Keyboard reference
Selector (top level)
| Key | Action |
|---|---|
| ↑ / ↓, j / k | Navigate scenario list |
| ← / → | Move selected scenario up / down |
| Enter / double-click | Launch scenario |
| N | New scenario |
| C | Copy selected scenario |
| E | Edit scenario name / description |
| D | Delete scenario |
| S | Save config (opens file browser) |
| R | Reload config (opens file browser) |
| Q / F10 | Quit |
Inside a scenario (tmux)
| Key | Action |
|---|---|
| F1 | Cycle layout |
| F2 | Add new terminal pane |
| F3 | Delete focused pane |
| F4 | Edit focused pane name / command |
| F5 | Zoom / unzoom focused pane |
| F6 | Swap focused pane with the next |
| F8 / F9 | Previous / next pane |
| F12 | Exit scenario → return to selector |
License
Apache 2.0 — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ops_eyes-0.1.2.tar.gz.
File metadata
- Download URL: ops_eyes-0.1.2.tar.gz
- Upload date:
- Size: 33.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6eeb838558d21f4c9a1381b4fa331508d273918e523ec14641bf2c3dc9b0c9c2
|
|
| MD5 |
3e839ab701823b8096b4e59f1174c7bd
|
|
| BLAKE2b-256 |
7b96854420f0e1fc758e08c19145db7e643cf8336fa82e31364b9ade26b1826f
|
File details
Details for the file ops_eyes-0.1.2-py3-none-any.whl.
File metadata
- Download URL: ops_eyes-0.1.2-py3-none-any.whl
- Upload date:
- Size: 32.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
679a04f56aa839a0ad34c788f99ffd694dc416fcc3cf60cdf52b2e86d99cefdb
|
|
| MD5 |
e3cf28769650fd2ca635f52d380a6e65
|
|
| BLAKE2b-256 |
4fcc8952f5d20d4995d63b6b227ec6958769d7f58c7ba25f862478ab064d9193
|