Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
リポジトリ情報はまだ収集していません。
No updates detected yet. GitHub releases will appear here.
R&D workflow automation platform: requirements, AI-written designs, agent dev tasks, AI code review, CI gates and auto-merge into nightly. FastAPI + React + Claude Code · GitLab + octo.
翻訳待ち
Loading the full README.
Read the full README ↗English | 简体中文
「人员 → 研发组 → 项目 → 需求 → 计划 → AI 开发任务 → MR → CI → 合入 → 通知」全流程服务化系统。 AI 认领需求、和人对齐方案、写出代码、提交 MR、通过 AI 代码评审与 CI、自动合入 nightly,全程 octo 群播报、人只把关关键节点。
把散落在定时脚本里的研发自动化(MR 初审、merge 轮询、CI 失败分析、代码统计……)收敛成一个有界面、有状态机、有审计留痕的系统:
octo 群 ← 播报/派单 ← vega-api ← webhook ← GitLab 13.12
↑ ↓ 长轮询
vega-runner(可多节点,每节点驱动 claude -p)
↑ SSE 流式
vega-web(React 18 + antd 5 + @ant-design/x)
| 组件 | 技术 | 说明 |
|---|---|---|
api/vega | Python 3.12 · FastAPI · SQLAlchemy async · SQLite(开发)/ PostgreSQL(部署)· APScheduler | api 与 runner 同仓两入口 |
web/ | Vite · React 18 · antd 5 · @ant-design/pro-components · @ant-design/x | 工作台 / 需求池 / 对话 / 任务 / 统计 |
| GitLab 集成 | 自研 httpx 薄客户端(vega/gitlab.py) | 适配 13.12 的坑:webhook 全局单址 + 组 secret 识别、不发 merge 事件 → merge_poll 10 分钟轮询兜底 |
| 通知 | octo bot API 直连(vega/octo.py) | @任务创建人 / 项目负责人 / 推送人 |
| LLM | 人员 → 研发组 → 项目三级配置解析(vega/llm.py),runner 侧 claude CLI | 需求/方案/评审/CI 分析共用一套解析链 |
| 密钥 | Fernet 对称加密落库(VEGA_SECRET_KEY 为唯一主密钥) | GitLab token / octo token / LLM key 均密文存储 |
定时任务(APScheduler):GitLab 项目扫描对配(30min)、代码统计落库(每日)、MR 轮询兜底(10min)、阻塞 MR 早报(每日 9:00 + 每小时)、DB 备份轮转(每日 3:17)、死信重投。
vega/
├── api/ # FastAPI 后端 + runner 节点(同仓两入口)
│ ├── vega/ # models / routers / jobs / runner / gitlab / octo / autoflow ...
│ ├── tests/ # pytest(136 用例)
│ └── .env.example # 配置模板(唯一可入库的 env)
├── web/ # React 前端
├── deploy/ # nginx.conf + 部署手册
├── docker-compose.yml # api / web / 可选内置 PG / 可选 runner
└── DESIGN.md # 完整技术选型与设计文档(v3,对齐实际实现)
依赖:Python 3.12+、Node 20+(pnpm)、以及 claude CLI(仅 runner 需要)。
# 1. 后端
cd api
cp ../.env.example .env # 至少改 VEGA_SECRET_KEY / VEGA_ADMIN_PASSWORD
.venv/bin/python -m uvicorn vega.main:app --host 127.0.0.1 --port 8000
# 2. 前端
cd web && pnpm install && pnpm dev # http://localhost:5173
# 3. runner 节点(另开终端)
cd api && .venv/bin/python -m vega.runner
# 测试
cd api && .venv/bin/python -m pytest tests -q
界面首次登录用 VEGA_ADMIN_USERNAME / VEGA_ADMIN_PASSWORD;之后在「集成」页填 GitLab 地址与 token,「研发组」里配 webhook secret,把 GitLab 的 webhook 指到 <VEGA_API_URL>/webhooks/gitlab(Push / Merge Request / Pipeline 三类事件)。
生产用 Docker Compose(默认外接 PostgreSQL,可选内置 PG profile):
cp .env.example .env # 按 deploy/README.md 逐项核对
docker compose up -d --build api web
完整部署手册(PG 建库、runner 注册、webhook 接线、VEGA_SECRET_KEY 不可更换的原因、备份恢复)见 deploy/README.md。
X-Gitlab-Token 与各组 secret 比对识别研发组。merge_poll 轮询兜底,webhook 与轮询靠任务终态幂等去重。auto_approve_prefixes 就绝不自动合入,收尾改为 octo 通知项目负责人人工合入;冲突必须通知人,禁止自动解决。dev_task_event,任务详情页可回放。内部生产使用中,随用随改。设计细节与演进记录见 DESIGN.md。