Skip to content

Conversation

@rgarcia
Copy link
Contributor

@rgarcia rgarcia commented Aug 26, 2025

  • adds a bunch of new commands for API endpoints that either exist already (replays, filesystem) or will soon-exist (process, logs)
  • adds a new pterm table that doesn't do the weird padding of row heights (makes browsers create output much nicer)

Some demos:

fs-demo.mp4
process-exec-demo.mp4
process-spawn-demo.mp4

TL;DR

This PR significantly expands the kernel browsers command with new subcommands for managing processes, session replays, and filesystem operations within a browser instance. It also improves the CLI output with a custom table renderer.

Why we made these changes

To expose powerful new Kernel API features for process, replay, and filesystem management directly in the CLI. This gives users more granular, scriptable control over their browser instances and improves the overall user experience with better-formatted output.

What changed?

  • New browsers Subcommands:
    • process: Execute and manage processes inside the VM (exec, spawn, kill).
    • replays: Create, list, and manage session replays.
    • fs: Full filesystem interaction (ls, cat, write, mkdir, download).
    • logs: Stream logs from a browser instance.
  • Improved CLI Output:
    • Introduced a new custom table renderer (cmd/table.go) that removes unnecessary padding for a cleaner, more compact display.
    • Updated app list, app history, and browsers create to use the new table format.
  • Enhanced Testing & Demos:
    • Added extensive unit tests for the new commands using testify and fake services.
    • Added new vhs tape demos for the new fs and process commands to showcase functionality.
  • Core Improvements:
    • Refactored API error handling (pkg/util/errors.go) to be more robust in parsing error details from JSON responses.
    • Updated README.md with comprehensive documentation for all new commands.

Description generated by Mesa. Update settings

@rgarcia rgarcia requested a review from Sayan- August 26, 2025 11:06
Copy link

@mesa-dot-dev mesa-dot-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Performed full review of 404b4a0...dccd8a8

15 files reviewed | 2 comments | Review on Mesa | Edit Reviewer Settings

Copy link
Contributor

@Sayan- Sayan- left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The tape stuff is very neat 👍

All the changes to the browsers cli lgtm. Blocking merge til we update the ref in go.mod but I think this is good to go, pending changes on the API side

@rgarcia rgarcia merged commit 81967dc into main Aug 27, 2025
1 check 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.

3 participants