# Ci Workflow Sync

FastGPT CI workflow 双轨同步。当用户修改或新增 .github/workflows/ 下的 GitHub Actions workflow...

- Repository: https://github.com/labring/FastGPT (29968 stars)
- Category: Testing
- License: see repository
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add labring/FastGPT --skill ci-workflow-sync -g -a claude-code -y`
Codex: `npx skills add labring/FastGPT --skill ci-workflow-sync -g -a codex -y`
Cursor: `npx skills add labring/FastGPT --skill ci-workflow-sync -g -a cursor -y`
Gemini CLI: `npx skills add labring/FastGPT --skill ci-workflow-sync -g -a gemini-cli -y`

## Description

FastGPT CI workflow 双轨同步。当用户修改或新增 .github/workflows/ 下的 GitHub Actions workflow 时必须触发：同步更新 .forgejo/workflows/ 对应文件保持功能一致，或判断是否需要新建 Forgejo 版本。涉及 CI、GitHub Actions、Forgejo Actions、镜像构建、container registry、artifact、workflow yaml 改动、build-* workflow、test-* workflow 时也使用此技能。即使用户只提到"改一下 CI"或"加个 workflow"也应触发。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# FastGPT CI Workflow 双轨同步

FastGPT 同时维护两套 CI workflow：

- `.github/workflows/`, , 跑在 **GitHub 托管 runner** 上，发布到 ghcr.io + 阿里云 + Docker Hub，面向开源社区。
- `.forgejo/workflows/`, , 跑在 **内网 Forgejo + 自建 runner** 上，发布到 Forgejo 自带 registry，面向内网镜像分发。内网环境需要代理、镜像源、自建 registry。

两套同名 workflow 必须保持**功能一致**：构建步骤、测试逻辑、触发条件对齐。但 Forgejo 版本需要移除 GitHub 特有能力（attestations、github-script、PR 评论）并注入内网代理/镜像配置。

> 为什么这么做：内网 Forgejo runner 无法访问 ghcr.io / 阿里云 / Docker Hub 登录凭据，也没有 GitHub PR 评论 API；但构建和测试本身必须在内网跑通。所以不是"复制粘贴"，而是"等价改写"。

## 何时使用此技能

- 修改 `.github/workflows/` 下任意 workflow 文件
- 新增一个 `build-*.yml` / `test-*.yaml` workflow
- 改动涉及镜像 registry、artifact、permissions、runs-on、trigger
- 审查 PR 时发现只改了 GitHub 侧没动 Forgejo 侧

## 当前配对清单（改前先核对）

**已有 Forgejo 对应（9 个，改动时必须同步）：**

| GitHub | Forgejo | 类型 |
| --- | --- | --- |
| `build-fastgpt.yml` | ✅ | 镜像构建 |
| `build-code-sandbox.yml` | ✅ | 镜像构建 |
| `build-agent-sandbox.yml` | ✅ | 镜像构建 |
| `build-fastgpt-ide-agent.yml` | ✅ | 镜像构建 |
| `build-marketplace.yml` | ✅ | 镜像构建 |
| `build-mcp-server.yml` | ✅ | 镜像构建 |
| `test-fastgpt.yaml` | ✅ | 测试 + 覆盖率 |
| `test-sandbox.yaml` | ✅ | 测试 |
| `test-rust-agent.yaml` | ✅ | 测试（当前**完全一致**，无转换） |

> 清单会随仓库演进变化。每次动手前用 `ls .forgejo/workflows/` 核对实际文件，不要只信上表。

**仅 GitHub、当前无 Forgejo 对应（13 个，通常无需同步）：**

`auto-close-issue.yml`、`build-admin.yml`、`build-browser-sandbox.yml`、`build-docs.yml`、`build-sso-service-image.yml`、`helm-release.yaml`、`preview-admin-build.yml`、`preview-admin-push.yml`、`preview-docs-build.yml`、`preview-docs-push.yml`、`preview-fastgpt-build.yml`、`preview-fastgpt-push.yml`、`test-fastgpt-pro.yaml`

> 这些是 GitHub 专属能力（PR 预览部署、文档站构建、自动关 issue、Pro 版测试），内网不需要。但如果用户新建的是一个**构建镜像或跑测试**的 workflow，应主动询问是否需要新建 Forgejo 版本（见下方决策树）。

## 决策树

The rest: https://github.com/labring/FastGPT/blob/HEAD/.agents/skills/system/ci-workflow-sync/SKILL.md
