可以。在 Mac 上按 Control+Option+S,在 Linux 上按 Ctrl+Alt+S,或在 Windows 上按 Ctrl+Alt+Shift+S,会打开你最后查看的联系人及聊天标签页的快速发送功能。发送前会显示收件人和文件夹。按 Enter 发送,Shift+Enter 换行,按 Esc 关闭并保留草稿。在菜单栏或托盘菜单中向最后一个联系人快速发送也有效。更多内容请参阅快速发送指南。
工具概况
快速了解工具核心信息
什么是buddylist
以复古 MSN Messenger 好友列表界面,在 Mac、Windows、Linux 上与 Claude Code、Codex、Gemini、OpenCode、Hermes 等编码智能体群聊,用于代码生成与对话。
你是「buddylist」的开发者?
徽标是「万智云集」的收录证明,也是品质认证;嵌入官网即为产品挂上权威背书,还能为详情页带回访客、提升热度指数。
哪些人适合使用buddylist
为什么选择buddylist
如何使用buddylist
常见问题
关于本工具的常见疑问解答
可以。对话下方的气泡按钮列出了快捷消息。选择一条会将文字放在光标处供你编辑发送。“另存为快捷消息...”会保留你正在输入的内容,而“设置 > 快捷消息”允许你命名、编辑或删除已保存的消息。该列表在所有对话间共享。更多内容请参阅对话指南。
可以。联系人 > 查看支出... 显示今天、本周和本月的美元费用报告,并按联系人分类。归档的联系人也算在内。这些是基于保留的消息历史估算的,不是你的账单或订阅余额。某些代理(包括 Codex)不报告美元费用,且已删除的历史记录不再计入。更多内容请参阅支出指南。
在 Mac 上,点击联系人列表中的你的名字并开启“显示我正在听的内容”。播放音乐时,Spotify 或 Apple Music 的歌曲标题和艺术家会替换你的个人消息。播放停止或关闭该选项后,你保存的消息会恢复。这是可选功能,仅限 Mac。更多内容请参阅音乐状态指南。
按住 F2,说出你的消息然后松开。你说的话会输入到消息框中,这样你可以在按 Enter 之前进行修改。你的声音通过 whisper.cpp 在电脑上转换为文本,录音不会离开电脑。whisper.cpp 及其模型都不捆绑:运行 whisper.cpp 并下载模型;指南中有针对你平台的设置说明。工具 > 语音片段会更改快捷键,并且在你停止说话后立即发送你说的话,无需等待 Enter。更多内容请参阅语音片段指南。
是的。buddylist 免费下载和使用。每个代理都在你自己的账户下运行,就像在终端中一样:Claude Code 的 Claude Code 登录或 Anthropic API 密钥,以及 Codex、Gemini、OpenCode 和 Hermes 的 CLI 自身登录,所以它们所做的操作会计入相应的套餐中。
你可以下载 Mac、Windows 或 Linux 版本的 buddylist。Mac 版本使用 Apple Silicon;Windows 和 Linux 版本使用 x64。查看首次启动说明,或在浏览器中尝试带有脚本回复的实时演示。
不是。每个对话都运行真实的 Claude Code、Codex、Gemini、OpenCode 或 Hermes 会话,具有与终端中 claude、codex、gemini、opencode 或 hermes 相同的代理循环、工具和设置。它可以读取你的项目、运行命令和编辑文件。
Claude Code 不需要:它包含在应用中。Codex、Gemini、OpenCode 和 Hermes 不捆绑,所以安装你想要的。每个代理都像在终端中那样登录。对于 Claude Code,这是这台电脑上的 Claude Code 登录或 Anthropic API 密钥。
在“添加联系人”中选择 Codex 作为服务。Codex 不捆绑,所以先用 npm install -g @openai/codex 安装 Codex CLI 并运行 codex login。它使用与终端中 codex 相同的登录、config.toml、AGENTS.md 和 MCP 服务器。Codex 联系人有自己的模式菜单,Activities 有 /compact、/review 和你的 Codex 技能。它们没有计划审批。更多内容在 Codex 指南中。
在“添加联系人”中将 Gemini、OpenCode 或 Hermes 选为服务。三者均不随附。对于 Gemini,使用 npm install -g @google/gemini-cli 安装 Gemini CLI 0.33 或更新版本,并运行一次 gemini 以登录。对于 OpenCode,运行 npm install -g opencode-ai 和 opencode auth login。对于 Hermes,安装 Hermes Agent 并使用 hermes model 选择一个提供商。每个都使用与终端中相同的设置、命令和 MCP 服务器,并拥有自己的模式菜单。更多内容见 Gemini、OpenCode 和 Hermes 指南。
Windows x64 和 Linux x64 下载位于下载区。不提供 Intel Mac 和 ARM Windows/Linux 安装程序。
有。在对话工具栏中点击“终端”,或按 ⌘J,会在该联系人的文件夹中、对话旁边打开你自己的 shell。它是真正的终端,因此 vim、htop、颜色和 Ctrl+C 都像在终端中一样工作。标签页后的 + 会再打开一个,每个都在一个可重命名和拖动排序的标签页中。收起终端会保持其 shell 继续运行,关闭窗口不会关闭任何东西:终端属于其联系人。⌘F,或在 Windows 和 Linux 上按 Ctrl+Shift+F,可在其回滚缓冲区中查找文本。智能体看不到你输入的内容或打印的内容。更多内容见终端指南。
Claude 联系人可以。说“打开三个终端”,或“一个终端用于开发服务器,一个用于测试”,每个都会在对话旁边获得一个标签页,并使用你给它的名称。要求“两个运行 claude 的终端”,一旦每个 shell 启动,命令就会被输入到每个终端中。当命令要运行时,会先询问你,并向你显示该命令。它只输入一次:之后智能体无法再向终端输入,也不会被告知命令打印的内容。Codex、Gemini、OpenCode 和 Hermes 尚不能执行此操作。
可以。对话中的每次编辑都有一个“显示更改”链接。要一次查看所有更改,请使用工具栏中的“更改”或 ⇧⌘G 打开对话旁边的“更改”标签页。它列出分支所做的提交以及与项目主线不同的每个文件(无论是否已提交),并显示其增加和减少的行,以列表和树的形式呈现。点击某个提交可仅查看其文件,或点击“未提交的更改”查看自上次提交以来的更改。点击文件可查看其差异,行号已编号,更改的单词已标记;点击一行,或拖动选择多行,即可对其评论,并将文件标记为“已查看”。在宽窗格中,文件显示在差异旁边,拖动其边缘可将其调宽或调窄。顶部的 ⋯ 可并排显示差异、换行长行或让其滚动、将测试和生成的文件列在其余文件之后,并一次打开或关闭所有差异。当分支有拉取请求时,审阅者的讨论串会显示在其行下方,可发送给智能体、回复或解决。该标签页从不暂存、提交或撤销任何内容。要读取任何文件(不仅是更改过的文件),旁边的“所有文件”标签页会以树形显示文件夹,并在其自己的标签页中打开文件。
可以。在对话工具栏中点击 Create PR,会要求该联系人提交剩余改动、推送分支并使用 GitHub CLI 创建拉取请求,并且如其所处模式所述,在运行任何操作前都会先询问。随后按钮会变为 View PR,并带有一个标记:检查失败时为红色,检查运行中为琥珀色,全部通过后为绿色。其 ▾ 会在对话旁显示检查项,失败的排在最前,并可开启或关闭 Auto-merge:开启后,GitHub 会在所需检查通过后自动合并该拉取请求。如果仓库没有要求任何检查,buddylist 会在检查通过后自行合并,前提是应用处于打开状态。一旦拉取请求被合并或关闭,Continue 会将同一联系人从项目主线切换到一个新分支,Archive 会将其收起,Delete 会在询问后将其删除。Create PR manually 则会改为打开 GitHub 自己的页面。
它会询问 GitHub CLI。安装 gh,并在你的名字下点击一次 Connect to GitHub。之后,分支带有拉取请求的联系人会在其行末显示标签,标明其状态:Merged、Conflict、诸如 2 failing 的计数、Running、Passed 或 Closed。点击这些标签可在 GitHub 上打开该拉取请求。当检查开始失败或全部通过时,会弹出提示告知你,而你头像下方的行会统计等待你审查的拉取请求数量。对话旁的 Checks 标签页会列出其拉取请求的检查项,失败的排在最前,并显示失败的步骤及其错误。Send to 会将失败的检查交给智能体修复,Re-run failed 会重新启动这些检查。GitHub 上的合并会在一分钟内显示。除 Auto-merge 和 Re-run failed 外,应用仅进行读取;如果没有 gh,所有这些功能都不会显示。
可以。工具栏中的 Browser,或 ⇧⌘B,会在对话旁的标签页中打开网页:输入 localhost:3000 或直接输入 3000,或右键点击对话中的链接并选择 Open beside the conversation。会在更改时重新加载的开发服务器也会在那里重新加载。页面栏末端的 ⋯ 可将其显示为手机或平板尺寸,从你的电脑打开 HTML 文件,并可使点击回复中的链接在那里打开。栏上的相机可对页面截图以进行绘制,可用笔、方框、箭头和文本,并将其放入消息框。除此之外,页面无法访问应用、你的文件或智能体,智能体也看不到它。更多内容见浏览器标签页指南。
可以。对话工具栏中的 Run 会在该联系人的文件夹中启动你项目自己的命令。首次使用时,它会询问命令并给出建议,例如你 package.json 中的 dev 脚本。命令可以是几行,依次运行直到某一行失败,也可以是项目中的脚本文件,通过同一对话框中的 Choose file... 选择。每个联系人都会在 PORT 中获得自己的端口,因此同一项目上的多个联系人可以各自同时运行一个开发服务器。对话会显示启动了什么、指向 localhost 的链接以及输出。智能体不会被告知,Stop Run 会停止该命令启动的所有内容。更多内容见 Run 按钮指南。
在联系人列表的 ... 菜单中选择 Add project。Open GitHub project... 会克隆一个仓库:输入其地址或 owner/name,或从列表中选择你自己的一个。Open project... 会选择你电脑上已有的文件夹,而 Quick start... 会启动一个新项目,包含一个 git 仓库和首次提交,如果保持勾选,还会在 GitHub 上创建一个私有仓库。每个选项最终都会进入 Add a Contact,并已填好文件夹。列出和创建仓库需要 GitHub CLI;通过地址克隆则无需它。
可以。在 Add a Contact 中有一个 Start from a GitHub issue or PR 字段:从项目的开放列表中选择一个,或输入编号或粘贴链接。issue 会以其标题命名联系人,并以编号和标题命名分支。pull request 会检出它自己的分支,也可以来自 fork,因此联系人推送的内容会进入该 pull request。标题、文本和链接会作为草稿留在消息框中,在你按下 Enter 之前不会发送任何内容。这需要 GitHub CLI,并且应用只从 GitHub 读取。
在你确认之前,pull request 带来的任何内容都不会运行。它的联系人会在自己的工作树中工作,项目的安装脚本会在那里等待,因为安装会运行包自身的脚本:在你检查完更改后,在 Setup 标签页中运行 setup 即可启动它。在该工作树中,Claude Code 会从你的主检出目录获取项目设置,因此 pull request 添加的 hooks、允许规则和 MCP 服务器不会运行。Codex、OpenCode 和 Hermes 也不会启动分支所设置的内容,而 Gemini 除非你明确告知,否则不信任任何工作树。agent 仍然可以像在任何分支上一样运行该分支的代码,例如其测试。
可以。在对话中点击 Invite 并选择另一个联系人,无论其使用哪个服务,或点击那里的 + 用其服务和模型创建一个新的。你可以邀请任意多个。对话中的每个 agent 都在自己的文件夹中工作,并按顺序轮流回答,在对话旁的 Agents 标签页中从上到下,每个 agent 都能看到之前说了什么和做了什么。拖动名称上下移动可以更改谁先回答,或在 Replies 下选择 All at once,它们会立即全部开始。输入 @ 会打开所有人的列表:只有你提到的 agent 才会回答。一个 agent 也可以用同样的方式移交给另一个 agent,默认每条消息最多六轮,而斜杠命令只发送给主机。暂停一个 agent 后,它只在你提到它时才回答。每个 agent 都有自己的模式、模型和努力级别,任何 agent 的请求都会以邀请的形式到达,并说明是谁在请求。更多内容见群组对话指南。
可以。你在 git 仓库中添加的每个联系人都会在 ~/.buddylist/worktrees/ 中自己的 git 工作树上工作,位于一个新分支上,因此你选择的文件夹永远不会被触碰。要在同一项目上添加另一个 agent,请在列表中指向该项目并点击其行末的 +,或右键单击其某个联系人并选择 New contact in this project。按 Enter,分支会根据你提出的第一个请求命名,由 Claude 用几个词概括,或输入你自己的名称。新联系人会保留第一个联系人的服务、模型和模式。git 不跟踪的文件,例如 node_modules 和 .env,不会被复制。删除联系人也可以移除其工作树,而分支及其提交始终保留。在不是 git 仓库的文件夹中,联系人会在该文件夹本身中工作。要改为向另一个 agent 询问完全相同的文件夹,请打开聊天标签页:⇧⌘A,或 To: 行上方的 +,会在那里与任何 agent 启动聊天,作为对话上方的标签页。
可以。在 Add a Contact 中选择模型,或稍后点击对话下方的模型徽章进行切换。列表可搜索,并接受任何模型的准确名称,Add models... 可选择它提供哪些模型。Claude Code 和 Codex 会提供自己的列表,因此新模型会自动出现。同一个徽章还可以设置模型的思考强度,适用于接受强度级别的模型。两者都会为该联系人记住,并且不会写入你的 Claude Code 或 Codex 设置。Default 会将模型留给该服务你自己的设置。对于有快速模式的模型(目前是 Opus),它也会开启该模式,徽章上会显示 ⚡:同一模型给出更快的回答,但价格更高。
可以。在联系人努力程度菜单底部勾选“让 Claude 决定”,它就会为你发送的每条消息自行选择级别。它会先回复一个级别并简要说明理由,然后按该级别作答。在群组对话中,“工具 > 努力程度 > 让智能体决定”的工作方式相同:在任何人回答之前,由一个智能体为所有即将回答的成员指定级别,例如 @Claude(high) @Codex(low)。你自己选择的级别会一直保持,直到智能体再次选择。Gemini、OpenCode 和 Hermes 没有努力程度级别。
在计划模式下,Claude 会先写一份计划,并在做出任何更改之前等待你的答复。计划会在对话旁边的窗格中打开,窗口也会扩大以腾出空间。每份计划都有一个标签页:批准它,或者选择“否,继续规划”并说明需要更改什么。对话中会保留一个“查看计划”链接,“文件 > 查看计划”会列出所有计划以及你的答复方式。Codex、Gemini、OpenCode 和 Hermes 没有需要批准的计划。
可以,对 Claude 联系人有效。将鼠标指向该消息,下方会出现一行操作:回退到此消息、编辑和复制。回退会将对话带回该消息之前的状态,且不发送任何内容,因此 Claude 会忘记该消息及其之后的所有内容,就像终端中的 /rewind 一样,其文字会回到消息框中。编辑会在你发送新版本后执行同样的操作,按 Esc 则保持一切不变。Claude 更改过的文件保持原样。群组对话中的消息和斜杠命令无法回退。若想尝试另一种方式而不丢失当前方式,可在回复下方选择“从此处分叉聊天”,创建一个从该处继续的新聊天。智能体工作时你发送的消息会以灰色显示并等待,直到被读取:“立即发送”会停止当前回合,让智能体立即读取;“取消”则会撤回该消息。
当提供商报告使用限制时,“邀请另一个智能体”会打开邀请选择器。选择来自其他提供商的智能体加入同一对话和文件夹。它的第一个回合会收到此前内容的摘要,并适用其自己的登录和限制。对于未完成的清单,“继续使用……”会将剩余的待办事项发送给你选择的智能体,并要求它在继续之前检查现有更改。不会自动切换提供商。更多内容见账户指南。
除非你允许,否则不会。Claude、Codex 和 Gemini 默认会先询问,每个命令或编辑都会以邀请的形式出现。“模式”菜单可以放宽这一限制。“从不询问”会让智能体运行任何内容,因此仅在你不在意被破坏的文件夹中使用。OpenCode 是个例外:其“构建”模式会在不询问的情况下更改文件并运行命令,除非你的 opencode.json 另有规定。Hermes 也是如此:它在更改文件前会询问,但会运行任何它认为不危险的命令。
Claude 联系人经常会把部分工作交给子代理——一个独立运作、在它旁边工作并在完成后带回报告的代理。对话旁边的“子代理”标签页会列出它们:每个子代理当前在做什么、已经工作了多久,以及返回后的报告。“停止”会结束一个子代理,并让 Claude 继续处理其余工作。Claude 留下的运行中的命令和监视器不是子代理:它们列在“后台”标签页中。Codex、Gemini、OpenCode 和 Hermes 不会说明它们的子代理在做什么。更多内容见子代理指南。
Claude 联系人可以。说“盯着 CI,变绿了告诉我”、“10 分钟后再看看部署情况”,或者输入 /loop。Claude 会说明它多久回来检查一次,状态栏也会显示。当到了检查时间,Claude 会在你不发送任何内容的情况下作出回应,而“停止检查”会结束这些检查。检查在 buddylist 打开期间持续有效,重复的检查会在 7 天后自行结束。Codex、Gemini、OpenCode 和 Hermes 无法做到这一点。更多内容见检查指南。
可以。工具 > 设置... > 账户会通过浏览器中的 Claude 登录页面添加另一个 Claude 登录,例如在你的工作账户旁边添加一个个人账户。在那里使用,或在对话中用量计下方的“切换账户...”会让每个 Claude 联系人都使用该账户。当正在使用的账户达到会话或每周限制时,对话会询问是否切换到下一个账户,并从那里重新发送你的消息,同时带上此前说过的所有内容。此后始终允许无需询问即可切换。每个账户共享你的 Claude Code 设置、CLAUDE.md、技能和插件,而终端中的 claude 会保留你自己的登录。更多内容见账户指南。
在联系人列表或聊天中,Mac 上按 ⌘K,Windows 和 Linux 上按 Ctrl+K。命令面板会搜索联系人、对话预览、聊天文件夹中的文件以及当前窗口的菜单操作。输入名称或几个词,使用方向键和 Enter 选择,或按 Esc 关闭。过去的对话会在消息历史中打开,在那里“继续”可以恢复它们。更多内容见命令面板指南。
可以。设置 > 快捷键中有命令面板、联系人列表和任意应用中的快速发送、添加联系人、终端、聊天旁边的标签页、邀请和语音片段的按键。点击一个框并按下你想要的按键。已被其他快捷键占用或每个应用都保留的按键(如复制和粘贴)会被拒绝,“使用默认值”会将其恢复。更多内容见设置指南。
可以。将你的状态设置为“忙碌”或“通话中”,通知、声音、提示和 Dock 弹跳就会停止,但 Dock 图标和菜单栏上的计数器会继续。选择“显示离线”也会隐藏计数。不会自动回复:当你重新上线时,所有仍在等待的联系人会再次询问。此外,如果你 5 分钟没有输入,应用也会显示你处于“离开”状态。
可以。开始新聊天会将对话移至消息历史而不是删除它。右键点击联系人并选择“查看消息历史”以浏览和搜索其过往对话,将其保存为 Markdown 或删除。继续或双击可将其再次设为当前对话,代理会恢复之前的会话;来自终端的对话会先被复制,所以终端自己的对话保持原样。每名联系人最新的 50 条消息会保留在你的电脑上。要一次性查看所有联系人的对话,请选择“联系人 > 查看所有消息历史...”以在一个窗口中按最新优先显示所有联系人的对话,或在联系人列表的搜索框中输入:从两个字符开始,它还会列出对话中包含你输入文本的联系人。
归档其联系人。右键点击它并选择“归档联系人”:它会停止运行,对话窗口关闭并移至保持折叠的“已归档”部分。其消息历史、文件夹和工作树都会保留。对话旁边的侧边栏有相同的折叠“已归档”部分:点击那里的联系人可阅读其历史记录。恢复联系人会将其恢复原状,对话也会从中断处继续。在设置中开启“归档联系人”并在其拉取请求合并后自动归档,或者右键点击项目并选择“归档所有联系人”以一次性归档其所有联系人。对于你最常用的联系人,添加到收藏夹会将它们列在顶部。
可以。将图片拖放到表情符号、眨眼动画或应用数据文件夹中包文件夹内的图片中,然后重启应用。GIF、PNG、WebP 和 JPEG 文件均可。在眨眼动画旁边放置同名音频文件,它就会伴随声音播放。应用自带表情符号和 15 个经典眨眼动画,同名文件会替换内置文件。请确保你有权使用你添加的内容。
不。在联系人列表或对话中,选择“工具 > 外观 > 专业”,可以移除“服装”:扁平化面板、系统自带字体、线条图标、白天用石板灰、晚上用墨水蓝,以及仅以聊天软件的蓝色为主色。每个按钮、菜单和键位都保持原位。聊天软件恢复了 MSN 的外观,而像橄榄绿这样的主题则赋予这两种外观各自的色彩。更多内容请参阅专业外观和 MSN 外观的指南。
有。在联系人列表或对话中,通过 Tools > Theme 可以选择 Light、Dark 和 Match system(跟随系统)。Dark 是 Luna 模式:标题栏保持蓝色,其下方变为海军蓝。XP 的其他配色方案也有,每种方案都有日间和夜间两种:橄榄绿、银色、Royale 和粉色。所有窗口会同时变化,浏览器标签页中的网页也会随之改变。
存储在你的电脑上:Mac 上是 ~/Library/Application Support/buddylist/,Windows 上是 %APPDATA%\buddylist\,Linux 上是 ~/.config/buddylist/(当设置了 XDG_CONFIG_HOME 时位于其下)。每个代理都有自己的会话记录,例如 Claude Code 的记录在 ~/.claude/。
匿名统计数据,通过随机 ID 发送给 PostHog:记录应用打开情况以及使用了哪些功能(如终端或群聊),包括应用版本和操作系统。你或代理输入的内容、文件夹、文件、分支或联系人的名称都不会发送。在联系人列表中通过 Tools > Share anonymous usage data 关闭统计数据。当应用未预料到的问题发生时,也会向 Sentry 发送错误报告以便修复;通过 Tools > Send error reports 可以关闭这些报告。本页面也会统计其访问量和下载量,不使用 cookies。
应用在启动时以及之后每隔几小时检查一次新版本。Mac、Windows 和 AppImage 安装会在后台下载新版本,联系人列表会显示“New update available”并提供“See changes”和“Restart”。Restart 会安装新版本并重新打开应用,首先询问代理是否仍在工作。Debian 包安装会显示更新通知;安装新包即可更新。Help > Check for updates... 会立即询问,Help > What's new 会打开更新日志。Mac 上 v0.2.7 或更早版本的副本需要手动替换一次:退出 buddylist 并将新版本拖入 Applications。
用户口碑
真实用户评价
