google-agents-cli 1.7.0__tar.gz → 1.8.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/PKG-INFO +39 -1
  2. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/README.md +38 -0
  3. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/pyproject.toml +4 -1
  4. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_click.py +65 -0
  5. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_experiments.py +22 -2
  6. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_output.py +18 -10
  7. google_agents_cli-1.8.0/src/google/agents/cli/_telemetry.py +461 -0
  8. google_agents_cli-1.8.0/src/google/agents/cli/_telemetry_worker.py +37 -0
  9. google_agents_cli-1.8.0/src/google/agents/cli/deploy/_operation.py +512 -0
  10. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/deploy/agent_runtime.py +345 -262
  11. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/deploy/cmd_deploy.py +79 -60
  12. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_overrides.py +6 -7
  13. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/info/cmd_info.py +32 -12
  14. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/_cicd_utils.py +21 -26
  15. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/cmd_cicd.py +29 -43
  16. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/main.py +39 -4
  17. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/publish/cmd_publish.py +0 -164
  18. google_agents_cli-1.8.0/src/google/agents/cli/run/_a2a_pinning.py +196 -0
  19. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/run/cmd_run.py +25 -3
  20. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/.template/templateconfig.yaml +2 -10
  21. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/package-lock.json +3 -515
  22. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/build_triggers.tf +18 -3
  23. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/iam.tf +12 -9
  24. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/providers.tf +4 -0
  25. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.gitignore +2 -0
  26. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.gitignore +2 -0
  27. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.gitignore +1 -0
  28. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.gitignore +1 -0
  29. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/commands/create.py +37 -11
  30. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/commands/enhance.py +8 -15
  31. google_agents_cli-1.8.0/src/google/agents/cli/scaffold/commands/upgrade.py +419 -0
  32. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-agent_runtime.lock +174 -188
  33. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-cloud_run.lock +174 -194
  34. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-gke.lock +174 -194
  35. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/copy_files.py +80 -96
  36. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/merge.py +41 -24
  37. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/symlinks.py +36 -17
  38. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/template.py +15 -21
  39. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/upgrade.py +62 -11
  40. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/SKILL.md +1 -1
  41. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/SKILL.md +4 -4
  42. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/terraform-patterns.md +1 -1
  43. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/SKILL.md +1 -1
  44. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/SKILL.md +10 -8
  45. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-publish/SKILL.md +2 -8
  46. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-scaffold/SKILL.md +6 -2
  47. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/SKILL.md +3 -3
  48. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/internals.md +1 -1
  49. google_agents_cli-1.7.0/src/google/agents/cli/deploy/_operation.py +0 -104
  50. google_agents_cli-1.7.0/src/google/agents/cli/scaffold/commands/upgrade.py +0 -190
  51. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/LICENSE +0 -0
  52. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/__init__.py +0 -0
  53. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_adk_client.py +0 -0
  54. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_agent_platform.py +0 -0
  55. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_defaults.py +0 -0
  56. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_gcp_project.py +0 -0
  57. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_modes.py +0 -0
  58. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_project.py +0 -0
  59. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_remote.py +0 -0
  60. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_runner.py +0 -0
  61. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_skills_check.py +0 -0
  62. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_tools.py +0 -0
  63. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/_trust.py +0 -0
  64. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/auth.py +0 -0
  65. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/data/__init__.py +0 -0
  66. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/data/_recipe.py +0 -0
  67. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/data/cmd_data_ingestion.py +0 -0
  68. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/deploy/__init__.py +0 -0
  69. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/deploy/_utils.py +0 -0
  70. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/dev/__init__.py +0 -0
  71. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/dev/cmd_build.py +0 -0
  72. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/dev/cmd_install.py +0 -0
  73. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/dev/cmd_lint.py +0 -0
  74. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/dev/cmd_playground.py +0 -0
  75. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/__init__.py +0 -0
  76. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/_events.py +0 -0
  77. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/_live.py +0 -0
  78. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/_paths.py +0 -0
  79. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/_synthesize_runner.py +0 -0
  80. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_analyze.py +0 -0
  81. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_compare.py +0 -0
  82. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_dataset.py +0 -0
  83. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_eval_group.py +0 -0
  84. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_generate.py +0 -0
  85. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_grade.py +0 -0
  86. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_metric.py +0 -0
  87. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_optimize.py +0 -0
  88. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_run.py +0 -0
  89. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/cmd_submit.py +0 -0
  90. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/eval_utils.py +0 -0
  91. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/eval/optimize_utils.py +0 -0
  92. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/__init__.py +0 -0
  93. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_compat.py +0 -0
  94. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_loader.py +0 -0
  95. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_manifest.py +0 -0
  96. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_paths.py +0 -0
  97. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_refs.py +0 -0
  98. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_resolver.py +0 -0
  99. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_schema.py +0 -0
  100. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_spec.py +0 -0
  101. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_sync.py +0 -0
  102. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/_trust.py +0 -0
  103. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/cmd_extension_add.py +0 -0
  104. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/cmd_extension_group.py +0 -0
  105. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/cmd_extension_list.py +0 -0
  106. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/cmd_extension_remove.py +0 -0
  107. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/extension/cmd_extension_update.py +0 -0
  108. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/info/__init__.py +0 -0
  109. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/__init__.py +0 -0
  110. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/_terraform.py +0 -0
  111. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/cmd_datastore.py +0 -0
  112. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/cmd_infra.py +0 -0
  113. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/cmd_infra_show.py +0 -0
  114. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/infra/cmd_infra_single_project.py +0 -0
  115. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/publish/__init__.py +0 -0
  116. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/publish/cmd_publish_group.py +0 -0
  117. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/run/__init__.py +0 -0
  118. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/run/_local_server.py +0 -0
  119. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/run/_multimodal.py +0 -0
  120. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/__init__.py +0 -0
  121. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/README.md +0 -0
  122. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/__init__.py +0 -0
  123. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/agent.py +0 -0
  124. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/a2a.py +0 -0
  125. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/reasoning_engine_adapter.py +0 -0
  126. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/services.py +0 -0
  127. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/app/fast_api_app.py +0 -0
  128. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/datasets/README.md +0 -0
  129. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/datasets/basic-dataset.json +0 -0
  130. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/eval_config.yaml +0 -0
  131. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/response_quality.py +0 -0
  132. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk/tests/integration/test_agent.py +0 -0
  133. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/.template/templateconfig.yaml +0 -0
  134. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/Dockerfile +0 -0
  135. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/Makefile +0 -0
  136. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/README.md +0 -0
  137. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/app/agent.go +0 -0
  138. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/app/agent_test.go +0 -0
  139. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/appinfo/appinfo.go +0 -0
  140. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/appinfo/appinfo_test.go +0 -0
  141. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/apploader.go +0 -0
  142. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/appurl.go +0 -0
  143. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/integration/server_e2e_test.go +0 -0
  144. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/.results/.placeholder +0 -0
  145. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/README.md +0 -0
  146. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/load_test.go +0 -0
  147. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/datasets/README.md +0 -0
  148. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/datasets/basic-dataset.json +0 -0
  149. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/eval_config.yaml +0 -0
  150. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/response_quality.py +0 -0
  151. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/go.mod +0 -0
  152. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/go.sum +0 -0
  153. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/main.go +0 -0
  154. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/observability.go +0 -0
  155. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/observability_test.go +0 -0
  156. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/sessions/sessions.go +0 -0
  157. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_go/{{cookiecutter.agent_guidance_filename}} +0 -0
  158. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/.cloudbuild/pr_checks.yaml +0 -0
  159. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/.github/workflows/pr_checks.yaml +0 -0
  160. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/.template/templateconfig.yaml +0 -0
  161. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/Dockerfile +0 -0
  162. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/Makefile +0 -0
  163. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/README.md +0 -0
  164. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/pom.xml +0 -0
  165. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/main/java/{{cookiecutter.java_package_path}}/Agent.java +0 -0
  166. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/main/java/{{cookiecutter.java_package_path}}/Main.java +0 -0
  167. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/integration/ServerE2ETest.java +0 -0
  168. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/.results/.placeholder +0 -0
  169. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/LoadTest.java +0 -0
  170. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/README.md +0 -0
  171. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/unit/AgentTest.java +0 -0
  172. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_java/{{cookiecutter.agent_guidance_filename}} +0 -0
  173. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/.cloudbuild/pr_checks.yaml +0 -0
  174. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/.github/workflows/pr_checks.yaml +0 -0
  175. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/.template/templateconfig.yaml +0 -0
  176. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/Dockerfile +0 -0
  177. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/Makefile +0 -0
  178. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/README.md +0 -0
  179. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/app/agent.ts +0 -0
  180. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/package.json +0 -0
  181. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/integration/agent.test.ts +0 -0
  182. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/integration/server_e2e.test.ts +0 -0
  183. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/.results/.placeholder +0 -0
  184. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/README.md +0 -0
  185. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/load_test.ts +0 -0
  186. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/unit/dummy.test.ts +0 -0
  187. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/empty_go/.template/templateconfig.yaml +0 -0
  188. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/empty_java/.template/templateconfig.yaml +0 -0
  189. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/empty_py/.template/templateconfig.yaml +0 -0
  190. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/agents/empty_ts/.template/templateconfig.yaml +0 -0
  191. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/agents-cli-manifest.yaml +0 -0
  192. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/apis.tf +0 -0
  193. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/github.tf +0 -0
  194. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/locals.tf +0 -0
  195. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/outputs.tf +0 -0
  196. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/service_accounts.tf +0 -0
  197. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/storage.tf +0 -0
  198. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/variables.tf +0 -0
  199. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/vars/env.tfvars +0 -0
  200. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/wif.tf +0 -0
  201. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/apis.tf +0 -0
  202. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/iam.tf +0 -0
  203. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/outputs.tf +0 -0
  204. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/providers.tf +0 -0
  205. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/storage.tf +0 -0
  206. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/variables.tf +0 -0
  207. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/vars/env.tfvars +0 -0
  208. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/deploy-to-prod.yaml +0 -0
  209. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/pr_checks.yaml +0 -0
  210. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/staging.yaml +0 -0
  211. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.env +0 -0
  212. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.env.example +0 -0
  213. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.gcloudignore +0 -0
  214. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/deploy-to-prod.yaml +0 -0
  215. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/pr_checks.yaml +0 -0
  216. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/staging.yaml +0 -0
  217. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/.golangci.yml +0 -0
  218. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/cicd/telemetry.tf +0 -0
  219. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/cicd/telemetry_outputs.tf +0 -0
  220. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/shared/completions.sql +0 -0
  221. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/shared/genai_logs_schema.json +0 -0
  222. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/single-project/telemetry.tf +0 -0
  223. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/single-project/telemetry_outputs.tf +0 -0
  224. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.cloudbuild/deploy-to-prod.yaml +0 -0
  225. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.cloudbuild/staging.yaml +0 -0
  226. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.env.example +0 -0
  227. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.gcloudignore +0 -0
  228. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.github/workflows/deploy-to-prod.yaml +0 -0
  229. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/.github/workflows/staging.yaml +0 -0
  230. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/java/src/main/resources/application.properties +0 -0
  231. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/deploy-to-prod.yaml +0 -0
  232. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/pr_checks.yaml +0 -0
  233. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/staging.yaml +0 -0
  234. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.env +0 -0
  235. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.env.example +0 -0
  236. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.gcloudignore +0 -0
  237. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/deploy-to-prod.yaml +0 -0
  238. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/pr_checks.yaml +0 -0
  239. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/staging.yaml +0 -0
  240. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/Dockerfile +0 -0
  241. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/README.md +0 -0
  242. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/cicd/telemetry.tf +0 -0
  243. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/cicd/telemetry_outputs.tf +0 -0
  244. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/shared/completions.sql +0 -0
  245. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/shared/genai_logs_schema.json +0 -0
  246. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/single-project/telemetry.tf +0 -0
  247. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/single-project/telemetry_outputs.tf +0 -0
  248. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/pyproject.toml +0 -0
  249. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/tests/unit/test_dummy.py +0 -0
  250. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/python/{{cookiecutter.agent_guidance_filename}} +0 -0
  251. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.cloudbuild/deploy-to-prod.yaml +0 -0
  252. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.cloudbuild/staging.yaml +0 -0
  253. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.dockerignore +0 -0
  254. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.env.example +0 -0
  255. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.gcloudignore +0 -0
  256. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.github/workflows/deploy-to-prod.yaml +0 -0
  257. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/.github/workflows/staging.yaml +0 -0
  258. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/eslint.config.mjs +0 -0
  259. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/tsconfig.json +0 -0
  260. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/base_templates/typescript/vitest.config.ts +0 -0
  261. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/cmd_scaffold_group.py +0 -0
  262. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/commands/__init__.py +0 -0
  263. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/cicd/service.tf +0 -0
  264. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/cicd/service_outputs.tf +0 -0
  265. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/shared/dummy_source.b64 +0 -0
  266. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/single-project/service.tf +0 -0
  267. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/single-project/service_outputs.tf +0 -0
  268. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment_metadata.json +0 -0
  269. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/integration/test_server_e2e.py +0 -0
  270. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/.results/.placeholder +0 -0
  271. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/README.md +0 -0
  272. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/load_test.py +0 -0
  273. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/cicd/service.tf +0 -0
  274. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/cicd/service_outputs.tf +0 -0
  275. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/single-project/service.tf +0 -0
  276. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/single-project/service_outputs.tf +0 -0
  277. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/cicd/service.tf +0 -0
  278. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/cicd/service_outputs.tf +0 -0
  279. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/single-project/service.tf +0 -0
  280. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/single-project/service_outputs.tf +0 -0
  281. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/cicd/service.tf +0 -0
  282. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/cicd/service_outputs.tf +0 -0
  283. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/single-project/service.tf +0 -0
  284. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/single-project/service_outputs.tf +0 -0
  285. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/integration/test_server_e2e.py +0 -0
  286. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/.results/.placeholder +0 -0
  287. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/README.md +0 -0
  288. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/load_test.py +0 -0
  289. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/cicd/service.tf +0 -0
  290. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/cicd/service_outputs.tf +0 -0
  291. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/single-project/service.tf +0 -0
  292. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/single-project/service_outputs.tf +0 -0
  293. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/cicd/service.tf +0 -0
  294. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/cicd/service_outputs.tf +0 -0
  295. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/single-project/service.tf +0 -0
  296. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/single-project/service_outputs.tf +0 -0
  297. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/integration/test_server_e2e.py +0 -0
  298. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/.results/.placeholder +0 -0
  299. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/README.md +0 -0
  300. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/load_test.py +0 -0
  301. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/integration/test_server_e2e.py +0 -0
  302. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/.results/.placeholder +0 -0
  303. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/README.md +0 -0
  304. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/load_test.py +0 -0
  305. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/__init__.py +0 -0
  306. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/backup.py +0 -0
  307. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/cli_options.py +0 -0
  308. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/command.py +0 -0
  309. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/fs.py +0 -0
  310. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/gcp.py +0 -0
  311. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/generate_locks.py +0 -0
  312. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/generation_metadata.py +0 -0
  313. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/language.py +0 -0
  314. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/lock_utils.py +0 -0
  315. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/logging.py +0 -0
  316. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/remote_template.py +0 -0
  317. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/scaffold/utils/version.py +0 -0
  318. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/setup/__init__.py +0 -0
  319. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/setup/_antigravity.py +0 -0
  320. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/setup/cmd_auth.py +0 -0
  321. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/setup/cmd_setup.py +0 -0
  322. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/setup/cmd_update.py +0 -0
  323. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/__init__.py +0 -0
  324. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/_bundle.py +0 -0
  325. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/README.md +0 -0
  326. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-go-workflows.md +0 -0
  327. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-go.md +0 -0
  328. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python-live.md +0 -0
  329. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python-workflows.md +0 -0
  330. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python.md +0 -0
  331. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/samples.md +0 -0
  332. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/agent-runtime.md +0 -0
  333. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/batch-inference.md +0 -0
  334. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/cicd-pipeline.md +0 -0
  335. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/cloud-run.md +0 -0
  336. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/gke.md +0 -0
  337. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/testing-deployed-agents.md +0 -0
  338. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/advanced-commands.md +0 -0
  339. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/builtin-tools-eval.md +0 -0
  340. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/dataset_schema.md +0 -0
  341. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/live-eval.md +0 -0
  342. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/metrics-guide.md +0 -0
  343. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/multimodal-eval.md +0 -0
  344. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/user-simulation.md +0 -0
  345. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/adk-docs.md +0 -0
  346. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/bigquery-agent-analytics.md +0 -0
  347. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/cloud-trace-and-logging.md +0 -0
  348. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/feedback-mechanism.md +0 -0
  349. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-scaffold/references/flags.md +0 -0
  350. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/brainstorming.md +0 -0
  351. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/commands.md +0 -0
  352. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/extension.md +0 -0
  353. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/spec-template.md +0 -0
  354. {google_agents_cli-1.7.0 → google_agents_cli-1.8.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/terminology.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: google-agents-cli
3
- Version: 1.7.0
3
+ Version: 1.8.0
4
4
  Summary: Agents CLI — Agent Development Lifecycle toolchain for ADK
5
5
  Author-email: Google LLC <agents-cli-dev-pypi@google.com>
6
6
  Requires-Python: >=3.11
@@ -157,6 +157,8 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
157
157
 
158
158
  </details>
159
159
 
160
+
161
+
160
162
  ## How it works
161
163
 
162
164
  <div align="center">
@@ -206,6 +208,42 @@ The best way to contribute is through feedback: bug reports, feature requests, a
206
208
 
207
209
  See the [contributing guide](CONTRIBUTING.md) for details.
208
210
 
211
+ ## Telemetry
212
+
213
+ > **Note:** Telemetry is experimental and off by default. It only runs when
214
+ > enabled with `AGENTS_CLI_EXPERIMENTS='{"cli_telemetry": true}'`.
215
+
216
+ `agents-cli` can emit a single usage signal per command invocation to help
217
+ improve the tool and better understand how it's used. Each signal
218
+ is a structured log entry written to **your own Google Cloud project**:
219
+ `GOOGLE_CLOUD_PROJECT`, or else the default project of your Application Default
220
+ Credentials (`logName=projects/<project>/logs/agents-cli`), where you can query
221
+ it in Cloud Logging. It records only the metadata such as command name
222
+ (e.g. `deploy`, `scaffold.create`), exit code, error class, duration (measured
223
+ from command dispatch to exit, so it excludes CLI startup), CLI/Python versions,
224
+ and OS — never file contents, arguments, or other input. Commands added by
225
+ extensions are recorded without their names.
226
+
227
+ The request that writes the entry also carries usage metadata in its
228
+ `User-Agent` and `X-Goog-Api-Client` headers, which Google receives for
229
+ agents-cli usage analytics: the CLI and Python versions, the OS and its release,
230
+ the CPU architecture, the command name and a random per-invocation ID. The log
231
+ entry's contents, such as the exit code, error class and duration, stay in your
232
+ project.
233
+
234
+ To opt out of sending telemetry, use one of the following environment variables:
235
+
236
+ ```bash
237
+ # our cli-specific variable
238
+ # 0, false, no, or off (case-insensitive):
239
+ export AGENTS_CLI_TELEMETRY=0
240
+
241
+ # donottrack.sh standard variable
242
+ export DO_NOT_TRACK=1
243
+ ```
244
+
245
+ Use `agents-cli info` to see the current telemetry state.
246
+
209
247
  ## Terms of Service
210
248
 
211
249
  `agents-cli` leverages Google Cloud APIs. When you deploy agents, you'll be deploying resources in your own Google Cloud project and will be responsible for those resources. Please review the [Google Cloud Service Terms](https://cloud.google.com/terms/service-terms) for details.
@@ -116,6 +116,8 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
116
116
 
117
117
  </details>
118
118
 
119
+
120
+
119
121
  ## How it works
120
122
 
121
123
  <div align="center">
@@ -165,6 +167,42 @@ The best way to contribute is through feedback: bug reports, feature requests, a
165
167
 
166
168
  See the [contributing guide](CONTRIBUTING.md) for details.
167
169
 
170
+ ## Telemetry
171
+
172
+ > **Note:** Telemetry is experimental and off by default. It only runs when
173
+ > enabled with `AGENTS_CLI_EXPERIMENTS='{"cli_telemetry": true}'`.
174
+
175
+ `agents-cli` can emit a single usage signal per command invocation to help
176
+ improve the tool and better understand how it's used. Each signal
177
+ is a structured log entry written to **your own Google Cloud project**:
178
+ `GOOGLE_CLOUD_PROJECT`, or else the default project of your Application Default
179
+ Credentials (`logName=projects/<project>/logs/agents-cli`), where you can query
180
+ it in Cloud Logging. It records only the metadata such as command name
181
+ (e.g. `deploy`, `scaffold.create`), exit code, error class, duration (measured
182
+ from command dispatch to exit, so it excludes CLI startup), CLI/Python versions,
183
+ and OS — never file contents, arguments, or other input. Commands added by
184
+ extensions are recorded without their names.
185
+
186
+ The request that writes the entry also carries usage metadata in its
187
+ `User-Agent` and `X-Goog-Api-Client` headers, which Google receives for
188
+ agents-cli usage analytics: the CLI and Python versions, the OS and its release,
189
+ the CPU architecture, the command name and a random per-invocation ID. The log
190
+ entry's contents, such as the exit code, error class and duration, stay in your
191
+ project.
192
+
193
+ To opt out of sending telemetry, use one of the following environment variables:
194
+
195
+ ```bash
196
+ # our cli-specific variable
197
+ # 0, false, no, or off (case-insensitive):
198
+ export AGENTS_CLI_TELEMETRY=0
199
+
200
+ # donottrack.sh standard variable
201
+ export DO_NOT_TRACK=1
202
+ ```
203
+
204
+ Use `agents-cli info` to see the current telemetry state.
205
+
168
206
  ## Terms of Service
169
207
 
170
208
  `agents-cli` leverages Google Cloud APIs. When you deploy agents, you'll be deploying resources in your own Google Cloud project and will be responsible for those resources. Please review the [Google Cloud Service Terms](https://cloud.google.com/terms/service-terms) for details.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "google-agents-cli"
3
- version = "1.7.0"
3
+ version = "1.8.0"
4
4
  description = "Agents CLI — Agent Development Lifecycle toolchain for ADK"
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
@@ -101,6 +101,9 @@ include = [
101
101
  "tools/**/*.py",
102
102
  # First-party extensions ship real code; lint them like the rest.
103
103
  "extensions/**/*.py",
104
+ # The lift report builder and the eval tools.
105
+ "evals/report/**/*.py",
106
+ "evals/tools/**/*.py",
104
107
  ]
105
108
  exclude = [
106
109
  "src/google/agents/cli/scaffold/agents",
@@ -24,6 +24,20 @@ import click
24
24
 
25
25
  from google.agents.cli._experiments import resolve_experiment
26
26
 
27
+ # Key under which the dispatched subcommand chain is recorded on ``ctx.meta``
28
+ # (root -> leaf, e.g. ``["scaffold", "create"]``). ``ctx.meta`` is shared across
29
+ # the whole context tree, so every level appends to the same list and any
30
+ # context can read the full path. Consumed by ``_telemetry``.
31
+ COMMAND_PATH_META_KEY = "agents_cli.command_path"
32
+ # Set on ``ctx.meta`` once the resolved leaf command actually runs, so a help
33
+ # view (``--help``, or a group given no subcommand) can be told apart from a
34
+ # run. Consumed by ``_telemetry``.
35
+ COMMAND_INVOKED_META_KEY = "agents_cli.command_invoked"
36
+ # Marks a recorded path segment that an extension serves: ``generate~ext`` for
37
+ # an overridden built-in. A command an extension adds is recorded as the bare
38
+ # marker, never by name, since the extension author chose that name.
39
+ EXTENSION_PATH_MARKER = "~ext"
40
+
27
41
 
28
42
  class LazyGroup(click.Group):
29
43
  """Click group that defers importing subcommand modules until needed.
@@ -104,6 +118,33 @@ class LazyGroup(click.Group):
104
118
  self.commands[cmd_name] = cmd
105
119
  return super().get_command(ctx, cmd_name)
106
120
 
121
+ def resolve_command(
122
+ self, ctx: click.Context, args: list[str]
123
+ ) -> tuple[str | None, click.Command | None, list[str]]:
124
+ cmd_name, cmd, rest = super().resolve_command(ctx, args)
125
+ if cmd_name is not None and cmd is not None:
126
+ # Record the dispatched command chain on ctx.meta as Click resolves
127
+ # each level, so we can avoid parsing arguments later. Recorded here
128
+ # rather than in get_command, which also runs for lookups that
129
+ # aren't dispatch (e.g. listing commands for shell completion).
130
+ ctx.meta.setdefault(COMMAND_PATH_META_KEY, []).append(
131
+ self._path_segment(cmd_name)
132
+ )
133
+ _flag_invocation(cmd)
134
+ return cmd_name, cmd, rest
135
+
136
+ def _path_segment(self, cmd_name: str) -> str:
137
+ """The recorded path segment for a dispatched ``cmd_name``.
138
+
139
+ Overrides only apply to built-ins and added commands never share a
140
+ built-in's name, so an extension-served built-in name is an override.
141
+ """
142
+ if cmd_name not in self._overrides:
143
+ return cmd_name
144
+ if cmd_name in self._lazy_commands or cmd_name in self.commands:
145
+ return f"{cmd_name}{EXTENSION_PATH_MARKER}"
146
+ return EXTENSION_PATH_MARKER
147
+
107
148
  def format_commands(self, ctx: click.Context, formatter: click.HelpFormatter) -> None:
108
149
  rows: list[tuple[str, str]] = []
109
150
  for name in self.list_commands(ctx):
@@ -122,6 +163,30 @@ class LazyGroup(click.Group):
122
163
  formatter.write_dl(rows)
123
164
 
124
165
 
166
+ def _flag_invocation(cmd: Any) -> None:
167
+ """Make a leaf command set ``COMMAND_INVOKED_META_KEY`` when it runs.
168
+
169
+ Click handles ``--help`` while parsing arguments and exits before calling
170
+ ``invoke``, so the flag stays unset for help views. Groups only dispatch,
171
+ so they are left alone.
172
+
173
+ This wraps ``invoke`` on the command object itself, which is shared for the
174
+ whole process, the same way ``patch_source_in_help`` wraps
175
+ ``format_epilog``. The ``_invocation_flagged`` marker keeps it idempotent.
176
+ """
177
+ if isinstance(cmd, click.Group) or getattr(cmd, "_invocation_flagged", False):
178
+ return
179
+
180
+ original = cmd.invoke
181
+
182
+ def _invoke(ctx: click.Context) -> Any:
183
+ ctx.meta[COMMAND_INVOKED_META_KEY] = True
184
+ return original(ctx)
185
+
186
+ cmd.invoke = _invoke
187
+ cmd._invocation_flagged = True
188
+
189
+
125
190
  def _source_path(cmd: Any) -> str | None:
126
191
  """Resolve the absolute file path of a command's callback module."""
127
192
  cb = cmd.callback
@@ -28,9 +28,30 @@ class Experiment(NamedTuple):
28
28
  _REGISTRY: dict[str, Experiment] = {
29
29
  # Hides the `build` command until Go (compiled-language) support launches.
30
30
  "build_command": Experiment("build_command", bool, True),
31
+ # Gates CLI usage telemetry (see _telemetry.py). Off by default
32
+ # during validation. Users can opt out via DO_NOT_TRACK / AGENTS_CLI_TELEMETRY.
33
+ "cli_telemetry": Experiment("cli_telemetry", bool, False),
31
34
  }
32
35
 
33
36
 
37
+ # String spellings accepted for boolean experiments, e.g. '{"x": "false"}'.
38
+ # bool("false") is True, so strings can't go through the plain type cast.
39
+ _TRUE_STRINGS = frozenset({"1", "true", "yes", "on"})
40
+ _FALSE_STRINGS = frozenset({"0", "false", "no", "off"})
41
+
42
+
43
+ def _cast(exp: Experiment, val: Any) -> Any:
44
+ """Cast an override value to the experiment's type."""
45
+ if exp.value_type is bool and isinstance(val, str):
46
+ normalized = val.strip().lower()
47
+ if normalized in _TRUE_STRINGS:
48
+ return True
49
+ if normalized in _FALSE_STRINGS:
50
+ return False
51
+ raise ValueError(f"expected true/false, 1/0, yes/no or on/off, got {val!r}")
52
+ return exp.value_type(val)
53
+
54
+
34
55
  def resolve_experiment(label: str) -> Any:
35
56
  """Returns the value for the given experiment label."""
36
57
  if label not in _REGISTRY:
@@ -45,8 +66,7 @@ def resolve_experiment(label: str) -> Any:
45
66
  overrides = json.loads(env_val)
46
67
  if label in overrides:
47
68
  val = overrides[label]
48
- # Cast to correct type if necessary
49
- return exp.value_type(val)
69
+ return _cast(exp, val)
50
70
  except Exception as e:
51
71
  logging.warning(
52
72
  f"Failed to apply AGENTS_CLI_EXPERIMENTS override for '{label}', "
@@ -16,15 +16,11 @@
16
16
 
17
17
  import json
18
18
  import sys
19
- from enum import IntEnum
20
19
  from typing import Any
21
20
 
21
+ import click
22
22
  from rich.console import Console as _RichConsole # noqa: TID251
23
-
24
-
25
- class ExitCode(IntEnum):
26
- OK = 0
27
- ERROR = 1
23
+ from rich.markup import escape
28
24
 
29
25
 
30
26
  class Console(_RichConsole):
@@ -40,7 +36,19 @@ def emit(data: dict) -> None:
40
36
  print(json.dumps(data), file=sys.stdout)
41
37
 
42
38
 
43
- def emit_error(msg: str, code: int = ExitCode.ERROR) -> None:
44
- """Write error message to stderr and exit."""
45
- print(json.dumps({"error": msg}), file=sys.stderr)
46
- raise SystemExit(code)
39
+ def print_error(message: str) -> None:
40
+ """Print an error message to stderr with a red "❌ Error:" prefix."""
41
+ # escape() so text like "[cyan]" or "[0]" in the message is shown as-is.
42
+ Console(stderr=True, highlight=False).print(
43
+ f"[bold red]❌ Error:[/bold red] {escape(message)}"
44
+ )
45
+
46
+
47
+ def print_click_exception(e: click.ClickException) -> None:
48
+ """Show a ClickException like Click does, but with a red "❌ Error:" prefix."""
49
+ if isinstance(e, click.UsageError) and e.ctx is not None:
50
+ hint = ""
51
+ if e.ctx.command.get_help_option(e.ctx) is not None:
52
+ hint = f"Try '{e.ctx.command_path} {e.ctx.help_option_names[0]}' for help.\n"
53
+ click.echo(f"{e.ctx.get_usage()}\n{hint}", err=True, color=e.ctx.color)
54
+ print_error(e.format_message())