{"id":45872,"library":"pydantic-ai-harness","title":"Pydantic AI Harness","description":"Pydantic AI Harness (v0.3.0) provides helper utilities and integrations for building Pydantic AI agents, including retry logic, tool decorators, and model adapters. Designed for Python 3.10+, released on PyPI with ongoing active development.","status":"active","version":"0.3.0","language":"python","source_language":"en","source_url":"https://github.com/pydantic/pydantic-ai-harness","tags":["pydantic","ai","agent","harness","adapter"],"install":[{"cmd":"pip install pydantic-ai-harness","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Core dependency; the harness extends pydantic-ai agents","package":"pydantic-ai","optional":false}],"imports":[{"wrong":"from pydantic_ai_harness import retry","symbol":"retry","correct":"from pydantic_ai_harness import retry"}],"quickstart":{"code":"import os\nfrom pydantic_ai import Agent\nfrom pydantic_ai_harness import Harness\nfrom pydantic_ai_harness.adapters import OpenAIModelAdapter\n\nagent = Agent(model='openai:gpt-4', system_prompt='You are a helpful assistant.')\nadapter = OpenAIModelAdapter(api_key=os.environ.get('OPENAI_API_KEY', ''))\nharness = Harness(agent=agent, adapter=adapter)\nresult = harness.run('What is the capital of France?')\nprint(result)","lang":"python","description":"Creates a Pydantic AI agent, wraps it in a Harness with an OpenAI adapter, and runs a query."},"warnings":[{"fix":"Use `from pydantic_ai_harness import Harness` instead of `from pydantic_ai_harness.harness import Harness`.","message":"In v0.3.0, the Harness class was moved from pydantic_ai_harness.harness to pydantic_ai_harness. Update imports.","severity":"breaking","affected_versions":"<0.3.0"},{"fix":"Import `retry` from pydantic_ai_harness and apply it to your agent's run function.","message":"The `retry_on_failure` parameter in agent creation is deprecated; use the `retry` decorator instead.","severity":"deprecated","affected_versions":">=0.2.0"},{"fix":"Always pass `api_key` parameter or set OPENAI_API_KEY environment variable.","message":"Adapter require an API key via env var or argument. If env var is missing and no key passed, OpenAI adapter will fail silently or raise a generic error.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'3.10':29 'activ':35 'adapt':25,41 'agent':17,39 'ai':2,5,16,38 'build':14 'decor':22 'design':26 'develop':36 'har':3,6,40 'helper':9 'includ':18 'integr':12 'logic':20 'model':24 'ongo':34 'provid':8 'pydant':1,4,15,37 'pypi':32 'python':28 'releas':30 'retri':19 'tool':21 'util':10 'v0.3.0':7","created_at":"2026-06-07T12:57:08.818805+00:00","updated_at":"2026-06-07T12:57:08.818805+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\nImportError: cannot import name 'retry' from 'pydantic_ai_harness' (/tmp/tmp2qehg6yu/venv/lib/python3.12/site-packages/pydantic_ai_harness/__init__.py)"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/pydantic/pydantic-ai-harness","github":"https://github.com/pydantic/pydantic-ai-harness","docs":null,"changelog":null,"pypi":null,"npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["ai-ml","devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}