Skip to main content

Vibe Music: adaptive coding atmosphere engine (CLI)

Project description

Vibe Music

Vibe Music is an adaptive coding atmosphere engine for developers.

It runs music in a detached background mpv process and switches the vibe based on what you are doing:

  • Change branches: the vibe can change
  • Hit errors: intensity can increase
  • Deploy: cinematic energy
  • Late night: ambient mode
  • Deep focus: lo-fi mode

You do not manage playlists. You choose a vibe (or let it auto-pick) and keep coding.

What it does

  • Plays in the background: the terminal is never blocked
  • Fast search: uses yt-dlp to find playable YouTube URLs quickly
  • Vibe modes: focus, debug, build, deploy, late-night, hackathon
  • Auto vibe: time-of-day + git branch naming rules
  • Optional git hooks: branch checkout/merge and push can trigger vibe changes
  • Agent-friendly: JSON command discovery + JSON state output

Installation

pip install vibemusic

Requirements

  • mpv
    • Windows: Vibe Music can auto-download a portable mpv.exe if missing
    • macOS: install with brew install mpv
    • Linux: install with your package manager (for example apt install mpv)
  • yt-dlp is installed as a Python dependency of this package

If vibe is not found

If your Python scripts folder is not on PATH, you may need to add it, or run via the Python module entrypoint:

python -m vibe commands

Quick start

Vibe mode

vibe focus
vibe debug
vibe build
vibe deploy --victory
vibe late-night
vibe hackathon

By default, vibe results are filtered to "English-like" titles and queries are biased toward English results. To disable this filtering:

vibe focus --lang any

To target Tamil results:

vibe focus --lang tamil

Auto vibe (time + git branch)

# Polls every 10 seconds and switches when the vibe changes
vibe auto --repo .

# Decide once and exit (useful in scripts)
vibe auto --repo . --once

Branch naming rules used by vibe branch / vibe auto:

  • fix/, bug/, hotfix/ -> debug
  • feature/, feat/ -> build
  • release/, deploy/ -> deploy

React to errors while running a command

Run your tests/build/dev server and switch to a debug vibe when error-like output appears:

vibe watch -- npm test

Git hooks automation (optional)

Install hooks into any git repo:

cd /path/to/your/repo
vibe hooks install

Uninstall:

vibe hooks uninstall

Dev Vibe Card (shareable)

vibe card
vibe card --json

Classic controls

vibe pause
vibe resume
vibe toggle
vibe stop

vibe next
vibe back
vibe replay   # or: vibe 0

vibe queue
vibe clear

Quick flags (single-arg shortcuts):

vibe -n    # next
vibe -b    # back
vibe -q    # queue
vibe -c    # clear
vibe -p    # pause

## Visualizer

You can show a simple ASCII visualizer for the currently playing track:

```bash
vibe visual

## For AI agents

Read [AI_INSTRUCTIONS.md](AI_INSTRUCTIONS.md). The key entry points are:

- `vibe commands` (JSON capability list)
- `vibe agent` (JSON player state)
- `vibe ...` (preferred for developer-state requests)

## Architecture (high level)

- **Client**: the `vibe` CLI parses commands and decides what to play
- **Daemon**: an `mpv` process does the actual playback
- **IPC**: named pipe on Windows; Unix socket on macOS/Linux
- **Local state**: stored under `~/.vibe/` (history, cached vibe results, stats)

## Disclaimer and legal notice

This software is provided for educational and research purposes.

- It is a CLI wrapper around `mpv` and `yt-dlp`
- It does not host or distribute copyrighted media
- Streaming behavior depends on third-party services and their terms

## License

GPL-3.0-or-later. See `LICENSE`.

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

vibemusic-0.1.14.tar.gz (32.1 kB view details)

Uploaded Source

Built Distribution

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

vibemusic-0.1.14-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file vibemusic-0.1.14.tar.gz.

File metadata

  • Download URL: vibemusic-0.1.14.tar.gz
  • Upload date:
  • Size: 32.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for vibemusic-0.1.14.tar.gz
Algorithm Hash digest
SHA256 1bf5f97de3d1c8e334e442ab5c5da9a55d5e74f281ed3963382e3bc0f89c7bc5
MD5 b29c866e80dccbca5f621b4c8a38edc8
BLAKE2b-256 d52ff756360a1f7e268e75d6c67ea60359e251c0289b2a5e11a0d0eb2ed98141

See more details on using hashes here.

File details

Details for the file vibemusic-0.1.14-py3-none-any.whl.

File metadata

  • Download URL: vibemusic-0.1.14-py3-none-any.whl
  • Upload date:
  • Size: 31.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for vibemusic-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 822d656ac083cdd00af5428ae81e1a2c9bdfdfa6fd269485ad0c125ede654ebf
MD5 8c79a90fa1bfc906b417f5f9724a9fcd
BLAKE2b-256 5b99f206bd46371e513a7973102b26ce2e81d26502c7c72b93410d7910dc354f

See more details on using hashes here.

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