gstack's browser skills work again in Codex and Cursor

2 days ago

gstack 1.99.1.0 and 1.99.2.0: browser skills, question preferences and Windows /review and /ship work again in Codex, Cursor and other hosts; brain sync catches secrets in UTF-16 and binary files; gstack-uninstall stops before deleting unsaved worktrees; /ship finishes after an owner's ruling; huge pull requests pass the sealed-output guard. Changelog 1.99.1.0: https://github.com/garrytan/gstack/blob/main/CHANGELOG.md#19910---2026-11-11 Changelog 1.99.2.0: https://github.com/garrytan/gstack/blob/main/CHANGELOG.md#19920---2026-11-12 Commits: https://github.com/garrytan/gstack/commits/main gstack: https://github.com/garrytan/gstack

Ask about this presentation

Chapters

  1. 0:00Browser skills in Codex and Cursor
  2. 0:14Two more host fixes
  3. 0:27Brain sync secrets
  4. 0:47Uninstall keeps your work
  5. 1:04/ship finishes more runs
  6. 1:19Big pushes
  7. 1:34Update
Show transcript
  1. If you run gstack from Codex or Cursor, its browser skills stopped with an error saying Playwright wasn't installed, even when it was. They now use the Playwright in your gstack checkout, so they start again.

    Slide text
    gstack logo

    gstack’s browser skills work again in Codex and Cursor

    BROWSER_UNAVAILABLE playwright is not installed
    → uses the gstack checkout’s Playwright
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.2.0
  2. Codex, Cursor and the other hosts had two more gaps. The question-preference helper couldn't find two of its own scripts. And on Windows, /review and /ship stopped before they started.

    Slide text

    Setup now copies the files these hosts were missing

    Question preferences load again Cannot find module './scripts/one-way-doors.ts' 1.99.2.0 · reported by @SatriaSuriaAriffin
    /review and /ship start again on Windows Cannot find module '../scripts/resolvers/fix-check' 1.99.1.0 · reported by @SatriaSuriaAriffin
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.1.0, 1.99.2.0
  3. Brain sync used to skip files git calls binary, so an AWS key inside a UTF-16 note got pushed. It now reads those files, catches a key split across two lines, and decodes JSON escapes. A pre-commit hook from an older gstack needs refreshing.

    Slide text

    Brain sync now catches secrets in files git calls binary

    UTF-16 and NUL-byte files are scanned as text
    A key on the line under its keyword is caught, in UTF-16 too
    JSON \u escapes are decoded before the scan
    A pre-commit hook from an older gstack needs a refresh.
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.1.0
  4. Uninstall used to check only the top-level worktrees, so one nested inside another was deleted along with its edits. It now checks every checkout in every folder it removes, and checks again after you confirm.

    Slide text

    gstack-uninstall stops before it deletes unsaved work

    Nested worktrees inside a lane are checked too
    Locked worktrees stop it, even with --force-worktrees
    Every host’s install and ~/.gstack are checked first
    Exit 2, nothing removed, and the checkout named.
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.1.0
  5. When a fix-check finds a new critical issue, your ruling now lets /ship finish, with the finding listed as an open note in the pull request. A follow-up review that starts after a docs commit now counts too.

    Slide text

    /ship finishes runs that used to stop for good

    Your ruling clears a blocker a fix-check foundlisted as an open note in the PR · 1.99.1.0
    A follow-up review after a docs-only commit counts1.99.1.0
    Tier-only test folders can stay out of the local rundeclared per repo · 1.99.2.0
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.1.0, 1.99.2.0
  6. The sealed-output guard held a whole patch in memory, so a pull request with about 4 million lines of fixtures was always refused. It now reads one line at a time from a temporary file, which needs free disk space about the size of the patch.

    Slide text

    Huge pull requests get through the sealed-output guard

    Old in-memory limit
    256 MiB
    git output for a PR of about 4 million lines
    352 MB · SEALED_OUTPUT_REFUSED
    now read one line at a time from a temp file
    Needs free disk about the size of the patch. Deleting a 70 MiB binary no longer blocks a push.
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.2.0, 1.99.1.0
  7. If you run gstack from Codex or Cursor, I'd update today to get the browser skills back. On Claude Code, the secret scan alone makes it worth taking. The full notes are in the gstack changelog.

    Slide text
    gstack logo

    Running gstack in Codex or Cursor? Take this update.

    gstack CHANGELOG.md
    Every change, with its caveats and upgrade steps.
    Codex · Cursor Secrets Uninstall /ship Big pushes
    garrytan/gstack · CHANGELOG.md · 1.99.1.0, 1.99.2.0

What happened in AI today, in your inbox

One short email each evening. Read it and you’re caught up.

Built with ❤️ in New York