Skip to main content

configure-justfile

Check and configure Justfiles with standard recipes. Use when setting up a Justfile, auditing for missing recipes, or migrating from Makefile to Justfile.

Source facts

Repository
laurigates/claude-plugins
Last source activity
September 6, 2026 at 09:18
Detected SKILL.md language
English
Stars
58
Forks
6

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
created
2025-12-16T00:00:00.000Z
modified
2026-09-06T00:00:00.000Z
reviewed
2025-12-16T00:00:00.000Z
description
Check and configure Justfiles with standard recipes. Use when setting up a Justfile, auditing for missing recipes, or migrating from Makefile to Justfile.
allowed-tools
Glob, Grep, Read, Write, Edit, Bash, AskUserQuestion, TodoWrite
args
[--check-only] [--fix]
argument-hint
[--check-only] [--fix]
name
configure-justfile
# /configure:justfile Check and configure project Justfile against project standards. ## When to Use This Skill | Use this skill when... | Use another approach when... | |------------------------|------------------------------| | Setting up a new Justfile for a project | Project already uses Make exclusively and migration is not desired — use `/configure:makefile` | | Auditing existing Justfile for missing standard recipes | Writing complex custom recipes — use `justfile-expert` skill | | Migrating from Makefile to Justfile | Project has no task runner needs (single-file scripts) | | Ensuring Justfile follows team conventions (groups, comments, settings) | Debugging a specific recipe failure — use direct `just` commands | | Running CI/CD compliance checks on project task runners | Only need to list available recipes — run `just --list` directly | ## Context - Project root: !`pwd` - Justfile: !`find . -maxdepth 1 \( -name 'justfile' -o -name 'Justfile' \)` - Makefile: !`find . -maxdepth 1 -name 'Makefile'` - Package files: !`find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' -o -name 'go.mod' \)` - Docker files: !`find . -maxdepth 1 \( -name 'Dockerfile' -o -name 'docker-compose.yml' \)` - Env file: !`find . -maxdepth 1 -name '.env'` - Project standards: !`find . -maxdepth 1 -name '.project-standards.yaml'` ## Parameters Parse from command arguments: - `--check-only`: Report compliance status without modifications (CI/CD mode) - `--fix`: Apply fixes automatically without prompting ## Execution Execute this Justfile compliance check: ### Step 1: Detect Justfile and project type 1. Check for `justfile` or `Justfile` in project root 2. If exists, read and analyze current recipes and settings 3. Detect project type from file indicators: | Indicator | Project Type | |-----------|--------------| | `pyproject.toml` or `requirements.txt` | Python | | `package.json` | Node.js | | `Cargo.toml` | Rust | | `go.mod` | Go | | None of the above | Generic | ### Step 2: Analyze required and optional recipes Check for required recipes: | Recipe | Purpose | Severity | |--------|---------|----------| | `default` | Alias to help (first recipe) | FAIL if missing | | `help` | Display available recipes | FAIL if missing | | `test` | Run test suite | FAIL if missing | | `lint` | Run linters | FAIL if missing | | `build` | Build project artifacts | WARN if missing | | `clean` | Remove temporary files | WARN if missing | Check for context-dependent recipes: | Recipe | When Required | Severity | |--------|---------------|----------| | `format` | If project uses auto-formatters | WARN | | `start` | If project has runnable service | INFO | | `stop` | If project has background service | INFO | | `dev` | If project supports watch mode | INFO | ### Step 3: Check compliance settings Validate Justfile settings: | Check | Standard | Severity | |-------|----------|----------| | File exists | justfile present | FAIL if missing | | Default recipe | First recipe is `default` | WARN if missing | | Dotenv loading | `set dotenv-load` present | INFO | | Help recipe | Lists all recipes | FAIL if missing | | Language-specific | Commands match project type | FAIL if mismatched | | Recipe descriptions | What `just --list` actually renders is usable | WARN if any are fragments | **Check what `--list` RENDERS, not whether a comment exists.** `just` shows one line per recipe, and with no `[doc("...")]` attribute that line is the **last line** of the comment block above the recipe. A block that ends in an example or a wrapped clause — the normal way to write one — therefore lists as a fragment, while the recipe looks fully documented in the file. Prefer the deterministic check over eyeballing it. It reports only recipes whose rendered line is a fragment, so a justfile using one-line comments correctly comes back clean: ```bash python3 "$TOOLS_PLUGIN/scripts/just-recipe-help.py" --audit ``` That script ships with a **different plugin** — `tools-plugin`, whose `justfile-expert` skill documents the `--list` contract behind it — so there is no path from here that is guaranteed to resolve. Locate it with `find ~/.claude/plugins -name just-recipe-help.py`, or fall back to the manual check: for each recipe whose comment block is more than one line, read its **last** line alone and add a `[doc("one line")]` wherever that line is an example, an indented sub-item, or a clause continuing the line above. ### Step 4: Generate compliance report Print a formatted compliance report: ``` Justfile Compliance Report ============================== Project Type: python (detected) Justfile: Found Recipe Status: default ✅ PASS help ✅ PASS (just --list) test ✅ PASS (uv run pytest) lint ✅ PASS (uv run ruff check) build ✅ PASS (docker build) clean ✅ PASS format ✅ PASS (uv run ruff format) start ⚠️ INFO (not applicable) stop ⚠️ INFO (not applicable) dev ✅ PASS (uv run uvicorn --reload) Settings Status: dotenv-load ✅ PASS positional-arguments ℹ️ INFO (not set) Descriptions (what `just --list` renders): 4 recipes list a fragment rather than a description caption-audit last line continues a sentence from the line above comfy-matrix last line is a command example Missing Recipes: none Issues: 0 found ``` If `--check-only`, stop here. ### Step 5: Create or update Justfile (if --fix or user confirms) If `--fix` flag or user confirms: 1. **Missing Justfile**: Create from standard template based on project type 2. **Missing recipes**: Add recipes with appropriate commands 3. **Missing settings**: Add `set dotenv-load` if `.env` exists 4. **Missing help**: Add help recipe with `just --list` Use language-specific commands from the template section in [REFERENCE.md](REFERENCE.md). ### Step 6: Update standards tracking Update `.project-standards.yaml`: ```yaml components: justfile: "2025.1" ``` ## Agentic Optimizations | Context | Command | |---------|---------| | Quick compliance check | `/configure:justfile --check-only` | | Auto-fix all issues | `/configure:justfile --fix` | | List existing recipes | `just --list` | | Verify specific recipe exists | `just --summary` | | Check Justfile syntax | `just --evaluate 2>&1` | | Audit what `--list` renders | `just-recipe-help.py --audit` (ships with `tools-plugin`) | | Read one recipe's notes + flags | `just-recipe-help.py <recipe>` | ## Flags | Flag | Description | |------|-------------| | `--check-only` | Report status without offering fixes | | `--fix` | Apply fixes automatically | ## Examples ```bash # Check current Justfile compliance /configure:justfile --check-only # Create/update Justfile for Python project /configure:justfile --fix # Check compliance and prompt for fixes /configure:justfile ``` ## See Also - `/configure:makefile` - Makefile configuration (legacy) - `/configure:all` - Run all compliance checks - `/configure:workflows` - GitHub Actions workflows - `/configure:dockerfile` - Docker configuration - `justfile-expert` skill - Comprehensive Just expertise For the full Justfile template, language-specific recipe bodies, project-type detection logic, and Makefile migration guidance, see [REFERENCE.md](REFERENCE.md).
View on GitHub