@@ -281,11 +281,10 @@ alias wave='wavecli --no-tls --no-macaroons'
281281### Command tree
282282
283283The everyday wallet verbs and daemon introspection make up the default
284- ` --help ` face. The advanced ` ark ` , ` recovery ` , and ` dev ` subtrees are
284+ ` --help ` face. The advanced ` ark ` , ` channel ` , ` recovery ` , and ` dev ` subtrees are
285285hidden from ` --help ` (set ` WAVELENGTH_DEV=1 ` to reveal them under an "Advanced"
286- group) but stay fully runnable in every build — ` wavecli ark … ` works
287- with or without the env var. ` WAVELENGTH_DEV ` only changes visibility; it never
288- gates execution.
286+ group) but stay fully runnable in every build. ` WAVELENGTH_DEV ` only changes
287+ visibility; it never gates execution.
289288
290289The ` swap ` subtree was retired — ` send ` /` recv --offchain ` and ` activity `
291290cover it, and a stale ` wavecli swap … ` fails with a hint toward
@@ -313,6 +312,10 @@ wavecli
313312│ ├── sweep [list] — broadcast requires approval
314313│ ├── fees {estimate|history}
315314│ └── listtransactions
315+ ├── channel — Ark-backed native Lightning channels (hidden)
316+ │ ├── create / get
317+ │ ├── send / receive / pay
318+ │ └── close / force-close
316319├── recovery {list|status|escalate|cancel} — daemon-owned vHTLC recovery rows (hidden)
317320└── dev — generated low-level RPC (hidden; no wavewalletrpc)
318321 └── daemon <Method> — call any waverpc.DaemonService method
@@ -383,6 +386,37 @@ wavecli recv --offchain --amt 5000 --memo coffee
383386wavecli dev daemon NewAddress
384387```
385388
389+ ### ` channel ` (development)
390+
391+ Promote wallet VTXO value into an unpublished native Lightning channel, use it
392+ for private or public payments, and choose cooperative or unilateral closure.
393+ Creation intentionally takes only the desired channel capacity; the daemon
394+ owns OOR preparation, backing reserve, private-channel policy, and activation.
395+ Channel IDs accept either the base64 value printed by protobuf JSON or 32-byte
396+ hex.
397+
398+ ``` bash
399+ wavecli channel create 100000
400+ wavecli channel get < channel-id>
401+ wavecli channel send < channel-id> 10000
402+ wavecli channel receive < channel-id> 5000
403+ wavecli channel pay < bolt11> --max-fee-sat 1000
404+ wavecli channel close < channel-id>
405+ wavecli channel force-close < channel-id>
406+ ```
407+
408+ ` recv --offchain ` uses an active channel directly when it has enough inbound
409+ liquidity. Otherwise an eligible single-part payment can manifest an
410+ overfunded, hub-owned channel before the same payment hash is delivered over
411+ it. After completion, ` activity inspect <payment-hash> --format json ` reports
412+ the manifested ` channel_id ` and reserved alias SCID. A receive that reused an
413+ existing channel has an empty ` channel_id ` .
414+
415+ Payments that use the ordinary vHTLC fallback still settle into the wallet;
416+ they are not implicitly converted into channels. Any ordinary wallet VTXO,
417+ including value received through that fallback, can later be promoted with
418+ ` wavecli channel create <amount-sat> ` .
419+
386420### ` ark board ` / ` dev daemon Board `
387421
388422Trigger the client to join the next round with any confirmed boarding
0 commit comments