Files
infinite-canvas/plugins/infinite-canvas

Infinite Canvas Codex Plugin

这个插件把 Infinite Canvas 的本地 Canvas Agent MCP 打包给 Codex app 使用,让 Codex 能打开本地画布、读取当前节点、创建内容并触发生成流程。

安装

AI 自动安装

把下面这段发给 Codex

请从 https://github.com/basketikun/infinite-canvas.git 安装 Infinite Canvas Codex 插件。
请 clone 仓库到 ~/plugins/infinite-canvas,确认 plugins/infinite-canvas/.codex-plugin/plugin.json 存在,
把 plugins/infinite-canvas 加入 personal marketplace,先运行 codex plugin marketplace add ~
再运行 codex plugin add infinite-canvas@personal。
安装后请校验插件,并告诉我是否需要开启一个新对话来加载新技能和 MCP 工具。

手动安装

推荐把仓库 clone 到 Codex personal marketplace 默认会引用的位置:

mkdir -p ~/plugins
git clone https://github.com/basketikun/infinite-canvas.git ~/plugins/infinite-canvas

确保 ~/.agents/plugins/marketplace.json 中有 Infinite Canvas 条目,注意 path 指向仓库里的插件子目录:

{
  "name": "personal",
  "interface": {
    "displayName": "Personal"
  },
  "plugins": [
    {
      "name": "infinite-canvas",
      "source": {
        "source": "local",
        "path": "./plugins/infinite-canvas/plugins/infinite-canvas"
      },
      "policy": {
        "installation": "AVAILABLE",
        "authentication": "ON_INSTALL"
      },
      "category": "Productivity"
    }
  ]
}

然后注册 personal marketplace 并安装插件:

codex plugin marketplace add ~
codex plugin add infinite-canvas@personal

安装后建议开启一个新的 Codex 对话,让新的 skill 和 MCP 工具完整加载。

本仓库开发调试

如果你就在 Infinite Canvas 仓库中调试插件,可以直接添加仓库自带 marketplace。建议使用仓库绝对路径,避免 Codex 从其他工作目录解析失败:

cd /path/to/infinite-canvas
codex plugin marketplace add "$(pwd)"
codex plugin add infinite-canvas@infinite-canvas-local

使用

  1. 新建 Codex 线程后说“打开 Infinite Canvas”。
  2. 插件会确认当前仓库的本地画布服务是否已运行;端口被占用时会检查进程归属,不会把其他项目的 3000 当作 Infinite Canvas。
  3. 确认或启动后,插件会直接打开新建画布 URL,并自动尝试连接本地 Agent。
  4. 画布打开后,让 Codex 读取或操作当前画布。

常用提示:

打开 Infinite Canvas
读取当前画布并总结节点结构
根据选中节点创建一组生图提示词

工作机制

插件默认通过以下命令启动 MCP,并会在 MCP 启动时自动尝试拉起本地 Agent:

npx -y @basketikun/canvas-agent mcp

手动排查

优先本地启动画布:

cd web
bun install
bun run dev

然后启动本地 Agent。端口不是 3000 时,把 CANVAS_URL 换成真实本地画布地址:

CANVAS_URL=http://localhost:3000 npx -y @basketikun/canvas-agent

手动排查时先从 Agent 输出或 http://127.0.0.1:17371/config 读取本地地址和 token,然后直接打开 <画布网页地址>/canvas?mode=new&agentUrl=<Local URL>&agentToken=<Connect token>。不要通过页面点击来新建画布;mode=new 会让网页自动创建具体画布并连接本地 Agent。