agent-starter-pack 0.17.0__tar.gz → 0.17.2__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.

Potentially problematic release.


This version of agent-starter-pack might be problematic. Click here for more details.

Files changed (280) hide show
  1. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/PKG-INFO +1 -1
  2. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/commands/enhance.py +13 -4
  3. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/template.py +8 -8
  4. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/template-config-reference.md +1 -1
  5. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/pyproject.toml +1 -1
  6. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/commands/test_enhance.py +200 -0
  7. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/uv.lock +1 -1
  8. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.claude/settings.local.json +0 -0
  9. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/cd/test_e2e.yaml +0 -0
  10. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/build_use_wheel.yaml +0 -0
  11. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/lint.yaml +0 -0
  12. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/lint_templated_agents.yaml +0 -0
  13. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/test.yaml +0 -0
  14. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/test_makefile.yaml +0 -0
  15. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/test_pipeline_parity.yaml +0 -0
  16. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/test_remote_template.yaml +0 -0
  17. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/ci/test_templated_agents.yaml +0 -0
  18. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/apis.tf +0 -0
  19. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/backend.tf +0 -0
  20. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/build_triggers.tf +0 -0
  21. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/service_account.tf +0 -0
  22. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/storage.tf +0 -0
  23. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/variables.tf +0 -0
  24. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.cloudbuild/terraform/vars/env.tfvars +0 -0
  25. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.github/workflows/docs.yml +0 -0
  26. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/.gitignore +0 -0
  27. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/CLAUDE.md +0 -0
  28. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/CODE_OF_CONDUCT.md +0 -0
  29. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/CONTRIBUTING.md +0 -0
  30. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/GEMINI.md +0 -0
  31. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/LICENSE +0 -0
  32. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/Makefile +0 -0
  33. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/README.md +0 -0
  34. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/README.md +0 -0
  35. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/.template/templateconfig.yaml +0 -0
  36. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/README.md +0 -0
  37. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/app/__init__.py +0 -0
  38. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/app/agent.py +0 -0
  39. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/notebooks/adk_app_testing.ipynb +0 -0
  40. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/notebooks/evaluating_adk_agent.ipynb +0 -0
  41. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_base/tests/integration/test_agent.py +0 -0
  42. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_live/.template/templateconfig.yaml +0 -0
  43. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_live/README.md +0 -0
  44. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_live/app/agent.py +0 -0
  45. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/adk_live/tests/unit/test_dummy.py +0 -0
  46. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/.template/templateconfig.yaml +0 -0
  47. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/README.md +0 -0
  48. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/app/__init__.py +0 -0
  49. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/app/agent.py +0 -0
  50. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/app/retrievers.py +0 -0
  51. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/app/templates.py +0 -0
  52. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/notebooks/adk_app_testing.ipynb +0 -0
  53. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/notebooks/evaluating_adk_agent.ipynb +0 -0
  54. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/agentic_rag/tests/integration/test_agent.py +0 -0
  55. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/.template/templateconfig.yaml +0 -0
  56. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/README.md +0 -0
  57. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/app/agent.py +0 -0
  58. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/app/crew/config/agents.yaml +0 -0
  59. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/app/crew/config/tasks.yaml +0 -0
  60. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/app/crew/crew.py +0 -0
  61. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/notebooks/evaluating_crewai_agent.ipynb +0 -0
  62. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/notebooks/evaluating_langgraph_agent.ipynb +0 -0
  63. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/crewai_coding_crew/tests/integration/test_agent.py +0 -0
  64. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/langgraph_base_react/.template/templateconfig.yaml +0 -0
  65. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/langgraph_base_react/README.md +0 -0
  66. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/langgraph_base_react/app/agent.py +0 -0
  67. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/langgraph_base_react/notebooks/evaluating_langgraph_agent.ipynb +0 -0
  68. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/agents/langgraph_base_react/tests/integration/test_agent.py +0 -0
  69. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/.gitignore +0 -0
  70. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/GEMINI.md +0 -0
  71. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/Makefile +0 -0
  72. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/README.md +0 -0
  73. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/README.md +0 -0
  74. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/apis.tf +0 -0
  75. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/apis.tf +0 -0
  76. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/iam.tf +0 -0
  77. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/log_sinks.tf +0 -0
  78. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/providers.tf +0 -0
  79. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/storage.tf +0 -0
  80. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/variables.tf +0 -0
  81. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/dev/vars/env.tfvars +0 -0
  82. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/github.tf +0 -0
  83. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/iam.tf +0 -0
  84. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/locals.tf +0 -0
  85. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/log_sinks.tf +0 -0
  86. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/providers.tf +0 -0
  87. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/service_accounts.tf +0 -0
  88. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/storage.tf +0 -0
  89. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/variables.tf +0 -0
  90. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/vars/env.tfvars +0 -0
  91. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/{% if cookiecutter.cicd_runner == 'github_actions' %}wif.tf{% else %}unused_wif.tf{% endif %} +0 -0
  92. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/deployment/terraform/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}build_triggers.tf{% else %}unused_build_triggers.tf{% endif %} +0 -0
  93. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/pyproject.toml +0 -0
  94. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/tests/unit/test_dummy.py +0 -0
  95. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/deploy-to-prod.yaml +0 -0
  96. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/pr_checks.yaml +0 -0
  97. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/staging.yaml +0 -0
  98. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/deploy-to-prod.yaml +0 -0
  99. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/pr_checks.yaml +0 -0
  100. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/staging.yaml +0 -0
  101. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{{cookiecutter.agent_directory}}/utils/gcs.py +0 -0
  102. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{{cookiecutter.agent_directory}}/utils/tracing.py +0 -0
  103. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/base_template/{{cookiecutter.agent_directory}}/utils/typing.py +0 -0
  104. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/commands/create.py +0 -0
  105. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/commands/list.py +0 -0
  106. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/commands/setup_cicd.py +0 -0
  107. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/main.py +0 -0
  108. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/__init__.py +0 -0
  109. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/cicd.py +0 -0
  110. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/datastores.py +0 -0
  111. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/gcp.py +0 -0
  112. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/logging.py +0 -0
  113. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/remote_template.py +0 -0
  114. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/cli/utils/version.py +0 -0
  115. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/README.md +0 -0
  116. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/data_ingestion_pipeline/components/ingest_data.py +0 -0
  117. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/data_ingestion_pipeline/components/process_data.py +0 -0
  118. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/data_ingestion_pipeline/pipeline.py +0 -0
  119. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/data_ingestion_pipeline/submit_pipeline.py +0 -0
  120. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/pyproject.toml +0 -0
  121. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/data_ingestion/uv.lock +0 -0
  122. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/deployment/terraform/{% if not cookiecutter.is_adk_live %}service.tf{% else %}unused_service.tf{% endif %} +0 -0
  123. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/deployment_metadata.json +0 -0
  124. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/notebooks/intro_agent_engine.ipynb +0 -0
  125. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/tests/integration/test_agent_engine_app.py +0 -0
  126. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/tests/load_test/.results/.placeholder +0 -0
  127. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/tests/load_test/README.md +0 -0
  128. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/tests/load_test/load_test.py +0 -0
  129. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/{{cookiecutter.agent_directory}}/agent_engine_app.py +0 -0
  130. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/{{cookiecutter.agent_directory}}/utils/deployment.py +0 -0
  131. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/agent_engine/{{cookiecutter.agent_directory}}/utils/{% if cookiecutter.is_adk_live %}expose_app.py{% else %}unused_expose_app.py{% endif %} +0 -0
  132. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/Dockerfile +0 -0
  133. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/deployment/terraform/dev/service.tf +0 -0
  134. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/deployment/terraform/service.tf +0 -0
  135. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/tests/integration/test_server_e2e.py +0 -0
  136. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/tests/load_test/.results/.placeholder +0 -0
  137. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/tests/load_test/README.md +0 -0
  138. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/tests/load_test/load_test.py +0 -0
  139. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/deployment_targets/cloud_run/{{cookiecutter.agent_directory}}/server.py +0 -0
  140. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/package-lock.json +0 -0
  141. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/package.json +0 -0
  142. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/public/favicon.ico +0 -0
  143. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/public/index.html +0 -0
  144. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/public/robots.txt +0 -0
  145. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/App.scss +0 -0
  146. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/App.test.tsx +0 -0
  147. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/App.tsx +0 -0
  148. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/audio-pulse/AudioPulse.tsx +0 -0
  149. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/audio-pulse/audio-pulse.scss +0 -0
  150. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/logger/Logger.tsx +0 -0
  151. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/logger/logger.scss +0 -0
  152. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/logger/mock-logs.ts +0 -0
  153. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/side-panel/SidePanel.tsx +0 -0
  154. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/side-panel/side-panel.scss +0 -0
  155. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/transcription-preview/TranscriptionPreview.tsx +0 -0
  156. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/components/transcription-preview/transcription-preview.scss +0 -0
  157. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/contexts/LiveAPIContext.tsx +0 -0
  158. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/hooks/use-live-api.ts +0 -0
  159. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/hooks/use-media-stream-mux.ts +0 -0
  160. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/hooks/use-screen-capture.ts +0 -0
  161. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/hooks/use-webcam.ts +0 -0
  162. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/index.css +0 -0
  163. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/index.tsx +0 -0
  164. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/multimodal-live-types.ts +0 -0
  165. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/react-app-env.d.ts +0 -0
  166. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/reportWebVitals.ts +0 -0
  167. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/setupTests.ts +0 -0
  168. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/audio-recorder.ts +0 -0
  169. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/audio-streamer.ts +0 -0
  170. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/audioworklet-registry.ts +0 -0
  171. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/multimodal-live-client.ts +0 -0
  172. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/store-logger.ts +0 -0
  173. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/utils.ts +0 -0
  174. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/worklets/audio-processing.ts +0 -0
  175. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/src/utils/worklets/vol-meter.ts +0 -0
  176. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/adk_live_react/frontend/tsconfig.json +0 -0
  177. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/side_bar.py +0 -0
  178. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/streamlit_app.py +0 -0
  179. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/style/app_markdown.py +0 -0
  180. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/chat_utils.py +0 -0
  181. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/local_chat_history.py +0 -0
  182. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/message_editing.py +0 -0
  183. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/multimodal_utils.py +0 -0
  184. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/stream_handler.py +0 -0
  185. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/frontends/streamlit/frontend/utils/title_summary.py +0 -0
  186. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/containers/data_processing/Dockerfile +0 -0
  187. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/containers/e2e-tests/Dockerfile +0 -0
  188. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/docs/adk-cheatsheet.md +0 -0
  189. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/idx/.idx/dev.nix +0 -0
  190. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/idx/idx-template.json +0 -0
  191. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/idx/idx-template.nix +0 -0
  192. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-adk_base-agent_engine.lock +0 -0
  193. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-adk_base-cloud_run.lock +0 -0
  194. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-adk_live-agent_engine.lock +0 -0
  195. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-adk_live-cloud_run.lock +0 -0
  196. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-agentic_rag-agent_engine.lock +0 -0
  197. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-agentic_rag-cloud_run.lock +0 -0
  198. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-crewai_coding_crew-agent_engine.lock +0 -0
  199. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-crewai_coding_crew-cloud_run.lock +0 -0
  200. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-langgraph_base_react-agent_engine.lock +0 -0
  201. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/resources/locks/uv-langgraph_base_react-cloud_run.lock +0 -0
  202. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/utils/generate_locks.py +0 -0
  203. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/utils/lock_utils.py +0 -0
  204. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/agent_starter_pack/utils/watch_and_rebuild.py +0 -0
  205. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/.vitepress/config.js +0 -0
  206. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/agents/overview.md +0 -0
  207. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/cli/create.md +0 -0
  208. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/cli/enhance.md +0 -0
  209. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/cli/index.md +0 -0
  210. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/cli/list.md +0 -0
  211. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/cli/setup_cicd.md +0 -0
  212. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/community-showcase.md +0 -0
  213. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/data-ingestion.md +0 -0
  214. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/deploy-ui.md +0 -0
  215. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/deployment.md +0 -0
  216. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/development-guide.md +0 -0
  217. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/getting-started.md +0 -0
  218. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/installation.md +0 -0
  219. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/observability.md +0 -0
  220. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/troubleshooting.md +0 -0
  221. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/video-tutorials.md +0 -0
  222. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/guide/why_starter_pack.md +0 -0
  223. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/adk_gemini_fullstack.gif +0 -0
  224. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/adk_gemini_fullstack_architecture.png +0 -0
  225. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/adk_logo.png +0 -0
  226. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/agent_starter_pack_screenshot.png +0 -0
  227. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/ags_high_level_architecture.png +0 -0
  228. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/icon.png +0 -0
  229. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/logo.png +0 -0
  230. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/prototype_to_prod.png +0 -0
  231. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/why_sp_edited.png +0 -0
  232. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/images/why_starter_pack.png +0 -0
  233. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/index.md +0 -0
  234. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/package-lock.json +0 -0
  235. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/package.json +0 -0
  236. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/remote-templates/creating-remote-templates.md +0 -0
  237. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/remote-templates/index.md +0 -0
  238. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/docs/remote-templates/using-remote-templates.md +0 -0
  239. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/llm.txt +0 -0
  240. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/__init__.py +0 -0
  241. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/example.env +0 -0
  242. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/scripts/delete_agent_engines.py +0 -0
  243. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/scripts/delete_alloydb_clusters.py +0 -0
  244. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/scripts/delete_service_accounts.py +0 -0
  245. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/scripts/delete_vector_search.py +0 -0
  246. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cicd/test_e2e_deployment.py +0 -0
  247. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/commands/test_create.py +0 -0
  248. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/commands/test_create_local.py +0 -0
  249. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/commands/test_list.py +0 -0
  250. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/commands/test_setup_cicd.py +0 -0
  251. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/utils/test_cicd.py +0 -0
  252. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/cli/utils/test_remote_template.py +0 -0
  253. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_hashes.json +0 -0
  254. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/adk_base_agent_engine_no_data.makefile +0 -0
  255. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/adk_base_cloud_run_no_data.makefile +0 -0
  256. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/adk_live_agent_engine.makefile +0 -0
  257. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/adk_live_cloud_run.makefile +0 -0
  258. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/agent_with_agent_garden.makefile +0 -0
  259. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/agent_with_custom_commands.makefile +0 -0
  260. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/agentic_rag_cloud_run_vector_search.makefile +0 -0
  261. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/agentic_rag_cloud_run_vertex_search.makefile +0 -0
  262. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/fixtures/makefile_snapshots/langgraph_cloud_run_no_data.makefile +0 -0
  263. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_agent_directory_functionality.py +0 -0
  264. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_makefile_usability.py +0 -0
  265. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_pipeline_parity.py +0 -0
  266. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_remote_templating.py +0 -0
  267. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_template_linting.py +0 -0
  268. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/test_templated_patterns.py +0 -0
  269. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/integration/utils.py +0 -0
  270. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_side_bar.py +0 -0
  271. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_streamlit_app.py +0 -0
  272. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_utils/test_chat_utils.py +0 -0
  273. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_utils/test_local_chat_history.py +0 -0
  274. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_utils/test_message_editing.py +0 -0
  275. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_utils/test_multimodal_utils.py +0 -0
  276. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/test_frontend/test_utils/test_stream_handler.py +0 -0
  277. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/unit/README_MAKEFILE_TESTS.md +0 -0
  278. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/unit/test_makefile_template.py +0 -0
  279. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/utils/__init__.py +0 -0
  280. {agent_starter_pack-0.17.0 → agent_starter_pack-0.17.2}/tests/utils/get_agents.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-starter-pack
3
- Version: 0.17.0
3
+ Version: 0.17.2
4
4
  Summary: CLI to bootstrap production-ready Google Cloud GenAI agent projects from templates.
5
5
  Author-email: Google LLC <agent-starter-pack@google.com>
6
6
  License: Apache-2.0
@@ -94,16 +94,22 @@ def display_base_template_selection(current_base: str) -> str:
94
94
 
95
95
 
96
96
  def display_agent_directory_selection(
97
- current_dir: pathlib.Path, detected_directory: str
97
+ current_dir: pathlib.Path, detected_directory: str, base_template: str | None = None
98
98
  ) -> str:
99
99
  """Display available directories and prompt for agent directory selection."""
100
+ # Determine the required object name based on base template
101
+ is_adk = base_template and "adk" in base_template.lower()
102
+ required_object = "root_agent" if is_adk else "agent"
103
+
100
104
  while True:
101
105
  console.print()
102
106
  console.print("📁 [bold]Agent Directory Selection[/bold]")
103
107
  console.print()
104
108
  console.print("Your project needs an agent directory containing:")
105
109
  console.print(" • [cyan]agent.py[/cyan] file with your agent logic")
106
- console.print(" • [cyan]root_agent[/cyan] variable defined in agent.py")
110
+ console.print(
111
+ f" • [cyan]{required_object}[/cyan] variable defined in agent.py"
112
+ )
107
113
  console.print()
108
114
  console.print("Choose where your agent code is located:")
109
115
 
@@ -323,7 +329,10 @@ def enhance(
323
329
  console.print()
324
330
 
325
331
  # Determine agent specification based on template_path
326
- if template_path == pathlib.Path("."):
332
+ # If base_template is specified, use it as the agent spec
333
+ if base_template:
334
+ agent_spec = base_template
335
+ elif template_path == pathlib.Path("."):
327
336
  # Current directory - use local@ syntax
328
337
  agent_spec = "local@."
329
338
  elif template_path.is_dir():
@@ -421,7 +430,7 @@ def enhance(
421
430
  # Interactive agent directory selection if not provided via CLI and not auto-approved
422
431
  if not agent_directory and not auto_approve:
423
432
  selected_agent_directory = display_agent_directory_selection(
424
- current_dir, detected_agent_directory
433
+ current_dir, detected_agent_directory, base_template
425
434
  )
426
435
  final_agent_directory = selected_agent_directory
427
436
  console.print(
@@ -100,7 +100,7 @@ def get_overwrite_folders(agent_directory: str) -> list[str]:
100
100
 
101
101
  TEMPLATE_CONFIG_FILE = "templateconfig.yaml"
102
102
  DEPLOYMENT_FOLDERS = ["cloud_run", "agent_engine"]
103
- DEFAULT_FRONTEND = "streamlit"
103
+ DEFAULT_FRONTEND = "None"
104
104
 
105
105
 
106
106
  def get_available_agents(deployment_target: str | None = None) -> dict:
@@ -1182,14 +1182,11 @@ def copy_files(
1182
1182
 
1183
1183
  def copy_frontend_files(frontend_type: str, project_template: pathlib.Path) -> None:
1184
1184
  """Copy files from the specified frontend folder directly to project root."""
1185
- # Skip copying if frontend_type is "None"
1186
- if frontend_type == "None":
1187
- logging.debug("Frontend type is 'None', skipping frontend files")
1185
+ # Skip copying if frontend_type is "None" or empty
1186
+ if not frontend_type or frontend_type == "None":
1187
+ logging.debug("Frontend type is 'None' or empty, skipping frontend files")
1188
1188
  return
1189
1189
 
1190
- # Use default frontend if none specified
1191
- frontend_type = frontend_type or DEFAULT_FRONTEND
1192
-
1193
1190
  # Get the frontends directory path
1194
1191
  frontends_path = (
1195
1192
  pathlib.Path(__file__).parent.parent.parent / "frontends" / frontend_type
@@ -1201,9 +1198,12 @@ def copy_frontend_files(frontend_type: str, project_template: pathlib.Path) -> N
1201
1198
  copy_files(frontends_path, project_template, overwrite=True)
1202
1199
  else:
1203
1200
  logging.warning(f"Frontend type directory not found: {frontends_path}")
1204
- if frontend_type != DEFAULT_FRONTEND:
1201
+ # Don't fall back to default if it's "None" - just skip
1202
+ if DEFAULT_FRONTEND != "None":
1205
1203
  logging.info(f"Falling back to default frontend: {DEFAULT_FRONTEND}")
1206
1204
  copy_frontend_files(DEFAULT_FRONTEND, project_template)
1205
+ else:
1206
+ logging.debug("No default frontend configured, skipping frontend files")
1207
1207
 
1208
1208
 
1209
1209
  def copy_deployment_files(
@@ -27,7 +27,7 @@ This object contains fields that control the generated project's features and be
27
27
  | --------------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
28
28
  | `deployment_targets` | list(string) | A list of deployment targets your template supports. Options: `agent_engine`, `cloud_run`. |
29
29
  | `tags` | list(string) | A list of tags for categorization. The `adk` tag enables special integrations with the Agent Development Kit. |
30
- | `frontend_type` | string | Specifies the frontend to use. Examples: `streamlit`, `adk_live_react`. Defaults to `streamlit`. |
30
+ | `frontend_type` | string | Specifies the frontend to use. Examples: `streamlit`, `adk_live_react`. Defaults to `None` (no frontend). |
31
31
  | `agent_directory` | string | The name of the directory where agent code will be placed. Defaults to `app`. Can be overridden by the CLI `--agent-directory` parameter. |
32
32
  | `requires_data_ingestion` | boolean | If `true`, the user will be prompted to configure a datastore. |
33
33
  | `requires_session` | boolean | If `true`, the user will be prompted to choose a session storage type (e.g., `alloydb`) when using the `cloud_run` target. |
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "agent-starter-pack"
3
- version = "0.17.0"
3
+ version = "0.17.2"
4
4
  description = "CLI to bootstrap production-ready Google Cloud GenAI agent projects from templates."
5
5
  authors = [
6
6
  { name = "Google LLC", email = "agent-starter-pack@google.com" },
@@ -283,3 +283,203 @@ packages = ["detected_agent", "frontend"]
283
283
  assert cli_overrides is not None
284
284
  assert cli_overrides["base_template"] == "langgraph_base_react"
285
285
  assert cli_overrides["settings"]["agent_directory"] == "my_chatbot"
286
+
287
+
288
+ class TestEnhanceAgentEngineAppGeneration:
289
+ """Test that enhance properly generates agent_engine_app.py with correct imports."""
290
+
291
+ @pytest.mark.parametrize(
292
+ "base_template,expected_import",
293
+ [
294
+ ("adk_base", "root_agent"),
295
+ ("adk_live", "root_agent"),
296
+ ("langgraph_base_react", "agent"),
297
+ ("agentic_rag", "root_agent"), # agentic_rag is ADK-based
298
+ ],
299
+ )
300
+ def test_agent_engine_app_has_correct_import(
301
+ self, base_template: str, expected_import: str, tmp_path: pathlib.Path
302
+ ) -> None:
303
+ """Test that agent_engine_app.py imports the correct variable based on base template."""
304
+ runner = CliRunner()
305
+
306
+ with runner.isolated_filesystem(temp_dir=tmp_path):
307
+ # Create agent directory with agent.py
308
+ agent_dir = pathlib.Path("app")
309
+ agent_dir.mkdir()
310
+ agent_file = agent_dir / "agent.py"
311
+
312
+ # Create appropriate agent.py content based on template type
313
+ if "adk" in base_template or base_template == "agentic_rag":
314
+ agent_content = """from google.adk.agents import Agent
315
+
316
+ root_agent = Agent(
317
+ name="test_agent",
318
+ model="gemini-2.0-flash-001",
319
+ )
320
+ """
321
+ else:
322
+ agent_content = """from langchain_core.runnables import RunnablePassthrough
323
+
324
+ agent = RunnablePassthrough()
325
+ """
326
+ agent_file.write_text(agent_content)
327
+
328
+ # Run enhance with the specified base template
329
+ result = runner.invoke(
330
+ enhance,
331
+ [
332
+ ".",
333
+ "--base-template",
334
+ base_template,
335
+ "--deployment-target",
336
+ "agent_engine",
337
+ "--auto-approve",
338
+ "--skip-checks",
339
+ ],
340
+ )
341
+
342
+ # Check that enhance succeeded
343
+ assert result.exit_code == 0, (
344
+ f"Enhance failed with output:\n{result.output}"
345
+ )
346
+
347
+ # Verify agent_engine_app.py was created
348
+ agent_engine_app = agent_dir / "agent_engine_app.py"
349
+ assert agent_engine_app.exists(), (
350
+ f"agent_engine_app.py not created in {agent_dir}"
351
+ )
352
+
353
+ # Read the content and verify the correct import
354
+ content = agent_engine_app.read_text()
355
+ expected_import_line = f"from app.agent import {expected_import}"
356
+ assert expected_import_line in content, (
357
+ f"Expected '{expected_import_line}' in agent_engine_app.py but got:\n{content}"
358
+ )
359
+
360
+ def test_agent_engine_app_created_in_custom_agent_directory(
361
+ self, tmp_path: pathlib.Path
362
+ ) -> None:
363
+ """Test that agent_engine_app.py is created in custom agent directory."""
364
+ runner = CliRunner()
365
+
366
+ with runner.isolated_filesystem(temp_dir=tmp_path):
367
+ # Create custom agent directory
368
+ agent_dir = pathlib.Path("my_custom_agent")
369
+ agent_dir.mkdir()
370
+ agent_file = agent_dir / "agent.py"
371
+ agent_file.write_text(
372
+ """from google.adk.agents import Agent
373
+
374
+ root_agent = Agent(
375
+ name="test_agent",
376
+ model="gemini-2.0-flash-001",
377
+ )
378
+ """
379
+ )
380
+
381
+ # Run enhance with custom agent directory
382
+ result = runner.invoke(
383
+ enhance,
384
+ [
385
+ ".",
386
+ "--base-template",
387
+ "adk_base",
388
+ "--agent-directory",
389
+ "my_custom_agent",
390
+ "--deployment-target",
391
+ "agent_engine",
392
+ "--auto-approve",
393
+ "--skip-checks",
394
+ ],
395
+ )
396
+
397
+ # Check that enhance succeeded
398
+ assert result.exit_code == 0, (
399
+ f"Enhance failed with output:\n{result.output}"
400
+ )
401
+
402
+ # Verify agent_engine_app.py was created in custom directory
403
+ agent_engine_app = agent_dir / "agent_engine_app.py"
404
+ assert agent_engine_app.exists(), (
405
+ f"agent_engine_app.py not created in {agent_dir}"
406
+ )
407
+
408
+ # Verify the import uses the custom directory name
409
+ content = agent_engine_app.read_text()
410
+ expected_import_line = "from my_custom_agent.agent import root_agent"
411
+ assert expected_import_line in content, (
412
+ f"Expected '{expected_import_line}' in agent_engine_app.py"
413
+ )
414
+
415
+
416
+ class TestEnhanceAgentDirectoryPrompt:
417
+ """Test that enhance shows the correct required variable in prompts."""
418
+
419
+ @patch("agent_starter_pack.cli.commands.enhance.display_agent_directory_selection")
420
+ @patch("agent_starter_pack.cli.utils.remote_template.get_base_template_name")
421
+ @patch("agent_starter_pack.cli.utils.remote_template.load_remote_template_config")
422
+ def test_prompt_shows_root_agent_for_adk_templates(
423
+ self,
424
+ mock_load_config: MagicMock,
425
+ mock_get_base_name: MagicMock,
426
+ mock_display_selection: MagicMock,
427
+ ) -> None:
428
+ """Test that agent directory prompt shows 'root_agent' for ADK templates."""
429
+ runner = CliRunner()
430
+
431
+ # Mock the template config to return an ADK base template
432
+ mock_get_base_name.return_value = "adk_base"
433
+ mock_load_config.return_value = {"base_template": "adk_base"}
434
+ mock_display_selection.return_value = "app"
435
+
436
+ with runner.isolated_filesystem():
437
+ pathlib.Path("app").mkdir()
438
+ pathlib.Path("app/agent.py").write_text("root_agent = None")
439
+
440
+ with patch("agent_starter_pack.cli.commands.enhance.create"):
441
+ runner.invoke(
442
+ enhance,
443
+ [".", "--base-template", "adk_base"],
444
+ input="n\n", # Cancel enhancement
445
+ )
446
+
447
+ # Verify display_agent_directory_selection was called with base_template
448
+ if mock_display_selection.called:
449
+ call_args = mock_display_selection.call_args
450
+ # The base_template should be passed to the function
451
+ assert call_args[0][2] == "adk_base" # Third positional arg
452
+
453
+ @patch("agent_starter_pack.cli.commands.enhance.display_agent_directory_selection")
454
+ @patch("agent_starter_pack.cli.utils.remote_template.get_base_template_name")
455
+ @patch("agent_starter_pack.cli.utils.remote_template.load_remote_template_config")
456
+ def test_prompt_shows_agent_for_non_adk_templates(
457
+ self,
458
+ mock_load_config: MagicMock,
459
+ mock_get_base_name: MagicMock,
460
+ mock_display_selection: MagicMock,
461
+ ) -> None:
462
+ """Test that agent directory prompt shows 'agent' for non-ADK templates."""
463
+ runner = CliRunner()
464
+
465
+ # Mock the template config to return a non-ADK base template
466
+ mock_get_base_name.return_value = "langgraph_base_react"
467
+ mock_load_config.return_value = {"base_template": "langgraph_base_react"}
468
+ mock_display_selection.return_value = "app"
469
+
470
+ with runner.isolated_filesystem():
471
+ pathlib.Path("app").mkdir()
472
+ pathlib.Path("app/agent.py").write_text("agent = None")
473
+
474
+ with patch("agent_starter_pack.cli.commands.enhance.create"):
475
+ runner.invoke(
476
+ enhance,
477
+ [".", "--base-template", "langgraph_base_react"],
478
+ input="n\n", # Cancel enhancement
479
+ )
480
+
481
+ # Verify display_agent_directory_selection was called with base_template
482
+ if mock_display_selection.called:
483
+ call_args = mock_display_selection.call_args
484
+ # The base_template should be passed to the function
485
+ assert call_args[0][2] == "langgraph_base_react"
@@ -11,7 +11,7 @@ resolution-markers = [
11
11
 
12
12
  [[package]]
13
13
  name = "agent-starter-pack"
14
- version = "0.17.0"
14
+ version = "0.17.2"
15
15
  source = { editable = "." }
16
16
  dependencies = [
17
17
  { name = "backoff" },