sablier-cancel-open-ended-stream

Installation
SKILL.md

Sablier Flow Stream Cancellation

Overview

Cancel one or more Sablier Flow open-ended payment streams on the user's behalf. The skill discovers the user's streams through the Sablier indexer where the wallet is sender or recipient, drops already-voided streams, and executes one batch(bytes[]) transaction per selected stream that splices the appropriate sub-calls atomically:

  • Sender (or sender + recipient) with refundable > 0[refundMax(streamId, sender), void(streamId)]. The sender recovers the unstreamed deposit and the stream is permanently stopped in the same transaction.
  • Sender (or sender + recipient) with refundable == 0[void(streamId)]. Inform the user nothing is left to refund — the stream will be voided but no funds will be returned.
  • Recipient-only[void(streamId)]. Inform the user that as the recipient, they can void the stream but only the sender can refund unstreamed funds.

The skill always uses batch(bytes[]) as the entrypoint so refund + void run atomically per stream. When the batch contains a single sub-call (void only), the runbook MAY call void(uint256) directly instead of wrapping in batch — this is a small gas optimization, flagged in the runbook.

This skill charges no markup. Both void(uint256) and refund(streamId,…) are free at the protocol level — MSG_VALUE = 0 always.

This skill is a coordinator for Flow cancellation and execution routing.

Arguments

Installs
1
GitHub Stars
5
First Seen
Jul 8, 2026
sablier-cancel-open-ended-stream — sablier-labs/sablier-skills