Advertise Agent Zero version in connector handshakes
Expose the Core Agent Zero version from both connector capabilities and connector_hello so A0 CLI clients can warn when they are older than the connected server.
Alessandro committed
Jun 2, 2026 at 12:07 UTC
41cd28e6d52c1e2d7cf84d3d125bee31c39084b4
3 files changed
+15
plugins/_a0_connector/api/v1/capabilities.py
+2
@@ -6,6 +6,7 @@ import sys
6
7
from helpers.api import Request, Response
8
import plugins._a0_connector.api.v1.base as connector_base
9
+from plugins._a0_connector.helpers.version import agent_zero_version
10
11
12
_BASE_FEATURES = [
@@ -80,6 +81,7 @@ class Capabilities(connector_base.PublicConnectorApiHandler):
81
return {
82
"protocol": "a0-connector.v1",
83
"version": "0.1.0",
84
+ "agent_zero_version": agent_zero_version(),
85
"auth": ["session"],
86
"auth_required": bool(login.is_login_required()),
87
"transports": ["http", "websocket"],
plugins/_a0_connector/api/ws_connector.py
+2
@@ -10,6 +10,7 @@ from helpers.ws_manager import WsResult
10
11
from plugins._a0_connector.helpers.exec_config import build_exec_config
12
from plugins._a0_connector.helpers.event_bridge import get_context_log_entries
13
+from plugins._a0_connector.helpers.version import agent_zero_version
14
from plugins._a0_connector.helpers.ws_runtime import (
15
clear_remote_tree_snapshot,
16
clear_sid_host_browser_metadata,
@@ -119,6 +120,7 @@ class WsConnector(WsHandler):
120
self._associate_declared_context(data, sid)
121
return {
122
"protocol": PROTOCOL_VERSION,
123
+ "agent_zero_version": agent_zero_version(),
124
"features": WS_FEATURES,
125
"exec_config": build_exec_config(),
126
"remote_tools": self._remote_tool_state(sid),
plugins/_a0_connector/helpers/version.py
new
+11
@@ -0,0 +1,11 @@
1
+"""Version metadata helpers for the A0 connector plugin."""
2
+from __future__ import annotations
3
+
4
+
5
+def agent_zero_version() -> str:
6
+ try:
7
+ from helpers import git
8
+
9
+ return str(git.get_version()).strip() or "unknown"
10
+ except Exception:
11
+ return "unknown"