License
acp2md requires a valid license to run conversion commands. License management is done with the license command group.
This is the first operational dependency to validate on a new machine. Do not wait until a real export run fails to discover a licensing issue.
Purchase acp2md from the acp2md store page or review all active plans on store.climakers.com, the Climakers storefront on Lemon Squeezy. The license is tied to the machine where it is activated.
Overview
acp2md supports two licensing paths:
- Online commercial activation via LemonSqueezy with an internet-connected machine
- Offline local activation with a machine-bound license file for restricted or air-gapped environments
This flexibility means you can standardize on acp2md whether your workflow runs in a standard connected environment or in a tightly controlled network.
license activate
Activates acp2md with either a purchased license key or a local offline license file.
Use online activation when the machine can reach the Lemon Squeezy licensing service. Use local file activation when the machine is air-gapped, customer-restricted, or operating in a network where online validation is not practical.
# Online commercial activation
acp2md license activate --license-key YOUR_LICENSE_KEY
# Offline local activation
acp2md license activate --license-file ./license.binAfter activation, validate the result immediately:
acp2md license validateDiagnostic and recovery commands such as config,
doctor, license, tree,
support, and completion remain available even when
page export commands are blocked by licensing. That means you can recover from
a broken license state without reinstalling the tool.
license validate
Checks whether the currently installed license is active and usable on the current machine.
Run this after activation, before the first real export, and before any scheduled or customer-facing run where a licensing failure would be disruptive.
acp2md license validateTypical reasons to run license validate:
- immediately after activating a new machine
- before a recurring export or compliance workflow starts
- after restoring a machine from backup or after profile migration
- when a previous activation was deactivated or may have expired
Validation behavior by plan
acp2md validates installed LemonSqueezy licenses automatically before each non-exempt command, but an online API validation is not triggered on every command. For online licenses, an API validation happens when either threshold below is reached, whichever comes first.
LemonSqueezy (online) licenses
| Variant | Time threshold | Command threshold |
|---|---|---|
| Trial | 2 days | 50 commands |
| Hobbyist | 6 days | 50 commands |
| Multiple Seats | 7 days | 25 commands |
The Trial variant is a free 14-day evaluation. In addition to the thresholds above, it has an absolute 14-day expiration date from the time of purchase.
If the machine is offline when an API validation becomes due, acp2md falls back to local validation and continues operating normally. The API check is retried on a later command when connectivity returns. Run acp2md license validate when you want to force the online status check immediately.
Local (offline) licenses
Offline licenses are validated entirely on-device and do not require network access. The license file can enforce these constraints:
| Constraint | Description |
|---|---|
| Command limit | Maximum number of commands allowed (0 means unlimited) |
| Validation interval | Time-based validity window such as 24h, 7d, or 1y |
| Expiration date | Absolute expiry date baked into the generated file |
license list
Displays the stored license details known to the local installation.
acp2md license listUse this when you want a quick operator-facing summary of the current license state without opening the raw license file.
license where
Shows the location of the encrypted license file on disk.
acp2md license whereThis is useful when you need to confirm the active machine-specific license location before backup, restore, or support work.
license export
Exports the current license file to a backup location.
Use this before replacing a workstation, rebuilding a runner image, or handing operational custody to another team member.
acp2md license export --output ./acp2md-license-backup.binTreat exported license files as sensitive machine-bound assets. Store them in the same protected locations you use for other operational secrets and backup materials.
license import
Imports a previously exported license file from a backup path.
acp2md license import --license-file ./acp2md-license-backup.binUse this when you are restoring a known-good local activation into the expected application location after a rebuild or recovery workflow.
license deactivate
Deactivates the current machine-bound license instance.
acp2md license deactivateRun this before retiring a machine, rebuilding it, or intentionally moving the operational seat to another workstation. Clean deactivation is safer than discovering a stale activation during a time-sensitive page export.
license terms
Prints the software license agreement in the terminal.
acp2md license termsUse this when procurement, legal, or compliance stakeholders need to review the operative license text from the installed tool. The same legal text is also available on the License Terms page.
Recommended Operator Flow
For a new machine or runner, the safest sequence is:
- activate the license with
acp2md license activate - confirm the activation with
acp2md license validate - record the installed location with
acp2md license where - run
acp2md doctorto validate the full workstation state - export a backup copy with
acp2md license exportwhen the machine becomes part of a production workflow
This keeps activation, verification, diagnostics, and recoverability tied together instead of treating licensing as a one-time setup detail.
Offline And Restricted Environments
For air-gapped and restricted-network environments, use the companion licensegen workflow to produce a local license.bin file and activate it with --license-file.
That path is intended for:
- isolated customer labs
- regulated environments with no outbound access
- disaster recovery environments where internet access is intentionally disabled
After local activation, use the same operational checks as an online activation:
acp2md license validate
acp2md doctorNeed Help?
If license activation or validation fails:
- re-run
acp2md license validate - confirm the installed file location with
acp2md license where - run
acp2md doctor - generate a support bundle with
acp2md support --output acp2md-support.txt
That sequence gives support the licensing, environment, and diagnostic context needed to resolve the issue quickly.