Bitcoin Inscription Guide

SkillMedia

Guide to Bitcoin inscriptions (Ordinals) — creating, minting, and managing content inscribed on the Bitcoin blockchain. Covers Ordinal theory, inscription types (text, images, HTML), BRC-20 tokens, recursive inscriptions, and marketplace integration.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Bitcoin Inscription Guide skill

What this skill tells your AI

The instructions your AI receives, as published by nirholas/three.ws in data/skills/protocol/bitcoin-inscription-guide/SKILL.md and read by ahel’s review.

Bitcoin inscriptions (Ordinals) let you permanently embed content — text, images, HTML, code — directly on the Bitcoin blockchain. This guide covers the full lifecycle from creation to marketplace.

What Are Inscriptions?

Inscriptions use the Ordinals protocol to embed arbitrary content into individual satoshis:

Bitcoin Transaction
    │
    └── Witness Data (SegWit)
            │
            └── Inscription Envelope
                    ├── Content-Type: "text/plain"
                    └── Body: "Hello, Bitcoin!"

Inscription Types

TypeContent-TypeMax SizeUse Case
Texttext/plain~390KBMessages, poems, data
Imageimage/png, image/webp~390KBArt, pfps, memes
HTMLtext/html~390KBInteractive content
SVGimage/svg+xml~390KBVector art
JSONapplication/json~390KBBRC-20 tokens, metadata
JavaScripttext/javascript~390KBRecursive inscriptions
Audioaudio/wav~390KBMusic
Videovideo/mp4~390KBShort clips

Creating Inscriptions

CLI Tool

# Install
npm install -g @nirholas/bitcoin-inscription

# Inscribe text
btc-inscribe text "Sperax <> Bitcoin" --fee-rate 10

# Inscribe image
btc-inscribe image ./my-art.png --fee-rate 10

# Inscribe HTML
btc-inscribe html ./interactive-art.html --fee-rate 10

Programmatic

import { Inscriber } from '@nirholas/bitcoin-inscription';

const inscriber = new Inscriber({
  network: 'mainnet',
  wallet: process.env.BTC_WALLET_WIF,
  feeRate: 10  // sats/vByte
});

// Inscribe text
const result = await inscriber.inscribeText('Hello from Sperax!');
console.log(`Inscription ID: ${result.inscriptionId}`);
console.log(`TX: ${result.txId}`);

BRC-20 Tokens

BRC-20 is a token standard built on inscriptions:

Deploy

{
  "p": "brc-20",
  "op": "deploy",
  "tick": "SPAX",
  "max": "21000000",
  "lim": "1000"
}

Mint

{
  "p": "brc-20",
  "op": "mint",
  "tick": "SPAX",
  "amt": "1000"
}

Transfer

{
  "p": "brc-20",
  "op": "transfer",
  "tick": "SPAX",
  "amt": "500"
}

Recursive Inscriptions

Inscriptions that reference other inscriptions:

<!-- This HTML inscription references an image inscription -->
<html>
  <body>
    <img src="/content/abc123...inscriptionId" />
    <script src="/content/def456...jsLibInscriptionId"></script>
  </body>
</html>

This enables:

  • On-chain libraries (inscribe jQuery once, reference from many)
  • Generative art with shared rendering code
  • Composable content

Fee Estimation

// Estimate inscription cost
const estimate = await inscriber.estimateFee({
  content: Buffer.from('Hello World'),
  contentType: 'text/plain',
  feeRate: 10
});

console.log(`Size: ${estimate.size} vBytes`);
console.log(`Fee: ${estimate.fee} sats ($${estimate.feeUSD})`);
console.log(`Total: ${estimate.total} sats`);

Marketplace Integration

// List inscription for sale
await inscriber.list({
  inscriptionId: 'abc123...',
  price: 100000,  // sats
  marketplace: 'magic-eden'  // or 'ordinals-wallet'
});

// Search inscriptions
const results = await inscriber.search({
  contentType: 'image/png',
  minSats: 1000,
  maxSats: 1000000,
  sort: 'newest'
});

Links

Signals

GitHub stars
114
Forks
29
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
bitcoin-inscription-guide
Source
github.com/nirholas/three.ws