Skip to content

Commit d48cddd

Browse files
committed
generate_proto: add agent_simulation + cloud_agent python bindings
1 parent 463b9ac commit d48cddd

1 file changed

Lines changed: 10 additions & 1 deletion

File tree

livekit-protocol/generate_proto.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ protoc \
3838
$API_PROTOCOL/livekit_sip.proto \
3939
$API_PROTOCOL/livekit_analytics.proto \
4040
$API_PROTOCOL/livekit_rtc.proto \
41+
$API_PROTOCOL/livekit_cloud_agent.proto \
42+
$API_PROTOCOL/livekit_agent_simulation.proto \
4143
$API_PROTOCOL/agent/livekit_agent_session.proto \
4244
$API_PROTOCOL/agent/livekit_agent_inference.proto \
4345
$API_PROTOCOL/agent/livekit_agent_text.proto \
@@ -77,6 +79,10 @@ mv "$API_OUT_PYTHON/livekit_agent_worker_pb2.py" "$API_OUT_PYTHON/agent_worker.p
7779
mv "$API_OUT_PYTHON/livekit_agent_worker_pb2.pyi" "$API_OUT_PYTHON/agent_worker.pyi"
7880
mv "$API_OUT_PYTHON/livekit_analytics_pb2.py" "$API_OUT_PYTHON/analytics.py"
7981
mv "$API_OUT_PYTHON/livekit_analytics_pb2.pyi" "$API_OUT_PYTHON/analytics.pyi"
82+
mv "$API_OUT_PYTHON/livekit_cloud_agent_pb2.py" "$API_OUT_PYTHON/cloud_agent.py"
83+
mv "$API_OUT_PYTHON/livekit_cloud_agent_pb2.pyi" "$API_OUT_PYTHON/cloud_agent.pyi"
84+
mv "$API_OUT_PYTHON/livekit_agent_simulation_pb2.py" "$API_OUT_PYTHON/agent_simulation.py"
85+
mv "$API_OUT_PYTHON/livekit_agent_simulation_pb2.pyi" "$API_OUT_PYTHON/agent_simulation.pyi"
8086
mv "$API_OUT_PYTHON/livekit_sip_pb2.py" "$API_OUT_PYTHON/sip.py"
8187
mv "$API_OUT_PYTHON/livekit_sip_pb2.pyi" "$API_OUT_PYTHON/sip.pyi"
8288
mv "$API_OUT_PYTHON/livekit_metrics_pb2.py" "$API_OUT_PYTHON/metrics.py"
@@ -104,7 +110,7 @@ mkdir -p "$API_OUT_PYTHON/logger_pb"
104110
mv "$API_OUT_PYTHON/logger/options_pb2.py" "$API_OUT_PYTHON/logger_pb/options.py"
105111
mv "$API_OUT_PYTHON/logger/options_pb2.pyi" "$API_OUT_PYTHON/logger_pb/options.pyi"
106112

107-
find "$API_OUT_PYTHON" -name '*.py' -o -name '*.pyi' | xargs perl -i -pe 's|^(import (livekit_egress_pb2\|livekit_room_pb2\|livekit_webhook_pb2\|livekit_ingress_pb2\|livekit_models_pb2\|livekit_agent_pb2\|livekit_agent_dispatch_pb2\|livekit_agent_worker_pb2\|livekit_analytics_pb2\|livekit_sip_pb2\|livekit_metrics_pb2\|livekit_rtc_pb2\|livekit_connector_whatsapp_pb2\|livekit_connector_twilio_pb2\|livekit_connector_pb2\|livekit_agent_session_pb2\|livekit_agent_inference_pb2\|livekit_agent_dev_pb2\|livekit_agent_text_pb2\|options_pb2))|from . $1|g'
113+
find "$API_OUT_PYTHON" -name '*.py' -o -name '*.pyi' | xargs perl -i -pe 's|^(import (livekit_egress_pb2\|livekit_room_pb2\|livekit_webhook_pb2\|livekit_ingress_pb2\|livekit_models_pb2\|livekit_agent_pb2\|livekit_agent_dispatch_pb2\|livekit_agent_worker_pb2\|livekit_analytics_pb2\|livekit_sip_pb2\|livekit_metrics_pb2\|livekit_rtc_pb2\|livekit_cloud_agent_pb2\|livekit_agent_simulation_pb2\|livekit_connector_whatsapp_pb2\|livekit_connector_twilio_pb2\|livekit_connector_pb2\|livekit_agent_session_pb2\|livekit_agent_inference_pb2\|livekit_agent_dev_pb2\|livekit_agent_text_pb2\|options_pb2))|from . $1|g'
108114

109115
find "$API_OUT_PYTHON" -name '*.py' -o -name '*.pyi' | xargs perl -i -pe 's|livekit_(\w+)_pb2|${1}|g'
110116

@@ -117,5 +123,8 @@ find "$API_OUT_PYTHON" -mindepth 2 -name '*.py' -o -name '*.pyi' | xargs perl -i
117123
# fix `from agent import agent_xxx as xxx` to `from . import agent_xxx as xxx`
118124
find "$API_OUT_PYTHON"/agent_pb -name '*.py' -o -name '*.pyi' | xargs perl -i -pe 's|from agent import (agent_\w+) as ([^ ]+)|from . import $1 as $2|g'
119125

126+
# top-level files (e.g. agent_simulation) importing from agent/ -> agent_pb subpackage
127+
find "$API_OUT_PYTHON" -maxdepth 1 -name '*.py' -o -name '*.pyi' | xargs perl -i -pe 's|from agent import (agent_\w+) as ([^ ]+)|from .agent_pb import $1 as $2|g'
128+
120129
# fixes - error: ClassVar can only be used for assignments in class body [misc]
121130
perl -i -pe 's|^(\w+_FIELD_NUMBER): _ClassVar\[int\]|$1: int|g' "$API_OUT_PYTHON/logger_pb/options.pyi"

0 commit comments

Comments
 (0)