Skip to content

truffle command reference

Global flags

All truffle commands inherit these persistent flags.

FlagShortTypeDefaultDescription
--output-ostringtableOutput format: table, json, yaml, csv
--regions-rstrings(all enabled)Filter by regions (comma-separated)
--no-colorboolfalseDisable colorized output
--verbose-vboolfalseEnable verbose output
--langstring(system)Language for output: en, es, fr, de, ja, pt
--no-emojiboolfalseDisable emoji in output
--accessibilityboolfalseEnable accessibility mode (implies --no-emoji)

Search for instance types by pattern (wildcard or regex).

truffle search <pattern>

Pattern syntax: Wildcards (*, ?) are supported and automatically converted to regex. The pattern is anchored — it must match the full instance type name.

Examples:

sh
truffle search m7i.xlarge
truffle search "p4d.*"
truffle search "c[6-8]*.large"
truffle search "r7*" --regions us-east-1,us-west-2
truffle search "m7i.*" --min-vcpu 16 --min-memory 64

Flags:

FlagTypeDefaultDescription
--architecturestring(any)Filter by architecture: x86_64, arm64, i386
--familystring(any)Filter by instance family (e.g., m5, c6i)
--min-vcpuint0Minimum vCPU count
--min-memoryfloat0Minimum memory in GiB
--skip-azsboolfalseSkip AZ lookup (faster, but hides AZ column)
--show-priceboolfalseShow on-demand pricing
--pick-firstboolfalsePrint only the top result's instance type (for piping to spawn)
--timeoutduration5mTimeout for AWS API calls

truffle find

Find instances using natural language queries.

truffle find [query...]

Understands CPU vendors, processor code names, GPU models, sizes, specs, network requirements, and application names. Multiple words are joined as a single query.

Examples:

sh
truffle find graviton
truffle find "amd epyc genoa"
truffle find "h100 8gpu efa"
truffle find "sapphire rapids 32 cores"
truffle find inferentia
truffle find "100gbps intel"
truffle find --app paraview

Supported keywords:

CategoryKeywords
CPU vendorintel, amd, graviton
Processorice lake, milan, sapphire rapids, genoa
GPUa100, v100, h100, t4, l4, inferentia, trainium
Sizetiny, small, medium, large, huge
Specs8 cores, 32gb, 4 gpus
Networkefa, 10gbps, 25gbps, 50gbps, 100gbps
Architecturex86_64, arm64

Flags:

FlagTypeDefaultDescription
--appstringApplication name from the spore.host catalog (e.g., paraview, igv)
--show-queryboolfalsePrint parsed query interpretation before results
--skip-azsboolfalseSkip AZ lookup (faster)
--timeoutduration5mTimeout for AWS API calls

truffle spot

Find Spot instance availability and current pricing.

truffle spot <pattern>

Queries AWS Spot price history for all instance types matching the pattern across all enabled regions (or those specified with --regions). Prints a price-range summary plus a per-AZ table.

With --show-savings, the table adds On-Demand and Savings columns. On-demand rates are fetched live from the AWS Price List API (cached for a day) and fall back to a built-in estimate when the API is unavailable.

The summary block is printed only for the default table output; --output json, csv, and yaml emit just the structured data, so they pipe cleanly into jq and other tools.

Examples:

sh
truffle spot c6a.xlarge
truffle spot "c7*" --sort-by-price --active-only
truffle spot "g4dn.*" --max-price 1.50 --show-savings
truffle spot p4d.24xlarge --regions us-east-1,us-west-2

Flags:

FlagTypeDefaultDescription
--max-pricefloat0Maximum Spot price per hour (USD); 0 = no limit
--show-savingsboolfalseShow savings percentage vs on-demand price
--sort-by-priceboolfalseSort results cheapest first
--active-onlyboolfalseOnly show AZs with active Spot capacity in the lookback window
--lookback-hoursint1Hours of price history to query (1–720)
--local-zonesboolfalseInclude local zones in results
--pick-firstboolfalsePrint only the top result's instance type
--timeoutduration5mTimeout for AWS API calls

truffle az

Search with an availability zone-first perspective.

truffle az <pattern>

Like truffle search, but sorts results by AZ count (most AZs first) and lets you filter by specific AZs or require a minimum AZ count. Useful for multi-AZ deployment planning.

Examples:

sh
truffle az m7i.large
truffle az m7i.large --az us-east-1a,us-east-1b
truffle az "m8g.*" --min-az-count 3
truffle az c7i.xlarge --output json

Flags:

FlagTypeDefaultDescription
--azstrings(all)Filter by specific AZs (comma-separated, e.g., us-east-1a,us-east-1b)
--min-az-countint0Minimum AZs required per region
--regions-onlyboolfalseShow only regions that meet the --min-az-count requirement
--timeoutduration5mTimeout for AWS API calls

Inherited filters: --architecture, --family, --min-vcpu, --min-memory


truffle capacity-blocks

Discover purchasable EC2 Capacity Block for ML offerings (read-only).

truffle capacity-blocks --instance-type <type> --duration-hours <n> [--count <n>]

Queries DescribeCapacityBlockOfferings — "what can I reserve?" — and lists each offering's id, instance type/count, AZ, start/end, duration, and up-front price. The offering id is what spawn capacity-block purchase reserves. For Capacity Blocks you already own, use truffle capacity --blocks instead.

Examples:

sh
truffle capacity-blocks --instance-type p5.48xlarge --count 1 --duration-hours 24
truffle capacity-blocks --instance-type p5.48xlarge --count 2 --duration-hours 48 \
  --region us-east-1 --output json
truffle capacity-blocks --instance-type p5.48xlarge --duration-hours 24 \
  --start-after 2026-07-01T00:00:00Z

Flags:

FlagTypeDefaultDescription
--instance-typestringInstance type to find offerings for (required, e.g. p5.48xlarge)
--duration-hoursintCapacity Block duration in hours (required, e.g. 24)
--countint1Number of instances in the block
--start-afterstringOnly offerings starting after this RFC3339 time
--start-beforestringOnly offerings ending before this RFC3339 time
--regionsstrings(all enabled)Filter by specific regions
--timeoutduration5mTimeout for AWS API calls

truffle capacity

Show On-Demand Capacity Reservations and Capacity Blocks you already own.

truffle capacity

Queries your AWS account for existing capacity reservations and capacity blocks. Requires AWS credentials. To discover purchasable Capacity Block offerings, use truffle capacity-blocks instead.

Examples:

sh
truffle capacity
truffle capacity --available-only
truffle capacity --gpu-only
truffle capacity --instance-types p5.48xlarge,p4d.24xlarge
truffle capacity --blocks

Flags:

FlagTypeDefaultDescription
--instance-typesstrings(all)Filter by specific instance types (comma-separated)
--available-onlyboolfalseOnly show reservations with available capacity
--active-onlybooltrueOnly show active reservations
--min-capacityint0Minimum available capacity
--gpu-onlyboolfalseOnly show GPU/ML instance reservations (p, g, inf, trn families)
--blocksboolfalseShow Capacity Blocks for ML you already own (to discover purchasable offerings, use truffle capacity-blocks)
--odcrbooltrueShow On-Demand Capacity Reservations
--timeoutduration5mTimeout for AWS API calls

truffle list

List instance types, families, or sizes from a single region.

truffle list [--family | --sizes] [--region <region>]

Useful for browsing what's available or building scripts that enumerate instance types.

Examples:

sh
truffle list --family
truffle list --sizes
truffle list --region eu-west-1

Flags:

FlagTypeDefaultDescription
--familyboolfalseList instance families (e.g., m5, c6i, r7g)
--sizesboolfalseList available sizes (e.g., large, xlarge, 2xlarge)
--regionstringus-east-1Region to query

truffle quotas

Show AWS Service Quotas for EC2 and SageMaker instances.

truffle quotas [--regions <regions>] [--family <family>] [--request]

Displays current quotas, running usage, and available headroom. Use --service sagemaker to check SageMaker ml.* instance quotas (processing, training, endpoint, transform). Requires AWS credentials.

Examples:

sh
# EC2 quotas (default)
truffle quotas
truffle quotas --regions us-east-1,us-west-2
truffle quotas --family P --request

# SageMaker ml.* instance quotas
truffle quotas --service sagemaker --regions us-west-2
truffle quotas --service sagemaker --family g5 --regions us-west-2
truffle quotas --service sagemaker --family g5 --request --regions us-west-2

EC2 instance family codes:

CodeInstances
StandardA, C, D, H, I, M, R, T, Z (general purpose)
Gg4dn, g5, g6 (graphics/GPU)
Pp3, p4, p5 (GPU training)
Infinf1, inf2 (Inferentia)
Trntrn1 (Trainium)
Ff1 (FPGA)
Xx1, x2 (memory-optimized)

Flags:

FlagTypeDefaultDescription
--servicestringec2Service to query: ec2 or sagemaker
--regionsstringsus-east-1Regions to check (comma-separated)
--familystring(all)EC2: family code (Standard/G/P/Inf/Trn); SageMaker: instance family prefix (e.g. g5, p4d)
--requestboolfalseGenerate aws service-quotas request-service-quota-increase commands

truffle app

Browse and search the spore.host application catalog.

truffle app list

Lists streamable research applications registered in the spore.host catalog. Use an app name with truffle find --app <name> to find suitable instance types.

Subcommands:

SubcommandDescription
listList all catalog entries with descriptions

truffle version

Print version, build date, and git commit.

truffle version

truffle completion

Generate shell completion scripts.

truffle completion <shell>

Supported shells: bash, zsh, fish, powershell

Setup examples:

sh
# bash
truffle completion bash > /etc/bash_completion.d/truffle

# zsh
truffle completion zsh > "${fpath[1]}/_truffle"

# fish
truffle completion fish | source