Deploy a perpetual DFT
An activation gated mode with progressing Bitwork, and the display rule that stops you publishing a supply cap that does not exist.
Protocol behavior Verified 2026-08-31
Describes the Atomicals protocol itself at the pinned reference revision. It does not promise that any product exposes it.
- Page ID
-
guides/deploy-perpetual-dft - Normative authority
- Atomicals reference implementation
- Networks
- mainnet
- Documentation version
- 2026.08
- Activation boundary
- Perpetual mode is activation gated. Confirm it is active on your target network before deploying.
- Audience
- creator, developer
- Owner
- bitcoin-universe-docs
- Sources
-
- Atomicals JavaScript CLI
at
1333565efbfe - Atomicals ElectrumX
at
v1.5.2.0
- Atomicals JavaScript CLI
at
- Known limitations
-
- Do not publish a supply cap unless the deployment configures a global maximum.
Before you start
Section titled “Before you start”- Supported networks: mainnet, subject to activation.
- Status: protocol behavior, activation gated.
- Confirm perpetual mode is active on your target network first. If it is not, the deployment will not behave as you expect.
The command
Section titled “The command”yarn cli init-dft-perpetual <ticker>See the CLI reference.
What is different from fixed
Section titled “What is different from fixed”| Aspect | Fixed | Perpetual |
|---|---|---|
| Availability | Generally available | Activation gated |
| Bitwork | Set once | Progresses over time |
| Mint count | Bounded by max_mints |
Governed by progression parameters |
| Supply cap | Always computable | Only if a global maximum is configured |
The display rule
Section titled “The display rule”If the deployment configures a global maximum, publish it. If it does not, publish “no configured maximum” rather than computing a number as if the deployment were fixed.
A user interface that prints an invented cap misleads every claimant who reads it.
Check before signing
Section titled “Check before signing”- Perpetual mode is active on this network at this height.
- The progression parameters produce a cost curve you actually want.
- You know whether a global maximum is configured, and you will publish that honestly.
- The ticker string is exactly right.
After broadcast
Section titled “After broadcast”- Confirm and wait for indexing.
- Read the deployment back and confirm the mode is recorded as perpetual.
- Read the current Bitwork requirement and note that it will change.
- Publish the resolved Atomical ID and the current requirement, with the height you read it at.
For claimants
Section titled “For claimants”Read the requirement at the height you are targeting, not from a cached page. A claim built against a stale requirement fails and still costs a fee.