函式庫 / SDK
pydantic/pydantic-ai-harness avatar
pydantic/pydantic-ai-harness

pydantic/pydantic-ai-harness:從 README 拆解能力、入口與使用界線

Pydantic AI 代理的電池。 Pydantic AI 核心提供了需要模型或框架支援的功能,以及每個代理網路搜尋、工具搜尋、思維的基礎功能。

906 個 Star138 個 ForkPythonMIT
GitHub

秒懂

它是什麼?
Batteries for your Pydantic AI agent. Pydantic AI core ships capabilities that require model or framework support, and capabilities fundamental to every agent web search, tool search, thinking.。本文根據 pydantic/pydantic-ai-harness 的 README 與基線,整理功能範圍、操作線索、版本訊號與採用限制。
適合誰用?
pydantic/pydantic-ai-harness 適合需要 README 已列出能力,並能管理其輸入、依賴與執行環境的使用者;不適合把文件未說明的相容性或效能當成保證。先依 pydantic-ai-harness README 的專案專屬入口跑最小案例,觀察具體輸出、錯誤文字與產物位置,再決定是否接入正式流程。
可以商用嗎?
可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫在最近一天內有新的提交。
用什麼語言寫的?
主要是 Python(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月19日)與我們的分析,不構成法律意見。

開源專案深度解析

pydantic-ai-harness:Pydantic AI 代理的電池

Pydantic AI Harness 是 Pydantic AI 的官方能力庫,由 Pydantic AI 團隊維護。Pydantic AI 核心內建需要模型或框架支援的能力,以及每個代理都基礎的能力,例如 WebSearch、ToolSearch 與 Thinking。其餘能力都放在這裡:你可以挑選的獨立建構區塊,用來把代理變成編碼代理、研究助手或其他形態。新能力從這裡起步,在穩定並證明有廣泛必要性後,可以升入核心。README 將這個套件描述為 Pydantic AI 代理的電池。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:[](https://github.com/pydantic/pydantic-ai-harness/actions/workflows/main.yml?query=branch%3Amain)。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:[](https://pypi.python.org/pypi/pydantic-ai-harness)。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

[](https://github.com/pydantic/pydantic-ai-harness)。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

pydantic-ai-harness:安裝與 extras

README 使用 uv 說明安裝。基礎指令是 `uv add pydantic-ai-harness`。按能力區分的 extras 包括 `codemode`、`dynamic-workflow`、`modal`、`logfire`、`exa`、`skills`、`browser-use`、`stackone`、`acp` 與 `mongodb`;`code-mode` 也被接受為別名。套件要求 Python 3.10+ 與 `pydantic-ai-slim>=2.18.0`。README 沒有說明 pip、poetry 或其他安裝方式,因此這些仍未得到證實。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:[](https://github.com/pydantic/pydantic-ai-harness/blob/main/LICENSE)。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:[](https://logfire.pydantic.dev/docs/join-slack/)。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

Your agent's favorite harness, built on Pydantic AI。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

pydantic-ai-harness:快速入門:CodeMode、MCP 與 WebSearch

快速入門範例建立了一個帶三個能力的代理:`CodeMode()`、`MCP('https://hn.caseyjhand.com/mcp', native=False)` 與 `WebSearch(native=False)`。CodeMode 將所有工具包裝成一個由 Monty 沙箱化的 `run_code` 工具,因此模型可以編寫 Python,在一次往返中用迴圈、條件、asyncio.gather 與本地篩選呼叫多個工具。使用 `native=False` 時,MCP 使用本地工具集,讓 CodeMode 可以包裝這些工具;WebSearch 則透過本地 DuckDuckGo 後備路由。範例使用 Logfire 做追蹤,並指定一個 Anthropic 模型;README 附有該次執行的公開 Logfire 追蹤連結。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:Pydantic AI Harness is the official [capability](https://ai.pydantic.dev/capabilities/overview/) and harness library for [Pydantic AI](https://ai.pydantic.dev/). Every Pydantic AI agent already has a light harness: the typed agent loop, [any model](https://ai.pydantic.dev/models/), your own tools, structured output. For simple agents that's enough. But set an agent loose on complex, long-running work (fix a codebase, research a question, run for hours unattended) and what it needs around the model grows: a [workspace](pydanticaiharness/filesystem/) to act in, a [plan](pydanticaiharness/planning/) it keeps current, [memory](pydanticaiharness/memory/) that carries across sessions, [sub-agents](pydanticaiharness/subagents/) to hand work to, [context management](pydanticaiharness/compaction/) that holds up in hour ten, and [durable execution](https://ai.pydantic.dev/capabilities/durableexecution/overview/) that survives a restart. Pydantic AI Harness ships that harness.。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:Everything here is one primitive: a [capability](https://ai.pydantic.dev/capabilities/), a self-contained unit of agent behavior you add to capabilities=[...] on any agent. There are [30+ of them](capabilities), and complete agents like [Coder](pydanticaiharness/coder/) and [Researcher](pydanticaiharness/researcher/) are themselves capabilities combined: they come apart the way they went together. Snap on a single block, compose your own stack, or start from the whole coding agent and take it apart later.。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

Install with [uv](https://docs.astral.sh/uv/):。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

pydantic-ai-harness:DynamicWorkflow:子代理編排

DynamicWorkflow 對子代理做的事,相當於 CodeMode 對工具做的事。沒有它,編排器一次只委派一個工具呼叫,十次委派就要十次模型往返。有了它,模型編寫一個 Python 腳本,每個子代理是一個非同步函式,整棵呼叫樹在單次工具呼叫中執行。README 將 `max_agent_calls` 列為對子代理執行的精確、由主機強制執行的限制,並且預設情況下整棵樹的 token 消耗計入父執行的 usage。`defer_loading=True` 會在模型載入該能力之前把目錄排除在提示之外,`reveal()` 可以在執行中途新增子代理而不打擾提示快取。該 API 在計劃中的擴充確定呼叫契約之前可能變化;可行時,破壞性變更會附帶棄用警告。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:uv add "pydantic-ai-harness[anthropic]"。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:from pydanticai import Agent。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

from pydanticaiharness import Coder。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

pydantic-ai-harness:能力矩陣與生態套件

README 包含一個能力矩陣,把對生產代理重要的每個能力領域都記錄為 issue。類別包括模型協作、工具與執行、編輯器整合、提示管理、上下文管理、記憶與持久化、代理編排、安全與護欄、可靠性、推理。每一行都有狀態標記,並在適用處列出社群替代方案。有些能力標記為完成,有些透過 pull request 建置中,有些位於 Pydantic AI 核心而非本倉庫。vstorm-co 的套件得到 Pydantic AI 團隊的認可,團隊表示正在與他們合作,將部分實作上游化到本倉庫。README 請使用者在連結的 PR 或 issue 上投票,以決定優先順序。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:agent = Agent('anthropic:claude-fable-5', capabilities=[Coder()])。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:result = agent.runsync('Find out why tests/testparser.py fails and fix the bug it caught.')。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

> Found it: parse() returned None on empty input instead of raising. Fixed in src/parser.py; tests pass now.。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

pydantic-ai-harness:版本策略、貢獻與授權

Pydantic AI Harness 採用 0.x 版本號。README 說明這正是它獨立於 Pydantic AI 單獨發布的原因,Pydantic AI 有更嚴格的版本策略。次要版本可能包含破壞性變更;修補版本不會故意破壞現有行為。破壞性變更會記錄在發行說明中,並附遷移指南;可行時,舊行為會以棄用名稱或設定選項保留。能力是 Pydantic AI 的主要擴充點;README 建議參考本倉庫已有能力來建構自己的能力,並提到獨立套件使用 `pydantic-ai-<name>` 命名約定。貢獻從 issue 開始,然後是 PR;非團隊成員修改 `pyproject.toml` 或 `uv.lock` 的 PR 會被 CI 自動關閉,以防止供應鏈風險。README 中的開發指令是 `make install`、`make format`、`make lint`、`make typecheck`、`make test` 與 `make testcov`。套件採用 MIT 授權,版權歸 Pydantic Services Inc. 2026。授權授予使用、複製、修改、合併、發布、散布、再授權與銷售副本的權利,並且不提供任何擔保。倉庫材料沒有確立支援承諾、安全保證或生產就緒性。

pydantic/pydantic-ai-harness 的 README 在本節留下具體線索:That's a complete [coding agent](pydanticaiharness/coder/): [workspace-rooted file access](pydanticaiharness/filesystem/), [allowlisted shell](pydanticaiharness/shell/), [repo orientation](pydanticaiharness/repocontext/), [planning](pydanticaiharness/planning/), a read-only [explorer sub-agent](pydanticaiharness/subagents/), and [context management](pydanticaiharness/compaction/) that survives long sessions, and it runs anywhere a Pydantic AI agent runs. [agent.toclisync()](https://ai.pydantic.dev/cli/) opens it as a chat in your terminal, [agent.toweb()](https://ai.pydantic.dev/web/) in the browser, and [Coder](pydanticaiharness/coder/)'s exported coderagent runs without writing a file at all, combined with [clai](https://ai.pydantic.dev/cli/) (the Pydantic AI CLI) and [uvx](https://docs.astral.sh/uv/guides/tools/):。這使判斷可以落在專案自己的命令、檔案或設定名稱上,而不是泛泛比較同類工具。另一段文件內容指出:uvx --with pydantic-ai-harness clai -a pydanticaiharness.coder:coderagent -m anthropic:claude-fable-5。兩項資訊合看,能分出已記載的能力與尚未交代的行為。

Every model works: swap the string for [any provider's](https://ai.pydantic.dev/models/). Need more? Add capabilities to the list; here's the same coder on gpt-5.6-sol, with web search and cross-session memory:。採用前可在隔離目錄依 README 的 pydantic-ai-harness 入口建立最小案例,保存輸入、輸出、終端錯誤與產物路徑;若本節涉及服務、模型或資料,先使用非正式資料,並逐項確認環境變數與依賴版本。這種核對要針對 pydantic/pydantic-ai-harness 的實際入口進行,不把文件中的示例直接當成效能或穩定性承諾。README 沒有說明的相容性、併發量與故障恢復方式,應保留為待查事項。對照 main 分支與 releases 頁面時,請記錄版本差異,再判斷本節描述是否仍適用。這項限制對 pydantic-ai-harness 很重要,因為倉庫的描述範圍、安裝步驟和實際部署條件未必相同。

編輯結論

pydantic/pydantic-ai-harness 適合需要 README 已列出能力,並能管理其輸入、依賴與執行環境的使用者;不適合把文件未說明的相容性或效能當成保證。先依 pydantic-ai-harness README 的專案專屬入口跑最小案例,觀察具體輸出、錯誤文字與產物位置,再決定是否接入正式流程。

官方來源

  1. Official README
  2. Project repository
  3. Release notes
社群筆記

社群筆記