From be999e312ba3a5733f66b4ddd36dc6f269312e5c Mon Sep 17 00:00:00 2001 From: thorwebdev <5748289+thorwebdev@users.noreply.github.com> Date: Thu, 15 Jan 2026 18:12:07 +0800 Subject: [PATCH 1/4] chore: fix gitignore. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index e10ddfd..6c12876 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ .ruff_cache uv.lock .venv +node_modules +rest/nodejs/dist \ No newline at end of file From fdadbeacaa8abd876a7f793b32eff5c7813043f2 Mon Sep 17 00:00:00 2001 From: thorwebdev <5748289+thorwebdev@users.noreply.github.com> Date: Thu, 15 Jan 2026 18:20:24 +0800 Subject: [PATCH 2/4] fix: vulnerability. --- rest/nodejs/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rest/nodejs/package-lock.json b/rest/nodejs/package-lock.json index 76459c3..582a8da 100644 --- a/rest/nodejs/package-lock.json +++ b/rest/nodejs/package-lock.json @@ -1383,9 +1383,9 @@ "license": "MIT" }, "node_modules/hono": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.1.tgz", - "integrity": "sha512-KsFcH0xxHes0J4zaQgWbYwmz3UPOOskdqZmItstUG93+Wk1ePBLkLGwbP9zlmh1BFUiL8Qp+Xfu9P7feJWpGNg==", + "version": "4.11.4", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.4.tgz", + "integrity": "sha512-U7tt8JsyrxSRKspfhtLET79pU8K+tInj5QZXs1jSugO1Vq5dFj3kmZsRldo29mTBfcjDRVRXrEZ6LS63Cog9ZA==", "license": "MIT", "engines": { "node": ">=16.9.0" From c9e7a96ef13aaef5ecd51f5ea4a117446ea14cfd Mon Sep 17 00:00:00 2001 From: thorwebdev <5748289+thorwebdev@users.noreply.github.com> Date: Thu, 15 Jan 2026 18:33:03 +0800 Subject: [PATCH 3/4] chore: update README with more guidance. --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index 61eaa64..e447fb4 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,33 @@ Zod. * Demonstrates implementation of UCP specifications for shopping, checkout, and order management using a Node.js stack. +### Agentic Commerce (A2A) + +Demonstrates how to build AI-powered shopping assistants using UCP as an +extension to the [A2A (Agent-to-Agent) protocol](https://google.github.io/A2A/). + +* **[Full A2A Sample](a2a/README.md)**: Overview of the agentic commerce + architecture. +* **Business Agent**: AI shopping assistant built with Python, Google ADK, and + Gemini. +* **Chat Client**: React-based UI that renders UCP data types for + conversational commerce. + +## Which Sample to Use? + +This repository contains two different ways to implement UCP based on your +use-case: + +| Use Case | Recommended Sample | Protocol | +| :--- | :--- | :--- | +| **Traditional E-commerce** | [REST Samples](rest/) | Standard RESTful HTTP | +| **AI / Conversational Commerce** | [A2A Samples](a2a/) | JSON-RPC over A2A | + +* Use the **REST Samples** if you are building a standard web store backend and + want to follow the official UCP REST specification. +* Use the **A2A Samples** if you are building an AI agent that needs to help + users shop through natural language. + ## Getting Started Please refer to the specific README files linked above for detailed instructions From aca36cafabd1b370c0bc31f6088ab47e06ba7a94 Mon Sep 17 00:00:00 2001 From: thorwebdev <5748289+thorwebdev@users.noreply.github.com> Date: Thu, 15 Jan 2026 22:39:42 +0800 Subject: [PATCH 4/4] fix: prevent api key leakage. --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 6c12876..f215918 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ uv.lock .venv node_modules -rest/nodejs/dist \ No newline at end of file +rest/nodejs/dist +.env \ No newline at end of file