项目简介

StarSling 是一个开源的开发者主页,旨在通过集成AI代理自动化开发者在IDE之外的日常繁琐工作,如处理异常、CI失败、文档更新等。它将Sentry, GitHub, Linear等工具统一在一个界面中,并利用Mastra MCP编排代理工作流。这是一个概念验证项目,尚未准备好用于生产环境。

主要功能点

  • 统一开发者视图: 在一个地方查看来自不同工具(GitHub, Sentry, Linear等)的待处理事项(如PR、问题、告警)。
  • AI代理自动化: 提供自动化工作流,例如点击Sentry异常的“Autofix”按钮即可触发AI代理分析、生成修复方案并在GitHub中创建拉取请求。
  • 基于Backstage构建: 利用Backstage作为基础后端,兼容Backstage插件。
  • Mastra MCP编排: 使用Mastra MCP来协调和执行跨工具的AI代理工作流。
  • 可扩展性: 支持通过添加自定义的MCP服务器来引入自己的AI代理或开发工具集成。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/starslingdev/starsling.git
    cd starsling # 进入仓库目录
  2. 安装依赖: 确保已安装 Node.js v20+ 和 pnpm v8+。
    pnpm install
  3. 启动Supabase (数据库): 需要安装并运行 Docker Desktop。
    # 启动本地Supabase容器
    pnpm supabase:start
    
    # 应用数据库迁移
    pnpm db:push
    
    # (可选) 填充示例数据
    pnpm db:seed
  4. 配置环境变量: 复制示例配置文件并编辑,填入Supabase密钥、GitHub Token等必需的凭据。
    cp .env.example .env
    cp app-config.local.yaml.example app-config.local.yaml
    # 使用文本编辑器打开 .env 和 app-config.local.yaml 文件进行编辑
  5. 运行开发服务器: 从项目根目录执行。
    pnpm dev
    这将同时启动 Web 应用、后台同步脚本和 Backstage 后端。

服务器配置

MCP客户端需要连接到StarSling提供的Mastra MCP服务才能利用其AI代理功能。这个服务作为Backstage后端(默认运行在 'http://localhost:7007')的一个插件运行,并通过HTTP接口暴露给前端或其他客户端。

典型的MCP客户端连接需要配置服务的网络地址和端口。在本地开发环境中,Mastra MCP服务的入口点通常是 Backstage API 的 '/api/mastra' 路径,即完整的地址可能是 'http://localhost:7007/api/mastra'。

MCP客户端需要知道这个服务的网络位置,以及它支持哪些功能(例如资源访问、工具调用、提示模板)才能正确交互。具体配置方式取决于使用的MCP客户端软件,但核心是指定MCP服务器的地址和通信协议(例如 HTTP 或 SSE,StarSling后端支持流式传输)。

基本使用方法

在完成本地安装和配置,并成功运行 'pnpm dev' 后:

  • 访问 Web 应用 ('http://localhost:3000')。
  • 您将看到一个集中的仪表盘,展示您在 GitHub、Sentry、Linear 等工具中的待处理任务(例如未关闭的PR、新的Sentry异常、分配给您的Ticket)。
  • 对于支持AI代理操作的任务(例如,如果您的Sentry集成为StarSling配置了AI能力),您会在任务卡片上看到一个 AI 相关的操作按钮(如 "Autofix")。
  • 点击这些按钮,StarSling后端会通过其集成的Mastra MCP服务触发相应的AI代理工作流,并可能在界面上实时展示代理的思考过程和执行步骤。

信息

分类

开发者工具