Communitygithub.com

geoqiao/short-video-skills

在抖音、视频号、小红书發布短影片(B 站僅撰寫文案):讀取聯想詞、撰寫標題、描述、話題、封面字與置頂評論,再透過已登入的 Chrome 自動填寫發布表單,上傳影片與封面,設定合集、位置、AI 聲明、熱點與活動。

short-video-skills 是什麼?

這個 AI 技能專注於簡化短影片發布流程,支援抖音、微信影片號、小紅書等中國主流平台,並提供 B 站的文案撰寫功能。它分為兩個階段:先根據搜尋引擎(抖音、小紅書、Google)提供的聯想詞來擬定文案,然後使用 playwright-cli 工具連接到使用者已登入的 Chrome 瀏覽器,自動填寫各平台的發布表單。使用者可以上傳影片與封面、選擇合集、設定位置、標記 AI 聲明、參與熱點與活動,大幅節省手動填寫的時間。預設情況下,技能會停留在發布按鈕前,讓使用者確認所有內容無誤後再手動點擊發布,避免錯誤發布。它能夠讀取聯想詞以確認觀眾的真實搜尋意圖,並根據平台規則撰寫標題、描述、話題與封面字。技能還包含多個參考文件,詳細說明了各平台的特殊規則、選擇器與注意事項,確保發布過程的準確性與安全性。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/geoqiao/short-video-skills/tree/HEAD/skills/video-publish

在你喜歡的 AI 中提問

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

說明文件

發布短影片

分兩段:先寫文案,再填表單。文案寫進該期目錄的 post.md(結構見 references/post-template.md),填表單時照著它填。平台規則和依據見 references/platform-rules.md,發布前以投稿頁為準。

一、寫文案

文案按搜尋意圖寫:先確認觀眾真的這樣問、用的是哪個稱呼,再讓標題、封面字和描述第一句對著同一個問題。在抖音和影片號上,大部分流量來自推薦而不是搜尋,這些詞的主要作用是讓系統把影片推給對的人。

先查聯想詞

  1. 列出這條影片能回答的問題。每個問題對應一類意圖:認識主角("X 是什麼""X 好用嗎")、選工具("X 對比""哪個好")、概念("某術語是什麼")、怎麼做("X 怎麼用")。
  2. 讀聯想詞,確認觀眾真的這樣搜、用哪個稱呼。聯想詞沒有搜尋量,只說明有人搜。發布當天重讀一遍,不要沿用幾天前存下的結果。
    • 抖音:接上使用者已登入的 Chrome(見下面"接上瀏覽器"),開一個 www.douyin.com 標籤頁並切過去,改 scripts/douyin-suggest.js 的 SEEDS,再 playwright-cli -s=chrome --raw run-code --filename=scripts/douyin-suggest.js。
    • 小紅書:開一個 www.xiaohongshu.com/explore 標籤頁,改 scripts/xhs-suggest.js 的 SEEDS 後執行。每個詞重載一次頁面,約 6 秒一個,一次別超過 25 個詞。
    • Google:node scripts/google-suggest.mjs '[["種子詞","zh-CN"],["seed","en"]]',不用瀏覽器。
    • 這三個腳本都只讀。用完只關自己開的標籤頁。
  3. 原始結果按日期存成 JSON,文案裡引用檔名。
  4. 主打和內容完全對口的那一類意圖,寫進標題、封面和描述第一句。只能部分回答的意圖(例如只比了兩款,卻去接"哪個最好")只放進話題,否則點進來的人會劃走。聯想詞裡反覆出現、影片沒回答的問題不硬接,記成新選題。

幾條反覆驗證過的經驗:

  • 英文術語單獨當主詞經常搜不到對口內容。封面主詞用中文的問法,英文放進描述和話題。
  • 影片裡的稱呼和觀眾的稱呼不一樣時,標題、封面和旁白都跟觀眾(例如觀眾搜"上下文腐爛",不搜"上下文腐化")。
  • 兩個平台的稱呼常常不同,標題用兩邊都出現的那個。

怎麼寫

  • 標題:觀眾會問的那個問題,加一個具體結論。用他們搜的稱呼。沒人搜的術語不進標題。標題、封面字和第一句旁白說同一件事。
  • 描述:第一句重複標題的問題並給結論和數字;再列影片講的幾件事,帶上影片裡出現過的實體詞和數字;最後寫資料來源的限定條件;用了 AI 時寫上 AI 聲明(例如"配音為 AI 合成")。寫給觀眾看,不寫製作過程。
  • 話題標籤:主角的準確稱呼、影片裡比過的對象、品類詞、一個受眾對口的大詞。只用影片裡真的講到的詞。填表時在發布頁輸入 #詞 讀瀏覽量,幾百億瀏覽的泛詞(例如 #AI)當場換掉。抖音網頁端最多 5 個,系列名交給合集,不佔話題位置;影片號可以多帶一兩個,帶上系列名。
  • 置頂評論:一個觀眾憑自身經驗就能回答的問題,和影片結尾的問句呼應。
  • 封面字:兩行以內的標題加一句帶數字或結論的鉤子,主詞用中文問法。
  • 文案、封面、口播和畫面裡都不出現網址和站外帳號,不說"去某網站看""搜尋某某"。可以引導評論、關注、看合集。
  • 用了 AI 配音、AI 畫面或數位人,就做 AI 聲明;code-video 的配音是 AI 合成的,用它做的影片都要聲明。各平台的選項名見 references/platform-rules.md。

二、填表單

各平台的選擇器、坑和做法:

  • 抖音創作者中心:references/douyin.md
  • 影片號助手:references/weixin.md
  • 小紅書創作服務平台:references/xiaohongshu.md

規矩

  • 不替使用者發布。 填完停在發布按鈕前,等使用者檢查。只有使用者對這一條明確說"發布"之後才點;對上一條的授權不延續到下一條。
  • 點了發布之後,核對作品列表裡出現了新作品、合集集數和期號對得上,再把發布時間記進 post.md。
  • 不修改、不刪除平台上已經發布的內容,除非使用者要求。
  • 位置、合集、活動這類每次都可能變的項,沒有定論就問使用者。
  • 只關自己開的標籤頁。標籤頁裡有還沒發布的表單時,不重載、不在這個標籤頁上跑別的腳本。

接上瀏覽器

需要 playwright-cli 和它配套的 Chrome 擴充,使用者在 Chrome 裡已登入各平台的創作者後台。

playwright-cli -s=chrome attach --extension=chrome   # 使用者在擴充彈出的頁面上點允許
playwright-cli -s=chrome tab-new <發布頁網址>
playwright-cli -s=chrome tab-list
playwright-cli -s=chrome tab-select <序號>            # tab-new 不會切換 run-code 的目標頁
playwright-cli -s=chrome --raw run-code --filename=<腳本.js>
playwright-cli -s=chrome screenshot --filename=<圖.png>

run-code 的腳本是一個 async page => { … } 表達式,回傳值會列印出來。連線斷開後重新 attach,之前開的標籤頁會一起消失,表單要從頭填。

通用做法

  • 每個腳本開頭先 await page.bringToFront()。 使用者同時在用 Chrome 時,發布頁常被切到背景,拖放和點擊會一直等到超時;超時前排隊的鍵盤輸入會在頁面回到前景後補打進去,把描述弄亂。出過超時就先清空描述框再重填。
  • 一步一個腳本,做完就核對。 每步結束讀一下相關區域的 innerText 或截一張圖,確認值真的變了,再做下一步。
  • 上傳影片:先試 playwright-cli -s=chrome drop "<上傳區選擇器>" --path=<mp4>。拖放不觸發上傳的平台,用 scripts/ 裡的注入腳本:它把檔案轉成 base64 寫進一段 run-code 腳本,用 DataTransfer 放進 file input 並派發 change。擴充模式下 setInputFiles 和檔案選擇框都用不了。
  • 上傳封面:先打開封面彈窗,再執行注入腳本。三個平台都要兩張:4:3 橫封面和 3:4 豎封面。直接用 16:9 封面會被裁掉標題。
  • 下拉框和搜尋框:很多輸入框只在下拉展開時可見。fill 和 click 報"element is not visible"時,先點顯示當前值的那個框(必要時用 boundingBox 或在 evaluate 裡取座標再 page.mouse.click),等輸入框出現再輸入。需要觸發搜尋的框要逐字 keyboard.type,fill 不觸發。
  • 選下拉項要精確:用完整文字匹配,或在 evaluate 裡找 innerText 完全相等、且在下拉區域內可見的元素再點座標。按部分文字過濾容易點到外層容器,選中別的項。選完讀一遍當前值。
  • 只在懸停時出現的按鈕:先 page.mouse.move 到卡片上,等半秒,再點按鈕的位置。
  • 英文選項:有的平台選項顯示成英文(影片號的影片標註),按頁面上實際顯示的文字選。

發布後

在抖音資料中心看"搜尋詞"和流量來源裡的搜尋佔比,對照這次選的詞。改過寫法的影片要記下來,下次比較時才分得清是哪一處起了作用。每天的資料可以用 video-data skill 採集。

交付時要說明的

  • 文案主打的意圖、用了哪些聯想詞、哪些詞沒接以及原因。
  • 每個平台填了什麼:標題、話題個數、封面、合集和集數、位置、聲明、熱點或活動。
  • 停在了哪一步,哪些項沒填或和文案不一致,原因是什麼。
  • 如果點了發布:發布時間、作品列表核對結果、合集集數。

Individual skills in this repo

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

相關技能