1. 为什么要在 AtomCode 里打通 AtomGit Issue 通道
AtomCode 是 AtomGit 生态里的一款 AI 编程助手,它跟普通聊天式助手最大的区别,是支持 MCP(Model Context Protocol)和 Skill 两套扩展机制。MCP 负责"能做什么"——把外部平台的 API 包装成 AI 可调用的工具;Skill 负责"该怎么做"——用一份 Markdown 说明书告诉 AI 遇到某类任务时的标准流程。把这两者组合起来,你就能在编辑器对话窗口里直接说一句"帮我在 my-org/my-repo 提个 Issue",AI 自动调用 AtomGit 接口完成创建,全程不用切浏览器。
这套玩法适合谁?我总结了三类人:一是日常要写大量 bug 报告、需求单的开发者,手动填标题、正文、标签、负责人太碎;二是团队里负责工单流转的人,希望 AI 按统一模板生成 Issue 内容;三是想把本地编码助手和代码托管平台工单系统联动起来、做工作流自动化的同学。AtomGit 官方发布的 MCP Server 提供了 274+ 个工具,覆盖仓库、Issue、PR、分支、标签、文件等操作,Issue 只是其中一块,但它是最高频的入口。
不过很多人卡在第一步:MCP 配置写在哪、Token 怎么给、Skill 目录放哪、改完为什么不生效。更麻烦的是,如果你同时用多个 AI 工具(Claude Code、Cline、Codex 等),每个工具的 Key 和 endpoint 都要单独配一遍,管理成本很高。这篇就按"全局安装"的思路,把 AtomCode 的 MCP + Skill 一次配好,同时用 TaoToken 统一 Key 和 API 通道,让所有工具共用一套凭证。下面从环境准备开始,一步步给到可复制的配置片段和验证动作。
2. 前置准备:AtomGit Token 与 TaoToken 统一 Key 获取
2.1 获取 AtomGit Token
所有 AtomGit OpenAPI 请求都需要 Bearer Token 认证,Token 在 atomgit.com 和 gitcode.com 通用(共享同一套后端)。访问https://atomgit.com/setting/token-classic,或从 AtomGit 头像菜单 → 设置 → 个人访问令牌进入。
创建新 Token 时填写名称(比如atomcode-mcp),选择过期时间,勾选以下权限:
| 权限 | 作用 |
|---|---|
| api | 完整 API 访问权限 |
| issues | Issue 读写权限 |
| read_user | 读取用户信息 |
| read_repository | 读取仓库信息 |
生成后立即复制 Token 字符串,关闭页面后将不再显示。把它保存到安全位置,下一步会用到。
注意:Token 相当于你的密码,不要提交到 Git 仓库、不要分享给他人。建议使用环境变量而非硬编码在配置文件中。
2.2 获取 TaoToken 统一 Key
如果你只用 AtomCode 一个工具,直接用 AtomGit Token 就够了。但实际开发中往往同时开着 Claude Code、Cline、Codex 等多个助手,每个都要单独配 Key 和 endpoint,改一次要动好几个文件。TaoToken 的思路是提供一个统一的 API 通道,所有工具共用一套 Key 和 Base URL,切换模型或工具时只改一处。
获取方式:访问 TaoToken 控制台(https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=console),注册后在 API Keys 页面创建一个新 Key。这个 Key 会作为所有下游工具的凭证。
TaoToken 的 API 入口是https://taotoken.net/api(注意:API 地址不加 UTM 参数,直接填这个即可)。在 AtomCode 的 MCP 配置里,如果 MCP Server 本身需要调用大模型能力(比如某些 Skill 会触发模型推理),就把 Base URL 指向这个地址,Key 填 TaoToken 的 Key。
提示:AtomGit Token 和 TaoToken Key 是两个不同用途的凭证。前者用于访问 AtomGit 平台 API(创建 Issue 等),后者用于访问大模型 API。配置时不要混淆。
2.3 环境检查
在开始配置前,确认本地环境满足以下条件:
# 检查 Node.js 版本,MCP Server 需要 18+ node -v # 检查 npx 是否可用 npx -v # 检查 AtomCode 是否已安装 atomcode --version如果 Node.js 版本低于 18,去 nodejs.org 下载 LTS 版本安装。npx 通常随 npm 一起安装,如果缺失,运行npm install -g npx补上。
3. 全局安装 MCP Server 与 Skill 配置片段
3.1 全局 MCP 配置
AtomCode 的 MCP 配置支持项目级(.mcp.json)和全局级(~/.atomcode/mcp.json)。为了让所有项目都能使用 AtomGit 提 Issue,我们采用全局安装。
编辑~/.atomcode/mcp.json,写入以下内容:
{ "mcpServers": { "atomgit": { "command": "npx", "args": ["-y", "@atomgit.com/atomgit-mcp-server"], "env": { "ATOMGIT_TOKEN": "__ATOMGIT_TOKEN__", "TAOTOKEN_BASE_URL": "https://taotoken.net/api", "TAOTOKEN_API_KEY": "__TAOTOKEN_API_KEY__" } } } }把__ATOMGIT_TOKEN__替换成 2.1 步获取的 Token,__TAOTOKEN_API_KEY__替换成 2.2 步获取的 TaoToken Key。如果你不需要 TaoToken 通道,可以删掉后两行 env。
也可以用命令行一键添加:
atomcode mcp add atomgit npx -y @atomgit.com/atomgit-mcp-server --global关于 MCP Server 包:@atomgit.com/atomgit-mcp-server是 AtomGit 官方发布的 npm 包,提供 274+ 个工具,覆盖仓库、Issue、PR、分支、标签、文件等操作。安全模式下危险操作(delete/remove/archive/transfer)默认不暴露。
3.2 配置环境变量
将 Token 配置到环境变量中,推荐写入 shell 配置文件(如~/.zshrc或~/.bashrc):
# ~/.zshrc export ATOMGIT_TOKEN="你的token" export TAOTOKEN_API_KEY="你的taotoken_key" export TAOTOKEN_BASE_URL="https://taotoken.net/api"然后使其生效:
source ~/.zshrc提示:如果不想在全局环境变量中暴露 Token,也可以在 MCP 配置的 env 字段中直接填写,但注意
~/.atomcode/mcp.json不应公开分享。
3.3 全局安装 Skill
Skill 是 AtomCode 的可复用技能包,告诉 AI"遇到这类任务应该怎么做"。我们创建一个专门的atomgit-issueSkill 来管理 Issue 提交流程。
创建目录和文件:
mkdir -p ~/.atomcode/skills/atomgit-issue在~/.atomcode/skills/atomgit-issue/SKILL.md中写入:
--- name: atomgit-issue description: Create and manage issues on AtomGit (atomgit.com) / GitCode repositories. Use when filing bug reports, feature requests, or tracking tasks. --- # AtomGit Issue 管理 通过 AtomGit MCP Server 创建和管理 AtomGit/GitCode 平台上的 Issue。 ## 前置条件 1. **AtomGit Token** — 已配置在 `ATOMGIT_TOKEN` 环境变量中 - 生成地址:https://atomgit.com/setting/token-classic - 所需权限:`api`, `issues` 2. **AtomGit MCP Server** — 已通过 `~/.atomcode/mcp.json` 全局注册 ## 工作流程 ### 1. 创建 Issue 使用 `mcp__atomgit__create_issue` 工具创建 Issue: | 参数 | 必填 | 说明 | |------|------|------| | owner | 是 | 仓库所有者(用户名或组织名) | | repo | 是 | 仓库名称 | | title | 是 | Issue 标题 | | body | 是 | Issue 内容(Markdown 格式) | | assignees | 否 | 负责人列表 | | labels | 否 | 标签列表 | | milestone | 否 | 里程碑编号 | ### 2. 查询 Issue 使用 `mcp__atomgit__list_issues` 或 `mcp__atomgit__get_issue` 查看 Issue 列表或详情。 ### 3. 评论 Issue 使用 `mcp__atomgit__create_issue_comment` 为 Issue 添加评论。提示:AtomCode 启动时会自动扫描
~/.atomcode/skills/目录下的所有 SKILL.md 文件。Skill 支持三种调用方式:斜杠命令(输入/atomgit-issue手动触发)、Dollar 菜单(输入$atomgit-issue带参数调用)、AI 自动调用(对话涉及 Issue 相关内容时,AtomCode 自动匹配并执行)。
3.4 三件套对照表
无论你用 AtomCode、Cline 还是 Codex,接入任何 MCP 或模型通道都离不开三件套:Base URL、Key、Model ID。对照如下:
| 组件 | 值 | 用途 |
|---|---|---|
| Base URL | https://taotoken.net/api | TaoToken 统一 API 入口 |
| Key | TaoToken 控制台创建的 Key | 身份认证 |
| Model ID | 按需选择(如 claude-sonnet-4-5) | 指定调用的模型 |
AtomGit MCP 的配置则是另一套:ATOMGIT_TOKEN用于访问 AtomGit 平台,command+args指定 MCP Server 启动方式。
4. 验证请求:创建 Issue 并回读确认
4.1 重启 AtomCode
MCP 配置在 AtomCode 启动时加载,因此需要重启才能生效:
# 完全退出 AtomCode,确保进程已终止 # 然后重新启动 atomcode启动日志中会看到 MCP 连接信息。
4.2 验证 MCP 连接状态
在 AtomCode 中输入/mcp查看已连接的 MCP 服务列表。如果看到atomgit出现在列表中,说明连接成功。
4.3 验证 Skill 加载
输入/skills查看所有已加载的 Skill,atomgit-issue应出现在列表中。
4.4 创建 Issue 验证
配置完成后,你就可以在对话中直接让 AtomCode 提 Issue 了:
你:帮我在 my-org/my-repo 提一个 Bug Issue,标题是"登录页面在移动端布局错乱", 内容:描述一下在 iOS Safari 上输入框被键盘遮挡的问题 AtomCode:好的,我来创建 Issue。 → 调用 mcp__atomgit__create_issue(owner="my-org", repo="my-repo", title="登录页面在移动端布局错乱", body="...") → Issue 已创建!链接:https://atomgit.com/my-org/my-repo/issues/424.5 回读验证
创建后立即回读,确认通道双向可用:
你:看看 my-org/my-repo 有哪些未关闭的 Issue AtomCode:→ 调用 mcp__atomgit__list_issues(owner="my-org", repo="my-repo", state="open") → 当前有 3 个未关闭的 Issue: 1. #42 登录页面在移动端布局错乱 2. #41 添加暗黑模式支持 3. #39 优化首页加载速度如果创建成功且能回读列表,说明 MCP 通道完全打通。这一步很关键——很多人只验证创建,不验证回读,结果遇到权限不足或仓库不存在的问题时无法定位。
5. 常见报错排查:401、local proxy failed、reading choices
5.1 MCP 连接失败
如果/mcp中看不到atomgit服务,可能的原因:
Node.js 未安装— MCP Server 需要 Node.js 18+,去 nodejs.org 下载安装。
环境变量未设置— 确认ATOMGIT_TOKEN已正确设置且重启了终端:
echo $ATOMGIT_TOKENnpx 找不到包— 尝试手动运行看报错信息:
npx @atomgit.com/atomgit-mcp-serverJSON 格式错误— 检查~/.atomcode/mcp.json的 JSON 语法,可以用python -m json.tool ~/.atomcode/mcp.json验证。
5.2 401 Unauthorized
这是最常见的报错,通常有三种原因:
Token 无效或过期— 去https://atomgit.com/setting/token-classic重新生成,确认复制完整(没有多余空格)。
权限不足— 至少需要api和issues权限。如果还需要操作 PR、仓库等,请追加对应权限。
Token 未正确传递— 检查~/.atomcode/mcp.json中env.ATOMGIT_TOKEN是否填对,或环境变量是否生效。注意:MCP 配置中的 env 优先级高于 shell 环境变量。
5.3 local proxy failed
这个报错通常出现在 MCP Server 启动阶段,表示本地代理或网络请求失败。排查方向:
Base URL 配置错误— 如果用了 TaoToken 通道,确认TAOTOKEN_BASE_URL填的是https://taotoken.net/api,不要多加路径或斜杠。
网络不通— 在终端手动 curl 测试:
curl -I https://taotoken.net/api端口占用— 某些 MCP Server 会启动本地端口,如果被占用会报 proxy failed。检查是否有其他进程占用。
5.4 reading choices 报错
这个报错一般出现在模型返回格式异常时,表示解析响应中的choices字段失败。常见原因:
Model ID 填错— 确认你填的 Model ID 是 TaoToken 支持的模型名,不要填成 OpenAI 或 Anthropic 的原始名称。
响应被截断— 如果 Issue 正文特别长,可能触发 token 上限导致响应不完整。把正文拆短或换用支持更长上下文的模型。
API Key 无效— 虽然报的是 reading choices,但根因可能是 Key 无效导致返回了错误结构。先用/mcp确认连接状态,再检查 Key。
5.5 OAuth 相关报错
如果看到 OAuth 相关的错误,说明某些工具尝试走 OAuth 流程但未配置。AtomGit MCP 默认用 Token 认证,不需要 OAuth。如果报错,检查是否误配了auth字段,删掉即可。
5.6 项目级配置 vs 全局配置
全局配置对当前用户所有项目生效。如果只想在某个特定项目中使用,可以将mcp.json和.atomcode/skills/放在项目根目录下。项目级配置会覆盖全局配置中同名的 MCP Server。
排查时如果发现配置改了不生效,先确认改的是全局还是项目级——项目级优先级更高,容易覆盖掉你的全局设置。
6. 把通道用起来:从单次提 Issue 到工作流自动化
配置打通只是起点。真正提升效率的是把这套通道嵌入日常工作流。我自己的做法是:在 AtomCode 里维护几个常用 Skill,除了atomgit-issue,还有atomgit-pr(提 PR)、atomgit-review(代码审查)。每次遇到 bug,直接在对话里描述现象,AI 按 Skill 里的模板生成结构化 Issue 正文,自动带上复现步骤、环境信息、预期行为等字段,比手填快很多。
如果你团队有统一的 Issue 模板,把它写进 SKILL.md 的 body 示例里,AI 生成时会自动遵循。比如要求每个 bug 报告必须包含"复现步骤 / 实际结果 / 预期结果 / 环境"四段,就在 Skill 里写清楚,后续所有 Issue 都按这个格式走。
TaoToken 统一 Key 的价值在多工具场景下更明显。我同时用 AtomCode 和 Claude Code,两个工具都指向https://taotoken.net/api,共用一套 Key。换模型时只改 TaoToken 控制台的配置,两个工具同时生效,不用逐个改配置文件。如果你也在用多个 AI 编码助手,建议把 Key 和 endpoint 统一到一处管理。
最后给一个实用技巧:MCP 配置改完后,如果/mcp里状态显示已连接但调用工具报错,先看 AtomCode 的日志输出(通常在~/.atomcode/logs/下),日志里会打印具体的请求 URL 和响应状态码,比在对话里猜要快得多。Token 权限问题、仓库路径写错、网络超时,日志里都能直接看到。
需要进一步操作的话,可以访问 TaoToken 的 API Keys 页面管理凭证(https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=api-keys),或查阅接入文档(https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=doc)了解各工具的详细配置方式。如果你主要做长期编码和 Agent 任务,Coding Plan(https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=coding-plan)会更合适;只是想先验证模型对话效果,可以直接在模型对话页(https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=chat)试一下。