AngusKit 是一个 AI 原生软件工程平台,六个产品,一条主轴。工作沿着智能体、代码、制品、测试、安全、洞察往下走,覆盖一次改动从起草到上线之后的复盘。AI 负责起草和检查。合并进主分支、发布制品、放行上线,要指定的人确认之后才生效。代码索引、模型推理上下文和制品元数据留在自己的集群里,未授权的凭据不交给外部公共模型。
一次安装得到登录门户 AngusGM 和六个业务应用。六个应用共用这一套身份,库名是 angus。每个应用仍是自己的进程、自己的页面。某个控制台里怎么操作,看文末那个应用自己的文章。
解决的主要问题
- 从提交到上线,记录是断的。工单、评审、制品和测试报告各在一个系统里,合并前要知道这次过没过,还得再打开一个网站。接进同一套之后,这些记录挂在同一次改动上,构建、测试和安全结论回到合并请求旁边。
- 智能体停在旁边的对话窗口里,进不了正在做的事。代码改动、测试脚本和发布策略都要复制进去才能用。这里把智能体放在这条工作的前面,起草发生在同一次登录里。草稿要成为主分支上的代码、仓库里的制品或已放行的发布,仍要人确认。
- 每加一个系统,账号、权限、审计和升级就再做一遍。人在门户里建一次,六个应用认的是同一个人,权限和审计也是同一套,不用在多套面板之间对同一件事。以后升级,维护的是这一份安装目录,六个应用的版本在打包时锁在一起。
注意:它不负责训练模型,也不会把六个应用并进同一个菜单。安装包拉起的是进程和数据库。AngusSecurity 用来跑检查的程序不在这个包里,装完还要按安全产品的安装说明把引擎放进它能读到的目录,否则检查会缺程序。门户停了,六个应用的登录都会停,因为令牌是门户签发的。
主要功能
首页标题是「AI 原生 软件工程平台」。标题下面这一行是工作顺序:智能体、代码、制品、测试、安全、洞察。再往下五段是业务分析、智能起草、人工确认、智能分析、Skills 沉淀。人工确认是要停下来的那一段。

六个应用各管其中一段。下面写它接到主轴的哪一步。页面里的按钮和步骤,在那个应用自己的文章里。
AngusAI 接在「智能体」。在页面上搭建智能体,挂上知识库、工具和护栏。模型用已经采购或自己部署的。智能体先发布做成应用,再从「AI对话」或「进入对话」里试。套件不训练模型。
AngusGit 接在「代码」。仓库和流水线在这里,流水线用 YAML 或可视化编排。构建、测试和安全检查的结论回到合并请求,工单可以挂到这次改动上。保护分支打开之后,没满足条件的合并按钮不可用。
AngusRepo 接在「制品」。28 种常见格式在同一个仓库里发布、缓存和聚合。mvn、npm、docker 仍用原来的命令,改的是地址。测试没过或安全检查未通过的版本,停在发布之前。还没扫描过的包,不能当成已经通过。
AngusTester 接在「测试」。一份 YAML 覆盖接口、性能、Web、移动端、LLM 和安全测试。断言失败时,流水线能看见这次没过,合并请求上对得上这一次执行。执行在节点上的 Agent 里,节点不在线,这次跑不起来。
AngusSecurity 接在「安全」。代码、密钥、依赖和镜像归成一次检查,结论回到合并和发布,并留下一份报告。质量工具的结果单独列出,不拿来充当安全结论。检查还在跑、或者还没得出结论时,空列表不能当成通过。
AngusInsight 接在「洞察」。浏览器 SDK 把渠道、漏斗、路径和前端错误写进自己的库,再在控制台里看这次发布前后的访问和报错。
登录在门户上完成,地址是 gm.<你的域名>。六个业务进程向门户校验令牌。文档站把 Kit 和这些产品并列,是为了能找到这本套件手册。
应用场景
一次提交的评审、制品和测试报告分在三个系统里,对不上是哪一次改动。 代码进 AngusGit 的合并请求,流水线把构建和测试结果写回这次请求,制品到 AngusRepo 按坐标找到对应版本。人在合并请求上看完结论,再决定合不合并。门户里的这个人已经能进这三个应用,不用各建一次账号。合并不由智能体代点。
代码和包要先同步到外部托管,内网里才看得到。 七个名字解析到自己的机器,安装留在这台机器上。代码索引、模型上下文和制品元数据留在本地,未授权的凭据不交给外部公共模型。浏览器打开自己的
gm.<域名>。填 IP 或localhost,向导会停住。外部托管那一步可以不再做。智能体起草了改动、脚本或发布策略,下一步就会被直接合进主分支。 起草放在 AngusAI。合并、发布和放行停在人工确认,首页第三段写的就是这扇门,英文是
Human decision gate。某个应用里由谁点确认,看那个应用自己的规则。智能体要先发布做成应用,才能进对话里试。试过,不等于主分支已经合并。测试、安全和上线后的访问各看各的报表,下一轮不知道上一轮到底过了没有。 测试报告、安全报告和 AngusInsight 里的访问、报错,放到同一次发布的前后对照。首页第四段是智能分析,英文是
Return to facts。据此判断这次改动有没有达到预期。第五段 Skills 沉淀把提示词、流程、知识库和权限边界收成带版本号的说明,下一次起草沿用。报表上的数字变了,合并和发布的门不会因此自己打开。
核心亮点
从提交到上线是一条线。 工单、评审、制品和测试报告挂在同一次改动上。合并前不用再打开另一个网站对结论。
系统和数据留在自己的边界里。 默认用 Docker Compose,可以放进 Kubernetes,不能访问公网时走离线包,也可以装在国产操作系统上。代码索引、模型上下文和制品元数据留在本地集群。巡检和升级对着同一份安装目录。
测试和安全是发布前的门。 没过的改动停在合并和发布之前,不进生产用的制品。检查还没跑完,不能当成已经通过。质量工具的结果不拿来充安全结论。
技能和接口按自己的系统接。 各应用提供 API 和 MCP。内部的流水线步骤和服务可以收成技能,起草时沿用。套件没有一个总的 MCP 地址,进哪个应用就用哪个应用的地址和令牌。
人和权限只治理一次。 六个应用共用门户的身份、权限和审计。门户可以接已有目录和单点登录,包括 LDAP 和 SAML。停用一个人,六处一起停,因为令牌是门户签发的。操作留有审计记录。
工程定义放在仓库里。 各应用有 OpenAPI 和声明式 YAML。流水线、测试脚本和资源定义按版本留在 Git 里,换环境时不用手改一遍。
部署方式
边界要先装起来,才谈得上上面这些门。安装手册里有三条路。默认是 Docker Compose。没有 Docker 时走主机 ZIP。要放进集群时走 Kubernetes。下面只把默认这条走完,另外两条的页面在文末。
生产用 Linux x86_64。先确认 docker compose version 能打出版本号。macOS 可以用来试装,用当前登录用户跑向导,不要在命令前加 sudo。Docker Desktop 挂不上 root 建出来的目录,数据库会起不来。要装到 /opt/angus,先把目录所有者改成当前用户。
七个子域都要解析到这台机器:gm、ai、git、repo、tester、insight、security。80 端口空闲。准备走 HTTPS 时 443 也要空闲。Git 的 SSH 在 2222,Tester 的执行节点在 7100。8801 到 8809 这一段是各应用自己的端口,反向代理会转发,浏览器不要直接拿这些端口当入口。9528 不要映射到公网。安装包从 https://repo.anguskit.com 的公开原料库下载,文件名以安装页列出的为准。解压后的目录名是 AngusKit-1.0.0。
unzip <安装包文件名>.zip
cd AngusKit-1.0.0
./install.sh
Windows 用 install.bat。启停、检查和升级用这份目录里的 angusctl:render、start、stop、status、doctor、upgrade。
向导的提示是英文。和这条默认路径有关的几项:
| 屏幕上的原文 | 这次输入什么 | 这一项在决定什么 |
|---|---|---|
Install mode |
直接回车 | 用 Docker Compose。回车就是默认,不用另打模式名 |
Access |
输入 2 |
用安装包自带的反向代理,通过子域名访问。直接回车会留在选项 1,那是按端口访问,和 gm.<域名> 对不上 |
| 反向代理 | 直接回车 | 使用 Caddy。要向 Let's Encrypt 申请证书时,只能配 Caddy |
| 证书 | 必须输入一个数字,没有默认值 | 1 用你已有的 PEM,2 由安装包生成自签证书,3 向 Let's Encrypt 申请,4 只用 HTTP。不输入会停住 |
| 数据库 | 直接回车 | Compose 在本机启动 MySQL 8 |
| 安装目录 | 直接回车 | 用当前解压目录,也就是 $ANGUS_HOME |
| 根域名 | 输入 apex 域名,例如 example.com |
拼出七个子域。填成 gm.example.com 会多出一层 gm. |
管理员密码至少 8 位,记在向导之外。数据库口令不要留向导里那串公开的默认值。数据目录只在第一次创建时采用口令。已经创建之后,只改 angus.env 或 docker/.env、不改数据库里已经生效的口令,应用会连不上。改法见安装页,这里不重复那串默认字符。
选了证书 1、2 或 3,打开 https://gm.<你的域名>/。选了 4,打开 http://gm.<你的域名>/。自签证书会让浏览器提示不受信任,那是证书类型决定的,不是门户没起来。
docker compose 不存在时,向导报 ERROR: docker compose not found。这时改用主机 ZIP 那一页。Kubernetes 用 chart 里的开关选择要启动的应用,步骤在集群那一页。
MCP 接入
各应用自己提供 MCP,用来把仓库、流水线、制品、测试和安全检查接到编辑器里的助手。套件没有一个总的 MCP 地址。助手要进哪个应用,就用那个应用文档里的地址和令牌环境变量。门户负责登录和签发用户访问令牌,不代替某个应用的 /mcp。
首页写的是:各产品可以把上下文接到 Cursor、Claude、Qoder 这类宿主。问答留在编辑器里。能不能合并、能不能发布,仍以那个应用里的事实为准,并且要人确认。令牌不要写进仓库,也不要贴进聊天。各应用的前缀和变量名不一样,以该篇为准,不要拿一个产品的令牌去连另一个产品。
SDK 接入
套件没有一个名叫 AngusKit 的 SDK。每个应用若提供 REST SDK,在它自己的 API 参考里,用 Bearer Token 调用。日常推拉代码仍用 Git 客户端,发布和拉取制品仍用 mvn、npm、docker。这些客户端不因为装了套件就换成另一个命令。
各应用有 OpenAPI 和声明式 YAML。那是这个应用自己的接口和资源定义,流水线和测试脚本按这份定义放进仓库。要调哪个应用,打开那个应用的 API 参考。
FAQ
AngusKit 是第八个控制台吗?
不是。它是一次装上门户和六个业务应用的安装包。每个应用仍是独立进程、独立页面。文档里能看到 Kit,是因为套件手册需要一个入口。
装完从哪里登录?
从 gm.<你的域名> 进门户。不要用 localhost:8801 当正式地址,登录后的跳转会对不上域名。HTTPS 还是 HTTP,取决于向导里证书那一项你输入的数字。
没有 Docker 还能装吗?
能。向导报 ERROR: docker compose not found 时,改用主机 ZIP。集群安装走 Kubernetes 那一页。默认路径才是 Compose。
六个应用会一起启动吗?
会,而且有顺序。MySQL、GM 先起来,接着是 AI、Git、Repo、Tester、Insight,Security 在业务应用里最后起来,反向代理再后。angusctl 会等前一个就绪再拉下一个。看到 doctor: OK 和 Install finished. 后再等大约一分钟,然后 ./bin/angusctl.sh status。
页面打不开,要不要重装?
先看有没有 Install finished.。没有就看 $ANGUS_HOME/logs/install.log 最后几十行。80 被别的 Nginx、Caddy 或 IIS 占着,先停掉再跑向导。日志里出现 Communications link failure,容器里的数据库地址不要写 127.0.0.1,改成 mysql 或 postgres,然后 render 再 start。
套件有一个总的 MCP 或 SDK 吗?
没有。MCP 地址和 SDK 都在各个应用里。套件保证的是同一次登录、同一套权限和同一份安装目录。
参考文章
- AngusKit 介绍
- AngusKit 安装与部署
- AngusKit ZIP 安装
- AngusKit Kubernetes 安装
- AngusAI 是什么:一个智能体开发平台,接上已有模型,发布后再进对话
- AngusAI 支持哪些主要功能
- AngusGit 是什么:一个代码托管与协作平台,保护分支和合并请求,需要时再 CI 构建
- AngusGit 支持哪些主要功能
- AngusGit 文档介绍
- AngusRepo 是什么:一个制品仓库,涵盖 28 种常见格式,客户端拉取和发布时只改地址
- AngusRepo 支持哪些主要功能
- AngusTester 是什么:一个自动化测试平台,一份 YAML测试 Anything,计划和结果在一处
- AngusTester 支持哪些主要功能
- AngusSecurity 是什么:一个应用安全检测与治理平台,一次检查,一份问题列表
- AngusSecurity 支持哪些主要功能
- AngusInsight 是什么:一个用户行为分析平台,浏览器采集,数据留在自己的库
- AngusInsight 支持哪些主要功能