{"id":23201,"library":"ag-ui-adk","title":"AG-UI ADK Middleware","description":"Middleware for the Google Agent Development Kit (ADK) that implements the AG-UI protocol. Enables ADK agents to communicate via the AG-UI protocol for streaming UI components and actions. Current version 0.6.1, requires Python >=3.10,<3.15, release cadence is irregular (several releases in Mar-Apr 2026).","status":"active","version":"0.6.1","language":"python","source_language":"en","source_url":"https://github.com/ag-ui-protocol/ag-ui/tree/main/integrations/adk-middleware/python","tags":["ag-ui","adk","google-adk","middleware","agent"],"install":[{"cmd":"pip install ag-ui-adk","lang":"bash","label":"PyPI"}],"dependencies":[{"reason":"Core AG-UI protocol implementation","package":"ag-ui-protocol","optional":false},{"reason":"Google Agent Development Kit","package":"google-adk","optional":false},{"reason":"Used for async agent execution","package":"asyncio","optional":false}],"imports":[{"note":"Main class for creating an AG-UI compatible ADK agent.","wrong":"","symbol":"ADKMethodAdapter","correct":"from ag_ui_adk import ADKMethodAdapter"}],"quickstart":{"code":"import asyncio\nfrom google.adk import Agent\nfrom ag_ui_adk import ADKMethodAdapter\n\nasync def main():\n    agent = Agent(\n        name=\"weather_agent\",\n        instruction=\"Call get_weather for any city.\",\n        tools=[],  # Adapter will attach AG-UI tools\n    )\n    adapter = ADKMethodAdapter(agent)\n    # Run via AG-UI method call\n    result = await adapter.run(input_text=\"What's the weather in Paris?\")\n    print(result)\n\nasyncio.run(main())","lang":"python","description":"Creates an ADK agent and wraps it with the AG-UI adapter, then runs a query."},"warnings":[{"fix":"Replace `adapter.handle_tool_call(...)` with `await adapter.run(...)`.","message":"The `handle_tool_call` method is deprecated in favour of `run`. Use `adapter.run()` instead of `adapter.handle_tool_call()`.","severity":"deprecated","affected_versions":">=0.5.0"},{"fix":"Use `from ag_ui_adk import ADKMethodAdapter`.","message":"As of version 0.6.0, the import path changed from `ag_ui_adk.adapter` to `ag_ui_adk` (top-level). Old import `from ag_ui_adk.adapter import ADKMethodAdapter` will break.","severity":"breaking","affected_versions":">=0.6.0"},{"fix":"Always `await adapter.run(...)` inside an async function.","message":"The adapter is async; you must create an event loop (e.g., asyncio.run). Forgetting `await` on `adapter.run()` results in a coroutine object, not the result.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Install with `pip install ag-ui-adk` and import as `from ag_ui_adk import ...`.","cause":"Package not installed or wrong import name (package is ag-ui-adk, but import uses underscores).","error":"ModuleNotFoundError: No module named 'ag_ui_adk'"},{"fix":"Upgrade: `pip install --upgrade ag-ui-adk`. If stuck on old version, use `from ag_ui_adk.adapter import ADKMethodAdapter`.","cause":"Using old import path `from ag_ui_adk import ADKMethodAdapter` but version <0.6.0 where the class was under `ag_ui_adk.adapter`.","error":"AttributeError: module 'ag_ui_adk' has no attribute 'ADKMethodAdapter'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}