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 thesauce 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 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. Usesauce 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
- Follow the quickstart for a complete program-to-transaction walkthrough.
- Use the TypeScript library to run the same workflow from application code.
- Pick a chain and an endpoint: Chains, endpoints and fees.
