All catalog, skill, project, and discovery content on timewarp.software is free. We never require payment to crawl, train on, or use these materials. If an agent (or human) found them useful, they may optionally tip. Tips are voluntary; they are not a fee for content access.
Two rails, one Hub wallet:
- Lightning Address for humans (
tip@timewarp.software). - x402 on
/api/tipfor agents — Base USDC and Lightning sats.
What never requires payment
These surfaces stay free and must never return HTTP 402 from tip middleware:
- This page (
/tip/, markdown twin) - Homepage, packages, skills, projects
/llms.txt,/llms-full.txt, package and skills JSON indexes/.well-known/*discovery files including LNURL-pay (/.well-known/lnurlp/tip)- Every page’s markdown twin (
…/index.md)
Lightning Address (humans)
| Item | Value |
|---|---|
| Address | tip@timewarp.software |
| LNURL-pay | GET /.well-known/lnurlp/tip (LUD-06 / LUD-16) |
| Callback | GET /lnurlp/tip/callback?amount=<millisatoshis> |
| Wallet | Any LNURL-pay wallet (Wallet of Satoshi, Alby, …) |
The well-known LNURL endpoint is a mailbox, not a paywall: it never returns HTTP 402. Amounts are chosen in the wallet within the advertised min/max.
x402 /api/tip (agents)
| Item | Value |
|---|---|
| Endpoint | GET or POST /api/tip (trailing slash accepted; /api is a discovery alias) |
| USDC | $0.10 exact on Base mainnet eip155:8453, USDC 0x833589fCD6eDb6E08f4c7c32D4f71b54bdA02913, Coinbase CDP facilitator |
| Lightning | 1000 sats exact on Bitcoin bip122:000000000019d6689c085ae165831e93 (CAIP-2). The 402 accepts entry has extra.paymentMethod = "lightning" and a BOLT11 in extra.invoice |
| Protocol | x402 — HTTP 402 + payment headers |
USDC is not replaced. Lightning is a second accept on the same resource.
Testnet (Base Sepolia eip155:84532) is used only in local development for the
USDC rail.
Lightning x402 follows the Alby facilitator flow (not Coinbase CDP):
GET /api/tip→ 402. DecodePAYMENT-REQUIRED. Use the accept whoseextra.paymentMethodis"lightning". Payextra.invoicewith any Lightning wallet.- Retry the same URL with
payment-signature= base64({ x402Version: 2, scheme, network, payload: { invoice }, accepted }). - The worker verifies via receive-only NWC
lookup_invoice(Hub stays off the public net).
If the Hub is down, the USDC accept still 402s; Lightning invoices may be omitted until the Hub is back.
Responses on /api/tip only
| Condition | Status |
|---|---|
| Tips disabled or misconfigured | 503 (never 402) |
| Tips enabled, no payment | 402 + PAYMENT-REQUIRED |
| Payment verified and settled | 200 thank-you + PAYMENT-RESPONSE |
The 200 JSON (or markdown) amount and network match the rail that settled:
USDC $0.10 on Base (eip155:8453), or 1000 sats (or TIP_LIGHTNING_SATS)
on Bitcoin Lightning (bip122:000000000019d6689c085ae165831e93).
Payment never applies to free documentation, catalog routes, or LNURL-pay.
For agents
- Read this page or
/llms.txt(Docs lists free tip docs; Optional lists the tip action URL). - Call
/api/tipwith an x402-capable client. Buyer quickstart: docs.x402.org. Lightning-capable clients pay the BOLT11 inextra.invoicethen retry withpayload.invoice. - On success, expect JSON (or markdown if you send
Accept: text/markdown) saying thank you, withamountandnetworkmatching the rail you paid.
Tips do not unlock content. Free routes stay free under this design.