Skip to content

Satchel v0.1.0-rc1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Jun 10:28

First public release candidate. Satchel is a self-custody desktop app for
peer-to-peer atomic swaps — trade coins directly with another person, no
exchange, no custodian, no order matched on your behalf. You connect your own
nodes; your keys and funds never leave your machine.

This is a release candidate for testing. It runs on mainnet, but treat it as
alpha software: trade small, expect rough edges, and report anything odd.


What's in the box

A single installer per platform bundles the Satchel desktop app plus the pactd
swap engine and pact-cli:

  • Windows.msi / NSIS installer
  • Linux.AppImage / .deb
  • macOS — Apple Silicon (aarch64) and Intel (x86_64) .dmg

Highlights

  • Two swap protocols, both live
    • v1 HTLC — classic hash-timelock swaps (CLTV + SegWit v0)
    • v2 Taproot / MuSig2 adaptor — "Private (Taproot)" swaps that look like
      ordinary single-sig spends on-chain
  • Bring your own node — connect your own btcx / btc / ltc nodes; the
    genesis block is verified before anything is saved, so funds can only ever
    touch the chain you intend
  • Pluggable coins — Bitcoin PoCX (BTCX), Bitcoin (BTC) and Litecoin (LTC) out
    of the box; add more by editing coins.toml next to the app, no recompile
  • Two boards — the operator-hosted Corkboard and decentralized Nostr
    relays
    , with a Relays tab to manage your own
  • Offers that survive a restart — a clean shutdown soft-de-lists your offers
    and re-advertises the still-valid ones on boot; your own offers show on the
    board instantly while a relay echoes them back
  • Redesigned offer form — canonical pair + Sell/Buy with an invariant
    quote-per-base price
  • Adaptive fee policy — a funding-fee-bump "nurse" (RBF on v1, CPFP on v2)
    rescues swaps from fee spikes, configurable per merchant on the new Fees page
  • Per-coin wallet scoping — each coin shows which node wallet it's bound to
  • 8-decimal fee precision, auto-funding swaps, rolling pactd.log + per-swap log
    dumps for diagnostics

Installation notes

The binaries are not yet code-signed:

  • macOS — Gatekeeper will warn; right-click → Open, or allow it under System
    Settings → Privacy & Security.
  • Windows — SmartScreen may warn; choose "More info" → "Run anyway".

Signing/notarization is on the roadmap.

Known limitations

  • No external cryptographic audit yet — the protocols have been internally
    reviewed only.
  • You must run your own full nodes; there is no built-in light/nodeless wallet yet.

⚠️ Disclaimer

Satchel performs non-custodial atomic swaps: you alone hold your keys and your
recovery phrase, and you alone are responsible for the security of your funds and
the machine the software runs on. The project does not operate an exchange, take
custody of funds, match orders, or provide investment advice. MIT-licensed and
provided "as is", without warranty of any kind — back up your recovery phrase
and use at your own risk.

Full commit: 90fd55d