Skip to main content

Vibe coding terminal capture toolkit

Project description

Vybe

  ____   ____       ___
  \   \ /   /___ __ | |__   ____
   \   Y   /(   |  || __ \ / __ \
    \     /  \___  || \_\ \  ___/
     \___/   (_____||_____/\____)

Vybe is a vibe coding terminal toolkit: run a command, capture its output, and instantly reuse it — copy to clipboard, wrap in Markdown, search errors, jump to the last failure, or grab tmux scrollback.

Why Vybe?

Without Vybe:

  • Run command
  • Scroll/copy terminal output manually
  • Redact secrets by hand
  • Reformat for LLM/issue tracker
  • Repeat after each retry

With Vybe:

  • vybe r ... run + capture
  • vybe errors isolate failures
  • vybe sc --redact copy safe output fast
  • vybe prompt debug --redact generate LLM-ready prompt
  • vybe rr retry quickly

Highlights

  • vybe run ... streams output live and saves it.
  • vybe retry reruns your last vybe run command.
  • vybe snipclip copies output only (perfect for issues/ChatGPT).
  • vybe snipclip --redact copies output with common secrets masked.
  • vybe errors extracts likely error blocks from latest capture.
  • vybe export --last --json emits machine-readable context for agents.
  • vybe run --tag <name> groups captures by task/session.
  • vybe diff shows what changed between your latest two captures.
  • vybe share builds a Markdown-ready report for issues/LLM chats.
  • vybe prompt generates LLM-ready prompts for debug/review/explain workflows.
  • vybe doctor prints a fast environment snapshot for debugging setup issues.
  • vybe fail jumps back to the most recent failing run.
  • Works great on Kali (zsh) and supports tmux scrollback capture.

Demo

Quick terminal demo recording (asciinema):

asciinema rec docs/demo.cast
# run a loop like:
# vybe r pytest -q
# vybe errors
# vybe prompt debug --redact
# vybe rr

You can convert to GIF with agg or share the cast directly.

Install (dev / from source)

python -m venv .venv
source .venv/bin/activate
pip install -e .
vybe --help
python -m vybe --help

Install (recommended on Kali/Ubuntu)

Use pipx to avoid PEP 668 "externally-managed-environment" issues:

sudo apt install pipx
pipx ensurepath
pipx install vybe

From a local checkout:

cd ~/dev/Vybe
pipx install . --force

Check install/update guidance:

vybe self-check
vybe self-check --json

Publishing (maintainers)

Vybe publishes to PyPI from GitHub tags via Trusted Publishing.

One-time setup in PyPI project settings:

  • Add a Trusted Publisher for repo homer1013/Vybe
  • Workflow file: .github/workflows/publish.yml
  • Environment: pypi

Release flow:

git tag vX.Y.Z
git push origin vX.Y.Z

GitHub Actions will build and publish automatically.

Usage

vybe run pytest -q
vybe retry
vybe r pytest -q
vybe run --tag auth pytest -q
vybe rr --cwd
vybe fail
vybe s
vybe sc
vybe sc --redact
vybe ll 5
vybe ls --tag auth
vybe snipclip
vybe errors
vybe export --last --json --snip
vybe diff
vybe share --redact --errors
vybe share --clip
vybe share --json
vybe share --json --errors --redact
vybe prompt debug --redact
vybe prompt review
vybe prompt explain
vybe doctor
vybe self-check
vybe cfg
vybe init
vybe completion install zsh
vybe md bash
vybe grep "Traceback|ERROR" --i

Speed aliases

  • vybe r ... is the same as vybe run ...
  • vybe rr is the same as vybe retry
  • vybe rr --cwd retries in the original working directory
  • vybe rr --tag <name> retries and assigns a tag
  • vybe l is the same as vybe last
  • vybe s is the same as vybe snip
  • vybe sc is the same as vybe snipclip
  • vybe o is the same as vybe open
  • vybe ll [N] is the same as vybe ls [N]
  • Full commands remain the canonical docs and are recommended in scripts/automation

Quick recipes

Fast debug loop:

vybe r pytest -q
vybe errors
vybe share --redact --errors --clip
vybe rr

Tagged task loop:

vybe run --tag auth pytest -q
vybe rr --tag auth
vybe ls --tag auth
vybe diff --tag auth

Agent handoff loop:

vybe export --last --json --snip --redact
vybe share --json --errors --redact
vybe prompt debug --redact
vybe doctor --json

LLM-friendly JSON export

Use this to hand structured context to coding agents.

vybe export --last --json
vybe export --last --json --snip
vybe export --last --json --snip --redact

Tagging and diffs

Use tags to keep one debugging thread grouped:

vybe run --tag auth pytest -q
vybe rr --tag auth
vybe ls --tag auth
vybe tags

See exactly what changed between your latest two captures:

vybe diff
vybe diff --tag auth
vybe diff --full

Share bundles and doctor

Generate a ready-to-paste Markdown bundle:

vybe share
vybe share --redact --errors
vybe share --clip
vybe share --json
vybe share --json --errors --redact
vybe prompt debug --redact
vybe prompt review --redact
vybe prompt explain --redact

Get quick environment diagnostics:

vybe doctor
vybe doctor --json
vybe self-check
vybe self-check --json
vybe cfg --json
vybe init

CLI stability

Vybe keeps a stable v1 CLI contract for humans, scripts, and agents:

  • See docs/CLI_CONTRACT.md
  • Machine-readable JSON outputs are additive: existing keys remain, new keys may be added

Examples

See examples/ for real workflows:

  • examples/pytest-debug-loop.md
  • examples/frontend-build-failure.md
  • examples/serial-monitor-nonutf8.md

Agent quickstart (human + LLM loop)

Use this when pairing with ChatGPT/Codex/Claude during debugging.

  1. Run and capture
vybe r pytest -q
  1. Copy output-only to clipboard for your LLM
vybe sc
  1. Apply changes, then retry quickly
vybe rr
  1. If you moved directories, retry in the original working dir
vybe rr --cwd
  1. Check recent attempts fast
vybe ll 8

Failure-first loop:

vybe fail
vybe s
vybe sc

Tip for agents and scripts:

  • Prefer full commands in automation (vybe run, vybe retry) for clarity.
  • Use aliases interactively for speed.

Command reference

Run:

vybe --help

Clipboard support

Vybe auto-detects clipboard tools:

  • X11: xclip or xsel
  • Wayland: wl-copy

Shell completion install

Install directly from the CLI:

vybe completion install zsh
vybe completion install bash
vybe completion install fish

tmux scrollback capture

vybe pane 4000
vybe open

Environment variables

  • VYBE_DIR log dir (default ~/.cache/vybe)
  • VYBE_STATE state file (default ~/.config/vybe/state.json)
  • VYBE_INDEX index file (default ~/.cache/vybe/index.jsonl)
  • VYBE_CONFIG config file (default ~/.config/vybe/config.json)
  • VYBE_MAX_INDEX max index entries (default 2000)

Shell completions

See completions/:

  • bash: completions/vybe.bash
  • zsh: completions/_vybe
  • fish: completions/vybe.fish

Use vybe completion install <shell> instead of copying files manually.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vybe-1.0.0.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vybe-1.0.0-py3-none-any.whl (23.5 kB view details)

Uploaded Python 3

File details

Details for the file vybe-1.0.0.tar.gz.

File metadata

  • Download URL: vybe-1.0.0.tar.gz
  • Upload date:
  • Size: 32.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vybe-1.0.0.tar.gz
Algorithm Hash digest
SHA256 bfa524bb58b3b34eb80984d07133bb9db7b1ffc52f9d932dab16c8572291db5b
MD5 c12046db731203586cccee63443095de
BLAKE2b-256 93e842684a4c9e31d6b9d4ca015ef78b4cf2ce3bdc6b54826fed3ee9e11eba6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vybe-1.0.0.tar.gz:

Publisher: publish.yml on homer1013/Vybe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vybe-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: vybe-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 23.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vybe-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8360bc7a26be1a3e235e549246b54e94c210eff9ae1956db410ca224247ea47d
MD5 73e0394a3401bbd5bd5f7794b741f60d
BLAKE2b-256 d4d36f1ed87b088b6a27300785cd74bd04f2a2709170717271f9da7688327ab8

See more details on using hashes here.

Provenance

The following attestation bundles were made for vybe-1.0.0-py3-none-any.whl:

Publisher: publish.yml on homer1013/Vybe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page