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.13.tar.gz (31.0 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.13-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vibemusic-0.1.13.tar.gz
  • Upload date:
  • Size: 31.0 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.13.tar.gz
Algorithm Hash digest
SHA256 deea49ec75360df002a2f692441168614eda47a7f0e0aec3c8ee94dc42162e8d
MD5 7f4a3da8f05a45be00c91706bf3f334a
BLAKE2b-256 5f603de97d066ac532bfb1fbd623d0e21acbdc06bca31298584de44c15a8d464

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vibemusic-0.1.13-py3-none-any.whl
  • Upload date:
  • Size: 30.1 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.13-py3-none-any.whl
Algorithm Hash digest
SHA256 2232a18ace603bb81801750f87ce7589ce498fcceb25955cc8916f795add49fc
MD5 894834449f7d8146c5939e258304fbc1
BLAKE2b-256 891586e37286e409823fb41449f7b33d479f701b16c12f516650192273d898bd

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