[Bug]: can't run npm script directly in background
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 52/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- bun, typescript
Research direction
Start by reproducing the Windows 11 case with pty_spawn: compare launching npm run dev directly against launching it through pwsh -Command. The issue is done when the direct npm invocation starts the background dev server successfully, matching the working PowerShell path.
Written by the indexing model from the issue text.
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-logs
Or 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| > [email protected] 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:[email protected]"[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
- Dominant language
- TypeScript
- Stars
- 594
- Forks
- 61
- Avg merge
- 13h 20m
- Merged PRs (30d)
- 2
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from shekohex/opencode-pty
-
[Bug]: exit notification delivery failures are silently swallowed — agent never wakes, no diagnosticOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
shekohex/opencode-pty#54 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
shekohex/opencode-pty#48 ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 65/100
shekohex/opencode-pty#67 · 2 comments · 1 reaction ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 56/100
shekohex/opencode-pty#66 ·
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 65/100
shekohex/opencode-pty#60 · 3 comments ·
All issues in shekohex/opencode-pty
Similar issues
-
enhancement providers-api ui-dashboard
Difficulty 2/5 1-3 hours Newbie friendliness 61/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
external-issue to-triage
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
needs triage
Difficulty 1/5 Under an hour Newbie friendliness 88/100
homarr-labs/homarr#6976 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day