Sitelet https://github.com/NodeOps-app/createos-plugins/compare/main...feat/cos-delegate-computer-to-cli
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NodeOps-app/createos-plugins
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: NodeOps-app/createos-plugins
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: feat/cos-delegate-computer-to-cli
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 1 commit
  • 5 files changed
  • 1 contributor

Commits on Sep 16, 2026

  1. refactor(cos): delegate desktop and computer to the createos CLI

    The CLI grew `sandbox desktop` and `sandbox computer`, so the REST layer
    this driver carried for them has no reason to exist. Delete api(),
    api_auth(), api_check() and desktop_wait(), and shell out like every
    other verb.
    
    That layer was the one place cos bypassed the CLI, and the cost of it
    was a second implementation of things the CLI already knew: its own auth
    precedence, its own error-code map, its own readiness poll. It also held
    a false premise — a comment claiming the CLI does not read
    CREATEOS_API_KEY, which it has (cmd/root/root.go). The same code now
    serves pi, opencode and herdr, which could not do computer-use at all.
    
    cos keeps what the CLI cannot know: which box belongs to this project,
    and creating one on a desktop image when there is none. The rootfs guard
    stays too, because the CLI tells you to create a new sandbox, and for a
    project box the fix is to replace the one you have.
    
    Two details preserved for callers:
    
    - `cos computer screenshot -o file` still works. The CLI spells it
      --out, since -o is its global output-format flag, so cos translates.
    - `cos resume` now says to re-run `cos desktop` on a box that had one. A
      resumed desktop answers reads before its input stack is back, so a
      click can 409 for a moment after the screen route already succeeds.
    
    Requires a createos CLI carrying those commands. cos probes for them and
    tells the user to upgrade rather than failing with "unknown command".
    
    Blocked on NodeOps-app/createos-cli#94.
    pratikbin committed Sep 16, 2026
    Configuration menu
    Copy the full SHA
    d20d764 View commit details
    Browse the repository at this point in the history
Loading