cardano-tx-tools
Tooling for Conway-era Cardano transactions. Five command-line executables plus the Haskell library that backs them.
Executables
- tx-diff — structural diff between two Conway transactions, with Plutus blueprint-aware decoding and opt-in input resolution via N2C or Blockfrost-style HTTP.
- tx-inspect — render one Conway transaction
as a structured, human-readable report. Optional
rewriting-rules YAML drives two stages
(collapse + rename) on top of the verbatim render; same loader
and per-leaf renderer
tx-diffuses. - tx-sign — age-encrypted signing-key vault and
detached vkey witness creation. The cleartext signing key never
touches disk and the passphrase is never read from
argv. - tx-validate — Conway Phase-1 pre-flight for
unsigned transactions, driven via Node-to-Client against a local
cardano-node. Returns the ledger's verdict as a human or JSON envelope; exit code is the contract (0 clean, 1 structural, ≥2 config/resolver error). - cardano-tx-generator — long-running daemon that drives a configurable mix of Conway transactions against a node for soak / fuzz testing.
The rewriting-rules grammar document pins
the shared YAML language consumed by both tx-inspect --rules
and tx-diff --collapse-rules.
Library
The same logic is exposed under Cardano.Tx.*. Notable entry
points:
| Module | What |
|---|---|
Cardano.Tx.Build |
Monadic DSL for assembling Conway transactions |
Cardano.Tx.Balance |
Fee balancing + collateral selection |
Cardano.Tx.Evaluate |
Redeemer re-evaluation against the final body |
Cardano.Tx.Validate.validatePhase1 |
Ledger Phase-1 pre-flight (Mempool.applyTx) |
Cardano.Tx.Validate.Cli |
Verdict types + renderers used by tx-validate |
Cardano.Tx.Diff |
Structural diff used by tx-diff |
Cardano.Tx.Blueprint |
Schema-aware Plutus datum/redeemer decoding |
Cardano.Tx.Sign.* |
Vault + witness primitives used by tx-sign |
Cardano.Tx.Generator.* |
Generator engine used by cardano-tx-generator |
Generated API reference: cabal haddock cardano-tx-tools.
Install / develop
Linux release artifacts (AppImage, DEB, RPM) for each executable are attached to every GitHub Release.