Ambient audio soundscape feedback for terminal output - an opus for your terminals, claude code by default
Project description
♪ ♫ ♪
┌─────────┐
│ ╭─────╮ │ ♩
│ │ ▓▓▓ │ │
│ │ ▓▓▓ │ │ ♬ ┈┈┈╮
│ ╰─────╯ │ ♪ │
│ claude │ ♫ │
└────┬────┘ ♩ ≋≋≋
══════╧══════ ≋≋≋≋≋
♪ audible ♫ ≋≋≋
🎵 claudible
An opus for your terminals.
Possibly the most annoying Claude utility ever made but here it is anyway.
Ambient audio soundscape feedback for terminal output. It really shines when used with a lot of busy Claude Code terminals running at the same time.
🎼 The Idea
Imagine you are working in a factory. Each Claude Code session is a machine that must be attended to. When it's working, you hear it — crystalline sparkles as text flows, soft chimes when tasks complete. When everything goes quiet, you know something needs your attention.
🎶 Installation
# Recommended (handles PATH automatically)
brew install pipx && pipx ensurepath # macOS
# or: pip install --user pipx && pipx ensurepath
pipx install claudible
# Or with pip
pip install claudible
claudiblecommand not found? If you usedpip install --user, the script directory may not be on your PATH. Usepython3 -m claudibleinstead, or switch topipx.
Prerequisites: Most platforms need no extra dependencies —
pip installbundles everything. On Linux ARM / source builds, you may need PortAudio:sudo apt install libportaudio2(Debian/Ubuntu) orsudo dnf install portaudio(Fedora). Windows users should use WSL, as wrap mode requires a PTY.
🎹 Usage
# Run claude with audio feedback (default: ambient sound set)
claudible
# Run a different command
claudible "python my_script.py"
# Pipe mode
some-command 2>&1 | claudible --pipe
# Choose a sound character
claudible --character drift
# Use the percussive material sound set
claudible --set material -c bell
# Adjust volume
claudible --volume 0.3
# List available characters across all sets
claudible --list-characters
# Demo all sound characters in a set
claudible --demo
claudible --demo --set material
🔇 Reverse Mode
In reverse mode, claudible is silent while output is flowing and plays ambient sound during silence. Useful when you want to know a task is waiting rather than working.
# Ambient grains play when Claude is idle/waiting for you
claudible --reverse
# Combine with a character
claudible --reverse -c shell
🎧 Works With Any CLI
Built for Claude Code, but claudible works with anything that produces terminal output.
# Aider
claudible "aider"
# Watch a dev server
npm run dev 2>&1 | claudible --pipe
# Monitor logs
tail -f /var/log/app.log | claudible --pipe -c droplet
🎻 Sound Sets
Claudible ships with two sound sets. The ambient set (default) produces soft, throbbing textures with rich overtones. The material set has crisp, percussive sounds modelled on physical materials.
Ambient (default) --set ambient
| Character | Description | |
|---|---|---|
drift |
🌊 | Slow undulating low throb, gentle beating pairs |
tide |
🌀 | Oceanic wash, phase interference, wide and enveloping |
breath |
💨 | Soft exhale texture, breathy warmth with filtered noise |
haze |
🌫️ | Dense foggy overtones, warm and thick with close partial clusters |
pulse |
💗 | Gentle rhythmic throbbing from detuned pairs, hypnotic |
glow |
🕯️ | Warm radiant harmonics, rich natural overtone series |
cloud |
☁️ | Diffuse and soft, massive reverb space, floating |
murmur |
🫧 | Low gentle rumble, warm harmonic murmur with subtle throb |
shimmer |
✨ | High ethereal overtones, floating and luminous |
deep |
🎚️ | Sub-bass throb, felt more than heard, very deep and slow |
Material --set material
| Character | Description | |
|---|---|---|
ice |
🧊 | Brittle, very high, fast decay with pitch drop |
glass |
🍷 | Classic wine glass ping |
crystal |
💎 | Pure lead crystal with beating from close partial pairs |
ceramic |
🏺 | Duller muted earthenware tap |
bell |
🔔 | Small metallic bell, classic ratios, long ring |
droplet |
💧 | Water droplet, pitch bend down, liquid |
click |
⌨️ | Sharp mechanical click, keyboard-like |
wood |
🪵 | Hollow wooden tap, warm marimba-like resonance |
stone |
🪨 | Dense slate tap, heavy and earthy |
bamboo |
🎋 | Hollow tube resonance, odd harmonics, breathy and airy |
ember |
🔥 | Warm crackling ember, fire-like with wide pitch scatter |
silk |
🪶 | Soft breathy whisper, delicate airy texture |
shell |
🐚 | Swirly ocean interference, dense phase beating |
moss |
🌿 | Ultra-soft muffled earth, mossy dampness |
🎛️ Options
| Flag | Description |
|---|---|
--pipe |
📥 Read from stdin instead of wrapping |
--set, -s |
🎼 Sound set: ambient (default), material |
--character, -c |
🎵 Sound character within the set |
--volume, -v |
🔊 Volume 0.0–1.0 (default: 0.5) |
--attention, -a |
⏰ Silence alert seconds (default: 30) |
--reverse, -r |
🔄 Reverse mode: sound during silence, quiet during output |
--list-characters |
📋 Show all characters across all sets |
--demo |
🔊 Demo characters in the selected set |
🛠️ Development
Test locally without installing:
cd claudible
# Run wrapping claude (Ctrl+C to stop)
PYTHONPATH=src python3 -m claudible
# Wrap a different command
PYTHONPATH=src python3 -m claudible "ls -la"
# Pipe mode
echo "test" | PYTHONPATH=src python3 -m claudible --pipe -c glass
# List characters
PYTHONPATH=src python3 -m claudible --list-characters
# Demo all characters
PYTHONPATH=src python3 -m claudible --demo
📜 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
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 claudible-0.1.7.tar.gz.
File metadata
- Download URL: claudible-0.1.7.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cadb7de52a0fa519d580a64bda70a5dde87d85d2b38c5acf26e69eb425c28b3f
|
|
| MD5 |
eda2461e61d39a2275aba24cd73b40d0
|
|
| BLAKE2b-256 |
7bddd38bdae17c269a1e55dd92282d4014a21c6943c0363306b5e0df2c91a6df
|
Provenance
The following attestation bundles were made for claudible-0.1.7.tar.gz:
Publisher:
publish.yml on qwertykeith/claudible
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
claudible-0.1.7.tar.gz -
Subject digest:
cadb7de52a0fa519d580a64bda70a5dde87d85d2b38c5acf26e69eb425c28b3f - Sigstore transparency entry: 919065869
- Sigstore integration time:
-
Permalink:
qwertykeith/claudible@80b4ecf8b28da42def6542cecdb5c9b8668a5f0e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/qwertykeith
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@80b4ecf8b28da42def6542cecdb5c9b8668a5f0e -
Trigger Event:
push
-
Statement type:
File details
Details for the file claudible-0.1.7-py3-none-any.whl.
File metadata
- Download URL: claudible-0.1.7-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f18c8174290b96478c29c74c68ae92652c93996dbb48b5c10b0568291e14fd78
|
|
| MD5 |
9e66f60160706b8fee7bced0bc8259c6
|
|
| BLAKE2b-256 |
62a4ac8f9c4568ed1f55ae24020727407c81f6b045503f771459b7a08922bb32
|
Provenance
The following attestation bundles were made for claudible-0.1.7-py3-none-any.whl:
Publisher:
publish.yml on qwertykeith/claudible
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
claudible-0.1.7-py3-none-any.whl -
Subject digest:
f18c8174290b96478c29c74c68ae92652c93996dbb48b5c10b0568291e14fd78 - Sigstore transparency entry: 919065872
- Sigstore integration time:
-
Permalink:
qwertykeith/claudible@80b4ecf8b28da42def6542cecdb5c9b8668a5f0e -
Branch / Tag:
refs/heads/main - Owner: https://github.com/qwertykeith
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@80b4ecf8b28da42def6542cecdb5c9b8668a5f0e -
Trigger Event:
push
-
Statement type: