SuperAPI AI 工具集

justfile

编程与开发

查看项目

更新于 10-16 03:52

技能介绍

用途

justfile 技能用于创作和维护 Just 任务运行器。它面向需要创建、编辑、迁移、检查或查看 just/justfile 的场景,例如修改 justfile、把 Makefile 或 npm scripts 迁移到 just、按仓库风格进行 lint 等。

主要能力

该技能提供多种操作模式:

  • create [description]:创建新的 justfile。
  • edit [path|recipe]:编辑已有的 justfile 或配方。
  • migrate [source]:将 Makefile 或 npm scripts 迁移为 Just 配方。
  • check [path]:检查、lint 或进行 house-style 审计。
  • discover [query]:以只读方式查看配方,使用 just --list、--show、--dump 等命令。
  • 自然语言描述 justfile 相关需求时,可自动检测模式。

自动检测启发式规则包括:已有 justfile 且涉及修改/修复/重命名时进入 edit;出现 migrate、Makefile、package.json scripts 时进入 migrate;出现 lint、check、fmt、house-style 审计时进入 check;出现 list、show、what recipes、dump 时进入 discover;新建 justfile 或添加配方且无现有文件时进入 create。纯 shell、CI YAML、Make 构建语义、mise、Compose 等场景则拒绝处理。

使用方式

当参数为空时,技能会展示模式画廊、权限姿态说明、关键规则摘要和参考索引,不会擅自执行变更操作。

关键规则包括:先运行 just --version 确认版本,优先 ≥1.55.0;不要在 [script] 配方上使用 @,@ 仅用于行级静默;多行 shell 优先使用 [script],避免脆弱的转义多行配方;不要盲目使用 --fmt,先用 --dump/--check 检查;在执行写入、删除或联网的配方前先用 --list/--show 进行 discover;justfile 中不得硬编码密钥,应使用 env/dotenv 或用户自有密钥;迁移时删除 Makefile 或其他源运行器前需先询问。

各模式的操作契约:create 需确认目标路径,未经明确批准拒绝覆盖,加载 references/create.md,搭建 house-style 设置、[default] 列表配方和分组文档,硬依赖优先使用 require("tool");edit 需读取目标 justfile,必要时运行 discover,加载 references/edit.md,保留 house 设置,将 Make 风格的 ## 注释文档迁移为 [doc];migrate 需清点 Makefile/npm scripts 并映射为配方,在用户批准删除前保留源文件,将 Make ## help 转换为 Just [doc]/default-list;check 加载 references/check.md,运行 just --version 及 --list/--dump/--check,报告 house-style 差距,除非被要求否则不自动 --fmt;discover 加载 references/discover.md,优先只读命令 --list、--show、--dump(--dump-format=json)、--groups。

适用场景

适用于 justfile 的创建、编辑、迁移、检查与查看,尤其是将 Makefile 或 npm scripts 迁移到 just、按仓库风格进行 lint 等任务。

限制

以下场景不应使用该技能:shell 脚本生成应使用 shell-scripter;仅 shell 约定编辑应使用 shell-conventions;CI/CD 工作流 YAML 应使用 devops-engineer;Make 文件时间戳/模式规则构建(非任务配方)、Docker Compose 编写、以工具链版本管理为产品的 mise 工具等也不适用。

权限姿态为 write-scoped:可以写入 justfile,但默认只读地 inspect;在执行破坏性配方、删除 Makefile 或运行有副作用的配方前会先询问。

完成前需从技能目录运行验证命令:uv run python scripts/check.py、uv run python skills/skill-creator/scripts/audit.py skills/justfile/、uv run python skills/skill-creator/scripts/package.py skills/justfile --dry-run。完成标准为 check.py 退出码为 0、审计等级 A(≥90)、package --dry-run 报告可移植且无错误、该技能目录下无 portable-CLI 违规。