# Creuser：面向Monorepo的开源工作流与代理编排平台

> MJCZone开发的Creuser是一个专为Monorepo操作设计的工作流和代理编排平台，基于.NET 10和Vue.js/Quasar构建，支持Docker快速部署和插件扩展，采用LGPL-3.0许可证。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-05-07T05:45:19.000Z
- 最近活动: 2026-05-07T05:52:56.952Z
- 热度: 159.9
- 关键词: Creuser, Monorepo, 工作流编排, 代理管理, 开源平台, MJCZone, Docker部署, LGPL许可证
- 页面链接: https://www.zingnex.cn/forum/thread/creuser-monorepo
- Canonical: https://www.zingnex.cn/forum/thread/creuser-monorepo
- Markdown 来源: ingested_event

---

## 背景：Monorepo管理的复杂性

Monorepo（单一仓库）模式在现代软件开发中越来越流行，它将多个相关项目放在同一个代码仓库中管理，便于代码共享、统一构建和跨项目重构。然而，Monorepo也带来了独特的挑战：复杂的依赖关系、跨项目的构建协调、大规模代码库的操作效率等。

Creuser正是为解决这些问题而设计的开源平台，它提供了工作流编排和代理管理的能力，帮助团队更高效地管理Monorepo中的开发、构建和部署流程。

## 项目概览

Creuser由MJCZone Inc开发，名称发音为"KROO-ZAY"（或法语风格的"kruh-ZAY"），寓意"深入挖掘"（Get to the bottom of it）。项目采用.NET 10作为后端框架，前端使用Vue.js和Quasar框架，数据库使用PostgreSQL，缓存使用Redis。

项目目前处于v0.x.x的活跃开发阶段，API尚未稳定，建议在v1.0.0发布后再用于生产环境。

## 核心架构与技术栈

Creuser的技术选型体现了现代云原生应用的设计理念：

### 后端技术

- **.NET 10**：最新的.NET版本，提供高性能和跨平台支持
- **Entity Framework Core**：数据访问和ORM
- **SignalR**：实时通信和Hub功能
- **Scalar**：API文档和测试界面（取代传统的Swagger）

### 前端技术

- **Vue.js 3**：渐进式JavaScript框架
- **Quasar**：基于Vue的UI组件库，支持SPA、PWA和移动应用
- **Vitest**：单元测试框架

### 基础设施

- **PostgreSQL**：关系型数据库，存储应用数据
- **Redis**：内存缓存，支持会话管理和实时功能
- **Docker**：容器化部署，支持多种部署场景

## 部署方式

Creuser提供了灵活的部署选项，适应不同的使用场景：

### Docker Compose（推荐）

包含PostgreSQL和Redis的完整部署方案，适合本地开发和测试：

```bash
echo "POSTGRES_PASSWORD=$(openssl rand -hex 24)" > .env
docker compose up -d
```

部署后访问http://localhost:8080，按照引导流程完成管理员初始化。

### 单容器部署

适合已有PostgreSQL和Redis基础设施的环境：

```bash
docker run -d --name creuser \
  -p 8080:8080 \
  -v creuser-data:/data \
  -e ConnectionStrings__Postgres="Host=<host>;..." \
  -e ConnectionStrings__Redis="<host>:6379" \
  ghcr.io/mjczone/creuser:latest
```

### HTTPS自托管（Caddy + Let's Encrypt）

适合需要公网访问的自托管场景：

```bash
echo "POSTGRES_PASSWORD=$(openssl rand -hex 24)" > .env
echo "CREUSER_DOMAIN=creuser.example.com" >> .env
docker compose -f docker/docker-compose.yml \
  -f docker/docker-compose.caddy.yml up -d
```

Caddy会自动获取Let's Encrypt证书并处理HTTPS终止。

### 托管平台部署

Creuser支持Railway、Render、Fly.io、Cloudflare Tunnel、AWS App Runner等托管平台。这些平台通常提供自动HTTPS终止，无需额外配置Caddy。

### 白标部署

企业用户可以通过私有仓库包装Dockerfile实现品牌定制：

```dockerfile
FROM ghcr.io/mjczone/creuser:0.1.4
COPY branding/ /data/branding/
COPY plugins/ /data/plugins/
```

这种方式避免了直接修改Creuser源代码，符合LGPL-3.0许可证的要求。

## 开发环境设置

Creuser的开发环境配置相对简单，需要.NET 10 SDK、Node 24 LTS和Docker：

```bash
git clone https://github.com/mjczone/creuser.git
cd creuser
npm install  # 安装.NET工具、SPA依赖和Vitest
npm run services:up  # 启动Postgres和Redis
npm run dev  # 并行启动Quasar开发服务器和dotnet watch
```

开发服务器运行在http://localhost:9000（Quasar），API和Hub代理到http://localhost:5128（.NET后端）。

## 插件与扩展机制

Creuser设计了插件架构，允许在不修改核心代码的情况下扩展功能。插件系统基于.NET的插件加载机制，支持动态加载DLL。

白标部署模型鼓励通过插件添加自定义功能，而非分叉核心仓库。这种设计既满足了企业定制需求，又保持了开源项目的完整性。

## 许可证与商业模式

Creuser采用GNU Lesser General Public License v3.0或更高版本（LGPL-3.0-or-later），这意味着：

- ✅ 可以在商业应用中使用Creuser
- ✅ 可以修改和分发Creuser
- ✅ 应用代码可以保持用户选择的许可证
- ⚠️ 对Creuser本身的修改必须按LGPL贡献回社区

这种许可证选择平衡了开源精神和企业需求，允许商业使用的同时确保核心改进回馈社区。

## 应用场景

Creuser特别适合以下场景：

**大型Monorepo管理**：当仓库包含数十个甚至上百个相关项目时，Creuser可以帮助协调构建、测试和发布流程。

**跨团队协作**：在多个团队共享代码库的环境中，工作流编排可以标准化开发流程，减少摩擦。

**CI/CD编排**：作为CI/CD流程的协调层，管理复杂的构建依赖和部署顺序。

**代理任务管理**：如果集成了AI代理或自动化工具，Creuser可以编排这些代理的执行流程。

## 项目状态与路线图

目前项目处于早期开发阶段（v0.1.4），API不稳定，可能有破坏性变更。社区可以通过GitHub Issues报告Bug，通过GitHub Discussions参与讨论。

项目文档提到完整的功能文档"即将推出"，表明团队正在积极开发核心功能，文档化工作可能稍后跟进。

## 技术亮点与考量

Creuser的技术选型有几个值得注意的点：

**采用.NET 10**：选择最新的.NET版本表明项目追求技术前沿，但也意味着部署环境需要支持较新的运行时。

**Scalar替代Swagger**：Scalar是较新的API文档工具，相比Swagger提供了更现代的界面和体验。

**Quasar前端框架**：Quasar提供了丰富的组件和良好的移动端支持，适合构建管理界面。

**灵活的部署模型**：从本地开发到生产部署，从自托管到托管平台，Creuser提供了全面的部署选项。

## 总结

Creuser是一个面向Monorepo场景的新兴开源平台，提供了工作流编排和代理管理的能力。虽然项目还处于早期阶段，但其技术架构和部署灵活性展示了良好的设计思路。对于正在寻找Monorepo管理工具的团队，Creuser值得关注，但建议等待v1.0.0稳定版本后再用于生产环境。
