@toon-protocol/rig 2.7.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +65 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -198,6 +198,10 @@ rig pr status <event-id> applied
198
198
  | `rig comment <root-event-id>` | **paid** | comment (kind:1622) on an issue/patch |
199
199
  | `rig pr create` | **paid** | publish a patch (kind:1617) from real `git format-patch` |
200
200
  | `rig pr status <event-id> <state>` | **paid** | set issue/patch status (kind:1630–1633) |
201
+ | `rig site publish [ref]` | **paid** | deploy a pushed repo as a permaweb site: build the ar.io path manifest (repo paths → Arweave txids) and upload it as one paid store write; prints the gateway URL |
202
+ | `rig site url [ref]` | free | print the last-published site URL for a ref |
203
+ | `rig name status <name>` | free | an ArNS name's registry record, ANT process, and current target txId |
204
+ | `rig name buy <name>` / `rig name set <name> <txId>` | **paid¹** | buy an ArNS name / point it at an Arweave txId. ¹Paid in mARIO on Solana via the ar.io registry — **not** ILP; needs the optional `@ar.io/sdk` dep |
201
205
  | `rig channel list/open/close/settle` | free / **paid** | inspect or manage the payment channels paid commands hold |
202
206
  | `rig help` / `rig --version` | free | usage / version |
203
207
  | everything else | — | executed as `git <args...>` with rig's stdio and git's exit code |
@@ -231,6 +235,67 @@ what will happen, then require `--yes` or an interactive confirm.
231
235
 
232
236
  ---
233
237
 
238
+ ## Permaweb sites & ArNS names (Arweave)
239
+
240
+ Every `rig push` already stores your repo's file bytes on Arweave. Two more verbs
241
+ turn a pushed repo into a permanent, human-named website — *GitHub Pages, but
242
+ permanent and named.*
243
+
244
+ ### `rig site` — a pushed repo as a website
245
+
246
+ `rig site publish [ref]` builds an
247
+ [ar.io path manifest](https://specs.ar.io/#/en/manifests/1.0.0) (`index.html`
248
+ routing) from the ref's tree joined with the objects already on Arweave, uploads it
249
+ as **one paid store write**, and prints a servable URL:
250
+
251
+ ```sh
252
+ rig site publish # publish the current branch as a site
253
+ # rig site publish main --spa # SPA routing: serve index.html for unknown paths
254
+ # rig site publish --force-reupload # re-pay to re-upload blobs stored without a Content-Type
255
+ rig site url # (free) print the last-published site URL for a ref
256
+ ```
257
+
258
+ ```
259
+ https://<gateway>/<manifestTxId>/
260
+ ```
261
+
262
+ `rig push` now tags each uploaded blob with a `Content-Type` derived from its path,
263
+ so files render in a browser instead of downloading as `application/octet-stream`.
264
+ Blobs pushed **before** this change serve as octet-stream until re-uploaded with
265
+ `--force-reupload` (a fresh paid write). Site assets are bounded by rig's per-object
266
+ size cap — fine for typical static sites.
267
+
268
+ The manifest txId **changes on every push**, so the stable pointer is an ArNS name.
269
+
270
+ ### `rig name` — a human name for a txId (ArNS)
271
+
272
+ [ArNS](https://ar.io) (the ar.io Name System) is Arweave's naming layer: a registered
273
+ name resolves at every ar.io gateway as `https://<name>.<gateway>/`, serving whatever
274
+ txId its record points at. Names are owned and paid by **this identity's own Solana
275
+ key** — derived from the same mnemonic as everything else, so no new key material:
276
+
277
+ ```sh
278
+ rig name status <name> # (free) registry record, ANT process, current target
279
+ rig name buy <name> --years 1 # buy a name (estimate → confirm → execute)
280
+ rig name set <name> <manifestTxId> # point the name at your published site's manifest
281
+ ```
282
+
283
+ Put together — one mnemonic, end to end:
284
+
285
+ ```sh
286
+ rig push && rig site publish && rig name set my-app <manifestTxId>
287
+ # → https://my-app.<gateway>/
288
+ ```
289
+
290
+ > **Real funds, a different rail from ILP.** `rig name buy`/`set` spend **mARIO on
291
+ > Solana via the ar.io registry program** — *not* through TOON's ILP payment channels
292
+ > (the rail behind `rig push` / `rig site publish` fees). `rig name` needs the
293
+ > optional [`@ar.io/sdk`](https://docs.ar.io) dependency; install it if the command
294
+ > reports it missing. As with every paid verb, these are estimate → confirm →
295
+ > execute, and a `--json` run *without* `--yes` is a free estimate — nothing is spent.
296
+
297
+ ---
298
+
234
299
  ## Strict `--json` stdout (machine consumers)
235
300
 
236
301
  With `--json`, stdout carries **exactly one JSON document** — everything
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toon-protocol/rig",
3
- "version": "2.7.0",
3
+ "version": "2.7.1",
4
4
  "description": "Git-to-TOON write path core — build git objects and NIP-34 events for the Rig control plane",
5
5
  "license": "MIT",
6
6
  "author": "Jonathan Green",