zhongerxin /Cowart

★ 6,051⑂ 454👁 9▤ 0
JavaScriptCreated 2026-06-19
6,051
stars
+0+-1+68
454
forks
9
watchers
–
prs
–
issues
0
releases
–
discussions

README

Cowart

Cowart 是一个面向 Codex 的原生无限画布 widget 插件。它基于 tldraw 提供可视化画布,用于构思、标注、生成图片和根据标注图迭代图片。画布由 MCP widget 直接打开,数据默认保存到当前用户项目的 canvas/ 目录,而不是保存到插件仓库里。

仓库同时遵循 Agent Plugins v1.0.0:根目录的 plugin.json、skills/ 和 mcp.json 提供可移植插件入口;.codex-plugin/plugin.json、.mcp.json 和 .agents/plugins/marketplace.json 保留 Codex 专用的界面与安装元数据。

English README: README.en.md

 体验网页版 Cowart

无需安装,直接开始。

在 Codex 内置浏览器中打开 cowart.jiqiren.ai,完成登录进入画布,然后开始你的创作。

!Cowart 封面

 功能

- 在 Codex 中打开一个原生 tldraw 无限画布 widget;正常使用不再通过网页浏览器或 in-app browser 打开本地页面。
- 在当前项目目录中持久化画布页面和图片资源。
- 在画布中创建 AI 图片框,直接输入 prompt、选择参考图,并让 Codex 按选中框的位置和比例生成图片后替换它。
- 创建 16:9 的 AI HTML 框,通过 prompt 和参考图生成可运行的单文件 HTML,并直接嵌入画布继续编辑或迭代。
- 创建 AI 影片,把 prompt 和参考图变成带分镜、运动、音乐与音效的 HTML/JS 动效影片;支持画布内预览、编辑文字和导出 MP4。
- 创建 AI Slides,将图片和 HTML 组织成演示文稿,或让 Codex 按指定页数生成一组 16:9 HTML 页面;支持缩略图预览和全屏播放。
- 标注好图片后,可从画布里直接提交标注截图,让 Codex 根据标注生成干净的新图并放到原图旁边。
- 通过 Cowart MCP 工具读取选择状态、保存画布、插入图片或 HTML,并保存到页面本地资源目录。

 安装

 [!IMPORTANT]
 安装完成后,请务必完全退出并重新启动一次 Codex,再开始使用 Cowart。重启后,Cowart 的新技能和 MCP 工具才能完整加载。

 让 Codex 自动安装

把下面这段发给 Codex:

text
请通过 Cowart 仓库自带的 Git marketplace 安装 Cowart Codex 插件。
先运行 codex plugin marketplace add zhongerxin/Cowart --ref main,
再运行 codex plugin add cowart@cowart-github,并用 codex plugin list 确认插件已启用。
Cowart 发布包已经包含自包含 MCP 和预构建 Widget;安装后不会在插件缓存里执行 npm install,也不要求新用户预装 tldraw;
不要在当前仓库、插件缓存或 marketplace 快照目录手动安装依赖。
不要把仓库 clone 到 personal marketplace。安装完成后请明确提醒我:
必须完全退出并重新启动一次 Codex,再开始使用 Cowart。


 手动安装

先把 Cowart 的 Git 仓库注册为 Codex marketplace:

bash
codex plugin marketplace add zhongerxin/Cowart --ref main


再从这个 marketplace 安装并检查 Cowart:

bash
codex plugin add cowart@cowart-github
codex plugin list


不需要手动查找插件缓存目录。Cowart 的 Git 版本已经跟踪自包含 MCP bundle 和预构建的单文件 Widget;Codex 可以直接发现 render_cowart_canvas_widget,运行时不会执行 npm install,也不依赖插件缓存中的 node_modules、tldraw、npm 或网络。开发依赖只用于 Cowart 维护者在发布前重新生成这些产物。

如果 cowart-github 已经注册,可以跳过第一条 marketplace add 命令。安装后请完全退出并重新启动一次 Codex,让新的 skill、MCP 工具和发布产物完整加载。

Codex 会在启动插件系统时自动检查这个 Git marketplace,并在远程 main 分支发生变化后刷新已安装的 Cowart。需要立即检查更新时,可以手动运行:

bash
codex plugin marketplace upgrade cowart-github


更新可能会替换插件缓存。更新后请完全退出并重新启动 Codex;Cowart 会直接加载随版本发布的 MCP 和 Widget 产物,不会在新缓存中安装依赖。

 使用

 侧边栏与全屏入口

支持 OpenAI MCP Extensions 的 Codex 版本会在全局导航的「更多」菜单中显示 Cowart。可以使用宿主提供的图钉固定入口;点击后直接进入系统文稿目录下唯一的 Cowart/canvas/ 画布,不展示目录选择页。支持在同一画布内切换 page;没有 page 时自动创建第一个。

导航入口传入空参数,macOS 默认保存到 ~/Documents/Cowart/canvas/;Windows 使用系统实际的文稿位置,兼容 OneDrive/重定向。项目聊天中指定 projectDir 仍直接打开该项目的 canvas/,不依赖文稿目录,不迁移已有数据。侧边栏画布会向对话提供自己的存储路径,每次画布发送的 AI 请求也携带该路径。测试可用 COWART_DOCUMENTS_DIR 重定向文稿目录,避免触碰真实作品。

实现依据:全局入口和显示模式。导航入口由工具的 _meta["openai/ui"].entrypoints 注册;全屏偏好和支持模式由 HTML 资源的 _meta["openai/ui"] 声明。图钉与最终窗口布局由宿主控制。以上能力自 0.1.30 起提供;安装或更新后请完全退出并重启 Codex,以加载新的导航入口。

 打开画布

在 Codex 中说:

text
Open the Cowart canvas for this project.


Cowart 会通过 render_cowart_canvas_widget 打开 Codex 原生 widget,不需要再启动本地网页服务或手动打开 in-app browser。scripts/start-canvas.sh 只保留为本地开发 fallback。

画布数据会保存在当前项目目录下:

text
canvas/pages//cowart-canvas.json
canvas

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON