b-open-io

estimate-transaction-fee

This skill should be used when the user asks to "estimate transaction fee", "calculate BSV fee", "fee per byte", "transaction cost", or needs to estimate fees based on transaction size and current rates.

b-open-io 7 Updated 7mo ago

Resources

1
GitHub

Install

npx skillscat add b-open-io/bsv-skills/estimate-transaction-fee

Install via the SkillsCat registry.

About this skill

We need to produce a 2-3 sentence plain-text summary, objective, factual, no marketing, no bullet points, no markdown, no quotes. At most 60 words. Must explain what skill does, what problem it solves, when to use. Provide 2-3 sentences. Let's craft ~45 words. Sentence 1: The skill estimates BSV transaction fees by calculating size from inputs and outputs and applying a fee rate. Sentence 2: It solves the problem of determining the cost of a transaction before broadcasting.

SKILL.md

Estimate Transaction Fee

Estimate fees for BSV transactions based on size and fee rates.

When to Use

  • Estimate fee before sending a transaction
  • Calculate size of a transaction
  • Understand fee structure

Usage

# Estimate by size
bun run skills/estimate-transaction-fee/scripts/estimate.ts --size 226

# Estimate from raw tx hex
bun run skills/estimate-transaction-fee/scripts/estimate.ts --tx <hex>

# Estimate by inputs/outputs
bun run skills/estimate-transaction-fee/scripts/estimate.ts --inputs 2 --outputs 3

# Custom fee rate
bun run skills/estimate-transaction-fee/scripts/estimate.ts --size 226 --rate 2

# JSON output
bun run skills/estimate-transaction-fee/scripts/estimate.ts --size 226 --json

# Show help
bun run skills/estimate-transaction-fee/scripts/estimate.ts --help

Size Estimation

P2PKH transaction size formula:

  • Base overhead: 10 bytes
  • Per input: ~148 bytes
  • Per output: ~34 bytes

Example: 1 input + 2 outputs = 10 + 148 + 68 = 226 bytes

Output Examples

Default output:

Fee Estimation
==============
Size: 226 bytes
Rate: 1 sat/byte
Fee: 226 satoshis (0.00000226 BSV)

With --inputs/--outputs (shows breakdown):

Fee Estimation
==============
Size: 226 bytes
Rate: 1 sat/byte
Fee: 226 satoshis (0.00000226 BSV)
Breakdown:
  - Inputs (1): ~148 bytes
  - Outputs (2): ~68 bytes
  - Overhead: ~10 bytes

JSON output (--json):

{
  "size": 226,
  "rate": 1,
  "fee": 226,
  "feeBsv": 0.00000226
}

Status

Complete