Skip to main content
sauce is the command-line interface of the @eco-incorp/sauce package. It compiles SauceScript programs, simulates them against live chain state, and builds, signs and sends the transaction that runs a program on your Pot. It also looks up chain names, prices and pools, and installs the agent skills and the MCP server into a project.

Prerequisites

Install the sauce command with Node.js 24 or newer, following Installation. If this is your first program, follow the quickstart before using the command reference.

Usage

sauce <command> --help prints that command’s options. An unknown command prints the list of commands and exits 2:

Commands

Compile, test and send

Manage wallets and Pots

Look up names, pools and prices

Set up and maintain a project

Conventions shared by every command

Program files and stdin

A command that takes a program takes a file, or - to read the program from standard input:
A command never reads standard input unless the program operand is -. A program read from standard input resolves its relative imports against the current directory, or against --source-dir.

JSON output

Commands that print a result as text take --json and print one JSON object instead. Commands whose normal output is already JSON, such as sauce tx, print it without the flag.

Questions and -y

A command that needs your approval, such as deploying your Pot before a cook, asks on the terminal (/dev/tty), not on standard input. With no terminal, or with --json, sauce run names what it needs approved and sends nothing until you pass -y (--yes) and, for a wallet or keystore, a password source. -y is accepted by sauce run, sauce reclaim and sauce pot. A command with nothing to ask refuses it:

Endpoints and chains

A command reads a chain through a built-in public endpoint unless you pass --rpc-url or --config. --offline reads no chain at all. Transactions are built and sent only on Ethereum, Base, Arc and Solana, and the testnets Arc Testnet, Base Sepolia, Ethereum Sepolia, Solana Devnet and Solana Testnet; every other chain is a preview chain. Chains, endpoints and fees covers all of this.

Signing

Nothing is signed without --wallet, --keystore or --private-key; on Solana, without --wallet or --keypair. A password is read only from the source you name: --password-env <NAME> (that one environment variable, the only one the command reads), --password-file, or --password-command. Otherwise the command asks for it. Wallets and policy describes wallets, and Funding a Pot describes how a cook’s tokens reach it.

Exit codes

Updates

The command can print a newer-version notice on stderr. Use sauce update --check to check explicitly, or --no-update-check to disable the notice. Package updates explains package, compiler and agent updates; sauce update documents the command.

Topics

Next steps