# tinygo-ci **Repository Path**: smalljop/tinygo-ci ## Basic Information - **Project Name**: tinygo-ci - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-19 - **Last Updated**: 2026-10-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TinyGo-CI
专为个人开发者与敏捷小团队打造的轻量级、AI 原生自托管持续集成 (CI) 引擎
⚡ 极简轻量 | 🌐 Git 平台中立 | 🤖 原生 MCP (AI) 协同 | 📦 单二进制开箱即用
--- ## 💡 为什么需要 TinyGo-CI?它有什么不一样? 市面上的持续集成工具五花八门,但对**个人开发者**和**敏捷小团队**而言,往往面临着诸多两难与痛点: - **Jenkins 太重**:动辄几百兆乃至上 GB 的 JVM 内存开销,冷启动慢,深陷插件依赖冲突的“插件地狱”,配置与维护成本甚至超过了业务开发本身; - **平台强捆绑**:GitHub Actions 无法直接方便地跑在自建私有服务器;GitLab CI 必须绑定臃肿庞大的全套 GitLab 全家桶; - **组件依赖繁琐**:很多开源 CI 工具拆分了数个微服务,强依赖 Redis、PostgreSQL、Docker Daemon 或消息队列,想搭建一套环境需要编写长串的 Compose 配置。 更重要的是——**在 AI 辅助编程时代,Coding 一个属于自己的轻量 CI 工具早已不再是什么难事**。 过去我们不得不忍受传统 CI 工具的庞大体积与复杂黑盒,是因为从零自研调度与执行引擎门槛极高。而在 AI 时代,我们完全可以回归简单与纯粹:**用极简干净的单二进制 Go 架构,构建一个常驻内存不足 50MB、零外部依赖、透明可控的自托管 CI 引擎**。 每个人都能轻松读懂并按需定制它;同时它业内率先内置了标准 MCP 协议,让 Cursor、Claude 等 AI 助手直接成为流水线的协作者——自动分析失败堆栈、生成配方并监控构建,真正契合现代 AI 时代的开发流! ### 主流 CI 工具横向对比 | 比较维度 | Jenkins | GitLab CI / GitHub Actions | **TinyGo-CI** | | :--- | :--- | :--- | :--- | | **资源消耗** | 极重(常驻 1GB~4GB+ 内存) | 极重(GitLab 需 4GB+)或按分钟云端计费 | **极轻(常驻 < 50MB 内存,低配置 VPS 顺畅运行)** | | **Git 平台依赖** | 需繁琐配置多套 Webhook/插件 | 强捆绑自身平台(GitLab / GitHub) | **完全中立**(无缝聚合 GitHub, GitLab, Gitee, Gitea 及私有 Git) | | **部署与交付** | 复杂,需 Java 环境及大量插件 | 需安装复杂庞大的服务套件 | **零外部依赖,单二进制内置全量 Web 与 SQLite 存储** | | **AI 原生支持** | 无(依赖第三方插件拼装) | 仅限特定商业版云端 Copilot | **业内率先内置标准 MCP 协议,无缝联动 Cursor / Claude** | | **执行模式** | 依赖各类 Agent 插件 | 强依赖 Docker / K8s Runner | **双模原生支持**(纯主机进程直接跑 / Docker 容器隔离跑) | | **适用场景** | 传统中大型企业复杂流水线 | 整体迁移到该平台的企业组织 | **独立开发者、小团队名下多项目多仓库统一构建与集成** | --- ## 🖼️ 界面预览 (Screenshots) > 💡 *现代、优雅、极简响应式的控制台体验,告别传统老旧 CI 工具的审美疲劳。* ### 🚀 1. 流水线与构建工作台 (Pipeline & Execution) - **工作台全局概览**:实时掌握集群构建健康度、全站成功率、Runner 节点负载与近期构建动态。  - **多项目敏捷管理**:卡片/列表双视图随心切换,清晰呈现名下所有工程、代码仓库绑定、分支状态与构建版本。  - **项目概览与构建历史**:清晰的时间线追溯历史构建,支持一键「手动运行」与原生「AI 流程助手」协同排障。  - **阶段进度与实时流式日志**:毫秒级多阶段时间线监控,ANSI 彩色终端日志实时流式输出,构建产物一键归档与直观下载。  ### 🔐 2. 凭据资产与自动化部署 (Credentials & Deployment) - **统一安全凭据中心**:集中安全托管 GitHub、GitLab、Gitee 等多平台访问凭据与服务器部署密钥,支持机密信封加密与版本快照。  - **多环境部署目标管理**:生产/测试多环境目标主机集中纳管,支持 SSH 远程免密互信、常驻 Agent 反向回连与一键连通性自动化测试。  ### ⚙️ 3. 系统运维、权限控制与安全审计 (Management & Security) - **多租户与 RBAC 权限体系**:细粒度系统级角色管控(Owner / Maintainer / Developer / Viewer),保障团队敏捷协同与资产安全。  - **全局安全审计日志**:全量透明追踪敏感配置变更、访问令牌颁发与高危运维动作,全面满足安全合规与追溯诉求。  - **系统健康诊断与 AI 大模型配置**:开箱即用的系统就绪自检、内置 AI 模型与代理配置、存储日志生命周期自动清理。  --- ## ✨ 系统核心特性 - 🪶 **单二进制,极致轻量** 使用 Go 编写,内嵌完整的前端 Vue 3 Web 控制台与 SQLite 存储引擎,无需单独安装 MySQL、Redis 或 Nginx,下载即可执行,内存占用低至几十兆,1 核 1G 的基础 VPS 即可满血稳定运行。 - 🌐 **平台中立,统一管理所有项目** 个人名下经常分散着 GitHub 开源项目、Gitee 团队项目、公司内部自建 GitLab / Gitea 仓库。TinyGo-CI 统一汇聚多平台仓库,统一凭证管理,一个看板掌控名下所有项目的构建与自动化集成。 - 🤖 **AI-Native:内置标准 MCP 协议服务** 原生集成模型上下文协议(Model Context Protocol)。无需离开开发环境,AI 助手(Cursor、Claude Code、Windsurf 等)可直接作为流水线协作者: - 自动读取失败日志与异常堆栈,定位代码 Bug; - 根据项目技术栈自动生成与调优 `.tiny-ci.yml` 构建配方; - 触发构建并监控阶段状态。 - ⚡ **灵活双模执行模式** 支持 **Host 物理进程直接执行**(极低开销,直接使用宿主机已有工具链)与 **Docker 容器隔离执行**(环境干净纯粹)。根据项目诉求随心选择,绝不强绑 Docker。 - 🎯 **清晰易懂的 Recipe 配方** 放弃晦涩难记的流水线语法,采用极简的 YAML 描述。支持多阶段(Stages)、多步骤(Steps)、依赖缓存(Cache)、制品归档(Artifacts)与环境变量安全注入。 - 🔔 **全渠道通知与告警** 内置飞书、钉钉、企业微信、Slack、Webhook 及 Email 等通知渠道,构建成功或失败实时推送到群聊,卡片排版支持自定义。 --- ## 🚀 快速开始 ### 1. 一键在线安装 (推荐) 在 Linux 或 macOS 终端中执行一键安装脚本(自动检测系统架构并安装至 `~/.tinygo-ci`): ```bash curl -fsSL https://gitee.com/smalljop/tinygo-ci/raw/master/scripts/install.sh | bash ``` > *提示:支持通过参数自定义系统安装路径或 Web 访问二级子路径(如 `/ci`):* > ```bash > # 自定义安装至 /opt/tinygo-ci,并配置 Web 访问二级路径为 /ci > curl -fsSL https://gitee.com/smalljop/tinygo-ci/raw/master/scripts/install.sh | bash -s -- --dir /opt/tinygo-ci --base-path /ci > ``` ### 2. 启动服务 进入安装目录并启动: ```bash cd ~/.tinygo-ci && ./start.sh ``` 启动完成后,使用浏览器打开 **`http://localhost:9080`**,跟随界面向导设置管理员账号即可开始使用! ### 3. 一键卸载或重置 ```bash # 方式 A:通过远程脚本一键卸载 # 1. 默认安装路径 (~/.tinygo-ci) 彻底卸载: curl -fsSL https://gitee.com/smalljop/tinygo-ci/raw/master/scripts/uninstall.sh | bash -s -- --purge # 2. 自定义安装路径(如 /opt/tinygo-ci)彻底卸载: curl -fsSL https://gitee.com/smalljop/tinygo-ci/raw/master/scripts/uninstall.sh | bash -s -- --dir /opt/tinygo-ci --purge # 方式 B:进入安装目录下本地执行卸载/重置 ./uninstall.sh --reset # 保留程序,仅重置数据库与数据(重新进入安装向导) ./uninstall.sh --purge # 停止进程并彻底删除当前目录下所有二进制与配置数据 ``` --- ## 📖 使用文档与配置手册 本项目的所有使用文档、配置文件编写指南、变量手册与系统架构设计已统一收录在文档中心: 👉 **[点击查阅:TinyGo-CI 完整技术文档中心 (docs/README.md)](docs/README.md)** ### 常用快捷跳转: - 📝 **[CI 配置文件 (.tiny-ci.yml) 编写指南与示例模板](docs/README.md#-一ci-配置文件编写指南-tiny-ciyml)** - 🌐 **[环境变量与变量体系全景参考手册](docs/README.md#-二环境变量与变量体系完全手册)** - ⚙️ **[服务端与 Runner 核心配置环境变量](docs/README.md#26-tinygo-ci-服务端与-runner-核心配置环境变量)** - 🏗️ **[系统核心架构设计与契约规范](docs/architecture/core-contracts.md)** - 🚢 **[生产环境部署与安全加固指南](docs/deployment/production-guide.md)** --- ## 📄 开源许可证 本项目采用 [MIT License](LICENSE) 开源许可证。