DeckFlow Logo 开发者 DeckFlow 文档
开发者指南API 参考MCPCLI

CLI 命令

deckuse 命令作用于本地 PPTX 工作区。deckops 命令作用于 DeckFlow 云端任务。

DeckUse 命令

deckuse 命令模式:

deckuse <command> [options]
命令用途
deckuse init <pptx> [--dir <dir>]将 PPTX 解包至本地 DeckUse 工作区。
deckuse status <workspace>显示工作区状态。
deckuse commit <workspace> [-o <pptx>]将工作区重新构建为 PPTX。
deckuse list slides <workspace>列出幻灯片及推断出的结构。
deckuse show slide <workspace> <slide>显示单个幻灯片的详细信息。
deckuse get text <workspace> <selector>从选择器中读取文本。
deckuse set text <workspace> <selector> <text> [-o <pptx>]替换选择器处的文本。
deckuse set font-size <workspace> <selector> <size> [-o <pptx>]设置字体大小(单位:磅)。
deckuse move <workspace> <selector> --left <n> --top <n> [-o <pptx>]按左/上百分比移动匹配的形状。
deckuse replace <workspace> <search> <replace> [--slide <n>] [--regex] [-o <pptx>]全局或在单个幻灯片上替换文本。

deckuse 选择器用于定位幻灯片和形状结构:

deckuse get text ./company.deck "slide:3/title"
deckuse get text ./company.deck "slide:1/shape[id=6]/shape[id=9]"
deckuse get text ./company.deck "slide:1/#6,9"
deckuse set text ./company.deck "shape[type=textbox]" "Updated"

写入行为说明:

  • 当 <workspace> 是工作区目录时,写入命令会直接修改工作区;-o/--output 是可选的,如果提供则会导出 PPTX 文件。
  • 当 <workspace> 是 .pptx 文件路径时,写入命令必须使用 -o/--output,因为 CLI 需要指定一个明确的输出文件。
  • deckuse 不进行幻灯片渲染。渲染和格式转换请使用 deckops。

DeckOps 命令

deckops 命令模式:

deckops [--json] <command> [options]

在脚本和智能体中,请使用 --json 参数以获取机器可读的输出。

登录与配置

deckops login [--port <port>]
deckops config set-token <token>
deckops config set-space <space-id>
deckops config set-api-base <url>
deckops config show

默认的回调端口为 3737。配置存储在 ~/.deckops/config.json 路径。

任务管理

deckops task list [--type <type>] [--limit <n>] [--offset <n>]
deckops task get <task-id>
deckops task delete <task-id>

压缩

deckops compress <input-file> [--no-wait] [--timeout <seconds>]

支持的输入格式包括 .zip, .pptx, .key, .docx, .xlsx, .mp4, .avi, .mov 以及 .mkv。

OCR

deckops ocr <input-file> [--language <lang>] [--no-wait] [--timeout <seconds>]

支持的输入格式为 .jpg, .jpeg 以及 .png。默认语言为 zh-hans;支持的语言包括 zh-hans, zh-hant, en, ja, ko, ar, de, es, fr, it, pt 和 ru。

提取

deckops extract <input-file> [--type <fonts|text-shapes>] [--no-wait] [--timeout <seconds>]

当前文档中记录的提取类型对应于 pptx.getFontInfo 和 pptx.getTextShapes。

转换

deckops convert <input-files...> --to <format> \
  [--width <number>] [--height <number>] \
  [--need-embed-fonts [boolean]] \
  [--no-wait] [--timeout <seconds>]

支持的输出格式为 image, pdf, video, html, png, pptx 和 webp。

转换注意事项:

  • PPT/PPTX/PDF/KEY 可以渲染为图片(取决于源格式)。
  • PPT/PPTX/DOC/DOCX/KEY 可以转换为 PDF(取决于源格式)。
  • PPT/PPTX 可以转换为视频。
  • KEY 可以转换为 HTML。
  • HTML/Markdown 可以转换为 PNG。
  • PPT/HTML 可以转换为 PPTX。
  • JPG/JPEG/PNG 可以转换为 WebP。
  • 多输入文件目前仅支持在 HTML 转 PPTX 转换路径下使用。
  • --width, --height 和 --need-embed-fonts 与 HTML 转换路径相关。

生成

deckops create [input-files...] \
  [--input-text <text>] \
  [--enable-search [boolean]] \
  [--advanced-model [boolean]] \
  [--fast-mode [boolean]] \
  [--intent <intent>] \
  [--audience <audience>] \
  [--page-count <number>] \
  [--author <name>] \
  [--no-wait] [--timeout <seconds>]

必须提供 --input-text 或输入文件中的至少一个。最多允许两个参考文件。支持的参考文件扩展名为 .html, .pdf, .docx, .pptx, .txt, .md, .mm, .xmind 和 .ipynb。

翻译

deckops translate <input-file> \
  --from <language> \
  --to <language> \
  --model <Standard|Pro> \
  [--use-glossary [boolean]] \
  [--image-translate [boolean]] \
  [--no-wait] [--timeout <seconds>]

支持的输入格式为 .docx, .pptx, .pdf, .xlsx 和 .key。源语言支持 auto 及常用的语言代码;目标语言需要指定明确支持的语言代码。

合并

deckops join <input-files...> [--name <name>] [--no-wait] [--timeout <seconds>]

需要至少两个 .pptx 文件。文件将按命令行中的指定顺序进行合并。

运行特定的任务类型

deckops run <task-type> <input-files...> \
  [--param <key=value>] \
  [--no-wait] [--timeout <seconds>]

--param 参数可以重复指定。在可能的情况下,参数值将被解析为 JSON。

REPL

deckops repl

使用 REPL 可以对相同的 DeckOps 配置执行重复的交互式操作。

来源依据