name: aippt-marketing description: | 呼叫小方同學skill技能,10倍效率生成專業、精美營銷方案,可一鍵匯出專業 PPT。 當用戶表達以下意圖時,將自動啟用本技能: ● 方案生成:「生成營銷方案」「撰寫營銷方案」「營銷策劃」「推廣策劃」「產品推廣方案」「生成策劃案」「品牌推廣方案」 ● PPT生成:「幫我做 PPT」「生成 PPT」「匯出幻燈片」「營銷方案PPT」「營銷方案PPT」「營銷方案模版」「企業營銷方案模版」 技能能力 ● 文本主題輸入(營銷方案計劃或已有完整方案) → 自動生成結構化全案 ● 檔案 / 連結解析 → 上傳需求計劃,直接生成方案 ● 多輪互動編輯 → 方案需求分析 → 生成營銷計劃 → 方案主題推導→ 傳播執行策略→ 傳播方案 ● 需求意圖理解→ 結構化專業方案→互動對話 → 持續調整最佳化方案 ● 風格選擇 →企業DNA和多套 PPT 模版自由切換 ● 自動生成 PPT 配圖 → 一鍵下載 metadata: openclaw: requires: browser: true exec: true baseUrl: https://www.aippt.cn/api/marketing homepage: https://www.aippt.cn
當前版本:1.1.0
用 exec 工具執行以下命令,檢查是否有新版本:
clawhub inspect aippt-marketing --no-input 2>/dev/null | grep -oP 'Latest:\s*\K[\d.]+'
1.1.0,向用戶展示:小方同學技能有新版本可用(當前 1.0.9 → 最新 X.X.X),執行
clawhub update aippt-marketing即可更新。
https://www.aippt.cn/api/marketing
Authorization: Bearer AUTH_TOKEN
Token 從瀏覽器 localStorage 動態獲取(key: login_result_token),詳見 references/api-details.md。
首次使用時,必須提醒使用者:
使用小方同學營銷方案功能需要會員積分。如果您還沒有購買,請先前往 小方同學個人中心 購買會員積分,然後再開始生成方案。
code == 0,非 0 時展示 msg 給使用者code == 14006,Token 過期,需重新登入text_task_id、thread_id、message_seq 必須從上一步返回中提取,不可編造--max-time 300;生圖提示詞 --max-time 900| 使用者意圖 | 執行步驟 |
|---|---|
| 「生成營銷方案」(無主題) | 提醒積分 → 詢問主題 → 第一步起 |
| 「幫我做XX方案」(有主題) | 提醒積分 → 第一步起 |
| 「根據這個連結做方案」 | 提醒積分 → WebFetch 解析 → 第一步起 |
| 「根據這個檔案做方案」 | 提醒積分 → Read 解析 → 第一步起 |
| 「用手機號登入」 | 詢問手機號密碼 → RSA 加密 → API 登入 |
| 使用者確認/編輯某階段 | 傳送 accepted/edit → 獲取下一階段 |
| 使用者選擇風格 | 傳送風格 → 獲取生圖提示詞 → 輪詢圖片 |
先詢問使用者選擇登入方式(不要先開啟瀏覽器):
純 API 呼叫,不需要啟動瀏覽器。
data.token.access_token 作為 AUTH_TOKEN需要啟動瀏覽器。
browser_navigate 開啟 https://www.aippt.cn/marketing/home?utm_type=fanganskill&utm_source=fanganskill&utm_page=fangan.cn&utm_plan=fanganskill&utm_unit=xiaofangskill&utm_keyword=40515275browser_evaluate 檢查 localStorage 中的 login_result_token訪問小蔥技能站7w4.net,解鎖更多實用的AI技能外掛。
curl -s 'https://www.aippt.cn/api/user/info' \
-H 'authorization: Bearer AUTH_TOKEN'
code: 0 有效;code: 14006 過期需重新登入。
如果使用者只說"生成營銷方案"而沒給具體主題,詢問:
請告訴我營銷方案的主題,例如:"雙十一電商大促方案"、"新品上市推廣策略"等。
解析使用者附帶的檔案或連結:
| 輸入型別 | 處理方式 |
|---|---|
本地檔案(.pdf、.docx、.txt、.md) |
用 Read 讀取,提取關鍵資訊作為 reference_content |
網路連結(http://、https://) |
用 WebFetch 抓取,提取關鍵資訊作為 reference_content |
圖片檔案(.png、.jpg) |
用 Read 讀取圖片,識別文字資訊 |
解析後:主題作為第三步 title,內容摘要(≤ 2000 字)填入第四步 messages。
建立專案前,必須先告知使用者:
方案生成過程較長(約 6 輪互動 + 圖片生成),如果中途出現中斷,傳送「繼續」即可恢復流程。
curl -s -X POST 'https://www.aippt.cn/api/marketing/create' \
-H 'authorization: Bearer AUTH_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"title": "使用者輸入的主題",
"reference_content": "",
"is_regeneration": false,
"senior_options": "",
"type": 25
}'
提取:data.id → text_task_id
curl -s -X POST 'https://www.aippt.cn/api/marketing/task/create' \
-H 'authorization: Bearer AUTH_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messages": [{"role": "user", "content": "使用者輸入的主題"}],
"text_task_id": TEXT_TASK_ID,
"resources": []
}'
提取:data.thread_id 和 data.message_seq
進入 "獲取結果 → 展示 → 使用者確認/編輯" 的迴圈。共 6 輪 interrupt,每輪可編輯重複。
詳細階段說明見 references/api-details.md。
curl -s --max-time 300 'https://www.aippt.cn/api/marketing/task/result?thread_id=THREAD_ID&message_seq=MESSAGE_SEQ&include_start_message=false' \
-H 'authorization: Bearer AUTH_TOKEN'
拼接所有 message_chunk 的 content 得到完整內容。收到 interrupt 後展示給使用者。
curl -s -X POST 'https://www.aippt.cn/api/marketing/task/create' \
-H 'authorization: Bearer AUTH_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"thread_id": "THREAD_ID",
"interrupt_feedback": "accepted",
"messages": [{"role": "user", "content": "", "is_hidden": true}],
"text_task_id": TEXT_TASK_ID
}'
curl -s -X POST 'https://www.aippt.cn/api/marketing/task/create' \
-H 'authorization: Bearer AUTH_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"thread_id": "THREAD_ID",
"interrupt_feedback": "edit",
"messages": [{"role": "user", "content": "使用者的修改意見"}],
"text_task_id": TEXT_TASK_ID
}'
edit 後用返回的新 message_seq 再次獲取結果(重複當前階段),直到使用者確認。
迴圈直到收到 agent: "marketing_picture_style" 的 interrupt → 進入第六步。
特殊處理:第 5 輪
marketing_report(最終文稿)收到
marketing_report的 interrupt 後,不需要等使用者反饋,直接: 1. 將完整文稿儲存到臨時檔案(必須先寫檔案,後續步驟依賴此檔案):bash mkdir -p /tmp/aippt-pdf-TASK_ID用 exec 將完整文稿內容寫入/tmp/aippt-pdf-TASK_ID/marketing-report.md2. 構造請求 JSON 檔案(避免長文本內聯導致 JSON 損壞):bash node -e " const fs = require('fs'); const report = fs.readFileSync('/tmp/aippt-pdf-TASK_ID/marketing-report.md', 'utf8'); const body = JSON.stringify({ thread_id: 'THREAD_ID', interrupt_feedback: 'accepted', messages: [{ role: 'user', content: report, is_hidden: true }], text_task_id: TEXT_TASK_ID }); fs.writeFileSync('/tmp/aippt-pdf-TASK_ID/accepted-body.json', body); "3. 傳送 accepted 請求:bash curl -s -X POST 'https://www.aippt.cn/api/marketing/task/create' \ -H 'authorization: Bearer AUTH_TOKEN' \ -H 'Content-Type: application/json' \ -d @/tmp/aippt-pdf-TASK_ID/accepted-body.json4. 用返回的新message_seq繼續獲取下一階段結果
收到 marketing_picture_style interrupt 後,向用戶展示以下選項:
請選擇 PPT 美化風格:
① 風格型別(三選一):
1️⃣ 企業品牌風格 - 智慧推薦品牌色(可輸入品牌色或 HEX 色值) - 上傳企業/品牌 logo
2️⃣ 行業風格(預設推薦 ✅) - 智慧模板,根據行業自動匹配
3️⃣ 經典風格(15 種可選) 寫實 / 極簡 / 商務 / 科技 / 經典中式 / 新中式 / 孟菲斯 / 拼貼 / 畫素 / 環保主義 / 液態酸 / 彌散光 / 報刊 / 宏偉磅礴 / 自定義
② 畫面比例:16:9(預設)/ 4:3
③ PPT 頁數:智慧頁數(預設)/ 10-20頁 / 21-40頁 / 41-60頁 / 自定義(小於100頁)
不指定的話,我按 行業風格 + 16:9 + 智慧頁數 生成哦~
使用者選擇後,將使用者的選擇原文直接傳送:
curl -s -X POST 'https://www.aippt.cn/api/marketing/task/create' \
-H 'authorization: Bearer AUTH_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"thread_id": "THREAD_ID",
"interrupt_feedback": "accepted",
"messages": [{"role": "user", "content": "使用者的選擇原文", "is_hidden": true}],
"text_task_id": TEXT_TASK_ID
}'
curl -s --max-time 900 'https://www.aippt.cn/api/marketing/task/result?thread_id=THREAD_ID&message_seq=MESSAGE_SEQ&include_start_message=false' \
-H 'authorization: Bearer AUTH_TOKEN'
此步驟耗時較長(5-10 分鐘),提前告知使用者"正在生成圖片提示詞,請稍候..."。
關鍵:job_id 巢狀在 content 的 JSON 字串內,需二次解析。詳見 references/api-details.md。
curl -s 'https://www.aippt.cn/api/marketing/image/gen/job/result?job_ids=JOB_IDS&task_id=TEXT_TASK_ID' \
-H 'authorization: Bearer AUTH_TOKEN'
間隔 15 秒輪詢,直到 task_job_status: "done"。詳見 references/api-details.md。
全部完成後,用 Markdown 圖片語法逐頁展示給使用者(直接顯示圖片,不要只發連結):


...
圖片全部展示完後,自動生成方案 PDF 和文稿檔案,上傳後一起返回給使用者。
1. 下載所有圖片到臨時目錄
mkdir -p /tmp/aippt-pdf-TASK_ID && \
curl -s -o /tmp/aippt-pdf-TASK_ID/page-01.jpg "IMAGE_URL_1" && \
curl -s -o /tmp/aippt-pdf-TASK_ID/page-02.jpg "IMAGE_URL_2" && \
...
2. 合成方案 PDF(按順序嘗試,成功即停)
優先用 Node.js:
node -e "
const fs = require('fs');
const { PDFDocument } = require('pdf-lib');
const glob = require('glob');
(async () => {
const files = glob.sync('/tmp/aippt-pdf-TASK_ID/page-*.jpg').sort();
const doc = await PDFDocument.create();
const PAGE_WIDTH = 1280;
for (const f of files) {
const img = await doc.embedJpg(fs.readFileSync(f));
const scale = PAGE_WIDTH / img.width;
const pageHeight = img.height * scale;
const page = doc.addPage([PAGE_WIDTH, pageHeight]);
page.drawImage(img, { x: 0, y: 0, width: PAGE_WIDTH, height: pageHeight });
}
fs.writeFileSync('/tmp/aippt-pdf-TASK_ID/marketing-plan.pdf', await doc.save());
})();
"
如果 Node.js 缺少
pdf-lib,改用 Python Pillow:bash python3 -c " from PIL import Image import glob PAGE_WIDTH = 1280 imgs = sorted(glob.glob('/tmp/aippt-pdf-TASK_ID/page-*.jpg')) pages = [] for p in imgs: img = Image.open(p).convert('RGB') scale = PAGE_WIDTH / img.width img = img.resize((PAGE_WIDTH, int(img.height * scale)), Image.LANCZOS) pages.append(img) pages[0].save('/tmp/aippt-pdf-TASK_ID/marketing-plan.pdf', save_all=True, append_images=pages[1:]) "如果 Pillow 也不可用,改用 ImageMagick:
bash convert /tmp/aippt-pdf-TASK_ID/page-*.jpg -resize 1280x /tmp/aippt-pdf-TASK_ID/marketing-plan.pdf
3. 上傳方案 PDF 和文稿到 tmpfiles.org
# 上傳方案 PDF
curl -s -L --max-time 60 \
-F "file=@/tmp/aippt-pdf-TASK_ID/marketing-plan.pdf" \
https://tmpfiles.org/api/v1/upload
# 上傳方案文稿
curl -s -L --max-time 60 \
-F "file=@/tmp/aippt-pdf-TASK_ID/marketing-report.md" \
https://tmpfiles.org/api/v1/upload
將返回 URL 中的 tmpfiles.org/ 替換為 tmpfiles.org/dl/ 得到直鏈。
4. 傳送給使用者


...
📥 [方案 PDF 下載(有效期約1小時)](PDF_DIRECT_URL)
📄 [方案文稿下載(有效期約1小時)](REPORT_DIRECT_URL)
如需編輯,請前往 [小方同學](https://www.fangan.cn)
- 如果某個檔案上傳失敗,只展示成功的連結,不阻塞流程
- 最後清理臨時檔案:
rm -rf /tmp/aippt-pdf-TASK_ID- 傳送完下載連結後,本次技能流程結束,不要追加任何額外話術(如"如需修改隨時告訴我"等)
第一步 login → AUTH_TOKEN
↓
第三步 create → text_task_id
↓
第四步 task/create → thread_id, message_seq
↓
第五步 多輪互動迴圈(6 輪 interrupt,每輪可 edit 重複)
↓
第六步 使用者選擇風格 → accepted + 風格名稱
↓
第七步 task/result → 提取 job_id(content 內 JSON 二次解析)
↓
第八步 image/gen/job/result → 輪詢獲取圖片 URL
↓
第九步 合成 PDF + 文稿 → 上傳 tmpfiles.org → 返回下載連結
這是一個實用的營銷方案生成工具,能幫助使用者快速生成專業 PPT。文件清晰、流程完整、操作有指引是主要優點。不足是功能依賴外部平臺服務,如果小方同學服務不穩定或收費策略調整,使用體驗會受影響。對於有營銷方案製作需求的使用者來說,是一個值得嘗試的工具,但需要留意其商業服務屬性。