项目简介

bruvtools 是一个功能强大的命令行接口 (CLI) 工具,旨在简化应用在各种云平台(目前主要支持 CapRover)上的部署、管理和监控流程。它充当您的私有应用平台,提供类似于 Heroku 或 Vercel 的便捷体验。

通过集成 Model Context Protocol (MCP),bruvtools 可以与支持 MCP 的 AI 客户端(如 Cursor.com)无缝协作,将您的部署和基础设施管理能力直接暴露给 AI 助手,实现革命性的开发体验。

主要功能点

  • 应用部署: 通过简单的命令将 Node.js、Python、Go、Java、PHP、Ruby 或任何容器化应用部署到云服务器。
  • 应用管理: 支持创建、删除、扩缩容、查看日志、检查应用状态等操作。
  • 环境配置: 管理应用的环境变量。
  • SSL 支持: 自动启用 HTTPS 并配置 SSL 证书。
  • 多环境部署: 支持向不同环境部署同一应用。
  • AI 集成 (通过 MCP): 允许 AI 助手直接执行部署、查看服务列表、获取日志等任务,无需切换工具。
  • 环境变脸分割处理: 针对部分平台环境变量长度限制问题,提供自动分割和应用内重组能力。

安装步骤

  1. 安装 Node.js: 确保您的系统已安装 Node.js (推荐 16+ 版本)。
  2. 安装 bruvtools: 打开终端,运行以下命令全局安装 bruvtools CLI:
    npm install -g bruvtools
  3. 安装 CapRover CLI (如果使用 CapRover): 如果您计划使用 CapRover 作为部署平台,需要安装 CapRover CLI:
    npm install -g caprover
  4. 初始化配置: 在您的项目目录中运行交互式初始化命令:
    bruvtools init
    根据提示配置您的云提供商(如 CapRover 服务器信息)和项目设置。这会创建 'bruvtools.yml' (配置) 和 '.env' (敏感信息) 文件。请务必将这两个文件添加到 '.gitignore' 中,不要提交到版本控制。

MCP 服务器配置

bruvtools CLI 包含一个内置的 MCP 服务器模式,供 MCP 客户端(如 Cursor.com)连接。您无需独立启动一个服务进程,只需配置您的 MCP 客户端,让它知道如何通过运行 'bruvtools' 命令来与服务器通信。

在您的 MCP 客户端(如 Cursor.com)的设置中,找到 MCP 配置部分,添加一个新的服务器条目。典型的配置结构如下(请根据您的客户端实际设置格式调整):

// MCP 客户端配置示例 (JSON 格式)
{
  // ... 其他配置 ...
  "mcpServers": {
    "bruvtools": { // 服务器名称,您可以自定义
      "command": "bruvtools", // 启动 MCP 服务器的命令
      "args": ["mcp"], // 传递给命令的参数,用于启动 MCP 模式
      // 可选: 配置 MCP 服务器进程的环境变量,通常用于传递 CapRover 密码等敏感信息
      "env": {
         "CAPROVER_PASSWORD": "您的CapRover密码",
         "CAPROVER_DOMAIN": "您的域名.com", // 例如 your-domain.com
         "CAPROVER_MACHINE": "您的CapRover机器名称" // 例如 default-caprover
      },
      // 可选: 设置 MCP 服务器进程的工作目录,如果您的 bruvtools.yml 和 .env 文件在项目目录中,可以使用此选项
      "cwd": "${workspaceFolder}" // 或指定特定目录路径
    }
  }
  // ... 其他配置 ...
}

重要提示:

  • 'command': 指定 MCP 客户端执行哪个命令来启动 bruvtools 的 MCP 模式。
  • 'args': 传递给 'command' 的参数,'mcp' 参数告诉 bruvtools CLI 启动其 MCP 服务器组件。
  • 'env' 或 'cwd': 为了让 bruvtools MCP 服务器能够连接到您的 CapRover (或其他配置的云平台),它需要访问认证信息 (如 'CAPROVER_PASSWORD') 和配置 (如 'CAPROVER_MACHINE', 'CAPROVER_DOMAIN')。您可以通过 'env' 选项将这些作为环境变量传递给 MCP 服务器进程,或者使用 'cwd' 选项指定您的项目目录,以便 bruvtools 能够读取项目根目录下的 'bruvtools.yml' 和 '.env' 文件。选择哪种方式取决于您的安全偏好和工作流程。

配置完成后,重启您的 MCP 客户端以加载新的 MCP 服务器。

基本使用方法

配置完成后,您可以直接在支持 MCP 的 AI 客户端(如 Cursor.com)中与您的 AI 助手交流,通过自然语言指令来控制 bruvtools:

  • 列出所有已部署的应用:
    AI Assistant: List all my deployed apps
  • 部署当前项目:
    AI Assistant: Deploy this project as my-new-app
  • 查看应用日志:
    AI Assistant: Show me the logs for my-app
  • 扩缩容应用:
    AI Assistant: Scale my-app to 3 instances

这些自然语言指令会被 AI 客户端转换为对应的 MCP Tool Call 请求,发送给 bruvtools MCP 服务器,服务器则会执行相应的 bruvtools CLI 命令并返回结果给 AI 助手。

信息

分类

开发者工具