cli-just
Imported from paulrberg/agent-skills/skills/cli-just.
Install
npx skills add https://github.com/PaulRBerg/agent-skills/tree/main/skills/cli-just
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install paulrberg-agent-skills@llmmart
git clone https://github.com/PaulRBerg/agent-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole paulrberg/agent-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Just Command Runner
Create readable task automation that matches the repository's installed Just version and existing justfile conventions.
Defaults
Inspect
just --version, the existing justfile/module tree, andjust --listbefore editing. Installed capabilities and existing syntax are authoritative over this skill's examples.Preserve bespoke formatting. Do not rewrite a justfile with
just --fmt; usejust --fmt --checkonly when the repository explicitly treats the built-in formatter as authoritative.just --dumpis inspection output, not a formatting source.Define multi-item string sequences one item per line with a parenthesized concatenation. Keep a trailing separator in every non-final item; do not collapse them into one long string. Triple-quoted strings are for values whose newlines are semantic, not visual wrapping. For example:
check-steps := ( "event-class-coverage " + "orphan-disposal " + "price-coverage" )Use the user's section-banner style when creating a new standalone justfile; existing repository organization overrides it.
Workflow
Determine the requested recipe behavior, inputs, outputs, cwd, shell, environment, dependencies, and success condition.
Use the installed manual (
just --help,just --man, or https://just.systems/man/en/) for version-sensitive syntax. Read only the task-specific reference:Task Reference Recipes, parameters, dependencies, cache, executable checks, echo rules references/recipes.mdSettings, dotenv, lists, modules references/settings.mdExpressions, functions, constants references/syntax.mdShell or script recipes, macOS Bash constraints references/inline-scripts.mdCheck/write, status, aliases, organization references/patterns.mdMake the smallest recipe or setting change. Do not enable unstable features unless the requested design needs them and the installed version supports them.
Validate parsing with
just --listorjust --summary, then execute the narrowest safe recipe path. For state-changing recipes, use an existing dry-run/check mode or inspect the expanded command first.
Opinionated Organization
For a new standalone file, prefer dependency declarations, constants, public recipes, checks, then private helpers. Use
set default-list := true when no single default action makes sense and the installed version supports it. Example
starting points live in examples/standalone.just and examples/devkit.just; load one only when creating that shape.
Completion requires a parsable justfile, the requested recipe behavior, and execution or dry-run evidence appropriate to
its side effects. Finish with ### ✅ Just workflow ready, a compact recipe/alias/purpose table when several entries
changed, and ### 🧪 Verification with exact commands and outcomes. Keep confirmation prompts, recipe data output,
compiler output, and just --list output undecorated; preserve the repository's own banner vocabulary.
Files (agent-skills)
-
agents
-
openai.yaml 42 B
policy: allow_implicit_invocation: true
-
-
examples
-
devkit.just 1.1 KB · in bundle
-
standalone.just 4.3 KB · in bundle
-
-
references
-
inline-scripts.md 1.3 KB
# Inline Scripts > Read when a recipe needs multi-line shell or another interpreter. Confirm the installed syntax with `just --help`, > `just --man`, or the current manual before adding an attribute or setting. Use linewise recipes for short commands. Use `[script("interpreter")]` or a shebang when the body needs shell state, traps, control flow, or a non-shell language. `set default-script` changes the default; `[shell]` opts one recipe back to linewise execution. ```just [script("bash")] deploy: set -e ./build.sh ./deploy.sh ``` Script recipes are quiet already. Do not prefix a `[script]` recipe with `@`: there it prints the generated script body. See [recipes.md](recipes.md#quiet-recipes-and-command-prefixes) for linewise echo rules. ## Bash on macOS Assume `/bin/bash` 3.2 unless the recipe selects another shell. Write 3.2-compatible bodies by default; pin a newer interpreter only for semantics that require it, and ensure that path is available in CI and agent environments. ```just set shell := ["/opt/homebrew/bin/bash", "-euo", "pipefail", "-c"] ``` For a Bash-4+-only recipe, guard before using its newer syntax: ```just [script("bash")] modern: if [ "${BASH_VERSINFO[0]}" -lt 4 ]; then echo "error: bash >= 4 required (found $BASH_VERSION)" >&2 exit 1 fi declare -A map=([a]=1) ``` -
patterns.md 750 B
# Justfile Patterns & Conventions Match the existing justfile's banner, grouping, recipe order, aliases, and default behavior. For a new standalone file, start from the linked [standalone template](../examples/standalone.just) or [devkit template](../examples/devkit.just) for its task-runner shape. Put aliases adjacent to their target. Keep an explicit `just --list` default for older or established layouts. Use small recipes and private prerequisites. Offer check/write pairs for mutable operations and run the check path before the write path when practical. Group list output only when it improves the repository's existing organization. Use `[no-cd]`, a working directory, or an OS guard only when the recipe's execution contract needs it. -
recipes.md 1.5 KB
# Just Recipes Reference > Read for recipe shape, dependencies, parameters, attributes, or command echoing. Discover version-sensitive syntax > from the installed `just --help`, `just --man`, or current manual before writing it. Keep recipes explicit and short. Use parameters and dependencies only when they make the invocation clearer; make a helper private when it is not an intended entrypoint. Scope environment variables, working directories, OS restrictions, confirmations, grouping, and parallelism to the recipe that needs them. ## Native executable checks Use Just-native checks instead of shell `command -v` or backtick `which`. When the justfile already enables the needed `set unstable` and `set lists`, `which()` with `assert()` can give an actionable install message. Otherwise use `require()` when its standard missing-executable error is enough. Put the assertion at top level only if every recipe needs the tool; otherwise put it in a private prerequisite of affected recipes. ## Quiet recipes and command prefixes Make ordinary recipes quiet with `@recipe:` when echoed commands add no value. In a quiet recipe, a line-level `@` inverts that choice and deliberately echoes that line, so leave lines unprefixed by default. In a non-quiet recipe, line-level `@` suppresses one command; `-` ignores one command error. See [inline-scripts.md](inline-scripts.md) for script echoing. ```just @check: cargo test @echo "this command is deliberately echoed" ``` -
settings.md 754 B
# Just Settings & Modules Reference > Read for global configuration, dotenv behavior, lists, imports, or modules. Verify every setting against the installed > `just --help`, `just --man`, or current manual. Put settings before imports and recipes. Preserve the repository's existing choices for shell, dotenv, fallback, quietness, module layout, and duplicate definitions. Put shared imports first and local or optional overrides last. For an unstable feature, check whether it also requires a companion setting such as `set lists`. Lists represent collections of distinct values; parenthesized string concatenation builds one string. For the exact setting name, module path syntax, dotenv precedence, and version gate, inspect the installed manual. -
syntax.md 722 B
# Just Syntax Reference > Read for expressions, functions, constants, interpolation, or version-gated syntax. Prefer the installed manual: > `just --help`, `just --man`, or the current online manual. Evaluate shell work only when Just cannot express it directly. For the collection-versus-string distinction, see [settings.md](settings.md). Place `set minimum-version` at the very top, before features it guards. The check runs in the parser; incompatible lexer syntax can still fail before that check. Confirm the feature's introduction version and choose compatible syntax or raise the repository's minimum version. See the [minimum-version manual](https://just.systems/man/en/requiring-a-minimum-just-version.html). -
version.txt 7 B
1.58.0
-
-
SKILL.md 3.6 KB
--- name: cli-just user-invocable: false description: "Use for just/justfile task automation: create justfiles, write recipes, configure settings, add modules/attributes, or set up command-runner workflows." --- # Just Command Runner Create readable task automation that matches the repository's installed Just version and existing justfile conventions. ## Defaults - Inspect `just --version`, the existing justfile/module tree, and `just --list` before editing. Installed capabilities and existing syntax are authoritative over this skill's examples. - Preserve bespoke formatting. Do not rewrite a justfile with `just --fmt`; use `just --fmt --check` only when the repository explicitly treats the built-in formatter as authoritative. `just --dump` is inspection output, not a formatting source. - Define multi-item string sequences one item per line with a parenthesized concatenation. Keep a trailing separator in every non-final item; do not collapse them into one long string. Triple-quoted strings are for values whose newlines are semantic, not visual wrapping. For example: ```just check-steps := ( "event-class-coverage " + "orphan-disposal " + "price-coverage" ) ``` - Use the user's section-banner style when creating a new standalone justfile; existing repository organization overrides it. ## Workflow 1. Determine the requested recipe behavior, inputs, outputs, cwd, shell, environment, dependencies, and success condition. 2. Use the installed manual (`just --help`, `just --man`, or <https://just.systems/man/en/>) for version-sensitive syntax. Read only the task-specific reference: | Task | Reference | | ----------------------------------------------------------------------- | ------------------------------ | | Recipes, parameters, dependencies, cache, executable checks, echo rules | `references/recipes.md` | | Settings, dotenv, lists, modules | `references/settings.md` | | Expressions, functions, constants | `references/syntax.md` | | Shell or script recipes, macOS Bash constraints | `references/inline-scripts.md` | | Check/write, status, aliases, organization | `references/patterns.md` | 3. Make the smallest recipe or setting change. Do not enable unstable features unless the requested design needs them and the installed version supports them. 4. Validate parsing with `just --list` or `just --summary`, then execute the narrowest safe recipe path. For state-changing recipes, use an existing dry-run/check mode or inspect the expanded command first. ## Opinionated Organization For a new standalone file, prefer dependency declarations, constants, public recipes, checks, then private helpers. Use `set default-list := true` when no single default action makes sense and the installed version supports it. Example starting points live in `examples/standalone.just` and `examples/devkit.just`; load one only when creating that shape. Completion requires a parsable justfile, the requested recipe behavior, and execution or dry-run evidence appropriate to its side effects. Finish with `### ✅ Just workflow ready`, a compact recipe/alias/purpose table when several entries changed, and `### 🧪 Verification` with exact commands and outcomes. Keep confirmation prompts, recipe data output, compiler output, and `just --list` output undecorated; preserve the repository's own banner vocabulary.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.