@paulrberg/cli-just

This skill should be used when the user asks to "create a justfile", "write just recipes", "configure just settings", "add just modules", "use just attributes", "set up task automation", mentions justfile, just command runner, or task automation with just.

View in AI SkillSafe app
0 downloads
0 stars
0 demos
SKILL.md
namecli-just
user-invocablefalse

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:

    check-steps := (
      "event-class-coverage " +
      "orphan-disposal " +
      "price-coverage"
    )
    
  • Prefer explicit, small recipes; Just-native executable checks; private helpers; check/write recipe pairs; and aliases after their target recipes. Prefer which() plus assert() with actionable install guidance over shell command -v or backtick which checks when the justfile already enables set unstable and set lists. Otherwise, use require() when its generic missing-executable error is sufficient. Put an assertion at top level only when every recipe needs that tool; otherwise make it a private prerequisite of the affected recipes.

  • Make recipes quiet by default: prefix the recipe name with @ unless echoing commands has clear value. Recipe-level @ inverts per-line @, so never also prefix lines inside a @recipe. Never add @ to a [script] recipe: scripts are already quiet, and @ un-mutes them. See "Quiet Recipes and Command Prefixes" in references/recipes.md.

  • On stock macOS, assume /bin/bash 3.2 unless the recipe explicitly selects a newer shell.

  • 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 references/recipes.md
    Settings, dotenv, lists, modules references/settings.md
    Expressions, functions, constants references/syntax.md
    Shell or script recipes 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.

Embed badges

Add these to your README to show the skill's verification status.

SkillSafe verified badge
Verified badge
[![SkillSafe verified badge](https://api.skillsafe.ai/v1/badge/@paulrberg/cli-just/verified)](https://skillsafe.ai/skill/@paulrberg/cli-just/)
Installs badge
Installs badge
[![Installs badge](https://api.skillsafe.ai/v1/badge/@paulrberg/cli-just/installs)](https://skillsafe.ai/skill/@paulrberg/cli-just/)
Scan badge
Scan badge
[![Scan badge](https://api.skillsafe.ai/v1/badge/@paulrberg/cli-just/scan)](https://skillsafe.ai/skill/@paulrberg/cli-just/)
Eval pass rate badge
Eval pass rate
[![Eval pass rate badge](https://api.skillsafe.ai/v1/badge/@paulrberg/cli-just/eval)](https://skillsafe.ai/skill/@paulrberg/cli-just/)