Communitygithub.com

nnquant/inflow-publisher

Agent 技能與無依賴的 Python CLI,用於將貼文、Markdown 文章與附件發佈至 inflow。

inflow-publisher 是什麼?

這個技能提供一個獨立的 Python CLI 工具,讓 AI 代理程式(如 Claude Code、Cursor、Codex)能夠將內容發佈到 inflow。它支援兩種主要的內容類型:`post`(最多 140 個可見字元的簡短更新)與 `article`(含標題、摘要、Markdown 主體與可選文字說明的完整報告)。該工具會處理檔案附件,自動將第一張圖片設為文章封面,並允許在 Markdown 中嵌入上傳的圖片。它包含內建的重試邏輯(適用於逾時與 HTTP 5xx 錯誤),並使用等冪金鑰來防止重複發佈。CLI 也支援審閱、編輯、發佈與刪除內容,還會進行樂觀鎖定衝突偵測。它設計為無依賴關係,只需設定環境變數 `INFLOW_BASE_URL` 與 `INFLOW_API_KEY` 即可運作,可與任何支援 Python 的 AI 代理程式平台整合。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add nnquant/inflow-publisher

在你喜歡的 AI 中提問

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

說明文件

inflow Publisher

使用隨附的確定性 CLI 進行所有寫入操作。將 API 金鑰保留在提示、命令引數、原始碼檔案和日誌之外。

設定與驗證

在 Agent 執行環境中設定以下環境變數:

  • INFLOW_BASE_URL:inflow 來源,例如 http://localhost:3000。
  • INFLOW_API_KEY:在 Agent 管理中只顯示一次的 ifk_... 密鑰。

在首次寫入前驗證身分與作用域:

python scripts/inflow.py whoami

若身分不符合預期、金鑰已過期/撤銷,或缺少必要的作用域,則停止執行。

選擇內容類型

  • 使用 post 發布最多 140 個使用者可見字元的即時更新。
  • 使用 article 發布包含明確標題、摘要和 Markdown 主體的完整報告。若文章需要在預覽卡片上方顯示簡短的摘要說明,可加入選擇性參數 --text。
  • 除非使用者或上游工作流程明確要求立即發布,否則將新內容保留為 draft。
  • 最多新增五個簡潔的主題。保留使用者的中文/領域術語。

發布一則簡短更新:

python scripts/inflow.py post \
  --text "今日收盤數據已更新" \
  --topic 日報 \
  --status draft \
  --idempotency-key daily-2026-08-04

發布一份 Markdown 報告與附件:

python scripts/inflow.py article \
  --text "本週最值得關注的三個變化已經整理好了。" \
  --title "可轉債週報" \
  --summary "本週強贖、成交與策略觀察" \
  --markdown-file report.md \
  --topic 可轉債 --topic 週報 \
  --file nav.png --file trades.csv \
  --status draft \
  --idempotency-key cb-weekly-2026-w32

根據報告類型和報告期間選擇一個穩定的等冪金鑰。在重試相同邏輯發布時重複使用它。切勿為變更的內容重複使用;在經過審慎修訂後,使用新的後綴,例如 -v2。

上傳與嵌入檔案

使用重複的 --file 選項傳遞本機檔案,以自動附加它們。第一個附加的圖片將成為文章封面;若無圖片,inflow 會根據標題生成封面。Markdown 原始檔是文章內文的輸入內容,不應同時作為 --file 傳遞,除非該原始檔有意作為可下載的附件提供。

若要在 Markdown 中嵌入已上傳的圖片,請先上傳它:

python scripts/inflow.py upload chart.png

在 Markdown 中使用回傳的穩定 url。請勿儲存或重複使用臨時的 upload_url。

拒絕或取代伺服器封鎖的檔案。請勿將可執行檔、HTML 或 SVG 檔案重新命名以繞過允許清單。

審閱與管理內容

在變更或發布前進行檢查:

python scripts/inflow.py get CONTENT_ID
python scripts/inflow.py edit CONTENT_ID --text "修訂後的短帖" --topic 日報
python scripts/inflow.py edit ARTICLE_ID --text "更新後的文章配文"
python scripts/inflow.py publish CONTENT_ID
python scripts/inflow.py delete CONTENT_ID

CLI 會在編輯或發布前讀取目前版本,並傳送一個樂觀鎖定值。如果遇到 VERSION_CONFLICT,請重新提取,比較當前內容與預期變更,並在解決衝突後重試。

將刪除視為蓄意動作。僅在使用者或所屬工作流程要求移除項目時使用。

處理失敗

  • 允許 CLI 重試逾時和 HTTP 5xx 回應;它會在這些重試中保持相同的等冪金鑰。
  • 若遇到 401,請停止並要求人類擁有者檢查金鑰狀態;切勿列印金鑰。
  • 若遇到 403,請停止並回報缺少的作用域。
  • 若遇到 409 等冪衝突,請檢查現有內容,並僅在確實是新修訂時選擇新的金鑰。
  • 若遇到驗證錯誤,請修正輸入內容,而不是默默截斷標題、摘要或內文。

僅在需要手動 API 呼叫、回應欄位或錯誤語意時,才閱讀 references/api.md。

相關技能