Repository navigation
Description
Description
If I say run dev server in the background it will fail, but when I say run pwsh in background and run dev server it will succeed.
Reproduction Steps
Steps to reproduce the behavior:
- Configure plugin in opencode.json
- Run opencode
- Use pty_spawn with '...'
- See error
Expected Behavior
will succeed with the first prompt
Environment
- OS: [Windows 11]
- OpenCode Version: [1.14.46]
- Plugin Version: [1.1.0]
- Bun Version: [1.3.2]
OpenCode Configuration
opencode.json (sanitized)
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-pty"],
}Debug Logs
Click to expand debug logs
To get debug logs, run OpenCode with debug logging enabled:
opencode --log-level DEBUG --print-logsOr check log files in ~/.local/share/opencode/logs/.
[Paste relevant log output here]
Additional Context
Run dev server in background
Session ID: ses_1edb97631ffe6ZvMa6sfEGGija
Created: 2026/5/10 22:24:33
Updated: 2026/5/10 22:26:26
User
run npm dev in background
Assistant (Build · MiniMax M2.5 Free · 22.2s)
Thinking:
The user wants to run npm dev in the background. Based on the AGENTS.md file, the dev server is started with npm run dev which runs wrangler dev. I'll spawn a PTY session to run this in the background.
Tool: pty_spawn
Input:
{
"args": [
"npm",
"run",
"dev"
],
"command": "npm",
"description": "Start wrangler dev server",
"title": "Dev Server",
"workdir": "C:\\Users\\marv\\workspace\\web-push\\web-push-demo"
}Error:
PTY spawn failed
Assistant (Build · MiniMax M2.5 Free · 7.0s)
Thinking:
The PTY spawn failed. Let me try using the regular bash tool instead.
Tool: bash
Input:
{}Error:
Tool execution aborted
User
run pwsh in background and run npm run dev
Assistant (Build · MiniMax M2.5 Free · 38.7s)
Thinking:
The user wants me to run PowerShell in background and execute npm run dev inside it.
Tool: pty_spawn
Input:
{
"args": [
"-Command",
"npm run dev"
],
"command": "pwsh",
"description": "Start PowerShell and run npm dev",
"title": "PowerShell - npm dev",
"workdir": "C:\\Users\\marv\\workspace\\web-push\\web-push-demo"
}Output:
<pty_spawned>
ID: pty_de4e9361
Title: PowerShell - npm dev
Command: pwsh -Command npm run dev
Workdir: C:\Users\marv\workspace\web-push\web-push-demo
PID: 17544
Status: running
NotifyOnExit: false
</pty_spawned>
Assistant (Build · MiniMax M2.5 Free · 13.3s)
Thinking:
Good, the PTY is now running. Let me read the output to see what happened.
Tool: pty_read
Input:
{
"id": "pty_de4e9361"
}Output:
<pty_output id="pty_de4e9361" status="running">
00001| �[?9001h�[?1004h�[?25l�[2J�[m�[H�]0;C:\Program Files\PowerShell\7\pwsh.EXE��[?25h�]0;npm��]0;npm run dev��[?25l
00002| > web-push-demo@1.0.0 dev
00003| > wrangler dev�[5;1H�[?25h�[?25l�[33m▲ �[43m[�[30mWARNING�[33m]�[m �[1mProxy environment variables detected. We'll use your proxy for fetch requests.�[8;1H�[?25h�[22m
00004| ⛅️ wrangler 4.90.0�[38;2;255;136;0m
00005| ───────────────────
00006| �[mUsing secrets defined in .dev.vars
00007| �[?25lYour Worker has access to the following bindings:�[2m
00008| Binding�[22m�[65X�[2m�[65CResource�[22m�[18X�[2m�[18CMode�[37m�[22m
00009| env.SUBSCRIPTIONS �[m(�[2m5d719287afde409cb0d1b14a6ac35b6f�[22m)�[20X�[38;2;189;91;8m�[20CKV Namespace�[14X�[34m�[14Clocal�[37m
00010| env.VAPID_PUBLIC_KEY �[m(�[2m"BPmnIMURw_-4ZhdbSFwOo2omSCGYXsJm-SIe4..."�[22m) �[38;2;189;91;8mEnvironment Variable �[34mlocal�[37m
00011| env.VAPID_SUBJECT �[m(�[2m"mailto:272077995@qq.com"�[22m)�[27X�[38;2;189;91;8m�[27CEnvironment Variable �[34mlocal�[37m
00012| env.VAPID_PRIVATE_KEY �[m(�[2m"(hidden)"�[22m)�[38X�[38;2;189;91;8m�[38CEnvironment Variable �[34mlocal�[19;1H�[?25h�[m╭──────────────────────────────────────────────────────────────────────────────────────────────╮
00013| │ [b] �[2mopen a browser�[22m [d] �[2mopen devtools�[22m [e] �[2mopen local explorer�[22m [c] �[2mclear console�[22m [x] �[2mto exit�[22m │
00014| ╰──────────────────────────────────────────────────────────────────────────────────────────────╯
00015| �[2m⎔ Starting local server...
00016| �[22m�[?25l�[33m▲ �[43m[�[30mWARNING�[33m]�[m �[1mScheduled Workers are not automatically triggered during local development.�[22m�[25;1H To manually trigger a scheduled event, run:
00017| curl "http://127.0.0.1:8787/cdn-cgi/handler/scheduled"
00018| For more details, see
00019| �[4mhttps://developers.cloudflare.com/workers/configuration/cron-triggers/#test-cron-triggers-locally�[31;1H�[?25h�[24m�[32m[wrangler:info] �[mReady on �[32mhttp://127.0.0.1:8787
(End of buffer - total 19 lines)
</pty_output>
Assistant (Build · MiniMax M2.5 Free · 7.9s)
Thinking:
The dev server is running successfully on http://127.0.0.1:8787
Activity
nextgenthemes commentedon Aug 19, 2026
Found a solution? Haveing the same with Astro dev server, it does not show the output I would get on the cmd and it shows the process and finshed and stopped. The actual watcher child process gets spawned and runs in the background completely silently for the web U and the AI agent as well it seems.
I am using
pnpm(v12) and"astro-dev": "astro dev --root \"$(pwd)/site\" --port ${PORT:-9001}",this is the script from package.jsonBut it seems it the same issue.