From kssbox
为任意全栈工程生成并治理统一的 dev 和 docker deploy 资产,自动识别现有脚本、Dockerfile、compose、env,按规则执行 keep / migrate / merge / delete / generate,最终收敛为 `scripts/dev.sh`、`scripts/deploy.sh`、双 compose 与 `docker/.env.example -> docker/.env` 单一 env 契约。当用户说"给项目加 dev 脚本"、"做 docker deploy"、"统一本地启动和部署"、"生成 dev.sh 和 deploy.sh"、"治理旧脚本和旧 docker 资产"时,必须使用本 skill。
How this skill is triggered — by the user, by Claude, or both
Slash command
/kssbox:fullstack-dev-deployThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
这个 skill 面向“任意全栈工程”的工程化改造,目标是统一并治理两类入口:
这个 skill 面向“任意全栈工程”的工程化改造,目标是统一并治理两类入口:
scripts/dev.sh [service...]scripts/deploy.sh [service...]默认约定:
allbackend、h5、weapp、admin-web、gateway阶段一:Discovery 共享扫描 → 详见 references/phase-1-discovery.md
服务分组识别 → 详见 references/service-group-detection.md
阶段二:镜像源与环境变量契约 → 详见 references/mirror-and-env-contract.md
阶段三:生成 dev 入口 → 详见 references/phase-2-dev.md
阶段四:生成 docker deploy → 详见 references/phase-3-deploy.md
阶段五:验证与输出摘要 → 详见 references/testing-and-validation.md
输出格式:references/output-summary.md
在每个阶段开始前,先读对应的 reference 文件,再执行。
阶段五不可跳过,生成物不验证、不输出摘要,不算完成。
若最终没有形成 scripts/dev.sh、scripts/deploy.sh、docker/infra.compose.yml、docker/app.compose.yml 与 docker/.env.example -> docker/.env 单一 env 契约,则视为未完成。
| 情况 | 处理方式 |
|---|---|
| 用户已给出目标项目路径 | 直接进入阶段一 |
| 用户只描述想法,未给出仓库路径 | 先问目标项目根目录在哪里 |
| 目标项目不是全栈仓库 | 告知本 skill 更适合 fullstack 项目,确认是否继续 |
| 目标仓库已有 dev/deploy 资产 | 先识别语义,再按规则 keep / migrate / merge / delete |
先读取:
references/phase-1-discovery.mdreferences/service-group-detection.md核心目标:
all 与真实服务名的服务映射;若存在稳定聚合语义,再追加聚合组assetInventory 与 convergencePlan,用于治理现有资产如果无法可靠识别真实服务名、app 分组、旧资产语义或 env 归属,必须停下追问用户。
读取 references/mirror-and-env-contract.md。
核心目标:
docker/.env.examplecp docker/.env.example docker/.env 生成实际 env 文件,且不入 gitscripts/dev.sh、scripts/deploy.sh、Compose 与 Docker build 全部围绕 docker/.env 工作读取 references/phase-2-dev.md。
核心目标:
scripts/dev.sh [service...]all、真实服务名与可选聚合组的参数行为docker/.envdocker/infra.compose.yml读取 references/phase-3-deploy.md。
核心目标:
scripts/deploy.sh [service...]docker/ 目录下统一放置 infra / app 部署资产docker/infra.compose.yml 作为基础设施编排入口docker/app.compose.yml 作为业务服务编排入口docker/<app>/Dockerfile同时读取:
references/testing-and-validation.mdreferences/output-summary.md核心目标:
scripts/dev.sh 参数解析、服务映射和启动成功scripts/deploy.sh、docker/infra.compose.yml、docker/app.compose.yml、docker/<app>/Dockerfile 可在本机 Docker 环境工作默认目标是直接改造目标仓库,生成或更新:
scripts/dev.shscripts/deploy.shdocker/infra.compose.ymldocker/app.compose.ymldocker/<app>/Dockerfiledocker/.env.example必要时可补充:
输出前自检:
assetInventory 与 convergencePlanscripts/dev.sh 与 scripts/deploy.sh 都支持默认 all,并优先接受真实服务名docker/infra.compose.yml、docker/app.compose.yml 与 docker/<app>/Dockerfiledocker/.env.example,运行时统一复制为 docker/.env| 情况 | 处理方式 |
|---|---|
仓库结构不是 frontend/* + backend/* | 继续扫描,只要能稳定识别 app 即可 |
已有 run.sh、start.sh 或旧 deploy 脚本 | 不直接保留旧入口,统一收敛到 dev.sh / deploy.sh,并清理冗余文件 |
| 识别到多个可能的聚合组或服务映射 | 列出候选映射,向用户确认后再继续 |
| 识别到多个 compose 文件 | 先判断属于 infra 还是 app,再收敛到双 compose |
| 识别到根级或散落 env 文件 | 先判断归属 app 和环境,再迁移或删除 |
| 宿主机未安装 Docker / Compose | 记录缺失并根据 reference 生成安装或引导步骤 |
| 目标项目已有 Kubernetes 配置 | 忽略,不扩展到 K8s,本 skill 只处理单机 Docker / Compose |
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub kevinbrother/kssbox-plugin --plugin kssbox