dexdo is a command-line client for the private inference market on Acki Nacki.
Sellers offer large-language-model inference for sale; buyers purchase it by the
tick. Deals settle on chain with escrow, private notes, and end-to-end encrypted
streaming, so neither side has to trust the other to be paid or served fairly.
Linux / macOS
curl -fsSL https://github.com/gosh-sh/dexdo-cli/releases/latest/download/install.sh | shWindows (PowerShell)
irm https://github.com/gosh-sh/dexdo-cli/releases/latest/download/install.ps1 | iexThe installer detects your operating system and CPU architecture, downloads the
matching release archive, verifies its checksum, and installs dexdo into
~/.local/bin (Linux/macOS) or %LOCALAPPDATA%\dexdo\bin (Windows). Override
the directory with DEXDO_BIN_DIR.
The installer then puts that directory on your PATH so dexdo works in new
terminals. On Linux/macOS it appends one line, marked
# added by dexdo installer, to the config of the shell in $SHELL:
| Shell | File | Line |
|---|---|---|
| zsh | ~/.zshrc |
export PATH="$HOME/.local/bin:$PATH" |
| bash (Linux) | ~/.bashrc |
export PATH="$HOME/.local/bin:$PATH" |
| bash (macOS) | ~/.bash_profile |
export PATH="$HOME/.local/bin:$PATH" |
| fish | ~/.config/fish/config.fish |
fish_add_path "$HOME/.local/bin" |
It prints the file it changed and the line it added, never writes outside
$HOME, never needs sudo, and re-running it does not duplicate the entry. Any
other shell is left untouched with a copy-paste instruction instead. A running
shell keeps its old PATH, so source the file or open a new terminal.
To skip PATH setup entirely and just get the instruction:
curl -fsSL https://github.com/gosh-sh/dexdo-cli/releases/latest/download/install.sh | DEXDO_NO_MODIFY_PATH=1 sh
# or, with an argument:
curl -fsSL https://github.com/gosh-sh/dexdo-cli/releases/latest/download/install.sh | sh -s -- --no-modify-pathDownload the archive for your platform from the
latest release, verify it
against SHA256SUMS, extract it, and move dexdo onto your PATH.
| Platform | Archive |
|---|---|
| Linux x86_64 | dexdo-<version>-x86_64-linux.tar.gz |
| Linux ARM64 | dexdo-<version>-aarch64-linux.tar.gz |
| macOS (Apple Silicon) | dexdo-<version>-aarch64-macos.tar.gz |
| macOS (Intel) | dexdo-<version>-x86_64-macos.tar.gz |
| Windows x86_64 | dexdo-<version>-x86_64-windows.zip |
cargo build --release -p dexdo --features shellnetThe release binary is written to target/release/dexdo.
Blockchain addresses are shown and stored in the canonical Acki Nacki form:
<dapp_id>::<account_id>
Both halves are 64 hex characters. Every address dexdo prints, and every address
it writes into market.json or a deal handle, uses that form.
Wherever dexdo takes an address (--token-contract, --note-addr,
--multisig-address, --to, a positional address, ...) it accepts either the
canonical form or the older 0:<account_id> form, so an address copied from an
earlier run still works. Files written by an earlier version keep loading
unchanged and are rewritten canonically the next time dexdo saves them.
| Command | What it does |
|---|---|
doctor |
Read-only network version / pin and market-freshness checks. Alias: health. |
provision |
Bring up an order book, model root, and per-deal token contract for a market. |
note deploy |
Mint a wallet-funded private note and fold it into the local note pool. |
seller |
Seller client: gateway, authorization, and stream handover. |
buyer |
Buyer client: endpoint decryption, challenge signing, and stream reception. |
markets |
Discover active model order books and their depth. |
quote |
Compute an executable quote over current order-book depth. |
orders |
List, show, or cancel this note's resting inference orders. |
monitor |
Human-readable, read-only view of the loaded note's offers, deals, and exposure. |
reclaim |
Buyer reclaims escrow when a seller does not show. |
recover |
Buyer closes an orphaned open deal so it can be settled. |
dispute |
Buyer opens an on-chain dispute on an open deal. |
destroy |
Seller closes a stopped deal's token contract. |
Run dexdo <command> --help for the flags of any command.
dexdo reads its model configuration from models.json and the deployed
contract pins from contracts/deployed.shellnet.json in the working directory.
Both paths are overridable with per-command flags.
Released under the MIT License -- see LICENSE.