Skip to content

docs(plans): member machines — the workspace is a server - #105

Closed
pythonlearner1025 wants to merge 1 commit into
mainfrom
plan/member-machines
Closed

docs(plans): member machines — the workspace is a server#105
pythonlearner1025 wants to merge 1 commit into
mainfrom
plan/member-machines

Conversation

@pythonlearner1025

Copy link
Copy Markdown
Member

Plan only. Two new files: plans/MEMBER-MACHINES.md and the UI mockup it is grounded on, plans/mockups/session-rail.html (live at https://blitzos-session-rail.app.blitz.dev/).

The shape

Supersedes plans/MULTI-MEMBER-BOX.md (#91). That plan split one shared box into Linux users. This plan removes the shared box: every member of a workspace gets one always-on machine, sized by the workspace machine type, provisioned when the invite is sent, destroyed when the member leaves. Machines never appear in the product — no create screen, no wake button, no cold start, no sleep state.

A workspace works like a Discord server: admin creates it, members join it, sessions inherit its agent rules, shared drive, and static keys. Personal OAuth stays per member, on that member's machine only.

The rulings worth arguing about

  • Attribution follows the credential. Workspace keys act as the workspace, injected at use, never in transcripts. Personal OAuth acts as the member. Shared context never authorizes a personal-credential action.
  • Sessions default to workspace-visible. Joining the server means seeing the work. Private is the exception.
  • A "send" turn runs as the owner, attributed to the sender, with Co-authored-by on commits. Fork is the identity escape valve.
  • Free plan is BYOK twice (compute key + model keys). The only exception is the sponsored trial org from feat: operator console with sponsored trial invites #104.

What it leans on

Existing seams only: invites and seats (#56, #84, #86), the entitlements integers (#62, #93, #104), workspace repo lists via the GitHub App (#90, #92), golden image + volumes (#88). The one large new surface is the session as a control-plane object (Build 2), which also carries the three-column rail UI overhaul.

Economics (10-person org, Hetzner CX)

~$78–90/month infrastructure, $5–9 per seat — 8–9% of revenue at $100 seats. The plan states plainly that the dominant COGS at that price is model tokens, not machines, and prices that decision ahead of machine polish.

🤖 Generated with Claude Code

Supersedes plans/MULTI-MEMBER-BOX.md (PR #91). Every member of a
workspace gets one always-on machine, sized by the workspace machine
type, provisioned on invite, destroyed on leave. Machines never appear
in the product. Includes the session-rail UI overhaul spec and the
mockup it is grounded on.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Copy link
Copy Markdown
Member Author

Staying local for now; the plan continues on a local branch.

@pythonlearner1025
pythonlearner1025 deleted the plan/member-machines branch August 28, 2026 19:45
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