A CLI factory planning companion for Satisfactory. Calculate production rates, resolve full supply chains, analyze factory bottlenecks, and plan builds — with an optional Claude Code skill that turns natural language into precise game calculations.
Pathfinder has two components:
| Component | What it is |
|---|---|
pathfinder CLI |
A fast Rust binary for querying game data and running factory math |
satisfactory-companion skill |
A Claude Code skill that uses the CLI to answer factory planning questions in natural language |
You can use the CLI on its own or pair it with the skill for a conversational planning experience.
brew tap korti11/tap
brew install satisfactory-pathfindercurl -fsSL https://raw.githubusercontent.com/korti11/satisfactory-pathfinder/master/install/install.sh | bashInstalls to ~/.local/bin by default. Override with INSTALL_DIR:
INSTALL_DIR=/usr/local/bin curl -fsSL https://raw.githubusercontent.com/korti11/satisfactory-pathfinder/master/install/install.sh | bashirm https://raw.githubusercontent.com/korti11/satisfactory-pathfinder/master/install/install.ps1 | iexInstalls to %LOCALAPPDATA%\Programs\pathfinder and adds it to your user PATH.
Requires Rust (stable).
git clone https://github.com/korti11/satisfactory-pathfinder.git
cd satisfactory-pathfinder
cargo build --releaseThe binary will be at target/release/pathfinder. Copy it somewhere on your PATH:
# Linux / macOS
cp target/release/pathfinder ~/.local/bin/pathfinder
# Windows (PowerShell)
Copy-Item target\release\pathfinder.exe "$env:LOCALAPPDATA\Programs\pathfinder\pathfinder.exe"All commands support --json for machine-readable output.
# List all items
pathfinder list items
# Filter by category: raw, liquid, gas, ingot, part, fuel, equipment, special
pathfinder list items --category ingot
# Look up a single item by id or name (includes stack_size and all fields)
pathfinder list items --item "Iron Plate"
# List recipes for an item
pathfinder list recipes --item iron_rod
# Look up a single recipe by exact id
pathfinder list recipes --id iron_plate_default
# List alternate recipes only
pathfinder list recipes --alternate
# List all machines
pathfinder list machines
# Find which milestone unlocks a specific machine or recipe
pathfinder list milestones --unlocks foundry
pathfinder list milestones --unlocks steel_ingot_default# How many machines and at what clock to produce 60 Iron Rods/min
pathfinder calc "Iron Rod" --rate 60
# With a specific clock speed (percentage)
pathfinder calc "Iron Rod" --rate 60 --clock 150# Full chain for 5 Computers/min
pathfinder chain "Computer" --rate 5
# Skip alternate recipes
pathfinder chain "Computer" --rate 5 --no-alternates
# Treat an item as externally supplied (won't recurse into it)
pathfinder chain "Computer" --rate 5 --assume iron_ingot:240# Single factory file
pathfinder bottleneck --factory world/my_factory.json
# All factories in a world file
pathfinder bottleneck --world world/factories.jsonGiven a fixed number of machines, find the clock speed needed to hit a target rate:
pathfinder overclock "Iron Rod" --machines 3 --rate 45
pathfinder overclock "Computer" --machines 5 --rate 10# List all sinkable items ranked by AWESOME Sink point value
pathfinder sink
# Points/min for a specific item at a given rate
pathfinder sink --item Computer --rate 5
# Filter by category
pathfinder sink --category part# Resource rates and waste output for 4 uranium plants
pathfinder nuclear --plants 4
# Plutonium fuel rod variant
pathfinder nuclear --plants 2 --fuel plutoniumSearch across items, recipes, MAM nodes, and milestones by name or ID. All terms must match (case-insensitive).
# Search everything
pathfinder search iron plate
# Narrow by category
pathfinder search iron plate --recipes
pathfinder search caterium --mam
pathfinder search steel --milestones
pathfinder search iron --itemsTrack which milestones, MAM nodes, Space Elevator phases, and alternate recipes you've unlocked in your save:
# Show all unlocked progress
pathfinder progress show
# Filter views
pathfinder progress show --milestones
pathfinder progress show --mam
pathfinder progress show --phases
pathfinder progress show --alternates
pathfinder progress show --locked # show only locked items
# Unlock and lock entries
pathfinder progress unlock milestone tier_2_parts
pathfinder progress lock milestone tier_2_parts
pathfinder progress unlock mam caterium_quickwire
pathfinder progress unlock phase 1
pathfinder progress unlock alt alt_pure_iron_ingotProgress is stored in progress.json in your working directory. All IDs are validated against game data.
The skill/satisfactory-companion.md file is a Claude Code skill that wraps the pathfinder CLI with natural language capabilities including:
- Factory design and ASCII blueprint generation
- Power budget and resource node planning
- Belt, pipe, and pipeline pump planning
- Train logistics calculation
- Space Elevator progress tracking
- Nuclear waste management
- Hard Drive alternate recipe advisor
- Unlock advisor (milestones, MAM research, Space Elevator phases)
- World factory dependency graph
- AWESOME Sink value ranking
- Building material estimation
Once pathfinder is installed and on your PATH, run:
# Install globally (available in all Claude Code projects)
pathfinder companion install --global
# Install for the current project only
pathfinder companion installDesign me a factory for 10 Computers/min
How many trains do I need between my oil factory and main base?
Am I close to completing Space Elevator Phase 3?
Which Hard Drive alternates should I prioritize for my current setup?
I have 4 nuclear plants — how do I handle the waste?
Plan the pipeline pumps for a 130m vertical run
All game knowledge lives in data/. These JSON files are the source of truth for all calculations — nothing is hardcoded in the Rust logic.
| File | Contents |
|---|---|
items.json |
All items with categories, stack sizes, and sink values |
recipes.json |
All recipes including defaults, alternates, equipment workshop, converter, and nuclear burning recipes |
machines.json |
All machines with power draw and slot counts |
resources.json |
Resource node entries with purity and extraction rates |
logistics.json |
Conveyor belt (Mk.1–6) and pipeline (Mk.1–2) tier capacities |
milestones.json |
All HUB milestones, Space Elevator phases, and MAM research trees with full dependency graphs |
Pathfinder can analyze your factories if you track them in a JSON file:
[
{
"id": "oil_factory_01",
"name": "Oil Factory",
"location": "Northern Oil Fields",
"active": true,
"machines": [
{
"id": "fuel_refineries",
"machine": "refinery",
"recipe": "fuel_default",
"count": 6,
"clock_speed": 1.0,
"notes": "Line 1 — Fuel for generators"
}
],
"inputs": [
{ "item": "crude_oil", "rate": 480.0, "source": "2x pure nodes" }
],
"outputs": [
{ "item": "fuel", "rate": 240.0, "destination": "12x Fuel Generator" }
],
"notes": "Self-powered via on-site generators."
}
]# Build
cargo build
# Run clippy (required before committing)
cargo clippy
# Validate data file integrity
node tools/validate_data.jsReleases follow Semantic Versioning. All work happens on main; releases are tagged (v0.1.0, v0.2.0, etc.) and trigger CI builds.