mirror of
https://github.com/bestnite/quadlet-migrator-skill.git
synced 2026-04-03 22:53:28 +00:00
Rewrite the README in plainer language and document podman-systemd.unit.5.md as the gold standard when Quadlet-specific behavior is unclear. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
3.1 KiB
3.1 KiB
Quadlet Migrator
一个 skill,用来把 docker run 命令和 Docker Compose 配置转换成可审阅、可调整、可应用的 Podman Quadlet 文件。
功能概览
- 将
docker run命令和 Docker Compose 配置转换成 Podman Quadlet 文件 - 默认先把生成文件写到当前目录,方便你在安装前先审阅
- 只有在你已经指定其他位置,或现有文件会发生冲突时,才询问输出位置
- 帮助在
.container、.pod、.network、.volume、.build之间做选择;对有关联的多容器服务,通常优先用 pod - 在合适时保留
.env/env_file工作流 - 把庞杂的 env 模板收敛成用户真正需要确认的少量问题
- 可生成辅助脚本,例如
install.sh、uninstall.sh、reload.sh、start.sh、stop.sh、restart.sh - 识别服务运行时仍需要的项目内文件,例如挂载配置、初始化数据和辅助脚本
- 在声称结果可运行前,检查 env 文件是否完整
- 在 planning 阶段先确认关键部署决策,并在审阅和执行阶段使用清晰的检查清单
- 当所选镜像使用包含仓库地址的完整镜像名时,例如
docker.io/...或ghcr.io/...,可选规划AutoUpdate=registry - 说明 rootless / rootful 安装路径、部署说明和验证步骤
设计原则
- 用能满足需求的最简单模式
- 将 planning、审阅、生成文件分成独立步骤
- 不虚构部署相关取值
- 如果映射会带来行为变化,要明确说出来
- 优先产出容易理解、容易维护的结果
- 先把文件写到当前目录审阅,再决定是否安装
- 对多容器服务,如果用 pod 更清晰,就优先用 pod
- 运行仍需要的额外文件保留在已审阅的输出中,并通过主机上的绝对路径引用,而不是复制进 Quadlet 单元目录
运行模式
advice:解释映射方式、审查输入,或回答定向问题,不写最终文件design:执行 planning 和最后一轮交互式审阅,但在生成可运行文件前停止generate:执行 planning、最后一轮交互式审阅和 execution,然后生成已批准的可运行文件
工作流
工作流分为三个阶段:Planning、Finalize、Execution。
advice通常停留在Planning,或直接回答一个聚焦的问题design包含Planning和Finalizegenerate包含全部三个阶段
Planning 用来收集并确认仍未决定的部署问题。 Finalize 是在这些问题讨论清楚之后进行的对话式审阅。 只有在用户批准这次审阅后,才进入 Execution。
文档说明
SKILL.md:运行模式、工作流和高层规则references/compose-mapping.md:Compose 字段映射与拓扑决策references/env-strategy.md:env 处理、完整性校验与 typo 检测references/github-repo-intake.md:说明 skill 如何找到正确的仓库入口references/deployment-notes.md:部署说明references/validation.md:验证与排障
限制
本 skill 不保证 Docker Compose 语义与 Podman Quadlet 语义完全等价。
许可证
MIT