← birdybeep.com

OpenCode

Install the BirdyBeep plugin to receive notifications when OpenCode needs approval, goes idle, finishes, or fails. Restart OpenCode once after installation.

  • ~2 min setup
  • restart once
  • open source

Quick install

If this machine is already paired, one command configures OpenCode:

birdybeep agent install opencode

Restart once

OpenCode loads plugins only at startup, so the integration isn't live until you restart OpenCode once after install. Until then the app shows this integration as needs restart; after restart, OpenCode sessions on this machine are tracked automatically.

What gets written

Install adds one BirdyBeep-managed entry to the plugin array in ~/.config/opencode/opencode.json (your existing config is preserved):

~/.config/opencode/opencode.json
{
  "plugin": ["@birdybeep/opencode"]
}

OpenCode installs the package and loads its plugin export. The plugin reads your machine token from the secure store at event time and does not write it here.

Events you'll get

opencode eventbeep typeexample push
session start session_started silent — the session appears in the app
permission approval_required opencode needs your approval
idle agent_idle opencode is waiting
error agent_failed opencode hit an error
tool / finish agent_completed opencode finished

With Private Mode on (free for everyone), the push drops repo, branch, path, and command.

Test it

Send a real test beep to confirm the integration end to end:

birdybeep test
# → beep sent. check your phone.

If the test beep does not arrive, run birdybeep doctor. It checks pairing, plugin loading, and delivery.

Security note

security note

BirdyBeep reads the machine token from your OS keychain or from ~/.config/birdybeep/ with restricted permissions. It does not write the token to repositories or coding-agent configuration files. You can revoke or rotate it in the app. BirdyBeep does not store notification bodies and hashes or redacts absolute paths. The adapter source is MIT-licensed on GitHub.