Communitygithub.com

Mintii-Labs/ozor-skills

將真實文件(PDF、PPTX、DOCX、Keynote 匯出、簡報、提案、白皮書、報告)透過 Ozor MCP 轉換為完成的 AI 生成影片。當使用者上傳或提及文件,並要求從中製作影片時使用此技能。

ozor-skills 是什麼?

此技能提供了一個完整的文件轉影片流程,支援 PDF、PPTX、DOCX、Keynote 匯出等多種文件格式,並透過 Ozor MCP 工具集進行分析、計畫、生成與匯出。其核心優勢在於使用基於計畫的流程,能夠保留原始簡報的幻燈片視覺效果,這是直接從文字提取內容所無法比擬的。技能會先分析文件內容產生結構化計畫,然後向使用者展示計畫並等待審核或編輯,最後才進行成本較高的影片生成。支援多種文件類型(如提案、白皮書、簡報)並提供對應的預設設定(時長、格式、語氣與焦點),同時也支援迭代修改,無需重新分析文件即可調整旁白或場景順序。此技能專為 Claude Code、Cursor、Codex 等 AI 代理平台設計,可確保使用者上傳的文件被正確處理,並且所有產出的分享、編輯、下載與嵌入連結都會被完整提供。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Mintii-Labs/ozor-skills/tree/main/skills/ozor-document-video

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Ozor 文件轉影片

在 Ozor.ai 上進行端到端的文件轉影片。接受真實檔案(PDF、PPTX、DOCX 等),在 Ozor 端進行分析以產出結構化計畫,讓使用者核准/編輯計畫,然後生成並匯出完成的影片——過程中保留幻燈片視覺效果。

使用時機

當輸入是文件/檔案時使用此技能。判斷信號:

  • 使用者附加或提到了 PDF、PPTX、DOCX、Keynote 匯出、簡報、提案、白皮書、報告、一頁式文件
  • 「將這個簡報變成影片」
  • 「從這個 PDF 製作影片」
  • 「從我的提案/建議書/報告製作影片」

請勿在以下情況使用此技能:

  • 輸入是一段簡短的創意文字簡報 → ozor-generate
  • 輸入是一個 URL 或著陸頁 → ozor-url-to-video
  • 使用者只想要一個書面的 Ozor 提示 → ozor-doc-to-video(純提示技能)
  • 使用者想管理現有影片 → ozor-video-library

必要的 MCP 工具

  • mcp__ozor__analyze_document — 分析文件,回傳 planId 與結構化計畫
  • mcp__ozor__prepare_document_upload — 取得一個可透過 curl 上傳的 URL,適用於沒有公開 URL 的本地檔案(常見情況)
  • mcp__ozor__get_plan — 取得最新的計畫狀態
  • mcp__ozor__update_plan — 在使用者生成前套用編輯
  • mcp__ozor__generate_from_plan — 從已核准的計畫啟動影片建置,回傳 projectId
  • mcp__ozor__export_video — 開始渲染(使用 projectId 作為 videoId)
  • mcp__ozor__wait_for_export — 阻塞直到渲染完成
  • mcp__ozor__get_embed_code — 回傳 <iframe> HTML

如果 Ozor MCP 未連接,請告知使用者並停止。請勿自行擷取內容並回退到使用手寫腳本的 generate_video,這會丟失幻燈片視覺效果並超出 2000 字元的提示限制。文件必須使用基於計畫的流程。

工作流程

步驟 1 — 將文件送到 Ozor

依優先順序選擇最佳來源:

  1. 公開 URL → 將 url 直接傳給 analyze_document。無大小限制,無 token 成本。有可用時最佳。
  2. 本地檔案(常見情況) → 呼叫 mcp__ozor__prepare_document_upload,然後執行回傳的 curl 命令,將位元組直接推送到 Ozor 的儲存空間。位元組永不經過工具呼叫,因此最多約 50 MB 的檔案都可運作。對於使用者在對話中上傳的任何數 MB 的 PDF/PPTX/DOCX 使用此方法。
  3. analyze_document 上的 fileBase64 + fileName → 僅適用於小型檔案(約幾百 KB 以下)。大型簡報應避免使用,因為會耗費大量 token。

如果 prepare_document_upload 不在工具清單中,表示該伺服器上禁用了上傳功能——請回退到 URL 或小型 base64。

步驟 2 — 分析文件

一旦 Ozor 擁有檔案,請呼叫:

mcp__ozor__analyze_document({
  url | uploadId | fileBase64+fileName,
  ...可選提示:targetDuration, format (16:9 / 9:16), audience, tone
})

這會回傳 { planId, plan }。計畫包含建議的場景、旁白、視覺備註以及哪些幻燈片/頁面對應到哪些場景。

步驟 3 — 向使用者展示計畫並停止

這是關鍵步驟。 請勿跳過直接生成。向使用者展示計畫的簡潔呈現:

📋 Ozor 計畫「<文件名稱>」

**格式:** 16:9(或 9:16)
**預計時長:** ~X 秒
**場景數:** N

(1) <場景標題> — <一行旁白/視覺>
(2) <場景標題> — <一行旁白/視覺>
...

要直接按此生成,還是想修改任何內容?您可:
- 編輯場景(「將場景 2 改為...」)
- 重新排序/刪除/新增場景
- 更改語氣、長度或格式
- 核准並生成

然後等待使用者核准或要求編輯。請勿自行呼叫 generate_from_plan——計畫是使用者的成本與創意控制檢查點。

步驟 4 — 套用編輯(如有)

如果使用者要求變更,使用編輯內容呼叫 mcp__ozor__update_plan({ planId, ... })。使用 get_plan 重新取得並重新顯示更新後的計畫。迴圈直到使用者核准。

步驟 5 — 從計畫生成

當使用者核准時:

mcp__ozor__generate_from_plan({ planId })

這會回傳 { projectId }。後續每次呼叫都使用 projectId 作為 videoId。

如果回應中包含 jobId,請使用 wait_for_job({ videoId: projectId, jobId }) 等待它。否則繼續進行匯出。

步驟 6 — 匯出

mcp__ozor__export_video({ videoId: projectId })
mcp__ozor__wait_for_export({ videoId: projectId })

回傳 shareUrl、editorUrl、downloadUrl。

步驟 7 — 嵌入

mcp__ozor__get_embed_code({ videoId: projectId })

步驟 8 — 呈現結果

🎬 影片已從「<文件名稱>」準備就緒

**分享:** <shareUrl>
**編輯器:** <editorUrl>
**下載:** <downloadUrl>

**嵌入:**
```html
<iframe ...></iframe>

要從同一個計畫生成 9:16 社交版本嗎?我可以重新生成。


## 傳遞給 `analyze_document` 的提示

如果使用者提及或從文件中顯而易見,請傳遞以下任何一項:

- `targetDuration` — 例如 `

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

Mintii-Labs/ozor-skills

Generate an AI video end-to-end on Ozor.ai from a short text brief. Use this skill whenever the user wants to actually create a video (not just write a prompt) from a creative description, idea, or short brief — e.g. 'make me a video about X', 'generate a launch video for Y', 'create an explainer for Z', 'render a video', 'produce a 30s ad about ...', 'spin up a quick video for our new feature'. This skill runs the full Ozor MCP pipeline: generate_video → wait_for_job → export_video → wait_for_export → get_embed_code, and returns the shareUrl, editorUrl, downloadUrl, and a ready-to-paste <iframe> embed. Do NOT use this skill when the input is a document/PDF/PPTX/deck/URL — use ozor-document-video or ozor-url-to-video instead.

Mintii-Labs/ozor-skills

Turn any URL — landing page, blog post, product page, documentation page, changelog, public PDF, or web article — into a finished AI-generated video using the Ozor MCP. Use this skill whenever the user gives a link and wants a video from its content: 'make a video from this URL', 'video from my landing page', 'turn this blog post into a video', 'video from https://...', 'video from our homepage', 'generate a video from this product page', 'create a video from this article'. This skill runs analyze_document with the url parameter (no scraping needed on our side), presents the resulting plan to the user, then generates → exports → embeds. Do NOT use this skill for a short text brief (use ozor-generate) or for an attached local file (use ozor-document-video).

Mintii-Labs/ozor-skills

Browse, inspect, re-export, embed, or iterate on videos that already exist in the user's Ozor.ai account. Use this skill whenever the user wants to work with past or in-progress Ozor videos rather than create a new one — e.g. 'list my Ozor videos', 'show my recent videos', 'what's the status of my last video', 'get the embed code for that video', 'download my last Ozor video', 'share link for the explainer I made', 'check on the export', 'send a follow-up edit to that video', 'show the plan for video X', 'render that video again at 9:16', 'is the job done yet'. This skill orchestrates list_videos, get_video, get_job, get_plan, update_plan, send_message, wait_for_job, export_video, wait_for_export, and get_embed_code. Do NOT use this skill to create a new video from scratch — use ozor-generate, ozor-document-video, or ozor-url-to-video.

相關技能