在 DSH 環境中開發 PCB 設計 Agent 時,需要按型號或描述查找電子元器件。現有路徑是起 bash 進程讓模型現寫 curl 腳本調搜索引擎,存在每次調用都起進程昂貴且錯誤率高、結果不可結構化、無法保證可設計性(器件不一定有 EDA 模型)等問題。本插件封裝芯靈 queryPage 搜索接口爲一次函數調用,毫秒級返回結構化 JSON,默認過濾出帶 EDA 模型的器件,保證結果可直接用於 PCB 設計。
插件介紹¶
dsh-tool-pcb-parts-search 是一個 DSH PCB 元器件搜索工具插件。插件按關鍵詞搜索 IC / 有源 / 無源電子元器件,用於 PCB 設計與 EDA 選型。由 Huaqiu-Electronics 維護,許可證爲 MIT。
核心能力¶
- 元器件搜索:按關鍵詞搜索 IC / 有源 / 無源電子元器件。
- 結構化數據:返回包含 mpn, mfgid, description, datasheet 的 JSON 數據。
- EDA 模型過濾:默認只返回帶原理圖符號 / PCB 封裝的器件。
- 安全與健壯性:
- 入口參數雙重校驗(keyword 長度、page_size 範圍、require_eda_model 類型)。
- HTTP 狀態碼 + 業務 code 雙重校驗。
- 僅向白名單域名 eda.cn 發送請求。
- 防禦性結構解包與字段白名單過濾。
安裝與啓用¶
使用官方安裝命令將插件加入 DSH Profile:
dsh plugin --profile web add <repo-or-tarball>
dsh plugin --profile headless add <repo-or-tarball>
安裝後,插件會自動註冊 pcb_parts_search 工具。
使用方法¶
工具支持以下參數:
* keyword:必填,搜索關鍵詞(型號或描述),長度限制 200 字符。
* page_size:可選,返回條數,範圍 1-50,默認 5。
* require_eda_model:可選,是否只返回帶 EDA 模型的器件,默認 true。
調用示例:
pcb_parts_search { keyword: "STM32F103C8T6" }
pcb_parts_search { keyword: "0402 10k resistor", page_size: 10 }
pcb_parts_search { keyword: "LM358", require_eda_model: false }
限制與注意事項¶
- 搜索方式:僅支持關鍵詞模糊搜索,非 MPN 精確查詢。需要精確定位時需在返回結果中二次過濾。
- 數據源:僅查詢芯靈 eda.cn,不聚合其他元器件平臺。
- 網絡依賴:需要網絡訪問第三方接口,離線環境不可用。
- 返回字段:不包含庫存、價格、封裝尺寸等採購信息。
總結¶
該插件通過封裝芯靈接口,爲 DSH Agent 提供了標準化的 PCB 元器件搜索能力,解決了 Agent 在 EDA 選型時獲取結構化數據難、缺乏 EDA 模型的問題。源碼及更多信息請訪問 GitHub。