项目简介
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代理或开发工具集成。
安装步骤
- 克隆仓库:
git clone https://github.com/starslingdev/starsling.git cd starsling # 进入仓库目录 - 安装依赖: 确保已安装 Node.js v20+ 和 pnpm v8+。
pnpm install - 启动Supabase (数据库): 需要安装并运行 Docker Desktop。
# 启动本地Supabase容器 pnpm supabase:start # 应用数据库迁移 pnpm db:push # (可选) 填充示例数据 pnpm db:seed - 配置环境变量: 复制示例配置文件并编辑,填入Supabase密钥、GitHub Token等必需的凭据。
cp .env.example .env cp app-config.local.yaml.example app-config.local.yaml # 使用文本编辑器打开 .env 和 app-config.local.yaml 文件进行编辑 - 运行开发服务器: 从项目根目录执行。
这将同时启动 Web 应用、后台同步脚本和 Backstage 后端。pnpm dev
服务器配置
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代理工作流,并可能在界面上实时展示代理的思考过程和执行步骤。
信息
分类
开发者工具