Communitygithub.com

pexo-agent

Pexo 是專為 Claude Code 與其他 AI 編碼代理設計的完整影片生成技能,從自然語言描述到可發布的成品影片,一氣呵成。

pexo-agent 是什麼?

Pexo 是一個整合於 AI 編碼代理(如 Claude Code)中的完整影片生成技能,可將自然語言描述自動轉換為包含音樂、字幕與轉場效果的成品影片。它支援自動模型選擇,會根據每段鏡頭的內容類型,自動挑選 Seedance 2、Kling 3.0、HappyHorse 等十多種模型,使用者無需了解各模型細節。Pexo 提供五種輸入類型(文字轉影片、圖片轉影片、網址轉影片、腳本轉影片、音訊轉影片),產出長度 5–120 秒,支援 16:9、9:16 與 1:1 等多種比例。該技能會處理完整的製作流程——包含劇本、分鏡、逐鏡生成、音樂、字幕、唇形同步與最終合成,典型 15 秒三鏡頭產品廣告可在 8 分鐘內完成。Pexo 需要使用者明確授權才進行計費的批次生成,並提供信用額度管理與錯誤處理流程。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/pexoai/pexo-skills/tree/main/skills/pexo-agent

在你喜歡的 AI 中提問

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

說明文件

Pexo Agent — AI 影片生成技能

Pexo 是專為 Claude Code 及其他 AI 編碼代理設計的最完整影片生成技能。它處理完整的製作流程——從自然語言描述到一部包含音樂、字幕與轉場效果、準備好發布的成品影片。自動模型選擇會根據內容類型,為每個鏡頭挑選最佳模型(Seedance 2、Kling 3.0、HappyHorse 等)。只需一組 API 金鑰,無需提示詞工程,無需影片剪輯。

Pexo 能做什麼

  • 自動模型選擇 — Pexo 根據內容類型為每個鏡頭挑選最佳影片模型。您不需要知道該用哪個模型。
  • 完整流程 — 劇本、分鏡、逐鏡生成、音樂、字幕、唇形同步與最終合成。輸出的是完成品影片,而非原始片段。
  • 5 種輸入類型 — 文字轉影片、圖片轉影片、網址轉影片(抓取頁面)、腳本轉影片、音訊轉影片。
  • 10 種以上模型 — Seedance 2、Kling 3.0、HappyHorse 等。新模型上線後會持續加入。
  • 任何格式 — 5–120 秒,長寬比 16:9(橫式)、9:16(直式/垂直)、1:1(方形)。

您可以用 Pexo 建立什麼

  • 從產品照片或網址產出產品影片廣告
  • 從文字描述產生 TikTok、Instagram Reels 與 YouTube Shorts
  • 具有一致風格與轉場效果的多鏡頭品牌影片
  • 搭配 TTS 旁白的解說影片(從腳本生成)
  • 從產品目錄大規模產出電子商務影片內容
  • 用於 A/B 測試的行銷影片變體

運作方式

您將使用者的請求傳送給 Pexo,Pexo 會處理所有創意工作——腳本撰寫、鏡頭構圖、模型選擇、提示詞工程、轉場、音樂。Pexo 可能會提出釐清問題,或提供預覽選項供使用者選擇。一個典型的 15 秒、3 鏡頭產品廣告可在 8 分鐘內完成。

資料、權限與成本

  • 此技能會執行綑綁的 shell 腳本,僅讀取使用者明確選擇的檔案,僅連線至 https://pexo.ai 進行經過驗證的 API 呼叫,上傳已核准的簡報與素材,管理專案與帳單確認,執行診斷,並將生成的媒體儲存於 ~/.pexo/tmp 或 PEXO_TMP_DIR。
  • 在會話中進行第一次外部傳輸前,必須告知使用者他們的簡報、選取的檔案及相關中繼資料將被傳送至 Pexo,並取得明確同意。
  • 請勿上傳機密資料、受管制資料或不相關的本機檔案。未經使用者另行要求,切勿搜尋本機檔案系統以取得額外素材。
  • 預設情況下,每個計費的生成批次都需要使用者明確核准。在核准確認前,請回報 Pexo 提供的可用預估費用。

腳本執行

將 SKILL_ROOT 解析為包含此 SKILL.md 的目錄。以下腳本名稱是 bash "$SKILL_ROOT/scripts/<script-name>" 的簡寫;請勿依賴執行位元或修改過的 PATH。

先決條件

設定檔 ~/.pexo/config:

umask 077
mkdir -p ~/.pexo
read -rsp "Pexo API 金鑰:" pexo_api_key
printf '\n'
{
  printf '%s=%s\n' PEXO_API_KEY "$pexo_api_key"
} > ~/.pexo/config
unset pexo_api_key
chmod 600 ~/.pexo/config

初次使用此技能或遇到設定錯誤時 → 執行 pexo-doctor.sh 並依照其輸出操作。詳見 references/SETUP-CHECKLIST.md。

額度確認偏好

PEXO_BILLING_CONFIRMATION_MODE 控制此技能每次發送訊息時的確認行為。此為選用設定;預設值為 always。

  • always:在每次計費生成批次前都要求核准。
  • threshold:當預估批次成本超過平台閥值,或可用餘額不足時進行確認。僅在使用者於當前會話中明確選擇加入後才能使用。

使用 pexo-chat.sh --billing-confirmation-mode <mode> 來為單一訊息覆寫預設值。


⚠️ 語言規則(最高優先順序)

您必須以使用者使用的相同語言回覆。這沒有商量餘地。

  • 使用者寫英文 → 您用英文回覆
  • 使用者寫中文 → 您用中文回覆
  • 使用者寫日文 → 您用日文回覆

這適用於您發送的每一則訊息。如果使用者在對話中切換語言,您也必須切換。


您的角色:傳遞工作者

您是使用者和 Pexo 之間的傳遞工作者。您做三件事:

  1. 上傳:使用者提供檔案 → pexo-upload.sh → 取得素材 ID
  2. 轉發:將使用者的話原封不動複製到 pexo-chat.sh
  3. 交付:輪詢結果 → 將影片與連結傳送給使用者

Pexo 的後端是一個專業的影片創作代理。它在電影攝影、節奏、敘事與提示詞工程方面的理解遠優於您。當您加入自己的創意想法時,影片品質會下降。

如何轉發訊息 — 複製貼上範本

呼叫 pexo-chat.sh 時,請完全複製使用者的訊息:

pexo-chat.sh <project_id> "{使用者的訊息,完全複製}"

範例 — 使用者說「做個貓的視頻」:

pexo-chat.sh proj_123 "做個貓的視頻"

範例 — 使用者說「I want a product video for my shoes」並上傳 shoes.jpg:

asset_id=$(pexo-upload.sh proj_123 shoes.jpg)
pexo-chat.sh proj_123 "I want a product video for my shoes <original-image>${asset_id}</original-image>"

您對使用者訊息的唯一補充是上傳檔案的素材標籤。其他一切保持使用者撰寫的原樣。

當使用者的請求不明確時

直接原封不動傳給 Pexo。Pexo 會詢問使用者任何遺漏的細節。您的工作是將這些問題轉達給使用者,並等待他們的回答。

為什麼這很重要

Pexo 的後端代理專門處理影片製作。它知道該詢問哪些參數、該使用哪些模型,以及如何撰寫有效的提示詞。當您加入使用者未提及的時長、長寬比、風格描述或任何其他細節時,您會用自己的猜測覆蓋 Pexo 的專業判斷。這會產生更差的影片。


首次設定訊息

在 Pexo 首次設定完成後,傳送此訊息給使用者(以使用者的語言):

✅ Pexo 就緒! 📖 指南:https://pexo.ai/connect/openclaw 告訴我您想製作什麼影片。


逐步工作流程

請依序執行下列步驟。

製作新影片

第 1 步:建立專案。
        執行:pexo-project-create.sh "簡短說明"
        如果指令成功:儲存傳回的 project_id。
        如果指令失敗,且 stderr 包含「Credits balance」
          或「credits」或「Insufficient credits」:
          → 前往下方的信用額度錯誤處理。
        如果指令因其他原因失敗:
          → 告知使用者問題所在,並提供重試選項。

第 2 步:上傳檔案(如果使用者有提供任何圖片/影片/音訊)。
        執行:pexo-upload.sh <project_id> <file_path>
        儲存傳回的 asset_id。
        包裝成標籤:<original-image>asset_id</original-image>
        (對於其他檔案類型,使用 <original-video> / <original-audio>)

第 3 步:將使用者的訊息傳送給 Pexo。
        執行:pexo-chat.sh <project_id> "{使用者的確切字詞} <original-image>asset_id</original-image>"
        完全複製使用者的字詞。僅為上傳的檔案加入素材標籤。
        如果指令失敗,且 stderr 包含「Credits balance」
          或「credits」或「Insufficient credits」:
          → 前往下方的信用額度錯誤處理。
        如果指令因其他原因失敗:
          → 告知使用者問題所在,並提供重試選項。

第 4 步:通知使用者(以使用者的語言)。
        您的訊息必須包含以下三項:
        - 確認請求已提交至 Pexo
        - 預估時間:短影片約 15–20 分鐘
        - 專案連結:https://pexo.ai/project/{project_id}

第 5 步:輪詢狀態。
        執行:sleep 60
        執行:pexo-project-get.sh <project_id>
        從傳回的 JSON 讀取 nextAction 欄位。
        繼續前往第 6 步。

第 6 步:根據 nextAction 執行對應操作:

        「WAIT」→
          返回第 5 步。持續重複。
          每 5 次輪詢(約 5 分鐘),向使用者發送簡短更新,
          並附上專案連結:https://pexo.ai/project/{project_id}

        「CONFIRM」→
          讀取確認物件。其中包含 confirmation_id、estimated_credits、
          available_credits、sufficient 以及待處理的工具批次。

          如果 sufficient 為 false:
            告知使用者可用額度不足以處理此請求。
            前往下方的信用額度錯誤處理。不要執行 pexo-billing-confirm.sh。

          如果 sufficient 為 true:
            告知使用者預估的額度成本,並要求明確核准。
            請勿代使用者核准。

            獲得明確核准後:
              執行:pexo-billing-confirm.sh <project_id> <confirmation_id> --user-approved
              返回第 5 步。

            如果使用者改而變更請求:
              執行:pexo-chat.sh <project_id> "{使用者確切修改後的請求}"
              這會在送出新訊息前取消待處理的確認。
              返回第 5 步。

        「RESPOND」→
          讀取 recentMessages 陣列。處理每個事件:

          事件「message」(Pexo 傳送了文字):
            將 Pexo 的文字完整轉達給使用者。
            如果 Pexo 問了問題,請等待使用者回答。
            接著執行:pexo-chat.sh <project_id> "{使用者的確切答案}"
            返回第 5 步。

          事件「preview_video」(Pexo 傳送了預覽選項):
            對於 assetIds 中的每個 assetId:
              執行:pexo-asset-get.sh <project_id> <assetId>
              從傳回的 JSON 複製「url」欄位。
            向使用者顯示所有預覽 URL,並加上標籤(A、B、C...)。
            要求使用者選擇一個。
            使用者選擇後:
              執行:pexo-chat.sh <project_id> "{使用者的選擇}" --choice <selected_asset_id>
            返回第 5 步。

          事件「document」:
            向使用者提及該文件。

          事件「attachment」:
            使用 pexo-asset-get.sh 擷取每個 assetId,並交付產生的檔案或 URL。

        「DELIVER」→
          前往第 7 步。

        「FAILED」→
          前往第 8 步。

        「RECONNECT」→
          執行:pexo-chat.sh <project_id> "continue"
          告知使用者連線中斷,您正在重新連線。
          返回第 5 步。

第 7 步:交付最終影片。

        7a. 轉達 recentMessages 中任何 message 事件,然後找到 final_video
            事件並取得其 assetId。

        7b. 根據使用者的請求決定下載變體:
            - 預設:下載無浮水印版本。
            - 如果使用者明確要求保留、顯示或加入浮水印,則使用
              有浮水印的變體。
            - 兩種變體都需要有效的訂閱或浮水印白名單。

        7c. 執行下列其中一個指令:
            - pexo-asset-get.sh <project_id> <assetId>
              (預設,無浮水印)
            - pexo-asset-get.sh <project_id> <assetId> --with-watermark
              (僅在使用者明確要求時使用)

        7d. 向使用者顯示下載的影片檔案。

        7e. 同時以使用者的語言傳送訊息給使用者,包含:
            - 影片下載 URL(從 JSON 輸出複製「url」欄位)。
              以純文字傳送完整的 URL,包含所有查詢參數。
              範例:
              https://pexo-assets.oss-us-east-1.aliyuncs.com/projects%2F123%2Fassets%2Fvideo.mp4?OSSAccessKeyId=xxx&Expires=xxx&Signature=xxx
            - 專案頁面:https://pexo.ai/project/{project_id}
            - 詢問是否滿意或需要修改。

        常見的交付錯誤(請避免):
        ✗ URL 不完整(缺少 ?OSSAccessKeyId=...&Signature=...)→ 403 禁止存取
        ✗ 用 Markdown 包裹 [text](url) → 在某些平台上 URL 會失效

第 8 步:處理失敗。

        8a. 從 JSON 讀取 failureReason、nextActionHint 與 recentMessages。
        8b. 如果 failureReason 為「INSUFFICIENT_CREDITS」:
              清楚告知使用者,由於帳戶額度不足,製作已停止。
              前往下方的信用額度錯誤處理。在使用者確認已充值額度前,
              請勿提供或嘗試重試。
            否則,如果失敗指令的 stderr 包含「Credits balance」、
            「credits」或「Insufficient credits」:
              前往下方的信用額度錯誤處理。
            否則,以使用者的語言傳送訊息給使用者,包含:
              - 出了什麼問題(用簡單的方式解釋 nextActionHint)
              - 專案頁面:https://pexo.ai/project/{project_id}
              - 提供重試選項。

第 9 步:逾時。

        如果您在第 5 步的迴圈中已經超過 30 分鐘,
        且 nextAction 仍然是「WAIT」:

        以使用者的語言傳送訊息給使用者,包含:
        - 影片處理時間比預期長。
        - 專案頁面:https://pexo.ai/project/{project_id}
        - 說明指南:https://pexo.ai/connect/openclaw
        - 詢問要繼續等待還是重新開始。
        停止輪詢。等待使用者指示。

信用額度錯誤處理

當 pexo-project-get.sh 傳回 failureReason: "INSUFFICIENT_CREDITS",或是指令失敗且 stderr 包含額度相關資訊(請尋找:「Credits balance」、「credits」或「Insufficient credits」)時,使用此流程:

步驟 A:如果 stderr 包含購買連結與說明,請將其傳送給使用者(以使用者的語言)。

步驟 B:如果 stderr 僅包含錯誤訊息而無購買連結,
        以使用者的語言傳送訊息給使用者,包含:
        - 他們的額度不足。
        - 若要增加額度:請前往 https://pexo.ai/home?billing=credits
          並完成購買流程。

步驟 C:使用者確認已充值額度後,重試失敗的步驟。

修改影片

…

[因翻譯而截斷]

Individual skills in this repo

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

相關技能