Skip to content

feat(browser): complete interactive shell demos#1745

Draft
NathanFlurry wants to merge 1 commit into
mainfrom
bb-demo
Draft

feat(browser): complete interactive shell demos#1745
NathanFlurry wants to merge 1 commit into
mainfrom
bb-demo

Conversation

@NathanFlurry

@NathanFlurry NathanFlurry commented Jul 13, 2026

Copy link
Copy Markdown
Member

Summary

  • run real Brush, Vim, Git, Bash, and core WASM commands through AgentOS VFS/PTY execution in both the Actor API and browser-local terminal demos
  • add the minimal Browserbase CDP shell experiment, with raw terminal bytes over CDP and a persistent Cloudflare tunnel for the remote browser
  • converge browser execution on the generated native V8 bridge and shared builtin/WASI surfaces instead of demo-specific command dispatch
  • fix interactive PTY behavior: ordered terminal output, exact termios restoration after Vim, resize/SIGWINCH delivery, shebang execution, and real Brush child PIDs
  • preserve complete software packages when skip-mode staging overlays a partial native command target

Root cause

  • browser child processes could reuse parent-local WASI descriptor numbers, and command execution was selected from a host basename map instead of executable bytes resolved from the guest VFS
  • Actor stdout and stderr were broadcast by independent tasks, while shared-PTY children could leave inherited terminal state behind after full-screen execution
  • Brush's WASM adapter discarded the virtual PID already returned by AgentOS, causing WARN could not retrieve pid for child process
  • skip-mode software staging deleted the existing bin/ before discovering that a partial native target did not contain every declared command

Validation

  • cargo check --workspace
  • pnpm --dir packages/runtime-browser test — 136 tests
  • pnpm --dir packages/agentos-toolchain test — 19 passed, 2 skipped
  • pnpm --dir packages/build-tools test
  • focused native PTY discipline regression
  • browser-terminal E2E — Actor API and browser-local shell/Vim/script/Git/Pi workflows both passed; screenshots captured under ~/progress/agent-os/2026-07-13-dual-terminal-vim-git/
  • Browserbase E2E session 02562fcd-fd33-4a07-8972-d6fcd94adbd0 — shell, Ctrl-C, redirects, Vim-authored executable script, Git commit/rev-parse, and no PID warning
  • scripts/verify-fixed-versions.mjs

Browserbase credentials remain explicit environment variables; the experiment never reads a developer-local credentials file.

@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 10:35 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 10:36 Destroyed
@railway-app

railway-app Bot commented Jul 13, 2026

Copy link
Copy Markdown

🚅 Deployed to the agentos-pr-1745 environment in agentos

Service Status Web Updated (UTC)
agentos 😴 Sleeping (View Logs) Web Jul 14, 2026 at 3:59 pm

🚅 Environment agentos-pr-1745 in rivet-frontend has no services deployed.

@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 11:27 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 11:41 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 11:48 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 13:09 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 13:12 Destroyed
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 15:46 Destroyed
@NathanFlurry NathanFlurry changed the title feat(browser): add browser terminal and Browserbase shell demos feat(browser): complete interactive shell demos Jul 13, 2026
@railway-app railway-app Bot temporarily deployed to agentos / agentos-pr-1745 July 13, 2026 16:14 Destroyed
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