DSH 插件:X (Twitter) 推文存檔與讀取

前言

DeepSeek Harness (DSH) 通過插件機制擴展智能體的聯網能力。在處理 X (Twitter) 數據時,網頁抓取往往面臨鏈接失效、內容截斷或格式混亂的問題。dsh-x-archive 插件通過調用 2100laike X Archive (x.2100laike.com) 服務,將推文轉化爲永久可讀的 Markdown 快照。它解決了推文被刪除或設爲私密後無法訪問的痛點,併爲 Agent 提供了結構化的數據返回。

核心功能

該插件主要提供以下能力:

  • 存檔與讀取:將 X 推文存檔爲永久 Markdown 快照,並支持直接檢索已存檔內容。
  • 自動處理:對於未存檔的推文,插件會自動提交存檔請求(圖片通過 CDN 保留,即使原文刪除或設爲私密,存檔內容仍可訪問)。
  • 去重與節流:已存檔的推文直接返回,去重命中時不消耗配額。
  • 版本歷史:通過 refresh: true 參數可強制重抓,獲取推文的最新版本。

安裝與啓用

安裝必須指定 --profile,插件按 profile 安裝。安裝後需重啓 dsh 進程(GUI 用戶)才能生效。

1、安裝插件:

# Web GUI 用戶
dsh plugin --profile web add github:opencamel/dsh-x-archive#v0.1.2
# 純 CLI 用戶
dsh plugin --profile headless add github:opencamel/dsh-x-archive#v0.1.2

2、驗證安裝:

dsh --profile <name> --dump-config | grep -A2 dsh-x-archive
# 預期輸出:
# # == dsh-x-archive
# - id: dsh-x-archive
#   name: dsh-x-archive

配置

在 profile 的 cordis.patch.yml 中配置 API 地址、認證令牌及超時參數。

1、編輯配置文件:
路徑示例:~/.dsh/profiles/web/cordis.patch.yml(web 替換爲實際 profile 名稱)。

2、添加配置內容:

- insert:
  - id: dsh-x-archive
    name: dsh-x-archive
    config:
      apiBaseUrl: 'https://api.2100laike.com'  # 存檔 API 地址
      token: ''                                # 可選 PAT,見下方額度說明
      waitTimeoutSec: 60                       # 新推文抓取輪詢上限(秒)
      pollIntervalSec: 2                       # 輪詢間隔(秒)
      maxContentChars: 30000                   # 返回正文最大字符數,超出截斷並附快照鏈接

3、額度與認證:
* 匿名額度:8 次/天。
* 提升額度:在 app.2100laike.com/register 註冊並創建 PAT(scope 至少 api:write),填入配置中的 token,額度提升至 100 次/天。
* 刷新限制:解鎖 refresh: true 強制重抓需要配置 PAT,且受服務端 24 小時冷卻保護。

工具契約

調用 x_archive 工具時使用以下參數和返回值。

  • 工具名稱:x_archive
  • 參數:
    • url (string, 必填):X 推文鏈接。
    • refresh (boolean, 可選,默認 false):是否強制刷新獲取最新版本。
  • 返回值:
    • archive_id, url, title, author, version, fetched_at, deleted, refresh_skipped, snapshot_url, truncated, markdown, note。

錯誤與軟失敗

  • 報錯:直接調用失敗時返回錯誤碼,如 RATE_LIMITED(額度耗盡)或 FORCE_NOT_ALLOWED(未配置 PAT)。
  • 軟失敗:某些情況不拋錯,通過 note 字段提示:
    • 新推文抓取中:note 提示「抓取尚未完成」,稍後重試即可。
    • 內容截斷:truncated: true,需訪問 snapshot_url 查看全文。
    • 推文不可用:deleted: true 或 note 提示稍後重試。

適用場景與注意

  • 環境依賴:需要 dsh >= 0.1.0-rc.6,且系統 PATH 中包含 pnpm。
  • 配置文件:僅編輯 cordis.patch.yml,不要修改 cordis.yml(該文件由系統自動重寫)。
  • 進程重啓:安裝或卸載插件後,必須重啓 dsh 進程(GUI 模式需重新運行 dsh web),插件纔會加載。
  • 隱私與安全:插件只訪問配置的 apiBaseUrl,不讀取本地憑據,無遙測數據。

鏈接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜