agent-starter-pack 0.1.2__py3-none-any.whl → 0.1.4__py3-none-any.whl

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.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-starter-pack
3
- Version: 0.1.2
3
+ Version: 0.1.4
4
4
  Summary: CLI tool to create GCP-based AI agent projects from templates
5
5
  Author-email: Google LLC <agent-starter-pack@google.com>
6
6
  License: Apache-2.0
@@ -121,7 +121,10 @@ See the [documentation](docs/) for more details:
121
121
  - [CLI Reference](docs/cli/README.md)
122
122
  - [Troubleshooting](docs/troubleshooting.md)
123
123
 
124
- **Video Walkthrough:** A [20-Minute Video Walkthrough](https://youtu.be/kwRG7cnqSu0) is available, showcasing the previous `e2e-gen-ai-app-starter-pack`. A new walkthrough for the `agent-starter-pack` will be released soon!
124
+ ### Video Walkthrough:
125
+
126
+ - **March 6, 2025**: A [120 Minute livestream video demo](https://www.youtube.com/watch?v=yIRIT_EtALs&t=235s) of the new `agent-starter-pack` were we build 3 Agents under 30 minutes!
127
+ - **Oct 29, 2024**: A [20-Minute Video Walkthrough](https://youtu.be/kwRG7cnqSu0) is available, showcasing the previous `agent-starter-pack`.
125
128
 
126
129
  ## Contributing
127
130
 
@@ -51,7 +51,7 @@ src/base_template/deployment/terraform/dev/apis.tf,sha256=kUXkyN-fB8SKssVBxWKZvt
51
51
  src/base_template/deployment/terraform/dev/iam.tf,sha256=1-JimfsyqGdBWDU6YvYhBqBfNW9T7PqXTeE5cbzgx2Q,3138
52
52
  src/base_template/deployment/terraform/dev/log_sinks.tf,sha256=SPse4k-L8f6-vEYMtwqFfhF6bQnoGVpycpwTRD7L0v4,2578
53
53
  src/base_template/deployment/terraform/dev/providers.tf,sha256=DoRNfVxdpwnTHTxQ97-cguBCeeRDYz7EPKsy0-f_t1I,878
54
- src/base_template/deployment/terraform/dev/storage.tf,sha256=bjpZ5WzO0w6wGAIT_Ye61aS1sTlO128uayIvcgqGMoA,2965
54
+ src/base_template/deployment/terraform/dev/storage.tf,sha256=m7xw1ukN8aTeDCTm5kT2vgRJ7gfiNTpwZYZdnUCpzBA,2509
55
55
  src/base_template/deployment/terraform/dev/variables.tf,sha256=wMgDgp1E-piGhcF1WbwHFSj2NJseB7eZzAjup6bBhEQ,4063
56
56
  src/base_template/deployment/terraform/dev/vars/env.tfvars,sha256=xz5cYG29ZIgqM1K-0o-RB10oBTDKNIhHMY7qrmjHk8I,922
57
57
  src/base_template/deployment/terraform/vars/env.tfvars,sha256=2dxWRDzeolN2f7eKSHXcBiBt9fRcIMO6VH-2MAZevLQ,1633
@@ -128,15 +128,16 @@ src/frontends/live_api_react/frontend/src/utils/utils.ts,sha256=qQIhLzfyCBLecU0k
128
128
  src/frontends/live_api_react/frontend/src/utils/worklets/audio-processing.ts,sha256=ULgnXphZUfbHkRhGoPT_670WHjzaXJwWgYU0ISQRSXI,1979
129
129
  src/frontends/live_api_react/frontend/src/utils/worklets/vol-meter.ts,sha256=DEXn9ywn7N_tqKBhQ9eUxvWCWqteyfT-Q0dwjbvjjpY,1780
130
130
  src/frontends/streamlit/frontend/side_bar.py,sha256=HWMu8TRz7GZUMIoppUdAGO57IvhzTbO-P8HJLFIhTtc,8827
131
- src/frontends/streamlit/frontend/streamlit_app.py,sha256=xHvoj4QtpicMuueg6xNd693m5JNRWjGW32DjCBRg5fc,9747
131
+ src/frontends/streamlit/frontend/streamlit_app.py,sha256=O-mF9-0nSL220mZSohKK6QrdSiaRsUJL1o_XeKdj8zo,9868
132
132
  src/frontends/streamlit/frontend/style/app_markdown.py,sha256=4H9GGlaOIbG_4T4QvHyTMfoeumJze7cZ2VuGIv39wFo,1050
133
133
  src/frontends/streamlit/frontend/utils/chat_utils.py,sha256=Z0OYQu-14_d9tDmH9Z4Vvi8xpSUEm9vuPZ8wmFgl4sQ,2262
134
134
  src/frontends/streamlit/frontend/utils/local_chat_history.py,sha256=9wc8L8j4tk10DBPQdV64kdZvqE1fHxC2esK8szid0l8,4741
135
135
  src/frontends/streamlit/frontend/utils/message_editing.py,sha256=YWoPe2KeWMuL3YVTm0am6MK3kzjEIYVmdkdwTQpmGdQ,2263
136
136
  src/frontends/streamlit/frontend/utils/multimodal_utils.py,sha256=v6YbCkz_YcnEo-9YvRjwBNt0SzU4M39bYxJGmKk69vE,7313
137
- src/frontends/streamlit/frontend/utils/stream_handler.py,sha256=Gl_HqRQ4sFiHG-kPGFbr2u4WLus676L2dkMz46Bq0fc,11574
137
+ src/frontends/streamlit/frontend/utils/stream_handler.py,sha256=PZxffzmJqj_u_5DDx8TFuXFl9C756-oK_m6VAhlo4rg,11971
138
138
  src/frontends/streamlit/frontend/utils/title_summary.py,sha256=B0cadS_KPW-tsbABauI4J681aqjEtuKFDa25e9R1WKc,3030
139
139
  src/resources/containers/data_processing/Dockerfile,sha256=uXjqDiSrr7YpoX-vtzaIJIVXZ2qeUpu1Nzju9qWZ9oI,859
140
+ src/resources/containers/e2e-tests/Dockerfile,sha256=Q_aTyX_iaFY8j06XZkpMuggJnNO5daiLmmrvqaZHMxw,1611
140
141
  src/resources/locks/uv-agentic_rag_vertexai_search-agent_engine.lock,sha256=6muWlgt4dduqGDiGUvTg-d2zzY5rgW9zP9DbDnt3krc,474353
141
142
  src/resources/locks/uv-agentic_rag_vertexai_search-cloud_run.lock,sha256=ViUzp35RGWZiiQvvVi6ntFTT-bEbHg4_HDDQznD4ML8,756574
142
143
  src/resources/locks/uv-crewai_coding_crew-agent_engine.lock,sha256=TOICJcW3ajjycUfK-bzY6hEZaMRiGf521z1e9n0BwQI,568962
@@ -150,8 +151,8 @@ src/resources/setup_cicd/providers.tf,sha256=Km4z6IJt7x7PLaa0kyZbBrO2m3lpuIJZFD5
150
151
  src/utils/generate_locks.py,sha256=xu5IAhGGBPkVQGSJX4kk7_JNDwWJUEaXAHbmaQIohbg,4386
151
152
  src/utils/lock_utils.py,sha256=_QdzQtgIbCmJ87s046_i1g966slVNmvr3bJDeHbRQSM,2419
152
153
  src/utils/watch_and_rebuild.py,sha256=IdbTLReYknTXXu5KWPz3sc7Zg5HTEMS5UVlMSnuhs5E,6067
153
- agent_starter_pack-0.1.2.dist-info/METADATA,sha256=UiAHSpbBqjztaTdeDjwgLR-kNbh2Nb7QjPa20o4kaxk,7576
154
- agent_starter_pack-0.1.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
155
- agent_starter_pack-0.1.2.dist-info/entry_points.txt,sha256=U7uCxR7YulIhZ0L8R8Hui0Bsy6J7oyESBeDYJYMrQjA,56
156
- agent_starter_pack-0.1.2.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
157
- agent_starter_pack-0.1.2.dist-info/RECORD,,
154
+ agent_starter_pack-0.1.4.dist-info/METADATA,sha256=fp6UjfA1O-M8Mo_vN41tSmjPxTYseeun5WOi5OzYI74,7701
155
+ agent_starter_pack-0.1.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
156
+ agent_starter_pack-0.1.4.dist-info/entry_points.txt,sha256=U7uCxR7YulIhZ0L8R8Hui0Bsy6J7oyESBeDYJYMrQjA,56
157
+ agent_starter_pack-0.1.4.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
158
+ agent_starter_pack-0.1.4.dist-info/RECORD,,
@@ -22,18 +22,6 @@ resource "google_storage_bucket" "logs_data_bucket" {
22
22
  prevent_destroy = false
23
23
  ignore_changes = all
24
24
  }
25
-
26
- # Use this block to create the bucket only if it doesn't exist
27
- count = length(data.google_storage_bucket.existing_bucket) > 0 ? 0 : 1
28
- depends_on = [resource.google_project_service.services]
29
- }
30
-
31
- data "google_storage_bucket" "existing_bucket" {
32
- name = "${var.dev_project_id}-logs-data"
33
- project = var.dev_project_id
34
-
35
- # Capture the error if the bucket doesn't exist
36
- count = can(data.google_storage_bucket.existing_bucket[0]) ? 1 : 0
37
25
  depends_on = [resource.google_project_service.services]
38
26
  }
39
27
 
@@ -239,8 +239,10 @@ def display_feedback(side_bar: SideBar) -> None:
239
239
  )
240
240
  if feedback is not None:
241
241
  client = Client(
242
- agent_callable_path=side_bar.agent_callable_path,
243
242
  remote_agent_engine_id=side_bar.remote_agent_engine_id,
243
+ agent_callable_path=side_bar.agent_callable_path,
244
+ url=side_bar.url_input_field,
245
+ authenticate_request=side_bar.should_authenticate_request,
244
246
  )
245
247
  client.log_feedback(
246
248
  feedback_dict=feedback,
@@ -124,9 +124,20 @@ class Client:
124
124
  headers = {
125
125
  "Content-Type": "application/json",
126
126
  }
127
- if self.authenticate_request:
128
- headers["Authorization"] = f"Bearer {self.id_token}"
129
- requests.post(url, data=json.dumps(feedback_dict), headers=headers, timeout=10)
127
+ if self.url:
128
+ url = urljoin(self.url, "feedback")
129
+ headers = {
130
+ "Content-Type": "application/json",
131
+ }
132
+ if self.authenticate_request:
133
+ headers["Authorization"] = f"Bearer {self.id_token}"
134
+ requests.post(
135
+ url, data=json.dumps(feedback_dict), headers=headers, timeout=10
136
+ )
137
+ elif self.agent is not None:
138
+ self.agent.register_feedback(feedback=feedback_dict)
139
+ else:
140
+ raise ValueError("No agent or URL configured for feedback logging")
130
141
 
131
142
  def stream_messages(
132
143
  self, data: dict[str, Any]
@@ -0,0 +1,19 @@
1
+ FROM ghcr.io/astral-sh/uv:python3.11-bookworm-slim
2
+ RUN apt-get update && apt-get install -y wget sudo apt-transport-https ca-certificates gnupg curl software-properties-common && \
3
+ # Setup GitHub CLI
4
+ sudo mkdir -p -m 755 /etc/apt/keyrings && \
5
+ wget -q -O- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null && \
6
+ sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
7
+ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null && \
8
+ # Setup Google Cloud SDK
9
+ echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \
10
+ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - && \
11
+ # Setup Terraform
12
+ wget -q -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null && \
13
+ echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list > /dev/null && \
14
+ # Install all packages at once
15
+ apt-get update && \
16
+ apt-get install -y gh google-cloud-cli terraform && \
17
+ # Clean up
18
+ apt-get clean && \
19
+ rm -rf /var/lib/apt/lists/*