refactor: rename dev-app to app-dev

Both TickShield app skills now uniformly follow the app-<action>
naming convention (app-dev, app-publish) — the grandfathered-name
exception is removed from AGENTS.md, README and skill-forge
This commit is contained in:
sunjunzhao committed 2026-10-19 16:58:03 +08:00
1 parent eef31c17ba
commit a10d01a44b
23 files changed
+13 -13

No files matched your search

+5 -5
View File
@@ -1,6 +1,6 @@
---
name: app-publish
description: 改造目标项目 Gitea Actions CI/CD 工作流的应用部署 job,按 TickShield(刻盾云)平台契约改用 aigrego-release(release-cli)发布上架:submit app.manifest.json + 记录镜像/上传 dist 产物 + --store 自动上架 + --wait 等治理审核,推 v 开头 tag 即发布到应用市场;项目没有工作流时新建完整发布工作流。凡用户要求「把部署 job 改成发布到应用市场 / 这个项目上架到 TickShield 商店 / CI 里自动发布应用 / 推 tag 自动上架 / 给 workflow 加应用市场发布 / 把这个 app 挂到门户商店 / 上线到刻盾云市场」,或带着 流水线绿了但商店没上架没生效 / 发布了但商店搜不到我的应用 / 403 auto_publish is off for this app / 401 凭证无效 / 403 listingKey mismatch / 400 index.html missing at archive root / 409 submit a manifest first 等症状,或提到 aigrego-release / release-cli / publish --store / --wait / AIGREGO_PORTAL_URL / APP_KEY / APP_SECRET / auto_publish / 应用市场发布模板 时,务必使用本 skill——即使用户没说「应用市场」四个字。Use whenever the user wants to convert or add a Gitea Actions deploy job that publishes a TickShield app to the platform marketplace via aigrego-release. 边界:应用开发/审查/手工发布指引用 dev-app;通用构建部署工作流规范(本机重建容器部署)用 gitea-actions;Dockerfile 选型评审用 runtime-image;git 提交推送日报用 push-and-report。
description: 改造目标项目 Gitea Actions CI/CD 工作流的应用部署 job,按 TickShield(刻盾云)平台契约改用 aigrego-release(release-cli)发布上架:submit app.manifest.json + 记录镜像/上传 dist 产物 + --store 自动上架 + --wait 等治理审核,推 v 开头 tag 即发布到应用市场;项目没有工作流时新建完整发布工作流。凡用户要求「把部署 job 改成发布到应用市场 / 这个项目上架到 TickShield 商店 / CI 里自动发布应用 / 推 tag 自动上架 / 给 workflow 加应用市场发布 / 把这个 app 挂到门户商店 / 上线到刻盾云市场」,或带着 流水线绿了但商店没上架没生效 / 发布了但商店搜不到我的应用 / 403 auto_publish is off for this app / 401 凭证无效 / 403 listingKey mismatch / 400 index.html missing at archive root / 409 submit a manifest first 等症状,或提到 aigrego-release / release-cli / publish --store / --wait / AIGREGO_PORTAL_URL / APP_KEY / APP_SECRET / auto_publish / 应用市场发布模板 时,务必使用本 skill——即使用户没说「应用市场」四个字。Use whenever the user wants to convert or add a Gitea Actions deploy job that publishes a TickShield app to the platform marketplace via aigrego-release. 边界:应用开发/审查/手工发布指引用 app-dev;通用构建部署工作流规范(本机重建容器部署)用 gitea-actions;Dockerfile 选型评审用 runtime-image;git 提交推送日报用 push-and-report。
---
# app-publish — 把 CI 部署环节改造为发布上架到 TickShield 应用市场
@@ -27,7 +27,7 @@ description: 改造目标项目 Gitea Actions CI/CD 工作流的应用部署 job
| 要什么 | 从哪来 | 放哪 |
|---|---|---|
| `app.manifest.json` | 仓库根(无 → die,先走 `dev-app` 完成应用接入) | 仓库根,listingKey/版本的单一事实源 |
| `app.manifest.json` | 仓库根(无 → die,先走 `app-dev` 完成应用接入) | 仓库根,listingKey/版本的单一事实源 |
| `Dockerfile`(service/micro 型) | 仓库根(无 → die,先走 `runtime-image`;link/native 型不需要镜像段) | 仓库根 |
| 平台地址 | 用户告知(workflow 默认 `http://gateway:8080`) | Gitea Variable `TICKSHIELD_PORTAL_URL`,不写死 |
| 应用凭证 | **平台基座「接入应用」功能获取**(APP_KEY == listingKey、APP_SECRET) | 人配到 Gitea 仓库 Secrets;绝不进对话/文件 |
@@ -41,7 +41,7 @@ description: 改造目标项目 Gitea Actions CI/CD 工作流的应用部署 job
| 探测项 | 怎么探 | 判定/用途 |
|---|---|---|
| 已有 workflow(**最先做,决定模式**) | glob `.gitea/workflows/*.yml`、`.yaml` | 有 → 改造模式;无 → 新建模式;已有发布工作流 → 按硬约束逐条评审报「已符合/差距」 |
| `app.manifest.json` | 读仓库根 | 无 → die 指路 `dev-app`;含 `deployDescriptor` → die(平台管理员专属字段,提交必 403) |
| `app.manifest.json` | 读仓库根 | 无 → die 指路 `app-dev`;含 `deployDescriptor` → die(平台管理员专属字段,提交必 403) |
| type / listingKey / version | 从 manifest 读 | type 分流:service → `--image`;micro → `--image` + `--dist`;link/native → 只交 manifest。listingKey 过正则 `^[a-z0-9][a-z0-9-]{0,62}$`,version 必须 semver |
| Dockerfile | glob `Dockerfile*` | service/micro 无 → die 指路 `runtime-image` |
| 现有构建段镜像 ref(改造模式) | 读现有 workflow 的 build/push 步骤 | 发布 job 用同一表达式重算镜像 ref,保证与构建产物一致 |
@@ -139,7 +139,7 @@ fail-fast 分级:无 manifest / 无 Dockerfile / manifest 含 deployDescriptor
| 401 凭证无效 | 凭证未签发/secrets 填错 | 平台基座「接入应用」获取凭证;核对 APP_KEY == listingKey |
| 403 `listingKey mismatch` | --key 与凭证 listingKey 不符 | key 只从 manifest 取,不另配(约束⑥) |
| 403 `deployDescriptor is platform-admin only` | manifest 携带 deployDescriptor | 从 manifest 删除该字段(自检脚本 die 拦) |
| 400 manifest 校验失败(版本非 semver、scope 格式等) | 不符 ValidateManifest | 对照错误文案逐条修;可先跑 `dev-app` 的 check-app.sh 预检 |
| 400 manifest 校验失败(版本非 semver、scope 格式等) | 不符 ValidateManifest | 对照错误文案逐条修;可先跑 `app-dev` 的 check-app.sh 预检 |
| 400 `index.html missing at archive root` | `--dist` 套了目录,包根无 index.html | 传构建产物目录本身(约束⑤) |
| 413 | 产物包超 64MB | 精简产物/排查打包内容 |
| 409 `submit a manifest first` | 无生效版本就单独 `--image` | manifest 与 image 同一条 publish 命令(约束④) |
@@ -166,7 +166,7 @@ die 消息统一三段式:是什么 + 为什么(后果) + 怎么办。
## 边界:这些不归本 skill 管
- 应用代码开发/审查/手工发布指引(归 `dev-app`;本 skill 只接管 CI 里的发布环节)
- 应用代码开发/审查/手工发布指引(归 `app-dev`;本 skill 只接管 CI 里的发布环节)
- 通用 Gitea Actions 构建部署规范、基础镜像内网落盘(归 `gitea-actions`;新建模式的构建段只是最小可用)
- Dockerfile 选型/评审(归 `runtime-image`)
- git 提交、推送、日报(归 `push-and-report`)