SuperAPI AI 工具集

designcraft

设计与创作

查看项目

更新于 10-22 16:15

技能介绍

用途

DesignCraft 是一个页面排版与文档设计应用,本技能用于通过其结构化自动化接口来操作 DesignCraft,完成页面布局、文本框、样式、图像放置和数据合并文档的创建与编辑。操作目标是保留可编辑的布局,并作用于用户当前选定的文档。

主要能力

  • 通过桌面控制协议、MCP 服务器或 CLI 脚本操作 DesignCraft。
  • 检查文档结构,包括页面、跨页、项目 ID 与边界、故事(story)、溢出文本、样式、色板、图层和选区。
  • 编辑精确的框架、文本、样式与图像放置。
  • 执行多命令 CLI 作业与 MCP 批量命令,支持结果引用。
  • 数据合并:发现数据源字段、添加占位符、预览记录并执行合并,生成新文档而模板保持不变。
  • 保存原生 .designcraft 文件并导出所需交付格式,渲染页面以核对结果。

使用方式

选择会话

先发现可用的 DesignCraft 工具、可执行文件和已有会话,优先使用已连接的 MCP 服务器。

  • 编辑用户正在运行的应用:使用桌面控制,或 designcraft-cli mcp --connect PORT(也接受 HOST:PORT)。
  • 独立处理文件:designcraft-cli mcp 启动带空白 Letter 文档的进程内无头引擎,编辑前需先打开目标文件;此模式不改变用户的实时窗口。
  • CLI 脚本既可处理文件,也可连接运行中的应用;选择参数前先查看 designcraft-cli --help 与相关子命令。
  • 启动所需桌面控制会话:designcraft --control <port> 或环境变量 DESIGNCRAFT_CONTROL_PORT;7979 是上游示例,并非必需端口。尽量复用已有会话。服务器绑定回环地址且无身份验证,仅在使用期间启用。应用或连接不可用时,应报告缺失的前置条件。

控制传输与发现

桌面控制通道是原始 TCP 加 UTF-8 JSON 行,不是 HTTP 或 MCP JSON-RPC。每个换行发送一个请求,每个请求读取一个回复,使用唯一 ID,并在依赖操作前检查 ok:

{"id":1,"method":"document.inspect"}
{"id":2,"method":"ui.inspect"}
{"id":3,"method":"engine.commands"}

engine.execute 接收 {command, params};通过 engine.commands 发现命令 ID、参数和启用状态。使用 MCP 时可用 list_commands 和 execute,或在检查 schema 后使用专用工具。MCP 失败可能是 isError: true 的工具结果。

格式错误的行会关闭 TCP 连接,请求不得超过 4 MiB,服务器最多允许 16 个并发连接。错误回复后需重连。若变更操作丢失回复或超时,先检查文档结果再重放。无法确定是否执行时应停止并报告不确定性;重复创建或合并可能产生重复工作。

布局与文本编辑

在定位编辑前检查页面、跨页、项目 ID 与边界、故事、溢出、样式、色板、图层和选区。MCP 提供 inspect_document 和 get_story;桌面提供 document.inspect。当焦点、工具或对话框重要时,单独检查 UI 状态。

对精确的框架、文本、样式和图像放置,优先使用引擎命令或专用 MCP 工具。后续编辑使用实际返回的项目 ID 和故事 ID;当命令依赖选区或文本范围时先建立选区或文本范围。set_story_text 会替换故事文本;它用于替换而不是部分插入,除非本就期望完整结果文本。在适合所请求布局时保留文本串接和可编辑样式。

坐标单位为点(1/72 英寸),y 向下增大,位于跨页空间。在相对页跨页上,右页从 x = 页面宽度开始;应检查页面边界而非假定每页从零开始。MCP 的 render_page 和 export_png 使用从零开始的页面索引。解释框架的 rect 或其他几何数组前,先检查命令参数。

工具手势操作需有意识地选择当前工具。桌面 ui.pointer 支持显式 space: "canvas" 或 "screen";屏幕交互前检查缩放、原点和画布矩形。MCP 已连接指针也支持屏幕空间。键盘和文本输入依赖插入点或聚焦字段;确定性定位重要时优先使用故事或引擎编辑。

使用 ui.menu.list 和 ui.menu.invoke 操作菜单。无参数调用带参数的菜单命令可能打开其对话框而非执行编辑。检查对话框,用 ui.dialog.set 填写已文档化字段,然后确认或取消。不要假定菜单调用已完成文档更改。

脚本与数据合并

多命令 CLI 作业应先阅读 agent 指南。脚本接受命令行、JSON 行或 {command, params} 的 JSON 数组。结果引用如 "$0.story" 和 "$last.id" 可让后续步骤定位先前结果。MCP 批量支持命令或脚本文本,并在第一个错误处停止;继续前检查 failedIndex 和部分结果,不要盲目重放整个部分完成的批次。

数据合并需发现 data.source.select、data.fields、data.placeholder.add、data.options、data.preview、data.preview.stop 和 data.merge。添加占位符前检查源字段,并对代表性记录预览文本溢出与图像适配。data.merge 创建并激活新文档,模板保持不变;需将合并文档保存到预期输出路径。已废弃的 spread merge 参数会报错。

保存、导出与验证

使用桌面 app.open、app.save 和 app.export,或 MCP 的 open_document / save_document 处理原生 .designcraft 文件和已安装的导出命令。应发现格式特定参数而非猜测文件操作 schema。适当时保存可编辑原生文档,并单独导出所需交付格式。

检查结果文档结构和溢出文本,然后用 ui.render 或 MCP render_page 渲染相关页面并查看图像,检查边距、出血、文本流、裁剪和图像放置。窗口截图显示 UI 状态;页面渲染显示图稿,且无需呈现窗口即可使用。MCP 窗口工具需要连接模式。参考文档还记录了用于离屏整窗捕获的源码树 ui_shot 示例。

报告完成前验证保存和导出成功、实际输出文件存在且可读,返回保存路径及任何重要布局或导出问题。

适用场景

  • 在 DesignCraft 中自动化创建与编辑页面布局、文本框、样式和图像。
  • 基于模板的数据合并批量生成文档,并保留模板不变。
  • 对已有 DesignCraft 文档进行检查、渲染与导出交付。

限制

  • 本技能不安装 DesignCraft,也不配置 MCP 服务器。
  • 桌面控制服务器绑定回环地址且无身份验证,仅应在使用期间启用。
  • 请求不得超过 4 MiB,最多 16 个并发连接;格式错误的行会关闭连接。
  • 变更操作丢失回复或超时时,存在无法确定是否执行的情况,需停止并报告。
  • 参考快照为 2026-10-08 下载的上游未修改版本;已安装命令参数与快照不同时应以实际发现为准,不要借用其他 ArtCraft 应用的标志或 schema。