agent-starter-pack 0.10.1__tar.gz → 0.11.1__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.
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.claude/settings.local.json +4 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.gitignore +3 -1
- agent_starter_pack-0.11.1/CLAUDE.md +1 -0
- agent_starter_pack-0.11.1/GEMINI.md +130 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/PKG-INFO +10 -3
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/README.md +9 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/.template/templateconfig.yaml +2 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/tests/integration/test_agent.py +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/langgraph_base_react/.template/templateconfig.yaml +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/langgraph_base_react/tests/integration/test_agent.py +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/.vitepress/config.js +7 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/agents/overview.md +0 -11
- agent_starter_pack-0.11.1/docs/cli/create.md +176 -0
- agent_starter_pack-0.11.1/docs/cli/enhance.md +180 -0
- agent_starter_pack-0.11.1/docs/cli/list.md +36 -0
- agent_starter_pack-0.11.1/docs/remote-templates/creating-remote-templates.md +368 -0
- agent_starter_pack-0.11.1/docs/remote-templates/index.md +52 -0
- agent_starter_pack-0.11.1/docs/remote-templates/using-remote-templates.md +188 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/pyproject.toml +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/iam.tf +12 -11
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/variables.tf +2 -7
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/github.tf +14 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/iam.tf +10 -7
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/service_accounts.tf +4 -5
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/variables.tf +2 -7
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}build_triggers.tf{% else %}unused_build_triggers.tf{% endif %} +4 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/pyproject.toml +2 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/deploy-to-prod.yaml +3 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/staging.yaml +1 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/deploy-to-prod.yaml +1 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/staging.yaml +1 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/commands/create.py +202 -100
- agent_starter_pack-0.11.1/src/cli/commands/enhance.py +302 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/commands/list.py +23 -11
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/main.py +2 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/logging.py +40 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/remote_template.py +55 -16
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/template.py +212 -94
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/app/agent_engine_app.py +8 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/app/server.py +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/deployment/terraform/dev/service.tf +1 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/deployment/terraform/service.tf +2 -2
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-adk_base-agent_engine.lock +312 -312
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-adk_base-cloud_run.lock +403 -404
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-adk_gemini_fullstack-agent_engine.lock +312 -312
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-adk_gemini_fullstack-cloud_run.lock +403 -404
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-agentic_rag-agent_engine.lock +371 -371
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-agentic_rag-cloud_run.lock +477 -478
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-crewai_coding_crew-agent_engine.lock +661 -591
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-crewai_coding_crew-cloud_run.lock +868 -760
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-langgraph_base_react-agent_engine.lock +496 -446
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-langgraph_base_react-cloud_run.lock +639 -565
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/locks/uv-live_api-cloud_run.lock +584 -510
- agent_starter_pack-0.11.1/tests/cli/commands/test_create_local.py +374 -0
- agent_starter_pack-0.11.1/tests/cli/commands/test_enhance.py +142 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cli/utils/test_remote_template.py +78 -10
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/test_remote_templating.py +3 -1
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/uv.lock +1 -1
- agent_starter_pack-0.10.1/agents/adk_gemini_fullstack/.template/templateconfig.yaml +0 -39
- agent_starter_pack-0.10.1/agents/adk_gemini_fullstack/README.md +0 -27
- agent_starter_pack-0.10.1/agents/adk_gemini_fullstack/app/agent.py +0 -412
- agent_starter_pack-0.10.1/agents/adk_gemini_fullstack/app/config.py +0 -46
- agent_starter_pack-0.10.1/agents/adk_gemini_fullstack/tests/integration/test_agent.py +0 -58
- agent_starter_pack-0.10.1/agents/agentic_rag/notebooks/adk_app_testing.ipynb +0 -355
- agent_starter_pack-0.10.1/agents/agentic_rag/notebooks/evaluating_adk_agent.ipynb +0 -1528
- agent_starter_pack-0.10.1/docs/cli/create.md +0 -50
- agent_starter_pack-0.10.1/docs/guide/remote-templating.md +0 -202
- agent_starter_pack-0.10.1/tests/cli/commands/test_create_local.py +0 -84
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/cd/test_e2e.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/build_use_wheel.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/lint.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/lint_templated_agents.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/test.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/test_makefile.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/test_pipeline_parity.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/test_remote_template.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/ci/test_templated_agents.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/terraform/apis.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/terraform/build_triggers.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/terraform/service_account.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/terraform/storage.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.cloudbuild/terraform/variables.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/.github/workflows/docs.yml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/CODE_OF_CONDUCT.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/CONTRIBUTING.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/LICENSE +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/Makefile +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/.template/templateconfig.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/app/agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/notebooks/adk_app_testing.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/notebooks/evaluating_adk_agent.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/adk_base/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/.template/templateconfig.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/app/agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/app/retrievers.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/app/templates.py +0 -0
- {agent_starter_pack-0.10.1/agents/adk_gemini_fullstack → agent_starter_pack-0.11.1/agents/agentic_rag}/notebooks/adk_app_testing.ipynb +0 -0
- {agent_starter_pack-0.10.1/agents/adk_gemini_fullstack → agent_starter_pack-0.11.1/agents/agentic_rag}/notebooks/evaluating_adk_agent.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/agentic_rag/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/app/agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/app/crew/config/agents.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/app/crew/config/tasks.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/app/crew/crew.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/notebooks/evaluating_crewai_agent.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/crewai_coding_crew/notebooks/evaluating_langgraph_agent.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/langgraph_base_react/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/langgraph_base_react/app/agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/langgraph_base_react/notebooks/evaluating_langgraph_agent.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/.template/templateconfig.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/app/agent.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/app/server.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/tests/integration/test_server_e2e.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/tests/load_test/load_test.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/agents/live_api/tests/unit/test_server.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/cli/index.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/cli/setup_cicd.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/data-ingestion.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/deploy-ui.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/deployment.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/development-guide.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/getting-started.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/installation.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/observability.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/template-config-reference.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/troubleshooting.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/video-tutorials.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/guide/why_starter_pack.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/adk_gemini_fullstack.gif +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/adk_gemini_fullstack_architecture.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/adk_logo.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/agent_starter_pack_screenshot.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/ags_high_level_architecture.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/icon.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/logo.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/prototype_to_prod.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/why_sp_edited.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/images/why_starter_pack.png +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/index.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/package-lock.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/docs/package.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/llm.txt +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/.gitignore +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/GEMINI.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/Makefile +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/app/__init__.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/app/utils/gcs.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/app/utils/tracing.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/app/utils/typing.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/apis.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/apis.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/log_sinks.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/providers.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/storage.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/dev/vars/env.tfvars +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/locals.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/log_sinks.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/providers.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/storage.tf +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/vars/env.tfvars +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/deployment/terraform/{% if cookiecutter.cicd_runner == 'github_actions' %}wif.tf{% else %}unused_wif.tf{% endif %} +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/tests/unit/test_dummy.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}/workflows/pr_checks.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/base_template/{% if cookiecutter.cicd_runner == 'google_cloud_build' %}.cloudbuild{% else %}unused_.cloudbuild{% endif %}/pr_checks.yaml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/commands/setup_cicd.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/__init__.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/cicd.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/datastores.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/gcp.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/cli/utils/version.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/data_ingestion_pipeline/components/ingest_data.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/data_ingestion_pipeline/components/process_data.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/data_ingestion_pipeline/pipeline.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/data_ingestion_pipeline/submit_pipeline.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/pyproject.toml +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/data_ingestion/uv.lock +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/deployment_metadata.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/notebooks/intro_agent_engine.ipynb +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/tests/integration/test_agent_engine_app.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/tests/load_test/.results/.placeholder +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/tests/load_test/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/agent_engine/tests/load_test/load_test.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/Dockerfile +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/tests/integration/test_server_e2e.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/tests/load_test/.results/.placeholder +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/tests/load_test/README.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/deployment_targets/cloud_run/tests/load_test/load_test.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/components.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/eslint.config.js +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/index.html +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/package-lock.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/package.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/App.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ActivityTimeline.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ChatMessagesView.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/InputForm.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/WelcomeScreen.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/badge.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/button.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/card.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/input.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/scroll-area.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/select.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/tabs.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/textarea.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/global.css +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/main.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/utils.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/src/vite-env.d.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/tsconfig.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/tsconfig.node.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/adk_gemini_fullstack/frontend/vite.config.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/package-lock.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/package.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/public/favicon.ico +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/public/index.html +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/public/robots.txt +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/App.scss +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/App.test.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/App.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/audio-pulse/AudioPulse.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/audio-pulse/audio-pulse.scss +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/control-tray/ControlTray.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/control-tray/control-tray.scss +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/logger/Logger.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/logger/logger.scss +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/logger/mock-logs.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/side-panel/SidePanel.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/components/side-panel/side-panel.scss +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/contexts/LiveAPIContext.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/hooks/use-live-api.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/hooks/use-media-stream-mux.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/hooks/use-screen-capture.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/hooks/use-webcam.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/index.css +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/index.tsx +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/multimodal-live-types.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/react-app-env.d.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/reportWebVitals.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/setupTests.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/audio-recorder.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/audio-streamer.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/audioworklet-registry.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/multimodal-live-client.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/store-logger.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/utils.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/worklets/audio-processing.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/src/utils/worklets/vol-meter.ts +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/live_api_react/frontend/tsconfig.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/side_bar.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/streamlit_app.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/style/app_markdown.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/chat_utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/local_chat_history.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/message_editing.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/multimodal_utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/stream_handler.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/frontends/streamlit/frontend/utils/title_summary.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/containers/data_processing/Dockerfile +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/containers/e2e-tests/Dockerfile +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/docs/adk-cheatsheet.md +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/idx/.idx/dev.nix +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/idx/idx-template.json +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/resources/idx/idx-template.nix +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/utils/generate_locks.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/utils/lock_utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/src/utils/watch_and_rebuild.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/__init__.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cicd/example.env +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cicd/test_e2e_deployment.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cli/commands/test_create.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cli/commands/test_list.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cli/commands/test_setup_cicd.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/cli/utils/test_cicd.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/test_makefile_usability.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/test_pipeline_parity.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/test_template_linting.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/test_templated_patterns.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/integration/utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_side_bar.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_streamlit_app.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_utils/test_chat_utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_utils/test_local_chat_history.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_utils/test_message_editing.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_utils/test_multimodal_utils.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/test_frontend/test_utils/test_stream_handler.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/utils/__init__.py +0 -0
- {agent_starter_pack-0.10.1 → agent_starter_pack-0.11.1}/tests/utils/get_agents.py +0 -0
@@ -1,4 +1,5 @@
|
|
1
1
|
{
|
2
|
+
"$schema": "https://json.schemastore.org/claude-code-settings.json",
|
2
3
|
"permissions": {
|
3
4
|
"allow": [
|
4
5
|
"Bash(grep:*)",
|
@@ -10,7 +11,9 @@
|
|
10
11
|
"Bash(set -a)",
|
11
12
|
"Bash(. tests/cicd/.env)",
|
12
13
|
"Bash(set +a)",
|
13
|
-
"Bash(bash:*)"
|
14
|
+
"Bash(bash:*)",
|
15
|
+
"Bash(ls:*)",
|
16
|
+
"Bash(python -m pytest tests/cli/commands/test_enhance.py::TestEnhanceCommand::test_enhance_with_interactive_base_template_selection -v)"
|
14
17
|
],
|
15
18
|
"deny": []
|
16
19
|
}
|
@@ -0,0 +1 @@
|
|
1
|
+
GEMINI.md
|
@@ -0,0 +1,130 @@
|
|
1
|
+
# Agent Starter Pack - Coding Agent Guide
|
2
|
+
|
3
|
+
This document provides essential guidance, architectural insights, and best practices for AI coding agents tasked with modifying the Google Cloud Agent Starter Pack. Adhering to these principles is critical for making safe, consistent, and effective changes.
|
4
|
+
|
5
|
+
## Core Principles for AI Agents
|
6
|
+
|
7
|
+
1. **Preserve and Isolate:** Your primary objective is surgical precision. Modify *only* the code segments directly related to the user's request. Preserve all surrounding code, comments, and formatting. Do not rewrite entire files or functions to make a small change.
|
8
|
+
2. **Follow Conventions:** This project relies heavily on established patterns. Before writing new code, analyze the surrounding files to understand and replicate existing conventions for naming, templating logic, and directory structure.
|
9
|
+
3. **Search Comprehensively:** A single change often requires updates in multiple places. When modifying configuration, variables, or infrastructure, you **must** search across the entire repository, including:
|
10
|
+
* `src/base_template/` (the core template)
|
11
|
+
* `src/deployment_targets/` (environment-specific overrides)
|
12
|
+
* `.github/` and `.cloudbuild/` (CI/CD workflows)
|
13
|
+
* `docs/` (user-facing documentation)
|
14
|
+
|
15
|
+
## Project Architecture Overview
|
16
|
+
|
17
|
+
### Templating Engine: Cookiecutter + Jinja2
|
18
|
+
|
19
|
+
The starter pack uses **Cookiecutter** to generate project scaffolding from templates that are heavily customized with the **Jinja2** templating language. Understanding the rendering process is key to avoiding errors.
|
20
|
+
|
21
|
+
**Multi-Phase Template Processing:**
|
22
|
+
|
23
|
+
Templates are processed in a specific order. A failure at any stage will break the project generation.
|
24
|
+
|
25
|
+
1. **Cookiecutter Variable Substitution:** Simple replacement of `{{cookiecutter.variable_name}}` placeholders with values from `cookiecutter.json`.
|
26
|
+
2. **Jinja2 Logic Execution:** Conditional blocks (`{% if %}`), loops (`{% for %}`), and other logic are executed. This is the most complex and error-prone stage.
|
27
|
+
3. **File/Directory Name Templating:** File and directory names containing Jinja2 blocks are rendered. For example, `{% if cookiecutter.cicd_runner == 'github_actions' %}.github{% else %}unused_github{% endif %}`.
|
28
|
+
|
29
|
+
### Key Directory Structures
|
30
|
+
|
31
|
+
- `src/base_template/`: This is the **core template**. Most changes that should apply to all generated projects should start here.
|
32
|
+
- `src/deployment_targets/`: Contains files that **override or are added to** the `base_template` for a specific deployment target (e.g., `cloud_run`, `gke`, `agent_engine`). If a file exists in both `base_template` and a deployment target, the latter is typically used.
|
33
|
+
- `agents/`: Contains pre-packaged, self-contained agent examples. Each has its own `.template/templateconfig.yaml` to define its specific variables and dependencies.
|
34
|
+
- `src/cli/commands`: Contains the logic for the CLI commands, such as `create` and `setup-cicd`.
|
35
|
+
|
36
|
+
### CLI Commands
|
37
|
+
|
38
|
+
- `create.py`: Handles the creation of new agent projects. It orchestrates the template processing, configuration merging, and deployment target selection.
|
39
|
+
- `setup_cicd.py`: Automates the setup of the CI/CD pipeline. It interacts with `gcloud` and `gh` to configure GitHub repositories, Cloud Build triggers, and Terraform backend.
|
40
|
+
|
41
|
+
### Template Processing
|
42
|
+
|
43
|
+
- `template.py`: Located in `src/cli/utils`, this script contains the core logic for processing the templates. It copies the base template, overlays the deployment target files, and then applies the agent-specific files.
|
44
|
+
|
45
|
+
## Critical Jinja Templating Rules
|
46
|
+
|
47
|
+
Failure to follow these rules is the most common source of project generation errors.
|
48
|
+
|
49
|
+
### 1. Block Balancing
|
50
|
+
**Every opening Jinja block must have a corresponding closing block.** This is the most critical rule.
|
51
|
+
|
52
|
+
- `{% if ... %}` requires `{% endif %}`
|
53
|
+
- `{% for ... %}` requires `{% endfor %}`
|
54
|
+
- `{% raw %}` requires `{% endraw %}`
|
55
|
+
|
56
|
+
**Correct:**
|
57
|
+
```jinja
|
58
|
+
{% if cookiecutter.deployment_target == 'cloud_run' %}
|
59
|
+
# Cloud Run specific content
|
60
|
+
{% endif %}
|
61
|
+
```
|
62
|
+
|
63
|
+
### 2. Variable Usage
|
64
|
+
Distinguish between substitution and logic:
|
65
|
+
|
66
|
+
- **Substitution (in file content):** Use double curly braces: `{{ cookiecutter.project_name }}`
|
67
|
+
- **Logic (in `if`/`for` blocks):** Use the variable directly: `{% if cookiecutter.use_alloydb %}`
|
68
|
+
|
69
|
+
### 3. Whitespace Control
|
70
|
+
Jinja is sensitive to whitespace. Use hyphens to control newlines and prevent unwanted blank lines in rendered files.
|
71
|
+
|
72
|
+
- `{%-` removes whitespace before the block.
|
73
|
+
- `-%}` removes whitespace after the block.
|
74
|
+
|
75
|
+
**Example:**
|
76
|
+
```jinja
|
77
|
+
{%- if cookiecutter.some_option %}
|
78
|
+
option = true
|
79
|
+
{%- endif %}
|
80
|
+
```
|
81
|
+
|
82
|
+
## Terraform Best Practices
|
83
|
+
|
84
|
+
### Unified Service Account (`app_sa`)
|
85
|
+
The project uses a single, unified application service account (`app_sa`) across all deployment targets to simplify IAM management.
|
86
|
+
|
87
|
+
- **Do not** create target-specific service accounts (e.g., `cloud_run_sa`).
|
88
|
+
- Define roles for this account in `app_sa_roles`.
|
89
|
+
- Reference this account consistently in all Terraform and CI/CD files.
|
90
|
+
|
91
|
+
### Resource Referencing
|
92
|
+
Use consistent and clear naming for Terraform resources. When referencing resources, especially those created conditionally or with `for_each`, ensure the reference is also correctly keyed.
|
93
|
+
|
94
|
+
**Example:**
|
95
|
+
```hcl
|
96
|
+
# Creation
|
97
|
+
resource "google_service_account" "app_sa" {
|
98
|
+
for_each = local.deploy_project_ids # e.g., {"staging" = "...", "prod" = "..."}
|
99
|
+
account_id = "${var.project_name}-app"
|
100
|
+
# ...
|
101
|
+
}
|
102
|
+
|
103
|
+
# Correct Reference
|
104
|
+
# In a Cloud Run module for the staging environment
|
105
|
+
service_account = google_service_account.app_sa["staging"].email
|
106
|
+
```
|
107
|
+
|
108
|
+
## CI/CD Integration (GitHub Actions & Cloud Build)
|
109
|
+
|
110
|
+
The project maintains parallel CI/CD implementations. **Any change to CI/CD logic must be applied to both.**
|
111
|
+
|
112
|
+
- **GitHub Actions:** Configured in `.github/workflows/`. Uses `${{ vars.VAR_NAME }}` for repository variables.
|
113
|
+
- **Google Cloud Build:** Configured in `.cloudbuild/`. Uses `${_VAR_NAME}` for substitution variables.
|
114
|
+
|
115
|
+
When adding a new variable or secret, ensure it is configured correctly for both systems in the Terraform scripts that manage them (e.g., `github_actions_variable` resource and Cloud Build trigger substitutions).
|
116
|
+
|
117
|
+
## File Modification Checklist
|
118
|
+
|
119
|
+
Before finalizing any change, verify the following:
|
120
|
+
|
121
|
+
- [ ] **Jinja Syntax:** Are all `{% if %}` and `{% for %}` blocks correctly closed with `{% endif %}` and `{% endfor %}`?
|
122
|
+
- [ ] **Variable Consistency:** Is the `cookiecutter.` variable name spelled correctly and used consistently across all modified files?
|
123
|
+
- [ ] **Cross-Target Impact:** If you changed the `base_template`, have you checked if any `deployment_targets` need corresponding updates?
|
124
|
+
- [ ] **CI/CD Parity:** If you modified a CI/CD workflow, did you apply the equivalent change to the other system (GitHub Actions vs. Cloud Build)?
|
125
|
+
- [ ] **Terraform Validation:** If you changed Terraform files, are resource references correct? Does it pass `terraform validate`?
|
126
|
+
- [ ] **Documentation:** Does any user-facing documentation in `docs/` need to be updated to reflect the change?
|
127
|
+
|
128
|
+
### Key Tooling
|
129
|
+
|
130
|
+
- **`uv` for Python Command Execution:** `uv` is the primary tool used for managing Python dependencies and executing Python commands within the project, including CLI operations and CI/CD steps. This ensures consistent, isolated, and efficient execution environments.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: agent-starter-pack
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.11.1
|
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
|
@@ -39,7 +39,7 @@ Description-Content-Type: text/markdown
|
|
39
39
|
</a> [](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Feliasecchig%2Fasp-open-in-cloud-shell&cloudshell_print=open-in-cs) 
|
40
40
|
|
41
41
|
|
42
|
-
The `agent-starter-pack` is a collection of production-ready Generative AI Agent templates built for Google Cloud. <br>
|
42
|
+
The `agent-starter-pack` is a Python package that provides a collection of production-ready Generative AI Agent templates built for Google Cloud. <br>
|
43
43
|
It accelerates development by providing a holistic, production-ready solution, addressing common challenges (Deployment & Operations, Evaluation, Customization, Observability) in building and deploying GenAI agents.
|
44
44
|
|
45
45
|
| ⚡️ Launch | 🧪 Experiment | ✅ Deploy | 🛠️ Customize |
|
@@ -75,6 +75,14 @@ This command handles creating the project without needing to pre-install the pac
|
|
75
75
|
|
76
76
|
**That's it!** You now have a fully functional agent project—complete with backend, frontend, and deployment infrastructure—ready for you to explore and customize.
|
77
77
|
|
78
|
+
### 🔧 Enhance Existing Agents
|
79
|
+
|
80
|
+
Already have an agent? Add production-ready deployment and infrastructure:
|
81
|
+
|
82
|
+
```bash
|
83
|
+
agent-starter-pack enhance my-existing-agent
|
84
|
+
```
|
85
|
+
|
78
86
|
See [Installation Guide](https://googlecloudplatform.github.io/agent-starter-pack/guide/installation) for more options, or try with zero setup in [Firebase Studio](https://studio.firebase.google.com/new?template=https%3A%2F%2Fgithub.com%2FGoogleCloudPlatform%2Fagent-starter-pack%2Ftree%2Fmain%2Fsrc%2Fresources%2Fidx) or [Cloud Shell](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Feliasecchig%2Fasp-open-in-cloud-shell&cloudshell_print=open-in-cs).
|
79
87
|
|
80
88
|
---
|
@@ -84,7 +92,6 @@ See [Installation Guide](https://googlecloudplatform.github.io/agent-starter-pac
|
|
84
92
|
| Agent Name | Description |
|
85
93
|
|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
|
86
94
|
| `adk_base` | A base ReAct agent implemented using Google's [Agent Development Kit](https://github.com/google/adk-python) |
|
87
|
-
| `adk_gemini_fullstack` | A production-ready fullstack research agent with Gemini that demonstrates complex agentic workflows, modular agent design, and Human-in-the-Loop steps. [ADK Samples](https://github.com/google/adk-samples/tree/main/python/agents/gemini-fullstack) |
|
88
95
|
| `agentic_rag` | A RAG agent for document retrieval and Q&A. Supporting [Vertex AI Search](https://cloud.google.com/generative-ai-app-builder/docs/enterprise-search-introduction) and [Vector Search](https://cloud.google.com/vertex-ai/docs/vector-search/overview). |
|
89
96
|
| `langgraph_base_react` | An agent implementing a base ReAct agent using LangGraph |
|
90
97
|
| `crewai_coding_crew` | A multi-agent system implemented with CrewAI created to support coding activities |
|
@@ -16,7 +16,7 @@
|
|
16
16
|
</a> [](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Feliasecchig%2Fasp-open-in-cloud-shell&cloudshell_print=open-in-cs) 
|
17
17
|
|
18
18
|
|
19
|
-
The `agent-starter-pack` is a collection of production-ready Generative AI Agent templates built for Google Cloud. <br>
|
19
|
+
The `agent-starter-pack` is a Python package that provides a collection of production-ready Generative AI Agent templates built for Google Cloud. <br>
|
20
20
|
It accelerates development by providing a holistic, production-ready solution, addressing common challenges (Deployment & Operations, Evaluation, Customization, Observability) in building and deploying GenAI agents.
|
21
21
|
|
22
22
|
| ⚡️ Launch | 🧪 Experiment | ✅ Deploy | 🛠️ Customize |
|
@@ -52,6 +52,14 @@ This command handles creating the project without needing to pre-install the pac
|
|
52
52
|
|
53
53
|
**That's it!** You now have a fully functional agent project—complete with backend, frontend, and deployment infrastructure—ready for you to explore and customize.
|
54
54
|
|
55
|
+
### 🔧 Enhance Existing Agents
|
56
|
+
|
57
|
+
Already have an agent? Add production-ready deployment and infrastructure:
|
58
|
+
|
59
|
+
```bash
|
60
|
+
agent-starter-pack enhance my-existing-agent
|
61
|
+
```
|
62
|
+
|
55
63
|
See [Installation Guide](https://googlecloudplatform.github.io/agent-starter-pack/guide/installation) for more options, or try with zero setup in [Firebase Studio](https://studio.firebase.google.com/new?template=https%3A%2F%2Fgithub.com%2FGoogleCloudPlatform%2Fagent-starter-pack%2Ftree%2Fmain%2Fsrc%2Fresources%2Fidx) or [Cloud Shell](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Feliasecchig%2Fasp-open-in-cloud-shell&cloudshell_print=open-in-cs).
|
56
64
|
|
57
65
|
---
|
@@ -61,7 +69,6 @@ See [Installation Guide](https://googlecloudplatform.github.io/agent-starter-pac
|
|
61
69
|
| Agent Name | Description |
|
62
70
|
|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
|
63
71
|
| `adk_base` | A base ReAct agent implemented using Google's [Agent Development Kit](https://github.com/google/adk-python) |
|
64
|
-
| `adk_gemini_fullstack` | A production-ready fullstack research agent with Gemini that demonstrates complex agentic workflows, modular agent design, and Human-in-the-Loop steps. [ADK Samples](https://github.com/google/adk-samples/tree/main/python/agents/gemini-fullstack) |
|
65
72
|
| `agentic_rag` | A RAG agent for document retrieval and Q&A. Supporting [Vertex AI Search](https://cloud.google.com/generative-ai-app-builder/docs/enterprise-search-introduction) and [Vector Search](https://cloud.google.com/vertex-ai/docs/vector-search/overview). |
|
66
73
|
| `langgraph_base_react` | An agent implementing a base ReAct agent using LangGraph |
|
67
74
|
| `crewai_coding_crew` | A multi-agent system implemented with CrewAI created to support coding activities |
|
@@ -21,7 +21,7 @@ settings:
|
|
21
21
|
"langchain~=0.3.14",
|
22
22
|
"langchain-community~=0.3.17",
|
23
23
|
"langchain-openai~=0.3.5",
|
24
|
-
"langgraph~=0.
|
25
|
-
"crewai~=0.
|
24
|
+
"langgraph~=0.6.2",
|
25
|
+
"crewai~=0.152.0"
|
26
26
|
]
|
27
27
|
example_question: "How can I implement a function to sort a list in Python?"
|
@@ -24,6 +24,7 @@ export default defineConfig({
|
|
24
24
|
nav: [
|
25
25
|
{ text: 'Home', link: '/' },
|
26
26
|
{ text: 'Guide', link: '/guide/getting-started' },
|
27
|
+
{ text: 'Remote Templates', link: '/remote-templates/' },
|
27
28
|
{ text: 'Agents', link: '/agents/overview' },
|
28
29
|
{ text: 'CLI', link: '/cli/index.md' }
|
29
30
|
],
|
@@ -44,9 +45,11 @@ export default defineConfig({
|
|
44
45
|
]
|
45
46
|
},
|
46
47
|
{
|
47
|
-
text: '
|
48
|
+
text: 'Remote Templates',
|
48
49
|
items: [
|
49
|
-
{ text: '
|
50
|
+
{ text: 'Overview', link: '/remote-templates/' },
|
51
|
+
{ text: 'Using Remote Templates', link: '/remote-templates/using-remote-templates' },
|
52
|
+
{ text: 'Creating Remote Templates', link: '/remote-templates/creating-remote-templates' },
|
50
53
|
{ text: 'Template Config Reference', link: '/guide/template-config-reference' }
|
51
54
|
]
|
52
55
|
},
|
@@ -61,6 +64,8 @@ export default defineConfig({
|
|
61
64
|
text: 'CLI Reference',
|
62
65
|
items: [
|
63
66
|
{ text: 'create', link: '/cli/create' },
|
67
|
+
{ text: 'enhance', link: '/cli/enhance' },
|
68
|
+
{ text: 'list', link: '/cli/list' },
|
64
69
|
{ text: 'setup-cicd', link: '/cli/setup_cicd' }
|
65
70
|
]
|
66
71
|
}
|
@@ -8,7 +8,6 @@ The Agent Starter Pack follows a "bring your own agent" approach. It provides se
|
|
8
8
|
| Agent Name | Description | Use Case |
|
9
9
|
|------------|-------------|----------|
|
10
10
|
| `adk_base` | A base ReAct agent implemented using Google's [Agent Development Kit](https://github.com/google/adk-python) | General purpose conversational agent |
|
11
|
-
| `adk_gemini_fullstack` | A production-ready fullstack research agent with Gemini | Complex research and information synthesis |
|
12
11
|
| `agentic_rag` | A RAG agent for document retrieval and Q&A | Document search and question answering |
|
13
12
|
| `langgraph_base_react` | A base ReAct agent using LangGraph | Graph based conversational agent |
|
14
13
|
| `crewai_coding_crew` | A multi-agent system implemented with CrewAI | Collaborative coding assistance |
|
@@ -34,16 +33,6 @@ This template provides a minimal example of a ReAct agent built using Google's [
|
|
34
33
|
* Building general-purpose conversational agents.
|
35
34
|
* Learning the ADK framework and ReAct pattern.
|
36
35
|
|
37
|
-
### ADK Gemini Fullstack (`adk_gemini_fullstack`)
|
38
|
-
|
39
|
-
> 🔍 **Sample Agent**: This agent is part of the [ADK Samples](https://github.com/google/adk-samples/tree/main/python/agents/gemini-fullstack) collection, showcasing agent implementations using the Agent Development Kit.
|
40
|
-
|
41
|
-
This template provides a production-ready blueprint for building a sophisticated, fullstack research agent with Gemini. It demonstrates how the ADK helps structure complex agentic workflows, build modular agents, and incorporate critical Human-in-the-Loop (HITL) steps. Key features include:
|
42
|
-
|
43
|
-
* A complete React frontend and ADK-powered FastAPI backend
|
44
|
-
* Advanced agentic workflow where the agent strategizes a multi-step plan, reflects on findings to identify gaps, and synthesizes a final, comprehensive report.
|
45
|
-
* Iterative and Human-in-the-Loop research that involves the user for plan approval, then autonomously loops through searching and refining results.
|
46
|
-
|
47
36
|
### Agentic RAG (`agentic_rag`)
|
48
37
|
|
49
38
|
Built on the ADK, this template implements [Retrieval-Augmented Generation (RAG)](https://cloud.google.com/use-cases/retrieval-augmented-generation?hl=en) with a production-ready data ingestion pipeline for document-based question answering. It allows you to ingest, process, and embed custom data to enhance response relevance. Features include:
|
@@ -0,0 +1,176 @@
|
|
1
|
+
# create
|
2
|
+
|
3
|
+
Create new GCP-based AI agent projects from built-in agents or remote templates.
|
4
|
+
|
5
|
+
## Usage
|
6
|
+
|
7
|
+
```bash
|
8
|
+
uvx agent-starter-pack create PROJECT_NAME [OPTIONS]
|
9
|
+
```
|
10
|
+
|
11
|
+
## Arguments
|
12
|
+
|
13
|
+
- `PROJECT_NAME`: Name for your new agent project directory and base for resource naming.
|
14
|
+
*Note: This name will be converted to lowercase and must be 26 characters or less.*
|
15
|
+
|
16
|
+
## Template Selection
|
17
|
+
|
18
|
+
### `--agent`, `-a` TEMPLATE
|
19
|
+
Specify which template to use for your agent:
|
20
|
+
|
21
|
+
**Built-in agents:**
|
22
|
+
```bash
|
23
|
+
uvx agent-starter-pack create my-agent -a adk_base
|
24
|
+
uvx agent-starter-pack create my-agent -a chat_agent
|
25
|
+
```
|
26
|
+
|
27
|
+
**Remote templates:**
|
28
|
+
```bash
|
29
|
+
# Full GitHub URL
|
30
|
+
uvx agent-starter-pack create my-agent -a https://github.com/user/repo
|
31
|
+
|
32
|
+
# Shorthand notation
|
33
|
+
uvx agent-starter-pack create my-agent -a github.com/user/repo@main
|
34
|
+
|
35
|
+
# ADK samples shortcut
|
36
|
+
uvx agent-starter-pack create my-agent -a adk@gemini-fullstack
|
37
|
+
|
38
|
+
# Use your existing project as source
|
39
|
+
uvx agent-starter-pack create my-agent -a local@./path/to/project
|
40
|
+
```
|
41
|
+
|
42
|
+
If omitted, you'll see an interactive list of available agents.
|
43
|
+
|
44
|
+
## Deployment Options
|
45
|
+
|
46
|
+
### `--deployment-target`, `-d` TARGET
|
47
|
+
Deployment target for your agent:
|
48
|
+
- `cloud_run` - Deploy to Google Cloud Run
|
49
|
+
- `agent_engine` - Deploy to Google Cloud Agent Engine
|
50
|
+
|
51
|
+
### `--cicd-runner` RUNNER
|
52
|
+
CI/CD runner to use:
|
53
|
+
- `google_cloud_build` - Use Google Cloud Build
|
54
|
+
- `github_actions` - Use GitHub Actions
|
55
|
+
|
56
|
+
### `--region` REGION
|
57
|
+
GCP region for deployment (default: `us-central1`)
|
58
|
+
|
59
|
+
## Data & Storage Options
|
60
|
+
|
61
|
+
### `--include-data-ingestion`, `-i`
|
62
|
+
Include data ingestion pipeline components in the project.
|
63
|
+
|
64
|
+
### `--datastore`, `-ds` DATASTORE
|
65
|
+
Type of datastore for data ingestion (requires `--include-data-ingestion`):
|
66
|
+
- `vertex_ai_search`
|
67
|
+
- `vertex_ai_vector_search`
|
68
|
+
- `alloydb`
|
69
|
+
|
70
|
+
### `--session-type` TYPE
|
71
|
+
Session storage type (for Cloud Run deployment):
|
72
|
+
- `in_memory` - Store sessions in memory
|
73
|
+
- `alloydb` - Store sessions in AlloyDB
|
74
|
+
- `agent_engine` - Use Agent Engine session management
|
75
|
+
|
76
|
+
## Project Creation Options
|
77
|
+
|
78
|
+
### `--output-dir`, `-o` DIRECTORY
|
79
|
+
Output directory for the project (default: current directory)
|
80
|
+
|
81
|
+
### `--in-folder`
|
82
|
+
Create agent files directly in the current directory instead of creating a new project subdirectory.
|
83
|
+
|
84
|
+
**Standard behavior:**
|
85
|
+
```bash
|
86
|
+
uvx agent-starter-pack create my-agent -a template
|
87
|
+
# Creates: ./my-agent/[project files]
|
88
|
+
```
|
89
|
+
|
90
|
+
**In-folder behavior:**
|
91
|
+
```bash
|
92
|
+
uvx agent-starter-pack create my-agent -a template --in-folder
|
93
|
+
# Creates: ./[project files] (in current directory)
|
94
|
+
```
|
95
|
+
|
96
|
+
**Use cases:**
|
97
|
+
- Adding agent capabilities to existing projects
|
98
|
+
- Working within established repository structures
|
99
|
+
- Containerized development environments
|
100
|
+
|
101
|
+
**Automatic Backup:** When using `--in-folder`, a complete backup of your directory is automatically created as `.backup_[dirname]_[timestamp]` before any changes are made.
|
102
|
+
|
103
|
+
## Automation Options
|
104
|
+
|
105
|
+
### `--auto-approve`
|
106
|
+
Skip interactive confirmation prompts for GCP credentials and region.
|
107
|
+
|
108
|
+
### `--skip-checks`
|
109
|
+
Skip verification checks for GCP authentication and Vertex AI connection.
|
110
|
+
|
111
|
+
### `--debug`
|
112
|
+
Enable debug logging for troubleshooting.
|
113
|
+
|
114
|
+
## Examples
|
115
|
+
|
116
|
+
### Basic Usage
|
117
|
+
|
118
|
+
```bash
|
119
|
+
# Create a new project interactively
|
120
|
+
uvx agent-starter-pack create my-agent-project
|
121
|
+
|
122
|
+
# Create with specific built-in agent
|
123
|
+
uvx agent-starter-pack create my-agent -a adk_base -d cloud_run
|
124
|
+
```
|
125
|
+
|
126
|
+
### Remote Templates
|
127
|
+
|
128
|
+
```bash
|
129
|
+
# Use ADK samples
|
130
|
+
uvx agent-starter-pack create my-agent -a adk@gemini-fullstack
|
131
|
+
|
132
|
+
# Use GitHub repository
|
133
|
+
uvx agent-starter-pack create my-agent -a https://github.com/user/my-template
|
134
|
+
|
135
|
+
# Use shorthand notation with branch
|
136
|
+
uvx agent-starter-pack create my-agent -a github.com/user/template@develop
|
137
|
+
|
138
|
+
# Use your existing project
|
139
|
+
uvx agent-starter-pack create my-agent -a local@./my-project
|
140
|
+
```
|
141
|
+
|
142
|
+
### Advanced Configuration
|
143
|
+
|
144
|
+
```bash
|
145
|
+
# Include data ingestion with specific datastore
|
146
|
+
uvx agent-starter-pack create my-rag-agent -a adk_base -i -ds alloydb -d cloud_run
|
147
|
+
|
148
|
+
# Create with custom region and CI/CD
|
149
|
+
uvx agent-starter-pack create my-agent -a template-url --region europe-west1 --cicd-runner github_actions
|
150
|
+
|
151
|
+
# In-folder creation (add to existing project)
|
152
|
+
uvx agent-starter-pack create my-agent -a adk@data-science --in-folder
|
153
|
+
|
154
|
+
# Skip all prompts for automation
|
155
|
+
uvx agent-starter-pack create my-agent -a template-url --auto-approve --skip-checks
|
156
|
+
```
|
157
|
+
|
158
|
+
### Output Directory
|
159
|
+
|
160
|
+
```bash
|
161
|
+
# Create in specific directory
|
162
|
+
uvx agent-starter-pack create my-agent -o ./projects/
|
163
|
+
|
164
|
+
# Create in current directory with in-folder
|
165
|
+
uvx agent-starter-pack create existing-project -a template-url --in-folder
|
166
|
+
```
|
167
|
+
|
168
|
+
## Related Commands
|
169
|
+
|
170
|
+
- [`enhance`](./enhance.md) - Add agent capabilities to existing projects (automatically uses `--in-folder`)
|
171
|
+
- [`list`](./list.md) - List available templates and agents
|
172
|
+
|
173
|
+
## See Also
|
174
|
+
|
175
|
+
- [Using Remote Templates](../remote-templates/using-remote-templates.md) - Complete guide for using remote templates
|
176
|
+
- [Creating Remote Templates](../remote-templates/creating-remote-templates.md) - Guide for creating your own templates
|