Agent Arcade is an experimental OpenCode TUI plugin that turns agent wait time into tiny terminal arcade games.
Open it while the agent works, play a quick game, watch tool events fly through the overlay, and approve pending permissions without leaving the game.
- Runner: jump over terminal gremlins while agent events become in-game floaters.
- Tetris: stack pieces while waiting for the agent to finish.
The overlay includes a native game selector, so /agent-arcade and ctrl+shift+g can open a game or close the active overlay.
Add the plugin to your OpenCode TUI config at .opencode/tui.json:
{
"$schema": "https://opencode.ai/tui.json",
"plugin": ["opencode-agent-arcade"]
}Then restart OpenCode. TUI plugins are loaded when OpenCode starts.
Optional auto-start opens the last selected game when an agent becomes busy:
{
"$schema": "https://opencode.ai/tui.json",
"plugin": [["opencode-agent-arcade", { "autoStart": true }]]
}You can also choose a specific auto-start game or randomize it:
{
"$schema": "https://opencode.ai/tui.json",
"plugin": [["opencode-agent-arcade", { "autoStart": true, "autoStartGame": "random" }]]
}autoStartGame accepts last, runner, tetris, or random.
/agent-arcade: open the game selector, or close the active game overlay./agent-arcade-auto: toggle auto-start and persist it locally.ctrl+shift+g: open the game selector, or close the active game overlay.- Game selector: use arrows to navigate,
enterto select, andescto close.
Runner controls:
space,up, ork: jump.r: reset after game over.m: return to the game selector.qoresc: quit the overlay.a: approve the currently pending OpenCode permission once.
Tetris controls:
leftorh: move left.rightorl: move right.downorj: soft drop.up,k, orspace: rotate.c: hold the current piece.d: hard drop.p: pause or resume.r: reset.m: return to the game selector.qoresc: quit.a: approve the currently pending OpenCode permission once.
The a binding only replies to an active OpenCode permission prompt with once. Review what the agent is asking for before approving.
This repo uses Bun and publishes the TUI plugin source directly.
bun install
bun run typecheckFor local OpenCode usage from this repo, .opencode/tui.json points at packages/opencode-plugin/src/tui.tsx.
This is an alpha plugin. It is ready for people to try, but expect rough edges while OpenCode's TUI plugin surface keeps evolving.
