Skip to content

Support multiple concurrent permission requests (for multi-agent workflows) #164

@ragu-manjegowda

Description

@ragu-manjegowda

Problem

When using oh-my-opencode or similar plugins that spawn multiple sub-agents in parallel, each agent can request permissions simultaneously (e.g., file edits, bash commands).

Currently, opencode.nvim only tracks a single permission at a time via state.current_permission. When a second permission arrives while one is pending, the plugin shows a warning and overwrites the first:

if state.current_permission and state.current_permission.id ~= permission.id then
    vim.notify('Two pending permissions? existing: ' .. state.current_permission.id .. ' new: ' .. permission.id)
    M.on_permission_replied({})
end
state.current_permission = permission

This makes multi-agent workflows unusable in neovim.

Requested Features

  1. Permission queue - Track multiple pending permissions, display them in a list, and allow accepting/denying each individually

  2. Per-agent cancel - Ability to cancel/reject a specific agent's request without affecting others

  3. Bulk actions - "Accept all" / "Deny all" for convenience

Current Workaround

Disabling all sub-agents in oh-my-opencode config, which defeats the purpose of multi-agent orchestration.

Environment

  • opencode: 1.0.220
  • opencode.nvim: f128f20
  • oh-my-opencode: 2.13.1
  • neovim: 0.11.5

PS: If possible, I greatly appreciate if you could integrate native support for oh-my-opencode

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions