Skip to main content
Glama

Cowrite 是一个本地运行的对话式写作画布。浏览器负责承载和编辑文章,Codex / Claude Code 通过 MCP 读写同一份数据;左侧的 Skill 管理会自动读取本机 Codex、Claude Code 和自定义目录里的能力。配图统一调用 Codex 内置 image_gen,HTML 解释图和文章优化由仓库内置 Skill 完成。它同时提供 Codex 与 Claude Code marketplace,安装后会自动准备依赖、构建前端并启动本地服务。

安装

要求:Node.js 20.19+(或 22.12+)、npm,以及已登录的 Codex CLI 或 Claude Code。使用“发送到飞书”还需要本机安装并登录 lark-cli,同时安装其 lark-doc Skill。

让 Codex 自动安装

把下面这段口令发给 Codex:

请安装 Cowrite:https://github.com/SpaceZephyr/cowrite.git
请依次运行:
1. codex plugin marketplace add SpaceZephyr/cowrite --ref main
2. codex plugin add cowrite@cowrite
3. codex plugin list,确认 Cowrite、8 个 Skills 和 Cowrite MCP 已安装
安装完成后告诉我需要新建一个任务来加载插件;新任务中调用 cowrite_open_canvas,在 Codex 内打开原生画布。

也可以直接在终端安装:

codex plugin marketplace add SpaceZephyr/cowrite --ref main
codex plugin add cowrite@cowrite

安装后新建一个 Codex 任务,然后说:

启动 Cowrite,并在 Codex 内打开画布。

让 Claude Code 自动安装

把下面这段口令发给 Claude Code:

请安装 Cowrite:https://github.com/SpaceZephyr/cowrite.git
请依次运行:
1. claude plugin marketplace add SpaceZephyr/cowrite
2. claude plugin install cowrite@cowrite --scope user
3. claude plugin list,确认 Cowrite、8 个 Skills 和 Cowrite MCP 已安装
安装完成后提醒我运行 /reload-plugins 或新开一个 Claude Code 会话;加载后调用 cowrite_get_status,返回本地画布地址。

也可以在 Claude Code 中手动执行:

/plugin marketplace add SpaceZephyr/cowrite
/plugin install cowrite@cowrite
/reload-plugins

或直接使用终端命令:

claude plugin marketplace add SpaceZephyr/cowrite
claude plugin install cowrite@cowrite --scope user

首次启动会发生什么

插件的 MCP 首次加载时会自动:

  1. 检查并安装 npm 依赖;

  2. 构建 Cowrite 浏览器前端;

  3. http://127.0.0.1:4320 启动生产服务;

  4. 注册 Cowrite MCP 工具;

  5. 将页面和资产持久化到 ~/.cowrite/

首次启动可能需要几十秒。服务仅监听本机,不会把文章上传到远端。插件会话结束时,由插件启动的服务也会停止;下一次加载会自动恢复。

从源码运行

git clone https://github.com/SpaceZephyr/cowrite.git
cd cowrite
npm install
npm run dev

开发模式默认打开 http://127.0.0.1:4321,API 位于 127.0.0.1:4320,测试页面数据保存在 data/cowrite.json。若 4321 被占用,Vite 会在终端显示自动切换后的地址。

本地 Skill 管理

点击左侧「Skill 管理」,Cowrite 会分别扫描 ~/.codex/skills~/.claude/skills;也可以输入一个自定义 Skill 目录。每个一级子目录只要包含 SKILL.mdskill.mdSkill.md,就会显示为可搜索、可分类的 Skill。专家视图根据本地分类聚合能力,不会调用远端模型。

  • 点击 Skill 的「使用」,可以复制 SKILL.md 调用地址,或填写文档地址、目标和输出格式等补充信息后复制完整调用口令。

  • 删除 Skill 前必须二次确认。Cowrite 不会立即永久清除文件,而是把对应文件夹移入当前目录的 .cowrite-trash,需要时可从本地恢复;符号链接只移动链接本身。

  • 专家是本地聚合分组,没有独立文件夹。删除专家只会从当前目录的专家视图隐藏该分组,不会删除成员 Skill。

  • 自定义目录必须先在 Cowrite 成功加载,才允许执行删除。所有写操作都要求当前 Cowrite 会话令牌,并拒绝其他本地端口或跨站页面发起的请求。

项目工作台

点击左侧「项目」可选择一个本地文件夹,把它作为 Markdown 工作区打开:

  • 左栏递归展示项目中的 .md / .markdown 目录树,并支持刷新或切换文件夹;依赖、构建产物和 Git 内部目录不会进入扫描结果。

  • 中栏复用 Cowrite 的 Vditor 即时预览编辑器,修改自动保存回原文件;文件被其他程序改动时,版本校验会阻止覆盖。

  • 点击右栏「+」会打开 Skill 选择弹窗,可按关键词、分类以及 Codex / Claude Code 来源筛选,并查看 Skill 所属文件夹与分类。已添加的 Skill 按项目文件夹分别保存,右栏只显示名称;整个 Skills 面板可收起并记住状态。

  • 点击右栏 Skill 会打开使用弹窗,可填写任务、预览并复制一段包含 Skill 调用地址、Skill 文件夹、项目绝对路径、Markdown 文件清单和当前正文的 Codex 提示词;也可从当前项目移除关联,不会删除本地 Skill 文件。

系统文件夹选择器不可用时,可在项目欢迎页输入绝对路径作为备用方式。项目授权只在当前 Cowrite 进程内有效;服务端会拒绝目录穿越、符号链接逃逸和非 Markdown 文件读写。

写作工作流

  1. 新建页面时可填写标题和创作要求,也可从本地导入 .md / .markdown 文件;导入会自动识别一级标题或使用文件名。编辑时可直接粘贴 PNG、JPEG、GIF 或 WebP 图片,Cowrite 会先存入本地资产库再插入短链接,避免 base64 导致页面卡顿。

  2. 点击顶部「Cowrite」,在“按页面内容为要求创作”和“输入自定义创作要求”之间二选一;Codex 会弹出原生“发送后续提示?”确认窗,确认后任务连同当前页面全文直接发送到当前对话。

  3. 在编辑器中选中文字,使用浮动工具栏的「配图」「HTML」「优化」或「对话」;所有 Agent 按钮都会先进入 Codex 原生确认窗,「对话」可在确认窗中补充具体修改要求。

  4. 点击每个 Page 顶部的「Slide」,选择 PPT 或 HTML;PPT 模式会同时生成可编辑 PPTX 和浏览器可打开的 PDF 预览,Agent 把交付链接插回文章顶部。

  5. 点击「排版」,选择公众号或小红书:公众号生成可复制富 HTML;小红书按确认后的策略用 Codex 内置 image_gen 生成 3:4 图片组。

  6. 点击顶部「配图」,确认后由 Agent 分析整篇文章,使用 Codex 内置 image_gen 生成 2-6 张统一风格的 16:9 配图并插入对应段落。

  7. 点击「发送」,可选择飞书、公众号或知乎;飞书确认后通过本机 lark-cli 创建云文档,公众号与知乎暂标记为“待完善”。

  8. Agent 读取页面最新 revision,调用指定 Skill 产出结果,再通过 MCP 精确写回。

  9. 编辑器轮询更新,人和 Agent 可以继续编辑同一页面;revision 乐观锁会阻止相互覆盖。

  10. 删除页面时,在左侧目录对应标题最右侧点击删除图标,并在确认弹窗中执行删除。

内置 Skill 路由

Cowrite 操作

仓库内 Skill

固定产物与约束

配图

skills/image-studio

Codex 内置 image_gen、16:9 图片、禁止外部模型回退

整篇配图

skills/article-batch-illustration + skills/image-studio

自动规划 2-6 个锚点、统一风格、逐图安全插入

HTML

skills/text-logic-diagram

16:9 HTML/PPT 风格单页、内联 CSS + SVG、适合 iframe

优化

skills/ai-writing-assistant

Method 5 局部改写,只替换选中文字

Slide

skills/space-multi-design-ppt

智能品牌匹配;原生可编辑 PPTX + PDF 浏览器预览,或 16:9 HTML deck

排版

skills/space-wechat-layout

自动匹配 Claude / OpenAI / Google;微信公众号可复制富 HTML 预览页

小红书排版

skills/baoyu-xhs-images + skills/image-studio

两次方案确认;Codex 内置 image_gen 逐张生成 3:4 图片组

页面读写

skills/cowrite

MCP 操作、revision 合并、防覆盖规则

按钮发送的任务会显式声明 Skill 名称和已确认参数。普通浏览器无法连接当前 Codex 对话时,Cowrite 会明确提示并提供复制兜底,不会伪装成已发送。所有位图生成统一走 Codex 内置 image_gen,不需要配置图片 API key,也不会改用外部模型或插入来源不明的图片。

内置图片生成

Cowrite 不再包含 LabNana、Gemini 或其他外部图片 API 脚本。配图、整篇配图、小红书图片和 Slide 图片模式都使用 Codex 内置 image_gen

  • 不需要 LABNANA_API_KEYOPENAI_API_KEY

  • 每张不同图片单独调用一次内置工具

  • 生成后先检查,再复制到项目目录、上传并插入 Cowrite

  • 内置工具不可用或失败时停止,不使用 CLI 或外部模型回退

Codex 提供内置生图时图片按钮可直接执行。Claude Code 仍可使用页面编辑、排版、HTML、PPTX 和 MCP 能力;如果当前运行时没有 Codex 内置 image_gen,图片任务会明确停止,不会自动切换供应商。

Agent 接入

.codex-plugin/plugin.json                 Codex 插件描述与 Skill 入口
.agents/plugins/marketplace.json          Codex marketplace
.claude-plugin/plugin.json                Claude Code 插件描述
.claude-plugin/marketplace.json           Claude Code marketplace
.mcp.json                                 Codex / Claude Code 双端 MCP 启动配置
scripts/start-plugin.mjs                  自动安装、构建、启动与持久化
skills/cowrite/SKILL.md                   页面读写与并发规则
skills/image-studio/                      Codex 内置 image_gen 工作流、风格和提示词模板
skills/article-batch-illustration/         整篇文章配图规划、统一视觉与安全插入规则
skills/text-logic-diagram/                HTML/PPT 逻辑图规范与模板
skills/ai-writing-assistant/              文章创作与局部优化方法
skills/space-multi-design-ppt/             文章转 PPTX / HTML Slides 工作流
skills/space-wechat-layout/                 微信公众号排版与可复制 HTML 预览模板
skills/baoyu-xhs-images/                    小红书内容拆解、策略、风格与图片组工作流

MCP 提供八个工具:cowrite_open_canvascowrite_get_statuscowrite_list_pagescowrite_get_pagecowrite_create_pagecowrite_update_pagecowrite_upload_assetcowrite_insert_after。其中 cowrite_open_canvas 通过 MCP App 在 Codex 内打开画布,并把按钮任务交给 Codex 原生确认窗;cowrite_get_status 仍返回普通浏览器地址,供 Claude Code 或源码调试使用。

如果只想临时加载本地源码而不安装 marketplace,也可以使用 Claude Code 的开发参数:

claude --plugin-dir /absolute/path/to/cowrite

插件模式不需要手动保持 npm run dev;自启动运行器会管理生产服务。源码开发时仍使用 npm run dev

架构

浏览器 Vditor ───────────────┐
                             ├─> Express API ─> ~/.cowrite/cowrite.json
Codex / Claude + Skills ─MCP─┘                  └─> ~/.cowrite/assets/
  • 服务只监听 127.0.0.1,网页本身不执行 Agent 或 Skill。

  • Skill 元数据和专家偏好只在本机处理;Skill 删除进入所在目录的 .cowrite-trash

  • marketplace 安装模式使用 ~/.cowrite/ 持久化;源码开发模式使用仓库内 data/

  • 列表接口不返回正文,Agent 只在需要时读取完整页面,减少上下文消耗。

  • promptrevision = 1 的页面会显示为“等待 Agent 创作”。

  • 图片和 HTML 先进入 Cowrite 资产库,再以 Markdown 图片或 iframe 插入锚点段落后。

验证

npm test
npm run build
npm run probe:plugin

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SpaceZephyr/cowrite'

If you have feedback or need assistance with the MCP directory API, please join our Discord server