vibeaudio 0.20.1 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -425,6 +425,36 @@ Installing the Claude Code hooks also adds a `/vibe` command (`~/.claude/command
|
|
|
425
425
|
|
|
426
426
|
It asks Claude to run the matching `vibe` command, so Claude Code will ask permission for that command the first time. If you already have your own `vibe.md` there, VibeAudio leaves it alone and says so; `--uninstall-hooks` removes only its own.
|
|
427
427
|
|
|
428
|
+
### `/vibeaudio`: instant controls and a pane (Claude Code mod)
|
|
429
|
+
|
|
430
|
+
`/vibe` is a prompt, so Claude has to read it, run a command and answer: it costs a turn and a few tokens, and it waits for the current turn to end. The optional **VibeAudio mod** runs inside Claude Code instead, so `/vibeaudio mute` takes effect at once, even while Claude is working, and costs no tokens.
|
|
431
|
+
|
|
432
|
+
```text
|
|
433
|
+
claude plugin marketplace add kiril6/vibeaudio
|
|
434
|
+
claude plugin install vibeaudio-mod@vibeaudio
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
Then `/reload-plugins` or a new session; `/plugin` shows `1 mod active`.
|
|
438
|
+
|
|
439
|
+
```text
|
|
440
|
+
/vibeaudio open the pane: mute, music, genre, volume, speech, banners, test signal
|
|
441
|
+
/vibeaudio mute 30 silence for 30 minutes (unmute ends it)
|
|
442
|
+
/vibeaudio genre jazz also: volume <n>, music on|off, speak off|auto|always, notify on|off, stop
|
|
443
|
+
/vibeaudio genre zen here genre, volume and music also take "here": save for this project only
|
|
444
|
+
/vibeaudio card make your week card; the pane shows it in terminals that draw images
|
|
445
|
+
/vibeaudio strip on an always-visible line above the prompt (off by default; strip off removes it)
|
|
446
|
+
/vibeaudio doctor the setup check in a pane, each problem with its fix (vibe --doctor)
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
While you are muted, a line above the prompt says how many minutes are left, so a forgotten mute does not look like a broken tool. Nothing else is shown unless you turn the strip on.
|
|
450
|
+
|
|
451
|
+
The optional **strip** (`/vibeaudio strip on`, remembered across sessions) keeps one line above the prompt: the genre and volume, **Mute** and **Controls** buttons, and what your other agents are doing (`api waiting, web working`, in yellow when one needs you). It runs `vibe --state` every 5 seconds while it is on, and not at all while it is off. Tab to it with Ctrl+X then Tab.
|
|
452
|
+
|
|
453
|
+
- **Per project.** The pane's **Saving** button switches genre, volume and music between everywhere and this project, and the pane notes when this folder has its own settings (`vibe --genre zen --here`, found from a subfolder the way the CLI does). There is no way to remove a project's settings yet, in the mod or the CLI.
|
|
454
|
+
- **It changes nothing itself.** Every action runs the `vibe` command with a fixed argument list (no shell), so settings stay in `~/.vibeaudio/config.json` and the pane cannot disagree with the CLI. The one thing it keeps for itself is whether the strip is on, in Claude Code's own store for the mod. It needs `vibe` on your `PATH` (`npm i -g vibeaudio`) and **Claude Code 2.1.287 or later** (Desktop app 2.1.286). It draws in the terminal and the Desktop app; in the VS Code panel and `claude -p` the same commands answer in text. It makes no network request.
|
|
455
|
+
- **A mod is code, not configuration.** It runs inside Claude Code with your permissions and is not sandboxed, which is why `--install-hooks` never installs it for you. Read it first: it is [`mods/vibe/hooks/register.js`](mods/vibe/hooks/register.js), and `claude plugin validate mods/vibe` lists every call it makes (it reads two files in `~/.vibeaudio/`, runs `vibe`, and draws).
|
|
456
|
+
- **`/vibe` stays.** It works on every Claude Code version and surface; the mod is the faster path where it loads. Remove the mod with `claude plugin uninstall vibeaudio-mod@vibeaudio`.
|
|
457
|
+
|
|
428
458
|
### Changing the sound later
|
|
429
459
|
|
|
430
460
|
One command, and it reaches everything:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vibeaudio",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"description": "Procedural focus music while your AI coding tools (Claude Code, Codex, Cursor, Grok, Gemini, Copilot) think — a different arrangement per project.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"vibeaudio": "bin/vibeaudio.js",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "node test/test-synth.js",
|
|
12
12
|
"start": "node bin/vibeaudio.js",
|
|
13
|
-
"version": "node -e \"const fs=require('fs'),v=require('./package.json').version;for(const f of ['.claude-plugin/plugin.json','.codex-plugin/plugin.json']){const j=JSON.parse(fs.readFileSync(f,'utf8'));j.version=v;fs.writeFileSync(f,JSON.stringify(j,null,2)+'\\n')}\" && git add .claude-plugin/plugin.json .codex-plugin/plugin.json"
|
|
13
|
+
"version": "node -e \"const fs=require('fs'),v=require('./package.json').version;for(const f of ['.claude-plugin/plugin.json','.codex-plugin/plugin.json','mods/vibe/.claude-plugin/plugin.json']){const j=JSON.parse(fs.readFileSync(f,'utf8'));j.version=v;fs.writeFileSync(f,JSON.stringify(j,null,2)+'\\n')}\" && git add .claude-plugin/plugin.json .codex-plugin/plugin.json mods/vibe/.claude-plugin/plugin.json"
|
|
14
14
|
},
|
|
15
15
|
"publishConfig": {
|
|
16
16
|
"registry": "https://registry.npmjs.org/",
|