DeepSeek Harness 插件:zhengjy01/dsh-zhihu(知乎 CLI 連接工具)

前言

DeepSeek Harness (DSH) 的核心在於插件化擴展能力。當智能體需要訪問知乎的數據(如熱榜、問答詳情、用戶信息)時,直接調用瀏覽器自動化或硬編碼爬蟲代碼維護成本較高。zhengjy01/dsh-zhihu 插件通過包裝本機已安裝的 pyzhihu-cli,將其能力注入到 DSH 的工具集(Agent Tools)中,並提供 Web 可視化面板進行配置與登錄。

安裝與前置條件

使用本插件前,需確保系統已安裝 pyzhihu-cli(Python 3.10+)。該插件本身依賴 DeepSeek Harness >= 0.1.5-rc.1。

  1. 安裝 pyzhihu-cli:
    推薦使用 uv 或 pipx 進行隔離安裝:
    uv tool install pyzhihu-cli
    # 或
    pipx install pyzhihu-cli
安裝後,可在終端驗證版本:
    zhihu --version
  1. DSH 環境要求:
    確保你的 DSH 版本滿足 peerDependencies 要求(兼容 0.2.0-rc.2 及以上,最低 0.1.5-rc.1)。

核心功能

該插件主要完成以下工作:

  • 工具包裝:將本機的 zhihu CLI 命令包裝爲 zhihu_* 系列工具(如 zhihu_search、zhihu_answer 等),返回結構化的 JSON 數據。
  • 默認只讀模式:爲了安全,寫操作(發佈、點贊、刪除)默認不註冊工具。模型無法看到這些工具,從而避免誤操作。
  • Web 可視化面板:提供側欄懸浮球(“知”球)和設置頁卡片,支持二維碼掃碼登錄和配置查看。
  • 認證處理:支持二維碼掃碼登錄或直接粘貼 Cookie 登錄,所有憑據僅在本地處理,不暴露給進程列表。

典型用法

1. 管理與認證

首次使用需登錄。插件會調用 CLI 的登錄邏輯。

  • 檢查狀態:
    查看插件狀態、CLI 版本及登錄情況(Cookie 是否包含 z_c0/_xsrf)。
    zhihu_status()
  • 登錄(推薦二維碼):
    CLI 生成二維碼圖片路徑,由 Agent 展示給用戶,用戶掃碼後插件檢測認證狀態。
    // 返回二維碼圖片路徑,可傳入 read_image 查看或展示
    zhihu_login() 
  • 登錄(Cookie):
    若環境受限無法掃碼,可直接傳入 Cookie 字符串。
    zhihu_login({ mode: "cookie", cookie: "z_c0=...; _xsrf=...; d_c0=..." })

2. 讀取操作

所有讀取工具默認可用,每個命令均需先完成登錄。

  • 搜索與熱榜:
    zhihu_search({ query: "DeepSeek", type: "general" })
    zhihu_hot()
  • 問答詳情:
    獲取問題及其回答列表。
    zhihu_question({ id: "123456", answers: true })
獲取回答正文及評論:
    zhihu_answer({ id: "789012", comments: true })
  • 用戶與動態:
    查看用戶資料或動態 Feed。
    zhihu_user({ id: "user123", include: "answers,articles" })
    zhihu_feed({ withComments: true })

3. 寫入操作(需手動開啓)

默認情況下寫入工具不存在。需在配置中關閉只讀模式。

  • 啓用寫權限:
    通過工具調用或配置文件設置 readOnly: false。
    zhihu_config({ readOnly: false })
此時 `zhihu_publish`、`zhihu_vote`、`zhihu_follow_question`、`zhihu_delete` 等工具纔會被註冊。
  • 發佈內容:
    zhihu_publish({ kind: "article", title: "標題", content: "正文" })

Web 可視化面板

插件在 DSH Web 界面中集成了兩個入口:

  1. 側欄懸浮球:右下角藍色“知”球,點擊展開 380px 的操作面板。
  2. 設置頁卡片:在 settings.section 中新增“知乎”配置卡片。

面板提供以下功能:
* 登錄管理:顯示當前登錄狀態,支持一鍵生成/刷新二維碼。
* 配置調整:切換隻讀模式、設置代理、調整超時時間。
* 快捷查詢:直接調用熱榜搜索,點擊鏈接跳轉。

安全限制:面板 API 路徑爲 /api/dsh-zhihu/*,僅允許 localhost 或 127.0.0.1 訪問,防止跨站請求僞造。

配置說明

配置項存儲於 ~/.dsh/dsh-zhihu.json(權限 0600),主要參數如下:

配置項 默認值 說明
readOnly true 爲 true 時僅註冊讀取工具;爲 false 時註冊寫工具
cliPath zhihu 本地 CLI 命令名或絕對路徑
timeoutMs 90000 單次調用超時時間(毫秒)
loginWaitMs 15000 二維碼登錄等待掃描的超時時間(毫秒)
proxy 空 代理設置,留空繼承環境變量,設爲 none 強制不使用代理
cliHome ~/.zhihu-cli CLI 的配置目錄,插件會修改子進程的 HOME 指向此處

注意事項與限制

  1. 認證要求:所有 zhihu_* 工具調用前必須處於已登錄狀態,否則會報錯 Not authenticated。
  2. CLI 模式差異:
    • CLI 的 --json 模式不支持評論、feed+comments、話題熱榜。這些功能會回退到文本模式,結果包含在 text 字段中。
    • zhihu_search 和 zhihu_hot 在 JSON 模式下不支持 -a/--answers 參數。
  3. 風控風險:知乎存在反爬機制,插件僅爲薄包裝。請勿在短時間內發起高頻請求,否則可能觸發風控導致賬號受限。
  4. 源碼檢查:安裝前請檢查源碼與許可證,插件以當前 DSH 進程的權限運行,需確保信任該插件。

總結

zhengjy01/dsh-zhihu 是一個連接本地 pyzhihu-cli 與 DeepSeek Harness 的橋樑。它提供了結構化的知乎數據獲取能力,並默認採用只讀模式以保障賬號安全。通過 Web 面板和工具封裝,開發者可以方便地在智能體中集成知乎的數據查詢與基礎交互功能。

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

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

小夜