进阶 📋 7 个步骤 第 211 / 446 篇

用 OpenWork 在 Claude Code / Cursor / Codex 间共享同一套 Agent 技能

different-ai/openwork 登顶 GitHub Trending,被称为开源版 Claude Cowork——一次配置 MCP,技能和插件就能在 Claude Code、Cursor、Codex 三个编辑器里共享。本教程手把手教你安装 OpenWork、连接一次 MCP Server、把自定义技能同步到三端,告别重复配置。

2026.08.01· 22 分钟阅读· 约 1393 字· 🔗 OpenWork / 🤖 共享技能

你有没有这种痛苦:在 Claude Code 里精心配好的 MCP 工具和技能,换到 Cursor 要重来一遍,再换到 Codex 又来一遍?2026 年 7 月 31 日,different-ai/openwork 登顶 GitHub Trending,被称为「开源版 Claude Cowork」——它的核心思路很简单:一次连接 MCP,技能和插件就在三个编辑器之间共享。本教程手把手带你装好 OpenWork,把一套 Agent 技能配置同步到 Claude Code / Cursor / Codex。

🔗 本教程适合:同时用多个 AI 编程编辑器、受够了重复配置 MCP 和技能的开发者。你只需要一台装了 Node.js 的电脑,以及任意一款已登录的 AI 编程工具。

先搞懂:OpenWork 解决什么痛点?

用一句话理解:OpenWork 是一个「技能中间层」,把你的 MCP Server 和自定义技能抽出来,做成一份统一配置,谁(哪个编辑器)来连都能用。过去每个编辑器的技能是「孤岛」,现在变成「共享文件夹」。

过去(孤岛模式)现在(OpenWork 共享)
Claude Code 配一遍 MCP配一次,三端自动同步
Cursor 再配一遍同样的
Codex 又配一遍
改了技能要改三处改一处,三端即时生效

前提说明:OpenWork 目前通过本地代理把统一配置「翻译」成各编辑器能识别的 MCP 格式。它不替你写技能,而是让你的技能"一次写好、处处可用"。技能本身的质量仍取决于你。

Step 1:安装 OpenWork CLI

1 用 npm 全局装好命令行

OpenWork 以 CLI 形式提供,装好后在任意目录都能启动它的本地网关:

# 需要 Node.js 18+
npm install -g @different-ai/openwork

# 验证安装
openwork --version
# 看到版本号即成功
💡 新手提示:如果提示权限不足(EACCES),在命令前加 sudo(macOS/Linux),或用 nvm 管理 Node 版本避免全局写权限问题。Windows 用户用管理员 PowerShell 运行即可。

Step 2:初始化你的共享技能工作区

2 建立一份统一的技能清单

OpenWork 用一个配置文件集中管理所有技能和 MCP Server。先初始化工作区:

# 在你喜欢的目录
mkdir ~/openwork-workspace && cd ~/openwork-workspace
openwork init

# 会生成 openwork.config.json,结构类似:
{
  "mcpServers": {
    "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "."] },
    "github":     { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"] }
  },
  "skills": ["./skills/code-review", "./skills/deploy-check"]
}
🚀 想从零写技能?本中心《OpenClaw Skills 开发》与《MCP Server 开发实战》两篇教程能帮你补齐"技能怎么造"的部分。OpenWork 负责"技能怎么共享"。

Step 3:把现有 MCP Server 收编进配置

3 把三处重复的配置合并成一处

把你原来在 Claude Code、Cursor、Codex 各自配过的 MCP Server 地址,统一搬进 openwork.config.jsonmcpServers 字段。例如你常用的几个:

{
  "mcpServers": {
    "sqlite":   { "command": "uvx", "args": ["mcp-server-sqlite", "--db", "./app.db"] },
    "puppeteer":{ "command": "npx", "args": ["-y", "@modelcontextprotocol/server-puppeteer"] },
    "slack":    { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-slack"] }
  }
}

务必删掉各编辑器里原来的重复配置,否则可能出现"同一个工具注册两次"的冲突。先备份原配置再改,是稳妥做法。

Step 4:启动 OpenWork 本地网关

4 让网关在后台常驻
# 启动网关(默认监听本地端口)
openwork serve

# 输出类似:
# OpenWork gateway running at http://127.0.0.1:8787
# Loaded 3 MCP servers, 2 skills
🔑 关键技巧:把它挂成系统服务或开机自启(macOS 用 launchd、Linux 用 systemd),这样每次开编辑器不用手动起网关。开发机建议常驻。

Step 5:在 Claude Code 里连上共享网关

5 三端里最简单的一处

各编辑器只需指向 OpenWork 网关这一个地址,不用再写一堆 Server:

# Claude Code 的 .mcp.json(项目或用户级)
{
  "mcpServers": {
    "openwork": {
      "url": "http://127.0.0.1:8787/mcp"
    }
  }
}
💡 连上后,你在 Step 3 收编的所有工具,在 Claude Code 里立刻全部可用,无需逐个添加。

Step 6:在 Cursor 和 Codex 复用同一份配置

6 复制粘贴即可,零重复劳动

Cursor 和 Codex 的 MCP 配置格式与 Claude Code 兼容,把 Step 5 那段 JSON 原样贴进它们的 MCP 设置即可:

# Cursor:Settings → MCP → 添加;或写入 ~/.cursor/mcp.json
# Codex:写入 ~/.codex/config.toml 的 [mcp_servers] 段,或等价 JSON
# 内容都是同一个 URL:http://127.0.0.1:8787/mcp

# 验证(以 Cursor 为例):在聊天里问
# "列出你可用的 MCP 工具" → 应看到 openwork 代理出的全部工具

连不上的常见原因:① 网关没启动;② 编辑器与网关不在同一台机器(远程开发要改 host 为可访问地址);③ 防火墙挡了 8787 端口。逐个排查即可。

Step 7:加一个自定义技能,三端即时生效

7 体验"一次写好、处处可用"

skills/ 下新建一个技能(一个带 SKILL.md 的文件夹),OpenWork 会自动把它分发给所有连接的编辑器:

skills/deploy-check/
  SKILL.md        # 写明:何时用、做什么、调用哪些工具
  check.sh        # 实际执行的脚本

# 改完配置无需重启网关,热加载即可
openwork reload

# 现在在 Claude Code / Cursor / Codex 任意一端说
# "帮我跑一下 deploy-check"
# 三者都会调用同一个技能
🎉 恭喜!你已完成"三端共享一套技能"的闭环。以后新增工具只改 openwork.config.json 一处,再也不用对着三个编辑器反复粘贴。

常见问题速查

现象大概率原因 & 解决
编辑器里看不到任何工具网关未启动,或 URL/端口写错
工具出现两份编辑器里还留着旧配置,删掉重复项
新增技能不生效忘了 openwork reload 热加载
远程开发连不上网关 host 改成局域网/可访问地址,并放行端口
← 返回教程中心