From 12cdd34e6b77f797cc9220e687f8fbed613315c5 Mon Sep 17 00:00:00 2001 From: Anthony Ettinger Date: Sun, 6 Sep 2026 00:53:20 +0000 Subject: [PATCH] pay2seed: encrypted by default, access as the product, a README in every swarm The client encrypts by default and the hub never does: what the hub manages is who may decrypt. A team is a named set of member keys with a scope over the owner's swarms; the hub, as keeper, issues grants to members when the owner is offline, with invitations that expire, roles, an audit trail, and re-encryption on removal so the next version is closed to whoever left. A few seats are free; above that the hub charges per seat and per organisation, settled through the same pay plugins as everything else. Seeding is priced at disk; access is where a hub earns, and both sides earn: seeders rent disk, requesters sell access. Public is not a fallback. Encryption off is an explicit act, and a public swarm is attested, listed, kept and rendered exactly as a private one is; the only difference is who can read it. Every swarm on the market carries a README.md at its root, no exceptions, and the attestation carries its Markdown and the hash of the copy inside the swarm, so the hub renders it as the swarm's page without a key. Relative links resolve into the swarm and are gated the way the files are. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01SKAohrRkqLKVQL2cGCAkR5 --- docs/openswarm/cli.md | 6 ++ docs/openswarm/paid2seed.md | 4 +- docs/openswarm/pay2seed.md | 185 +++++++++++++++++++++++++++++++--- docs/openswarm/pay2stream.md | 4 +- docs/openswarm/spec.md | 2 + prd/0006-add-pay2seed-spec.md | 17 ++++ 6 files changed, 201 insertions(+), 17 deletions(-) diff --git a/docs/openswarm/cli.md b/docs/openswarm/cli.md index 5b191f4..3e01f68 100644 --- a/docs/openswarm/cli.md +++ b/docs/openswarm/cli.md @@ -143,6 +143,12 @@ ip seed leases [--hub ] [--status proven|fetching|lapsed|ended] ip seed status ip seed void # requester: void and refund the unearned budget ip seed notice --kind rights|illegal|personal-data|other --statement +ip team create --hub [--scope |--publisher ]... +ip team invite --to [--role admin|member|readonly] [--expires ] +ip team accept +ip team remove [--no-rotate] +ip team grant --file # a member fetching their sealed grant +ip team audit [--since