Skip to content

/ws-delphi --web: the workspace cards in a browser tab, Pull, and no restart after a switch - #55

Merged
bracyw merged 9 commits into
mainfrom
delphi-ws-web
Oct 12, 2026
Merged

bracyw merged 9 commits into
mainfrom
delphi-ws-web

Conversation

@bracyw

@bracyw bracyw commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

The mod's command is now /ws-delphi (was /ws). On top of #53's pane:

  • Browser view: /ws-delphi --web, or the pane's Open in browser, starts web/server.py (Python 3 stdlib) for the session and opens the same cards in a tab. Select one, then Switch workspace. The pane follows a switch made there (nothing goes on the status line).
  • Refresh and Pull sit at the bottom of both views. Pull runs switch.sh on the current workspace (fetch, fast-forward, setup.sh) and says how many commits came in. Refresh keeps your focus and keeps the last list if the fetch fails.
  • No restart after a switch or pull: Claude Code reloads skills itself, and the first prompt after the root's CLAUDE.md changes carries the new one, saying it replaces the old. The switch-workspace skill says so.
  • Security: the server listens on 127.0.0.1 at a random port. Every request needs the URL's token and a local Host header (against DNS rebinding), and switching or pulling needs a JSON POST, so no other page in the browser can do either.
  • All the git work stays in switch.sh. The only .delphi/ change is a comment naming /ws-delphi: Delphi 0.5.1.
  • Tests: 14 mod tests under claude plugin test. A new e2e section runs the real server against a sandbox clone: token and Host checks, JSON-only switch and pull, and a pull that fast-forwards. 111 e2e checks pass; ci/check.sh ok.

…rowser tab: web/server.py serves them on 127.0.0.1 for the session (token in the URL, local Host, JSON POST to switch) through switch.sh; tests/e2e.sh runs the real server
…but switching and says when it last fetched from origin; a failed refresh keeps the last list
…ate (switch.sh on it: fetch, fast-forward, setup.sh) and says how many commits came; Refresh keeps the focus where it was
…CLAUDE.md changed carries the new one, saying it replaces the old (Claude Code reloads skills itself); the switch-workspace skill says so
@bracyw bracyw changed the title /ws --web: the workspace cards in a browser tab /ws-delphi --web: the workspace cards in a browser tab, Pull, and no restart after a switch Oct 12, 2026
…the pane and browser view already say so, and it stayed after the next prompt
@bracyw
bracyw changed the base branch from delphi-switch-mod to main October 12, 2026 21:14
@bracyw
bracyw merged commit a1f8fec into main Oct 12, 2026
2 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