Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Bhaiyo BehnoNew to Visual Studio Code? Get it now.
Bhaiyo Behno

Bhaiyo Behno

Orthodox Coder

|
1 install
| (0) | Free
Plays voice clips when you run, build, test, commit, or debug in VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Bhaiyo Behno (VS Code Extension)

Voice reaction alerts in VS Code for running code, builds, tests, package installs, git actions, and debugging sessions.


⚠️ Important Legal & Novelty Disclaimer

  1. NO Audio Included: This extension ships with ZERO audio clips. No audio files are downloaded, generated, or distributed with this package.
  2. User-Supplied Clips: Audio clips are strictly user-supplied. Any audio files placed into the extension's audio directory are the sole responsibility of the user.
  3. Unofficial Novelty Extension: This extension is an unofficial novelty project created for developer amusement. It is not affiliated with, sponsored by, or endorsed by the Government of India, the Prime Minister's Office, or any public figure whose speech delivery or parody voice style may be imitated by user-supplied audio.

Features

  • Instant Terminal Awareness: Hooks into terminal shell execution events to detect when you run code (Python, C++, Java, JS/TS, Go, Rust, and more), run builds, execute tests, or install packages.
  • Git Integration: Reacts to terminal and UI-driven git operations (git push, git commit, git pull, git merge, git checkout).
  • Debug Session Tracking: Audio alerts for debug launch, successful completion, or failure exit codes via DAP tracker.
  • Single-Voice Policy: Never plays overlapping clips chaotically; supports skip, interrupt (on failures), and queue policies with cooldown protection.
  • Cross-Platform Native Playback: Zero runtime dependencies. Uses lightweight native OS media players (afplay on macOS, PowerShell MediaPlayer on Windows, paplay/ffplay/mpg123/aplay on Linux).
  • Interactive Control Panel: Webview UI to adjust volume, toggle events, review loaded clips, and preview audio reactions.
  • Quiet Hours & Focus Mode: Configurable quiet hours and window focus checks to keep quiet during meetings or night hours.

Adding Audio Clips

Audio Directory

Audio clips can be placed into either:

  • The default extension folder: media/audio/
  • Or a custom folder specified in VS Code settings: bhaiyoBehno.audioFolder (recommended, so extension updates don't overwrite your clips).

To quickly open the active audio directory in your system file manager, open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) and run: Bhaiyo Behno: Open Audio Folder

Supported Formats

  • .mp3
  • .wav
  • .ogg
  • .m4a

Filename Auto-Mapping

Audio files are automatically mapped by their filename prefix: <eventId>_<anything>.<ext>

For example:

  • run_start_1.mp3
  • run_success_badhai.wav
  • run_fail_mitron.mp3
  • build_start_shuru.ogg
  • test_pass_safalta.mp3
  • git_push_success_victory.m4a

If multiple clips exist for an event, the extension picks randomly and guarantees never to repeat the same clip twice in a row for that event.

Complete Event ID Reference

Event ID Event Label Category Default Enabled Description / Triggers
run_start Code Run Started Run Yes python, node, go run, cargo run, dotnet run, dev servers (npm run dev), executables
run_success Code Run Succeeded Run Yes Code run exited with code 0
run_fail Code Run Failed Run Yes Code run exited with non-zero exit code
build_start Build Started Build Yes tsc, gcc, g++, clang, make, cargo build, mvn package, npm run build
build_success Build Succeeded Build Yes Build completed with exit code 0
build_fail Build Failed Build Yes Build failed with non-zero exit code
test_start Tests Started Test Yes pytest, npm test, jest, vitest, cargo test, go test, mvn test
test_pass Tests Passed Test Yes Test runner completed with exit code 0
test_fail Tests Failed Test Yes Test runner exited with non-zero exit code
install_start Package Install Started Install Yes npm i, pip install, yarn add, cargo add, brew install, apt install
install_done Package Install Finished Install Yes Package installation completed with exit code 0
git_push_start Git Push Started Git Yes Terminal git push initiated
git_push_success Git Push Succeeded Git Yes git push completed successfully (terminal or Source Control sync)
git_push_fail Git Push Failed Git Yes git push failed
git_commit Git Commit Git Yes git commit or Source Control commit created
git_pull Git Pull Git Yes git pull completed successfully
git_merge Git Merge / Rebase Git Yes git merge or git rebase completed successfully
git_checkout Git Checkout / Switch Git Yes git checkout or git switch completed successfully
git_other Other Git Commands Git No Other git subcommands (git status, git diff, etc.)
debug_start Debug Session Started Debug Yes Launching any VS Code debug session
debug_end Debug Session Ended Debug Yes Termination of any VS Code debug session
welcome Welcome on Startup System No Played once on VS Code session launch (when playWelcomeOnStartup is true)
unknown_success Generic Success Fallback System Yes Fallback clip when a specific success clip is missing
unknown_fail Generic Failure Fallback System Yes Fallback clip when a specific failure clip is missing

Optional manifest.json

To define weights or status bar caption toasts, add a manifest.json inside your audio folder:

{
  "run_start": [
    {
      "file": "run_start_1.mp3",
      "caption": "Bhaiyo aur behno, karyakram shuru hota hai!",
      "weight": 2
    }
  ],
  "run_success": [
    {
      "file": "run_success_1.mp3",
      "caption": "Bahut bahut shubhkaamnayein!",
      "weight": 1
    }
  ]
}

Configuration Settings

All settings live under the bhaiyoBehno.* namespace:

Setting Type Default Description
bhaiyoBehno.enabled boolean true Master switch to enable or disable audio playback.
bhaiyoBehno.volume number 70 Playback volume (0 to 100).
bhaiyoBehno.audioFolder string "" Custom directory path where audio clips are stored. Defaults to media/audio/.
bhaiyoBehno.overlapPolicy string "skip" Behavior when an event occurs while audio is playing: "skip", "interrupt", or "queue". (Failures always interrupt by default).
bhaiyoBehno.cooldownMs number 1500 Minimum milliseconds between any two audio playbacks.
bhaiyoBehno.perEventCooldownMs number 4000 Minimum milliseconds between playbacks for the same specific event.
bhaiyoBehno.events object (All on except git_other & welcome) Map of booleans to enable/disable specific Event IDs individually.
bhaiyoBehno.playOnUnknownCommands boolean false Trigger unknown fallback events on unrecognized terminal commands.
bhaiyoBehno.playOnUnknownExit boolean false Trigger fallback events when execution ends with undefined exit code.
bhaiyoBehno.showCaptionToast boolean false Display manifest caption in the status bar for 3 seconds during playback.
bhaiyoBehno.playWelcomeOnStartup boolean false Play welcome audio clip on VS Code startup.
bhaiyoBehno.onlyWhenWindowFocused boolean false Only play audio when the VS Code window is currently focused.
bhaiyoBehno.quietHours object \| null null Silence audio between specified times, e.g. {"start": "23:00", "end": "07:00"}.

Commands

Access via the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) with prefix Bhaiyo Behno::

  • Bhaiyo Behno: Toggle Sound (bhaiyoBehno.toggle): Quickly toggle sound alerts on or off.
  • Bhaiyo Behno: Mute for 30 Minutes (bhaiyoBehno.mute): Temporarily silence alerts with auto-unmute after 30 minutes.
  • Bhaiyo Behno: Test Voice Event... (bhaiyoBehno.testEvent): QuickPick selector to test clips for any Event ID.
  • Bhaiyo Behno: Open Audio Folder (bhaiyoBehno.openAudioFolder): Reveal audio directory in OS file manager.
  • Bhaiyo Behno: Open Control Panel (bhaiyoBehno.openControlPanel): Open webview settings and mapping dashboard.
  • Bhaiyo Behno: Rescan Audio Clips (bhaiyoBehno.rescanClips): Rescan audio directory and print report to Output Channel.
  • Bhaiyo Behno: Stop Playing Audio (bhaiyoBehno.stop): Immediately stop currently playing clip.

Status Bar

A status bar indicator is displayed at the bottom right:

  • $(unmute) Bhaiyo when active.
  • $(mute) Bhaiyo when muted or disabled.
  • $(loading~spin) Bhaiyo while an audio clip is playing.
  • Clicking the status bar item toggles audio on/off. Hovering displays volume and loaded clip counts.

Troubleshooting

1. Terminal Shell Integration

The extension relies on VS Code's terminal shell integration to track command lines and exit codes accurately. Ensure shell integration is enabled in your VS Code settings:

"terminal.integrated.shellIntegration.enabled": true

Supported shells include zsh, bash, fish, and PowerShell 7+. If shell integration is inactive for a terminal, a gentle notice will appear with an "Open Setting" shortcut.

2. Linux Audio Players

On Linux, audio plays natively through installed command-line utilities. Ensure at least one of the following is installed:

  • PulseAudio: sudo apt install pulseaudio-utils (paplay)
  • FFmpeg: sudo apt install ffmpeg (ffplay)
  • mpg123: sudo apt install mpg123 (mpg123)
  • ALSA: sudo apt install alsa-utils (aplay, supports .wav only)

3. Remote Windows (SSH / WSL / Dev Containers)

The extension specifies "extensionKind": ["ui"] in its manifest. This ensures that audio plays locally through your host machine's speakers rather than attempting to play on a headless remote server. Note: In remote windows, VS Code shell execution events are routed through the UI extension host. If your remote environment disables shell integration, terminal events might not fire until shell integration is enabled in that remote profile.


License

Copyright (c) 2026 Aarav Pathak. All Rights Reserved.
Proprietary Software — See the LICENSE file for full terms and conditions. Unauthorized copying, reproduction, distribution, reverse engineering, or commercial use is strictly prohibited.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft