You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's no way to schedule a background timer or async ping without blocking the entire chat. If I say "ping me in 30s", the whole conversation freezes until the timer fires — any messages I type in between get queued and only appear after the ping.
Use Case
Active dev workflow in terminal. I want to:
Start a deploy, get pinged when it's done, keep working in the meantime
Set reminders ("remind me to check logs in 2 min") while I continue debugging
Watch a log file for errors while I edit code
Claude Code has this natively. It's the one thing I keep reaching for that doesn't exist here.
Verification
I have searched for existing issues and found no related feature request
Solution
A non-blocking timer tool or /ping command that runs outside the main chat loop. The Task tool spawns subagents synchronously from the main thread — a lightweight Timer tool on a separate event loop would do it.
Feature requests must use the [FEATURE]: title prefix (e.g. [FEATURE]: Non-blocking background timer / async ping)
Feature requests must use the feature request template, which includes a verification checkbox confirming you have searched for existing issues
The issue content appears to be AI-generated. Long, AI-generated walls of text are not acceptable — please rewrite in your own words, concisely describing the problem and what you need
Please edit this issue to address the above within 2 hours, or it will be automatically closed.
This issue might be a duplicate of existing issues. Please check:
This label was auto-applied by github-actions. This is a genuine feature request, not a compliance issue. Could a maintainer please remove
eeds:compliance\ and add \enhancement\ / \discussion\ instead? Thanks.
Turns out my original analysis was wrong about the architectural limitation. The plugin opencode-background-agents by kdcokenny works correctly — it fires a background task via delegate() that returns immediately, and the completion notification injects into the chat independently without blocking.
Tested successfully
Installed opencode-background-agents plugin
Restarted opencode
Used delegate(prompt: "wait 15 seconds then say ping!", agent: "general")
Continued chatting freely — no queueing
Ping arrived ~15s later as an independent message
What is the actual gap then?
Not architectural — it is agent awareness. The plugin exposes delegate() / delegation_read() / delegation_list() tools, but the agent won't use them unless prompted to. The user has to explicitly instruct the agent to call delegate().
What would still help
A native solution (instead of a plugin) could:
Make the task tool support a background: true flag natively
Give opencode itself built-in awareness of background delegation so it proactively uses the pattern
Avoid needing to install and configure a third-party plugin
But the core async non-blocking ping use case is solved by the existing plugin ecosystem. Closing this as "works via plugins" might make sense, unless the request is specifically for a built-in first-class solution.
Activity
github-actions commentedon Jun 8, 2026
This issue doesn't fully meet our contributing guidelines.
What needs to be fixed:
[FEATURE]: Non-blocking background timer / async ping)Please edit this issue to address the above within 2 hours, or it will be automatically closed.
This issue might be a duplicate of existing issues. Please check:
If you believe this was flagged incorrectly, please let a maintainer know.
yash-desai-naik commentedon Jun 8, 2026
This label was auto-applied by github-actions. This is a genuine feature request, not a compliance issue. Could a maintainer please remove
eeds:compliance\ and add \enhancement\ / \discussion\ instead? Thanks.
[-]Non-blocking background timer / async ping[/-][+][FEATURE]: Non-blocking background timer / async ping[/+]yash-desai-naik commentedon Jun 8, 2026
Update: This IS achievable via plugins
Turns out my original analysis was wrong about the architectural limitation. The plugin
opencode-background-agentsby kdcokenny works correctly — it fires a background task viadelegate()that returns immediately, and the completion notification injects into the chat independently without blocking.Tested successfully
opencode-background-agentsplugindelegate(prompt: "wait 15 seconds then say ping!", agent: "general")What is the actual gap then?
Not architectural — it is agent awareness. The plugin exposes
delegate()/delegation_read()/delegation_list()tools, but the agent won't use them unless prompted to. The user has to explicitly instruct the agent to calldelegate().What would still help
A native solution (instead of a plugin) could:
tasktool support abackground: trueflag nativelyBut the core async non-blocking ping use case is solved by the existing plugin ecosystem. Closing this as "works via plugins" might make sense, unless the request is specifically for a built-in first-class solution.
rekram1-node commentedon Jun 8, 2026
AUTOMATED: closing as duplicate of: #5887