Skip to content

feat: add process management support#207

Merged
NathanFlurry merged 15 commits intomainfrom
sa-processes
Mar 8, 2026
Merged

feat: add process management support#207
NathanFlurry merged 15 commits intomainfrom
sa-processes

Conversation

@NathanFlurry
Copy link
Member

Summary

  • Simplified ProcessRunTab with compact form layout and collapsible Advanced section
  • Rewrote ProcessesTab with lightweight list, collapsible create form, and clean detail panel
  • Fixed error messages to show problem.detail instead of generic "Stream Error"
  • Fixed GhosttyTerminal binary frame parsing for WebSocket control frames
  • Added TERM=xterm-256color default for TTY processes (fixes tmux, vim, etc.)
  • Removed orange gradient background and left border for cleaner UI
  • Enabled WebSocket proxying in Vite dev server

Test plan

  • Create TTY process with bash, verify terminal connects and responds to input
  • Run vim in PTY, test insert mode with text input
  • Run tmux in PTY, verify it works (previously failed with "terminal does not support clear")
  • Run one-off command (ls -la), verify output and error messages show detailed messages
  • Run non-existent command, verify error shows actual reason ("No such file or directory") not generic "Stream Error"

🤖 Generated with Claude Code

- Simplify ProcessRunTab layout: compact form with collapsible Advanced section for timeout/maxOutputBytes
- Rewrite ProcessesTab: collapsible create form, lightweight list items with status dots, clean detail panel with tabs
- Extract error details: use problem.detail instead of generic "Stream Error" title for better error messages
- Fix GhosttyTerminal binary frame parsing: handle server's binary ArrayBuffer control frames (ready/exit/error)
- Enable WebSocket proxying in Vite dev server with ws: true
- Set TERM=xterm-256color default for TTY processes so tools like tmux, vim, htop work out of the box
- Remove orange gradient background from terminal container for cleaner look
- Remove orange left border from selected process list items
- Update inspector CSS with new process/terminal styles

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 08:15 Destroyed
@railway-app
Copy link

railway-app bot commented Mar 6, 2026

🚅 Deployed to the sandbox-agent-pr-207 environment in sandbox-agent

Service Status Web Updated (UTC)
website 😴 Sleeping (View Logs) Web Mar 8, 2026 at 1:50 am

@NathanFlurry NathanFlurry changed the title Improve inspector UI for processes and fix PTY terminal feat: add process management support Mar 6, 2026
NathanFlurry and others added 2 commits March 6, 2026 00:44
- Fix unstable onExit callback in ProcessesTab (useCallback)
- Fix SSE follow stream race condition (subscribe before history read)
- Update inspector.mdx with new process management features
- Change observability icon to avoid conflict with processes
- Add docs/processes.mdx covering the full process management API

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ocol

- Rename "Interactive terminals" to "Terminals" with "Connect to a terminal" sub-heading
- Add TTY process creation step at top of Terminals section
- Remove low-level WebSocket protocol table and raw WebSocket example
- Keep browser terminal emulator reference with Ghostty link

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:10 Destroyed
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:10 Destroyed
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:11 Destroyed
NathanFlurry and others added 2 commits March 6, 2026 12:12
…ssion, updated tests

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:12 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:26 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:33 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 6, 2026 20:42 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 7, 2026 23:26 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 7, 2026 23:36 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 8, 2026 00:50 Destroyed
@railway-app railway-app bot temporarily deployed to sandbox-agent / sandbox-agent-pr-207 March 8, 2026 01:44 Destroyed
@NathanFlurry NathanFlurry merged commit febe860 into main Mar 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant