[Bug]: Project action command gets stuck when the terminal has not been opened
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 23k
- Forks
- 5.9k
- Avg merge
- 11h 14m
- Merged PRs (30d)
- 357
Description
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/web
Steps to reproduce
- Open a project in T3 Code web or desktop and use a thread where the terminal has not been opened yet.
- Add a project action named
Devwith the commandnpm run dev. - Run the action from the project actions menu.
- Observe the terminal drawer after it opens.
- Open the terminal manually before running the same action and compare the result.
Related but not a duplicate: #1527 covered an automatic worktree setup action that used stale worktree context. This report covers an ordinary manually invoked project action and fresh interactive-shell startup.
Expected behavior
The project-action command should execute exactly once, regardless of whether the terminal was previously opened.
Actual behavior
When the terminal has not been opened previously, the terminal drawer opens but the action command gets stuck above the new shell prompt and npm run dev does not start. Running the action works after the terminal has already been opened.
The action path currently opens the terminal and then immediately sends the command through a separate terminal write. On a fresh terminal, interactive shell initialization can race that write.
Impact
Major degradation or frequent failure
Version or commit
main @ 78f462c4e18c
Environment
macOS, T3 Code web and desktop clients, zsh interactive shell. Reproduced with a project action running npm run dev.
Logs or stack traces
No application error is emitted. The command appears above the initialized shell prompt instead of executing.
Screenshots, recordings, or supporting files
A screenshot is available showing npm run dev stuck above the project prompt while the dev server remains stopped.
Workaround
Open the terminal drawer and wait for the shell prompt before running the project action.
Contributor guide
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.
Research direction
Start in apps/web by tracing the project-action path that opens the terminal drawer and sends the command through a separate terminal write. Reproduce with a fresh terminal and the Dev action running npm run dev, then verify the command executes exactly once both before and after manually opening the terminal.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- desktop, developer-experience, web-dev
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100