google-agents-cli 1.9.0__tar.gz → 1.11.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.
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/PKG-INFO +10 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/README.md +8 -8
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/pyproject.toml +6 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_agent_platform.py +3 -3
- google_agents_cli-1.11.0/src/google/agents/cli/_agent_platform_types.py +23 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_click.py +13 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_experiments.py +4 -0
- google_agents_cli-1.11.0/src/google/agents/cli/_fs.py +95 -0
- google_agents_cli-1.11.0/src/google/agents/cli/_git.py +41 -0
- google_agents_cli-1.11.0/src/google/agents/cli/_output.py +167 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_project.py +57 -25
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_remote.py +20 -7
- google_agents_cli-1.11.0/src/google/agents/cli/_sdk_compat.py +152 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_skills_check.py +35 -7
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_telemetry.py +3 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_tools.py +58 -3
- google_agents_cli-1.11.0/src/google/agents/cli/_uv_index.py +326 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/auth.py +32 -13
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/data/_recipe.py +2 -2
- google_agents_cli-1.11.0/src/google/agents/cli/deploy/_build_logs.py +169 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/_cloud_validation.py +8 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/_operation.py +23 -12
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/_utils.py +55 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/agent_runtime.py +237 -140
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/cloud_run.py +41 -16
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/cmd_deploy.py +102 -27
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/gke.py +6 -6
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/dev/cmd_install.py +18 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/dev/cmd_lint.py +14 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/dev/cmd_playground.py +4 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/_synthesize_runner.py +6 -7
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_analyze.py +5 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_dataset.py +8 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_eval_group.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_generate.py +5 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_grade.py +15 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_metric.py +2 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_optimize.py +6 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_run.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_submit.py +9 -7
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/eval_utils.py +22 -28
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/optimize_utils.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_loader.py +22 -13
- google_agents_cli-1.11.0/src/google/agents/cli/extension/_manifest.py +227 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_refs.py +32 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_resolver.py +89 -25
- google_agents_cli-1.11.0/src/google/agents/cli/extension/_skills.py +530 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_spec.py +90 -0
- google_agents_cli-1.11.0/src/google/agents/cli/extension/_sync.py +407 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/cmd_extension_add.py +123 -15
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/cmd_extension_group.py +3 -3
- google_agents_cli-1.11.0/src/google/agents/cli/extension/cmd_extension_remove.py +223 -0
- google_agents_cli-1.11.0/src/google/agents/cli/extension/cmd_extension_update.py +615 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/info/cmd_info.py +34 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/_cicd_utils.py +3 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/cmd_cicd.py +30 -18
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/main.py +20 -5
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/publish/cmd_publish.py +139 -129
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/publish/cmd_publish_group.py +8 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/run/_local_server.py +22 -9
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/run/cmd_run.py +50 -23
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/.template/templateconfig.yaml +3 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/agent.py +4 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/a2a.py +4 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/reasoning_engine_adapter.py +6 -6
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/app_utils/services.py +18 -5
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/fast_api_app.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/datasets/README.md +1 -1
- {google_agents_cli-1.9.0/src/google/agents/cli/scaffold/agents/adk_go → google_agents_cli-1.11.0/src/google/agents/cli/scaffold/agents/adk/tests}/eval/eval_config.yaml +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/response_quality.py +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/Dockerfile +3 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/Makefile +7 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/README.md +3 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/app/agent.go +1 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/app/agent_test.go +4 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/appurl.go +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/integration/server_e2e_test.go +14 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/datasets/README.md +1 -1
- {google_agents_cli-1.9.0/src/google/agents/cli/scaffold/agents/adk/tests → google_agents_cli-1.11.0/src/google/agents/cli/scaffold/agents/adk_go}/eval/eval_config.yaml +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/response_quality.py +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/main.go +8 -3
- google_agents_cli-1.11.0/src/google/agents/cli/scaffold/agents/adk_go/sessions/backends.go +31 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/sessions/sessions.go +92 -62
- google_agents_cli-1.11.0/src/google/agents/cli/scaffold/agents/adk_go/sessions/sessions_test.go +54 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/Makefile +7 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/README.md +3 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/README.md +2 -2
- google_agents_cli-1.11.0/src/google/agents/cli/scaffold/base_templates/_shared/agents-cli-manifest.yaml +23 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/build_triggers.tf +4 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/github.tf +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/iam.tf +28 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/outputs.tf +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/service_accounts.tf +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/variables.tf +20 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/iam.tf +20 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/outputs.tf +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/variables.tf +20 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/deploy-to-prod.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/pr_checks.yaml +16 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.cloudbuild/staging.yaml +21 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.env +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.env.example +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/deploy-to-prod.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/staging.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.env.example +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/deploy-to-prod.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/staging.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.env +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.env.example +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/deploy-to-prod.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/staging.yaml +2 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/README.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/pyproject.toml +6 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.env.example +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/commands/create.py +189 -115
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/commands/enhance.py +144 -45
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/commands/upgrade.py +99 -23
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/cicd/service.tf +6 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/single-project/service.tf +6 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/integration/test_server_e2e.py +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/load_test.py +1 -1
- {google_agents_cli-1.9.0/src/google/agents/cli/scaffold/deployment_targets/none → google_agents_cli-1.11.0/src/google/agents/cli/scaffold/deployment_targets/cloud_run}/python/tests/integration/test_server_e2e.py +16 -10
- {google_agents_cli-1.9.0/src/google/agents/cli/scaffold/deployment_targets/cloud_run → google_agents_cli-1.11.0/src/google/agents/cli/scaffold/deployment_targets/gke}/python/tests/integration/test_server_e2e.py +16 -10
- {google_agents_cli-1.9.0/src/google/agents/cli/scaffold/deployment_targets/gke → google_agents_cli-1.11.0/src/google/agents/cli/scaffold/deployment_targets/none}/python/tests/integration/test_server_e2e.py +16 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-agent_runtime.lock +524 -434
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-cloud_run.lock +586 -495
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/resources/locks/uv-adk-gke.lock +586 -495
- google_agents_cli-1.11.0/src/google/agents/cli/scaffold/utils/adk_shortcut.py +140 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/backup.py +2 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/cli_options.py +14 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/copy_files.py +19 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/fs.py +46 -8
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/gcp.py +21 -19
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/generation_metadata.py +28 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/language.py +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/logging.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/merge.py +60 -56
- google_agents_cli-1.11.0/src/google/agents/cli/scaffold/utils/remote_template.py +823 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/template.py +113 -34
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/upgrade.py +90 -33
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/setup/_antigravity.py +5 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/setup/cmd_setup.py +14 -16
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/setup/cmd_update.py +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/_bundle.py +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/README.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/SKILL.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-go.md +6 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python-live.md +12 -12
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python.md +9 -9
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/samples.md +16 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/SKILL.md +18 -16
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/agent-runtime.md +10 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/cloud-run.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/cmek.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/gke.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/testing-deployed-agents.md +4 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/SKILL.md +8 -8
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/advanced-commands.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/dataset_schema.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/live-eval.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/metrics-guide.md +4 -4
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/user-simulation.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/SKILL.md +3 -3
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/bigquery-agent-analytics.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/cloud-trace-and-logging.md +1 -1
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-publish/SKILL.md +38 -36
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-scaffold/SKILL.md +8 -8
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-scaffold/references/flags.md +6 -6
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/SKILL.md +11 -10
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/commands.md +2 -2
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/extension.md +12 -8
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/internals.md +2 -2
- google_agents_cli-1.11.0/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/terminology.md +13 -0
- google_agents_cli-1.9.0/src/google/agents/cli/_agent_platform_types.py +0 -31
- google_agents_cli-1.9.0/src/google/agents/cli/_output.py +0 -54
- google_agents_cli-1.9.0/src/google/agents/cli/deploy/_agent_engines.py +0 -68
- google_agents_cli-1.9.0/src/google/agents/cli/extension/_manifest.py +0 -137
- google_agents_cli-1.9.0/src/google/agents/cli/extension/_sync.py +0 -102
- google_agents_cli-1.9.0/src/google/agents/cli/extension/cmd_extension_remove.py +0 -63
- google_agents_cli-1.9.0/src/google/agents/cli/extension/cmd_extension_update.py +0 -147
- google_agents_cli-1.9.0/src/google/agents/cli/scaffold/base_templates/_shared/agents-cli-manifest.yaml +0 -21
- google_agents_cli-1.9.0/src/google/agents/cli/scaffold/utils/remote_template.py +0 -735
- google_agents_cli-1.9.0/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/terminology.md +0 -12
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/LICENSE +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_adk_client.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_defaults.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_gcp_project.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_modes.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_runner.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_telemetry_worker.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_trust.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/data/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/data/cmd_data_ingestion.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/deploy/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/dev/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/dev/cmd_build.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/_events.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/_live.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/_paths.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/eval/cmd_compare.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_compat.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_overrides.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_paths.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_schema.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/_trust.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/extension/cmd_extension_list.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/info/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/_terraform.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/cmd_datastore.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/cmd_infra.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/cmd_infra_show.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/infra/cmd_infra_single_project.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/publish/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/run/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/run/_a2a_pinning.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/run/_multimodal.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/app/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/tests/eval/datasets/basic-dataset.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk/tests/integration/test_agent.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/appinfo/appinfo.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/appinfo/appinfo_test.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/apploader.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/e2e/load_test/load_test.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/eval/datasets/basic-dataset.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/go.mod +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/go.sum +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/observability.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/observability_test.go +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_go/{{cookiecutter.agent_guidance_filename}} +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/.cloudbuild/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/.github/workflows/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/Dockerfile +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/pom.xml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/main/java/{{cookiecutter.java_package_path}}/Agent.java +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/main/java/{{cookiecutter.java_package_path}}/Main.java +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/integration/ServerE2ETest.java +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/LoadTest.java +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/e2e/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/src/test/java/{{cookiecutter.java_package_path}}/unit/AgentTest.java +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_java/{{cookiecutter.agent_guidance_filename}} +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/.cloudbuild/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/.github/workflows/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/Dockerfile +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/Makefile +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/app/agent.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/package-lock.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/package.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/integration/agent.test.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/integration/server_e2e.test.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/load_test/load_test.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/adk_ts/tests/unit/dummy.test.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/empty_go/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/empty_java/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/empty_py/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/agents/empty_ts/.template/templateconfig.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/apis.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/locals.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/providers.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/storage.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/vars/env.tfvars +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/cicd/wif.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/apis.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/providers.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/storage.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/_shared/deployment/terraform/single-project/vars/env.tfvars +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.gcloudignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.github/workflows/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.gitignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/.golangci.yml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/cicd/telemetry.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/cicd/telemetry_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/shared/completions.sql +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/shared/genai_logs_schema.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/single-project/telemetry.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/go/deployment/terraform/single-project/telemetry_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.cloudbuild/deploy-to-prod.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.cloudbuild/staging.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.gcloudignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.github/workflows/deploy-to-prod.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.github/workflows/staging.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/.gitignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/java/src/main/resources/application.properties +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.cloudbuild/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.gcloudignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.github/workflows/pr_checks.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/.gitignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/Dockerfile +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/cicd/telemetry.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/cicd/telemetry_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/shared/completions.sql +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/shared/genai_logs_schema.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/single-project/telemetry.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/deployment/terraform/single-project/telemetry_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/tests/unit/test_dummy.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/python/{{cookiecutter.agent_guidance_filename}} +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.cloudbuild/deploy-to-prod.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.cloudbuild/staging.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.dockerignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.gcloudignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.github/workflows/deploy-to-prod.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.github/workflows/staging.yaml +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/.gitignore +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/eslint.config.mjs +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/tsconfig.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/base_templates/typescript/vitest.config.ts +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/cmd_scaffold_group.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/commands/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/shared/dummy_source.b64 +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/_shared/deployment_metadata.json +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/agent_runtime/python/tests/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/cicd/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/single-project/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/go/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/cicd/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/single-project/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/java/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/cicd/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/single-project/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/python/tests/load_test/load_test.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/cicd/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/single-project/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/cloud_run/typescript/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/cicd/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/cicd/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/single-project/service.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/_shared/deployment/terraform/single-project/service_outputs.tf +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/gke/python/tests/load_test/load_test.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/.results/.placeholder +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/README.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/deployment_targets/none/python/tests/load_test/load_test.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/command.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/generate_locks.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/lock_utils.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/symlinks.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/scaffold/utils/version.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/setup/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/setup/cmd_auth.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/__init__.py +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-go-workflows.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-adk-code/references/adk-python-workflows.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/batch-inference.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/cicd-pipeline.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-deploy/references/terraform-patterns.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/builtin-tools-eval.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-eval/references/multimodal-eval.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/adk-docs.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-observability/references/feedback-mechanism.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/brainstorming.md +0 -0
- {google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/skills/data/google-agents-cli-workflow/references/spec-template.md +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: google-agents-cli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.11.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
|
|
@@ -13,7 +13,7 @@ Requires-Dist: click>=8.1.8,<9
|
|
|
13
13
|
Requires-Dist: PyYAML>=6.0.2,<7
|
|
14
14
|
Requires-Dist: cookiecutter>=2.6.0,<3
|
|
15
15
|
Requires-Dist: jinja2>=3.1.0
|
|
16
|
-
Requires-Dist: google-cloud-aiplatform[evaluation]>=
|
|
16
|
+
Requires-Dist: google-cloud-aiplatform[evaluation]>=2.2.0,<3
|
|
17
17
|
Requires-Dist: google-cloud-resource-manager>=1.12.0
|
|
18
18
|
Requires-Dist: google-auth[pyopenssl]>=2.47.0
|
|
19
19
|
Requires-Dist: pyopenssl<26.2
|
|
@@ -42,7 +42,7 @@ Provides-Extra: lint
|
|
|
42
42
|
<div align="center">
|
|
43
43
|
<img src="https://raw.githubusercontent.com/google/agents-cli/main/docs/src/assets/logo_sm.png" alt="agents-cli logo" width="120" />
|
|
44
44
|
<h1><code>agents-cli</code></h1>
|
|
45
|
-
<p>The CLI and skills for building agents on Gemini
|
|
45
|
+
<p>The CLI and skills for building agents on Gemini platform.</p>
|
|
46
46
|
|
|
47
47
|
<p>
|
|
48
48
|
<a href="#get-started">Get Started</a> |
|
|
@@ -60,7 +60,7 @@ Provides-Extra: lint
|
|
|
60
60
|
|
|
61
61
|
Turn your favorite coding assistant into an expert at building and deploying agents on Google Cloud.
|
|
62
62
|
|
|
63
|
-
**Agents CLI in
|
|
63
|
+
**Agents CLI in Gemini platform** (`agents-cli`) gives your coding agent the skills and commands to build, scale, govern, and optimize enterprise-grade agents — so you don't have to learn every CLI and service yourself.
|
|
64
64
|
|
|
65
65
|
**Works seamlessly with:**
|
|
66
66
|
[Antigravity CLI](https://antigravity.google/) • [Claude Code](https://docs.anthropic.com/en/docs/claude-code) • [Codex](https://github.com/openai/codex) • *and any other coding agent.*
|
|
@@ -106,8 +106,8 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
106
106
|
| `google-agents-cli-adk-code` | ADK Python API — agents, tools, orchestration, callbacks, state |
|
|
107
107
|
| `google-agents-cli-scaffold` | Project scaffolding — `create`, `enhance`, `upgrade` |
|
|
108
108
|
| `google-agents-cli-eval` | Evaluation methodology — metrics, datasets, LLM-as-judge, adaptive rubrics |
|
|
109
|
-
| `google-agents-cli-deploy` | Deployment — [Agent Runtime](https://docs.cloud.google.com/gemini-enterprise-agent-platform/scale), [Cloud Run](https://cloud.google.com/run), [GKE](https://cloud.google.com/kubernetes-engine), CI/CD, secrets |
|
|
110
|
-
| `google-agents-cli-publish` | Gemini
|
|
109
|
+
| `google-agents-cli-deploy` | Deployment — [Agent Runtime in Gemini platform](https://docs.cloud.google.com/gemini-enterprise-agent-platform/scale), [Cloud Run](https://cloud.google.com/run), [GKE](https://cloud.google.com/kubernetes-engine), CI/CD, secrets |
|
|
110
|
+
| `google-agents-cli-publish` | Gemini registration |
|
|
111
111
|
| `google-agents-cli-observability` | Observability — Cloud Trace, logging, third-party integrations |
|
|
112
112
|
|
|
113
113
|
---
|
|
@@ -117,10 +117,10 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
117
117
|
| Command | What it does |
|
|
118
118
|
|---------|-------------|
|
|
119
119
|
| `agents-cli setup` | Install CLI + skills to coding agents |
|
|
120
|
-
| `agents-cli create <name
|
|
120
|
+
| `agents-cli create <name> -y` | Create a new agent project with defaults (`adk` template, `agent_runtime` target) |
|
|
121
121
|
| `agents-cli eval run` | Run the agent over the eval dataset and grade the traces |
|
|
122
122
|
| `agents-cli deploy` | Deploy to Google Cloud |
|
|
123
|
-
| `agents-cli publish gemini
|
|
123
|
+
| `agents-cli publish gemini` | Register with Gemini |
|
|
124
124
|
|
|
125
125
|
<details>
|
|
126
126
|
<summary>See all commands</summary>
|
|
@@ -130,7 +130,7 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
130
130
|
| `agents-cli login` | Authenticate with Google Cloud or AI Studio |
|
|
131
131
|
| `agents-cli login --status` | Show authentication status |
|
|
132
132
|
| **Scaffold** | |
|
|
133
|
-
| `agents-cli create <name
|
|
133
|
+
| `agents-cli create <name> -y` | Create a new agent project with defaults (`adk` template, `agent_runtime` target) |
|
|
134
134
|
| `agents-cli scaffold enhance` | Add deployment or CI/CD to an existing project |
|
|
135
135
|
| `agents-cli scaffold upgrade` | Upgrade project to a newer agents-cli version |
|
|
136
136
|
| **Develop** | |
|
|
@@ -148,7 +148,7 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
148
148
|
| `agents-cli eval optimize` | Auto-tune agent prompts using eval data |
|
|
149
149
|
| **Deploy & Publish** | |
|
|
150
150
|
| `agents-cli deploy` | Deploy to Google Cloud |
|
|
151
|
-
| `agents-cli publish gemini
|
|
151
|
+
| `agents-cli publish gemini` | Register with Gemini |
|
|
152
152
|
| `agents-cli infra single-project` | Provision single-project infrastructure |
|
|
153
153
|
| `agents-cli infra cicd` | Set up CI/CD pipeline + staging/prod infrastructure |
|
|
154
154
|
| **Other** | |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<img src="https://raw.githubusercontent.com/google/agents-cli/main/docs/src/assets/logo_sm.png" alt="agents-cli logo" width="120" />
|
|
3
3
|
<h1><code>agents-cli</code></h1>
|
|
4
|
-
<p>The CLI and skills for building agents on Gemini
|
|
4
|
+
<p>The CLI and skills for building agents on Gemini platform.</p>
|
|
5
5
|
|
|
6
6
|
<p>
|
|
7
7
|
<a href="#get-started">Get Started</a> |
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
Turn your favorite coding assistant into an expert at building and deploying agents on Google Cloud.
|
|
21
21
|
|
|
22
|
-
**Agents CLI in
|
|
22
|
+
**Agents CLI in Gemini platform** (`agents-cli`) gives your coding agent the skills and commands to build, scale, govern, and optimize enterprise-grade agents — so you don't have to learn every CLI and service yourself.
|
|
23
23
|
|
|
24
24
|
**Works seamlessly with:**
|
|
25
25
|
[Antigravity CLI](https://antigravity.google/) • [Claude Code](https://docs.anthropic.com/en/docs/claude-code) • [Codex](https://github.com/openai/codex) • *and any other coding agent.*
|
|
@@ -65,8 +65,8 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
65
65
|
| `google-agents-cli-adk-code` | ADK Python API — agents, tools, orchestration, callbacks, state |
|
|
66
66
|
| `google-agents-cli-scaffold` | Project scaffolding — `create`, `enhance`, `upgrade` |
|
|
67
67
|
| `google-agents-cli-eval` | Evaluation methodology — metrics, datasets, LLM-as-judge, adaptive rubrics |
|
|
68
|
-
| `google-agents-cli-deploy` | Deployment — [Agent Runtime](https://docs.cloud.google.com/gemini-enterprise-agent-platform/scale), [Cloud Run](https://cloud.google.com/run), [GKE](https://cloud.google.com/kubernetes-engine), CI/CD, secrets |
|
|
69
|
-
| `google-agents-cli-publish` | Gemini
|
|
68
|
+
| `google-agents-cli-deploy` | Deployment — [Agent Runtime in Gemini platform](https://docs.cloud.google.com/gemini-enterprise-agent-platform/scale), [Cloud Run](https://cloud.google.com/run), [GKE](https://cloud.google.com/kubernetes-engine), CI/CD, secrets |
|
|
69
|
+
| `google-agents-cli-publish` | Gemini registration |
|
|
70
70
|
| `google-agents-cli-observability` | Observability — Cloud Trace, logging, third-party integrations |
|
|
71
71
|
|
|
72
72
|
---
|
|
@@ -76,10 +76,10 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
76
76
|
| Command | What it does |
|
|
77
77
|
|---------|-------------|
|
|
78
78
|
| `agents-cli setup` | Install CLI + skills to coding agents |
|
|
79
|
-
| `agents-cli create <name
|
|
79
|
+
| `agents-cli create <name> -y` | Create a new agent project with defaults (`adk` template, `agent_runtime` target) |
|
|
80
80
|
| `agents-cli eval run` | Run the agent over the eval dataset and grade the traces |
|
|
81
81
|
| `agents-cli deploy` | Deploy to Google Cloud |
|
|
82
|
-
| `agents-cli publish gemini
|
|
82
|
+
| `agents-cli publish gemini` | Register with Gemini |
|
|
83
83
|
|
|
84
84
|
<details>
|
|
85
85
|
<summary>See all commands</summary>
|
|
@@ -89,7 +89,7 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
89
89
|
| `agents-cli login` | Authenticate with Google Cloud or AI Studio |
|
|
90
90
|
| `agents-cli login --status` | Show authentication status |
|
|
91
91
|
| **Scaffold** | |
|
|
92
|
-
| `agents-cli create <name
|
|
92
|
+
| `agents-cli create <name> -y` | Create a new agent project with defaults (`adk` template, `agent_runtime` target) |
|
|
93
93
|
| `agents-cli scaffold enhance` | Add deployment or CI/CD to an existing project |
|
|
94
94
|
| `agents-cli scaffold upgrade` | Upgrade project to a newer agents-cli version |
|
|
95
95
|
| **Develop** | |
|
|
@@ -107,7 +107,7 @@ See the [full tutorial](https://google.github.io/agents-cli/guide/quickstart-tut
|
|
|
107
107
|
| `agents-cli eval optimize` | Auto-tune agent prompts using eval data |
|
|
108
108
|
| **Deploy & Publish** | |
|
|
109
109
|
| `agents-cli deploy` | Deploy to Google Cloud |
|
|
110
|
-
| `agents-cli publish gemini
|
|
110
|
+
| `agents-cli publish gemini` | Register with Gemini |
|
|
111
111
|
| `agents-cli infra single-project` | Provision single-project infrastructure |
|
|
112
112
|
| `agents-cli infra cicd` | Set up CI/CD pipeline + staging/prod infrastructure |
|
|
113
113
|
| **Other** | |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "google-agents-cli"
|
|
3
|
-
version = "1.
|
|
3
|
+
version = "1.11.0"
|
|
4
4
|
description = "Agents CLI — Agent Development Lifecycle toolchain for ADK"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -16,7 +16,7 @@ dependencies = [
|
|
|
16
16
|
"PyYAML>=6.0.2,<7",
|
|
17
17
|
"cookiecutter>=2.6.0,<3",
|
|
18
18
|
"jinja2>=3.1.0",
|
|
19
|
-
"google-cloud-aiplatform[evaluation]>=
|
|
19
|
+
"google-cloud-aiplatform[evaluation]>=2.2.0,<3",
|
|
20
20
|
"google-cloud-resource-manager>=1.12.0",
|
|
21
21
|
"google-auth[pyopenssl]>=2.47.0",
|
|
22
22
|
# pyOpenSSL 26.2 forbids mutating a used SSL Context; urllib3 does it per
|
|
@@ -135,11 +135,14 @@ ignore = ["E501", "C901", "RUF001", "UP036", "RUF067", "RUF069"]
|
|
|
135
135
|
|
|
136
136
|
[tool.ruff.lint.per-file-ignores]
|
|
137
137
|
"tests/**/*.py" = ["PLR0917"]
|
|
138
|
+
# The only module allowed to import private Agent Platform SDK modules; keep in
|
|
139
|
+
# sync with ALLOWED_PRIVATE_IMPORT_FILES in tools/ci/check_private_imports.py.
|
|
140
|
+
"src/google/agents/cli/_sdk_compat.py" = ["TID251"]
|
|
138
141
|
|
|
139
142
|
[tool.ruff.lint.flake8-tidy-imports.banned-api]
|
|
140
143
|
"rich.console.Console" = { msg = "Use `google.agents.cli._output.Console` instead to ensure project-wide defaults (soft_wrap=True) are applied." }
|
|
141
144
|
"agentplatform.Client" = { msg = "Use `google.agents.cli._agent_platform.AgentPlatformClient` instead, so the client retries throttled requests." }
|
|
142
|
-
"agentplatform._genai" = { msg = "Private SDK module that can change without notice. Use `types` from `google.agents.cli._agent_platform_types` for SDK types." }
|
|
145
|
+
"agentplatform._genai" = { msg = "Private SDK module that can change without notice. Use `types` from `google.agents.cli._agent_platform_types` for SDK types, and add any other private SDK use to `google.agents.cli._sdk_compat`." }
|
|
143
146
|
|
|
144
147
|
[tool.ruff.lint.pylint]
|
|
145
148
|
max-positional-args = 5
|
{google_agents_cli-1.9.0 → google_agents_cli-1.11.0}/src/google/agents/cli/_agent_platform.py
RENAMED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
"""Shared construction of the
|
|
15
|
+
"""Shared construction of the Gemini platform SDK client."""
|
|
16
16
|
|
|
17
17
|
from __future__ import annotations
|
|
18
18
|
|
|
@@ -21,7 +21,7 @@ from typing import TYPE_CHECKING, Any
|
|
|
21
21
|
if TYPE_CHECKING:
|
|
22
22
|
import agentplatform
|
|
23
23
|
|
|
24
|
-
# Retry options applied to every
|
|
24
|
+
# Retry options applied to every Gemini platform client the CLI builds. Leaving
|
|
25
25
|
# http_status_codes unset keeps the SDK's default retryable set (408/429/500/502/503/504);
|
|
26
26
|
# waits are roughly 1s, 2s, 4s, 8s (full-jittered).
|
|
27
27
|
RETRY_OPTIONS: dict[str, Any] = {
|
|
@@ -31,7 +31,7 @@ RETRY_OPTIONS: dict[str, Any] = {
|
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
class AgentPlatformClient:
|
|
34
|
-
"""
|
|
34
|
+
"""Gemini platform client configured with CLI-wide defaults (e.g. retries on transient errors).
|
|
35
35
|
|
|
36
36
|
Retries are opt-in in the underlying SDK, so constructing ``agentplatform.Client``
|
|
37
37
|
directly runs without them. A ruff rule enforces using this wrapper instead.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Copyright 2026 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""Gemini platform SDK types.
|
|
16
|
+
|
|
17
|
+
Use ``types.EvalCase``, ``types.evals.AgentEvent``, etc. from here rather than
|
|
18
|
+
importing ``agentplatform._genai`` directly. ``_sdk_compat`` resolves them.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
from google.agents.cli._sdk_compat import types
|
|
22
|
+
|
|
23
|
+
__all__ = ["types"]
|
|
@@ -65,6 +65,7 @@ class LazyGroup(click.Group):
|
|
|
65
65
|
# name -> experiment label
|
|
66
66
|
self._experiment_gates: dict[str, str] = {}
|
|
67
67
|
self._overrides: dict[str, click.Command] = {}
|
|
68
|
+
self._hidden: set[str] = set()
|
|
68
69
|
|
|
69
70
|
def add_lazy_command(
|
|
70
71
|
self,
|
|
@@ -72,6 +73,7 @@ class LazyGroup(click.Group):
|
|
|
72
73
|
import_path: str,
|
|
73
74
|
short_help: str,
|
|
74
75
|
experiment: str | None = None,
|
|
76
|
+
hidden: bool = False,
|
|
75
77
|
) -> None:
|
|
76
78
|
"""Register a subcommand for lazy loading.
|
|
77
79
|
|
|
@@ -83,10 +85,20 @@ class LazyGroup(click.Group):
|
|
|
83
85
|
not at this registration call: `main` is built once at import, so
|
|
84
86
|
guarding registration would freeze visibility before a unit test could
|
|
85
87
|
override the experiment.
|
|
88
|
+
|
|
89
|
+
`hidden` keeps a command invocable but out of --help and the docs, e.g.
|
|
90
|
+
an old name kept as an alias after a rename.
|
|
86
91
|
"""
|
|
87
92
|
self._lazy_commands[name] = (import_path, short_help)
|
|
88
93
|
if experiment is not None:
|
|
89
94
|
self._experiment_gates[name] = experiment
|
|
95
|
+
if hidden:
|
|
96
|
+
self._hidden.add(name)
|
|
97
|
+
|
|
98
|
+
@property
|
|
99
|
+
def hidden_commands(self) -> frozenset[str]:
|
|
100
|
+
"""Names registered with `hidden=True`: invocable, but not listed."""
|
|
101
|
+
return frozenset(self._hidden)
|
|
90
102
|
|
|
91
103
|
def _is_visible(self, name: str) -> bool:
|
|
92
104
|
"""True if `name` is not hidden via experiment."""
|
|
@@ -100,7 +112,7 @@ class LazyGroup(click.Group):
|
|
|
100
112
|
set(super().list_commands(ctx))
|
|
101
113
|
| set(self._lazy_commands)
|
|
102
114
|
| set(self._overrides)
|
|
103
|
-
)
|
|
115
|
+
) - self._hidden
|
|
104
116
|
return sorted(filter(self._is_visible, names))
|
|
105
117
|
|
|
106
118
|
def get_command(self, ctx: click.Context, cmd_name: str) -> click.Command | None:
|
|
@@ -28,6 +28,10 @@ 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
|
+
# Gate in-progress ADK language support until each language launches.
|
|
32
|
+
"adk_java": Experiment("adk_java", bool, False),
|
|
33
|
+
"adk_kotlin": Experiment("adk_kotlin", bool, False),
|
|
34
|
+
"adk_typescript": Experiment("adk_typescript", bool, False),
|
|
31
35
|
}
|
|
32
36
|
|
|
33
37
|
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Copyright 2026 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""File system helpers for agents CLI."""
|
|
16
|
+
|
|
17
|
+
from __future__ import annotations
|
|
18
|
+
|
|
19
|
+
import contextlib
|
|
20
|
+
import logging
|
|
21
|
+
import os
|
|
22
|
+
import shutil
|
|
23
|
+
import stat
|
|
24
|
+
from pathlib import Path
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def delete_folder(folder: Path) -> None:
|
|
28
|
+
"""Delete `folder`, even when it holds read-only folders; warn when it cannot."""
|
|
29
|
+
make_folders_writable(folder)
|
|
30
|
+
shutil.rmtree(folder, ignore_errors=True)
|
|
31
|
+
if folder.exists() or folder.is_symlink():
|
|
32
|
+
logging.warning("Could not delete %s; delete it by hand.", folder)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def delete_path(path: Path) -> None:
|
|
36
|
+
"""Delete `path`; unlink a link instead of following it into a folder we do not own.
|
|
37
|
+
|
|
38
|
+
Raises OSError when it cannot delete, unlike `delete_folder`, which only warns.
|
|
39
|
+
"""
|
|
40
|
+
try:
|
|
41
|
+
mode = path.lstat().st_mode
|
|
42
|
+
except (FileNotFoundError, NotADirectoryError):
|
|
43
|
+
return
|
|
44
|
+
if stat.S_ISDIR(mode):
|
|
45
|
+
make_folders_writable(path)
|
|
46
|
+
shutil.rmtree(os.fspath(path))
|
|
47
|
+
else:
|
|
48
|
+
path.unlink()
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def make_folders_writable(root: Path) -> None:
|
|
52
|
+
"""Let ``rmtree`` delete what read-only folders under ``root`` hold.
|
|
53
|
+
|
|
54
|
+
Best effort: a folder it cannot change is left as it is.
|
|
55
|
+
"""
|
|
56
|
+
if root.is_symlink():
|
|
57
|
+
return
|
|
58
|
+
_make_writable(root)
|
|
59
|
+
for folder, subfolders, _ in os.walk(root):
|
|
60
|
+
for name in subfolders:
|
|
61
|
+
subfolder = os.path.join(folder, name)
|
|
62
|
+
# chmod follows links, so a linked folder is skipped to keep the change
|
|
63
|
+
# inside `root` (CWE-59). Each one is changed before os.walk lists it.
|
|
64
|
+
if not os.path.islink(subfolder):
|
|
65
|
+
_make_writable(subfolder)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def _make_writable(folder: str | Path) -> None:
|
|
69
|
+
with contextlib.suppress(OSError):
|
|
70
|
+
os.chmod(folder, stat.S_IRWXU)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def is_real_dir(path: Path) -> bool:
|
|
74
|
+
"""Whether `path` is a folder and not a link: a committed link can lead anywhere.
|
|
75
|
+
|
|
76
|
+
Uses `os.path`: before Python 3.14, `Path.is_dir` and `Path.is_symlink` raise
|
|
77
|
+
PermissionError under a folder that cannot be searched.
|
|
78
|
+
"""
|
|
79
|
+
return not os.path.islink(path) and os.path.isdir(path)
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
def first_copy_error(error: OSError) -> str:
|
|
83
|
+
"""The reason of the first failed file, instead of copytree's list of all of them."""
|
|
84
|
+
# copytree collects every failed file into one shutil.Error holding a list of
|
|
85
|
+
# (source, target, reason) tuples.
|
|
86
|
+
if isinstance(error, shutil.Error) and error.args:
|
|
87
|
+
failures = error.args[0]
|
|
88
|
+
if (
|
|
89
|
+
isinstance(failures, list)
|
|
90
|
+
and failures
|
|
91
|
+
and isinstance(failures[0], tuple)
|
|
92
|
+
and len(failures[0]) == 3
|
|
93
|
+
):
|
|
94
|
+
return str(failures[0][2])
|
|
95
|
+
return str(error)
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Copyright 2026 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""Checks for values passed to git as arguments.
|
|
16
|
+
|
|
17
|
+
A value read from a project file or typed by the user can reach git as an
|
|
18
|
+
option (e.g. ``--upload-pack=<cmd>``, which runs a command). Callers check
|
|
19
|
+
values with these before building a git command, and also put ``--`` before
|
|
20
|
+
positional arguments where the git subcommand accepts it.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
import re
|
|
24
|
+
|
|
25
|
+
# Only a full 40-char SHA is unambiguous. A short/partial hex string could
|
|
26
|
+
# instead be a branch or tag named like hex (e.g. "cafe123").
|
|
27
|
+
_COMMIT_SHA_RE = re.compile(r"[0-9a-f]{40}")
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def is_commit_sha(value: str) -> bool:
|
|
31
|
+
"""True for a full 40-char lowercase hex commit SHA."""
|
|
32
|
+
# fullmatch, not match with "$": "$" also matches before a trailing newline.
|
|
33
|
+
return bool(_COMMIT_SHA_RE.fullmatch(value))
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def is_option_like(value: str) -> bool:
|
|
37
|
+
"""True when git would read ``value`` as an option rather than an operand.
|
|
38
|
+
|
|
39
|
+
No valid git ref name starts with "-".
|
|
40
|
+
"""
|
|
41
|
+
return value.startswith("-")
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
# Copyright 2026 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""Output helpers for agents CLI."""
|
|
16
|
+
|
|
17
|
+
import json
|
|
18
|
+
import logging
|
|
19
|
+
import sys
|
|
20
|
+
from typing import Any
|
|
21
|
+
|
|
22
|
+
import click
|
|
23
|
+
from rich.console import Console as _RichConsole # noqa: TID251
|
|
24
|
+
from rich.markup import escape
|
|
25
|
+
|
|
26
|
+
_OWN_LOGGER_NAME = "google.agents.cli"
|
|
27
|
+
_PLAIN_FORMATTER = logging.Formatter()
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class Console(_RichConsole):
|
|
31
|
+
"""Rich Console configured with project-wide defaults (soft_wrap=True)."""
|
|
32
|
+
|
|
33
|
+
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
|
34
|
+
kwargs.setdefault("soft_wrap", True)
|
|
35
|
+
super().__init__(*args, **kwargs)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def emit(data: dict) -> None:
|
|
39
|
+
"""Write structured data to stdout."""
|
|
40
|
+
print(json.dumps(data), file=sys.stdout)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def print_error(message: str) -> None:
|
|
44
|
+
"""Print an error message to stderr with a red "❌ Error:" prefix."""
|
|
45
|
+
# escape() so text like "[cyan]" or "[0]" in the message is shown as-is.
|
|
46
|
+
Console(stderr=True, highlight=False).print(
|
|
47
|
+
f"[bold red]❌ Error:[/bold red] {escape(message)}"
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def print_warning(message: str) -> None:
|
|
52
|
+
"""Print a warning message to stderr with a yellow "⚠️ Warning:" prefix."""
|
|
53
|
+
Console(stderr=True, highlight=False).print(
|
|
54
|
+
f"[bold yellow]⚠️ Warning:[/bold yellow] {escape(message)}"
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
INTERACTIVE_FIX = ("-i, --interactive", "be prompted for each missing value")
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def auto_approve_fix(default: str) -> tuple[str, str]:
|
|
62
|
+
"""The -y entry for programmatic_mode_error; ``default`` names what -y picks."""
|
|
63
|
+
return ("-y, --yes", f"accept the defaults ({default})")
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def programmatic_mode_error(
|
|
67
|
+
requirement: str, *fixes: tuple[str, str]
|
|
68
|
+
) -> click.UsageError:
|
|
69
|
+
"""Build the error for a value a command can't fill in without prompting.
|
|
70
|
+
|
|
71
|
+
``requirement`` is the subject, e.g. "--agent is required"; each fix is a
|
|
72
|
+
(flag, description) pair, and an empty flag continues the fix above. Every
|
|
73
|
+
fix gets its own aligned line: a trailing "pass -i for interactive mode"
|
|
74
|
+
sentence was easy to miss.
|
|
75
|
+
"""
|
|
76
|
+
if not fixes:
|
|
77
|
+
return click.UsageError(f"{requirement} in programmatic mode.")
|
|
78
|
+
width = max(len(flag) for flag, _ in fixes)
|
|
79
|
+
lines = "\n".join(f" {flag:<{width}} {text}" for flag, text in fixes)
|
|
80
|
+
return click.UsageError(
|
|
81
|
+
f"{requirement} in programmatic mode. Rerun with one of:\n{lines}"
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def print_debug(message: str) -> None:
|
|
86
|
+
"""Print a debug message to stderr as a dim "Debug: <message>" line."""
|
|
87
|
+
Console(stderr=True, highlight=False).print(f"Debug: {escape(message)}", style="dim")
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def print_click_exception(e: click.ClickException) -> None:
|
|
91
|
+
"""Show a ClickException like Click does, but with a red "❌ Error:" prefix."""
|
|
92
|
+
if isinstance(e, click.UsageError) and e.ctx is not None:
|
|
93
|
+
hint = ""
|
|
94
|
+
if e.ctx.command.get_help_option(e.ctx) is not None:
|
|
95
|
+
hint = f"Try '{e.ctx.command_path} {e.ctx.help_option_names[0]}' for help.\n"
|
|
96
|
+
click.echo(f"{e.ctx.get_usage()}\n{hint}", err=True, color=e.ctx.color)
|
|
97
|
+
print_error(e.format_message())
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
def configure_logging(level: int = logging.INFO) -> None:
|
|
101
|
+
"""Send log records to stderr, formatting agents-cli's own records.
|
|
102
|
+
|
|
103
|
+
agents-cli's own records are shown from ``level`` up. Records from libraries
|
|
104
|
+
are shown from WARNING up (or from ``level``, if it is higher), except at
|
|
105
|
+
DEBUG, where they are shown too. agents-cli's own errors, warnings and debug
|
|
106
|
+
records get the print_error() / print_warning() / print_debug() format;
|
|
107
|
+
everything else is printed plain.
|
|
108
|
+
"""
|
|
109
|
+
root = logging.getLogger()
|
|
110
|
+
for handler in [h for h in root.handlers if isinstance(h, _CliLogHandler)]:
|
|
111
|
+
root.removeHandler(handler)
|
|
112
|
+
|
|
113
|
+
debug = level <= logging.DEBUG
|
|
114
|
+
library_level = level if debug else max(level, logging.WARNING)
|
|
115
|
+
handler = _CliLogHandler()
|
|
116
|
+
handler.setFormatter(
|
|
117
|
+
logging.Formatter(logging.BASIC_FORMAT if debug else "%(message)s")
|
|
118
|
+
)
|
|
119
|
+
handler.addFilter(lambda r: _is_own_record(r) or r.levelno >= library_level)
|
|
120
|
+
root.addHandler(handler)
|
|
121
|
+
root.setLevel(level)
|
|
122
|
+
# On its first request, google-auth turns off propagation on the "google"
|
|
123
|
+
# logger unless that logger is already configured
|
|
124
|
+
# (google.auth._helpers.is_logging_enabled). That would cut every google.*
|
|
125
|
+
# logger, ours included, off from the handler above. A level counts as
|
|
126
|
+
# configured. At DEBUG, google-auth then logs its requests; their headers
|
|
127
|
+
# (with tokens) go in the record's extra fields, which this format doesn't
|
|
128
|
+
# print.
|
|
129
|
+
logging.getLogger("google").setLevel(level)
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
class _CliLogHandler(logging.Handler):
|
|
133
|
+
def emit(self, record: logging.LogRecord) -> None:
|
|
134
|
+
try:
|
|
135
|
+
printer = _OWN_RECORD_PRINTERS.get(record.levelno)
|
|
136
|
+
if printer and _is_own_record(record):
|
|
137
|
+
printer(_PLAIN_FORMATTER.format(record))
|
|
138
|
+
else:
|
|
139
|
+
# click.echo looks up sys.stderr on every call, so output still
|
|
140
|
+
# reaches a stream swapped in later (e.g. by CliRunner).
|
|
141
|
+
click.echo(self.format(record), err=True)
|
|
142
|
+
except Exception:
|
|
143
|
+
self.handleError(record)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
def _is_own_record(record: logging.LogRecord) -> bool:
|
|
147
|
+
# agents-cli code mostly calls logging.warning() etc. directly, which logs
|
|
148
|
+
# on the root logger.
|
|
149
|
+
return (
|
|
150
|
+
record.name == "root"
|
|
151
|
+
or record.name == _OWN_LOGGER_NAME
|
|
152
|
+
or record.name.startswith(_OWN_LOGGER_NAME + ".")
|
|
153
|
+
)
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
def _print_plain(message: str) -> None:
|
|
157
|
+
# Our INFO lines stay plain, without the debug-mode "INFO:root:" prefix.
|
|
158
|
+
click.echo(message, err=True)
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
_OWN_RECORD_PRINTERS = {
|
|
162
|
+
logging.CRITICAL: print_error,
|
|
163
|
+
logging.ERROR: print_error,
|
|
164
|
+
logging.WARNING: print_warning,
|
|
165
|
+
logging.INFO: _print_plain,
|
|
166
|
+
logging.DEBUG: print_debug,
|
|
167
|
+
}
|