项目简介
Cyrus 是一个强大的 AI 开发代理,旨在自动化 Linear 平台上的软件开发工作流。它能够监控 Linear 任务,创建独立的 Git 工作区,并利用 Claude Code AI 模型处理这些任务。Cyrus 可以在您的本地计算机上安全运行,通过 Linear API 进行任务更新和协作。
主要功能点
- 线性任务自动化:自动监控分配给 Cyrus 的 Linear 任务,创建独立的工作区进行处理。
- AI 驱动的开发:利用 Claude Code 进行代码生成、问题调试、功能实现和需求分析。
- Git 工作流集成:为每个任务创建 Git 工作区,确保开发环境隔离且易于管理。
- 上下文与工具管理:动态配置 AI 可用的工具集,包括文件读写、Bash 命令、Web 搜索等,并可集成外部 MCP 服务器以扩展功能。
- Prompt 模板定制:支持根据 Linear 标签(如 Bug, Feature)自动切换 AI 模式和 Prompt 模板,优化 LLM 交互。
- 子代理协调:支持 AI 代理创建和协调子代理会话,实现复杂任务的分解和委托。
- 持久化会话:代理会话状态可持久化,确保重启后能恢复工作。
安装步骤
- 安装 Node.js 和 npm:确保您的系统已安装 Node.js (推荐 LTS 版本) 和 npm。
- 安装 Git 和 GitHub CLI (gh):
- 安装 Git:'sudo apt install git' (Linux) 或 'brew install git' (macOS)。
- 安装 GitHub CLI (gh):'brew install gh' (macOS) 或访问 GitHub CLI 查找适合您平台的说明。
- 使用 'gh auth login' 登录 GitHub。
- 安装 Cyrus CLI:
npm install -g cyrus-ai - 运行 Cyrus 并完成设置:
按照提示连接您的 Linear 工作区(通过 OAuth),配置您的代码仓库设置,并设置允许的工具和可选的 MCP 服务器。Cyrus 会将配置保存在 '~/.cyrus/config.json'。cyrus
MCP 服务器配置
Cyrus 在内部启动并管理 MCP 服务器,MCP 客户端(例如 Claude Code)需要配置 Cyrus 的 MCP 服务器。以下是 MCP 客户端配置 Cyrus 作为 MCP 服务器的参考信息(JSON 格式):
{ "mcpServers": { "linear": { "type": "stdio", "command": "npx", "args": ["-y", "@tacticlaunch/mcp-linear"], "env": { "LINEAR_API_TOKEN": "YOUR_LINEAR_API_TOKEN" // 替换为你的Linear API令牌 } }, "cyrus-tools": { "type": "sdk", "module": "path/to/cyrus-claude-runner/dist/tools/cyrus-tools/index.js", // Cyrus工具模块的路径 "initParams": ["YOUR_LINEAR_API_TOKEN"], // 初始化参数,第一个是你的Linear API令牌 "options": { "parentSessionId": "OPTIONAL_PARENT_SESSION_ID", // 可选,用于子会话追溯父会话 "onSessionCreated": "CALLBACK_FUNCTION", // 可选,会话创建回调函数 "onFeedbackDelivery": "CALLBACK_FUNCTION" // 可选,反馈传递回调函数 } } } }
参数说明:
- 'linear': Linear 官方 MCP 服务器,提供 Linear API 的工具访问。
- 'type': 'stdio' 表示通过标准 I/O 协议通信。
- 'command': 启动服务器的命令,这里使用 'npx' 运行 '@tacticlaunch/mcp-linear' 包。
- 'args': 传递给命令的参数。
- 'env': 环境变量,'LINEAR_API_TOKEN' 需替换为有效的 Linear API 令牌。
- 'cyrus-tools': Cyrus 自身实现的 MCP 服务器,提供了额外的 Linear 相关工具。
- 'type': 'sdk' 表示作为 SDK 模块直接集成。
- 'module': 指向 Cyrus 内部 'cyrus-tools' 模块的路径。
- 'initParams': 模块初始化参数,需要传入 Linear API 令牌。
- 'options': 可选参数,用于配置会话管理回调。
请注意:上述配置信息是给 MCP 客户端(如 Claude Code)使用的。在实际使用 Cyrus CLI 时,您不需要手动编辑这些 MCP 服务器的配置,Cyrus 会在内部自动为您管理和启动它们。您只需在 Cyrus 的配置文件 ('~/.cyrus/config.json') 中,通过 'mcpConfigPath' 属性指定其他外部 MCP 配置文件的路径(如果有),或通过 'allowedTools' 和 'disallowedTools' 配置来控制 AI 可用工具。
基本使用方法
- 启动 Cyrus:
保持此命令运行,Cyrus 将开始监控分配给您的 Linear 任务。cyrus - 分配任务:在 Linear 中将一个问题分配给您自己(或 Cyrus 账户),Cyrus 将会自动检测并开始处理。
- 查看进度:Cyrus 会在终端输出处理进度,并在 Linear 任务中发布评论以更新状态。
- 配置调整:您可以随时编辑 '~/.cyrus/config.json' 文件来调整仓库设置、允许的工具、Prompt 模板路由等,然后重启 Cyrus 使更改生效。
信息
分类
开发者工具