| name | just |
| description | Use `just` to save and run project-specific commands. Use when the user mentions `justfile`, `recipe`, or needs a simple alternative to `make` for task automation. |
Just Command Runner
GitHub Repository
just is a handy way to save and run project-specific commands. It's a command runner, not a build system, avoiding much of make's complexity.
Instructions
Prerequisites
just must be installed: brew install just
- Commands are stored in a
justfile (or Justfile).
Common Settings (set ...)
You can configure just behavior at the top of your justfile:
set shell := ["bash", "-c"]: Change the default shell.
set dotenv-load: Automatically load .env files.
set allow-duplicate-recipes: Allow overriding recipes.
set fallback: Search for justfile in parent directories.
set quiet: Don't echo commands by default.
Example Justfiles
For complete reference, see these templates:
Workflow
-
Create a justfile:
Define recipes at the top level of your project. Always include a default recipe that lists available commands:
default:
@just --list
# The default recipe (runs when calling `just` with no args)
default:
just --list
# A basic recipe
test:
cargo test
# A recipe with parameters
build target:
echo "Building {{target}}..."
cc main.c -o {{target}}
-
Run Recipes:
- Run the default recipe:
just
- Run a specific recipe:
just <recipe>
- Pass arguments to a recipe:
just build my-app
- List all available recipes:
just --list
-
Advanced Features:
Examples
Example 1: Standard Development Justfile
User request:
Create a justfile for my Node project to handle lint, test, and dev
You would:
- Create a
justfile:
default:
@just --list
lint:
npm run lint
test:
npm test
dev:
npm run dev
- Tell the user they can now run
just dev or just test.
Example 2: Recipe with Parameters
User request:
Add a recipe to just to deploy to a specific environment
You would:
- Edit the
justfile:
deploy env:
echo "Deploying to {{env}}..."
./scripts/deploy.sh --target {{env}}
- Inform the user they can run
just deploy production.
Example 3: Listing Recipes
User request:
What commands are available in this project?
You would:
- Run
just --list to see available recipes and their comments.