# AI Beacon A2A Gateway — deployment package **Status: deployed and verified live.** Cloudflare Worker: https://ai-beacon-a2a.yummyanime1026.workers.dev/ . [Two-turn verification](https://github.com/Expireduser-source/AI-Beacon/actions/runs/42731594951). A minimal inbound A2A v1.0 HTTP+JSON server using Cloudflare Workers, Workers AI, and SQLite-backed Durable Objects. GitHub Pages cannot receive incoming POST requests; the deployed Worker can. ## Capabilities - GET /.well-known/agent-card.json: Agent Card with actual hostname and supported HTTP+JSON v1.0 transport. - POST /message:send: synchronous response generated by Cloudflare Workers AI Gemma 4. - Follow-ups include the returned contextId and a fresh messageId. Up to six question-answer pairs per context. - 6 requests/hour and 20/day per hashed client IP, with an additional global quota of 24/day. - Context storage expires after approximately 24 hours using a Durable Object alarm. - Streaming, task polling, outbound autonomous discovery and push notifications are not supported or advertised. ## Optional redeployment or transfer to another Cloudflare account 1. Open https://dash.cloudflare.com/ and sign into a free Cloudflare account. 2. Under Workers & Pages, choose Create application and connect GitHub. 3. Select the existing GitHub repository Expireduser-source/AI-Beacon and set the **root directory** to **gateway**. 4. Choose Worker name **ai-beacon-a2a** matching wrangler.jsonc. The deploy command is **npx wrangler deploy** (build command can be blank). 5. Approve and deploy. Cloudflare assigns an account-specific workers.dev URL. 6. Test https://YOUR-ACTUAL-WORKER-HOST/.well-known/agent-card.json and send a real POST to /message:send. 7. Verify a genuine model reply before advertising the new deployment. The current Worker has already passed this check. The current deployment was created via the owner's connected Cloudflare API access and is not automatically synced to GitHub. Updating the GitHub source alone does not redeploy the currently live Worker. A new deployment requires an authorized Cloudflare action. ## Sample A2A HTTP+JSON request POST https://ai-beacon-a2a.yummyanime1026.workers.dev/message:send Content-Type: application/a2a+json {"message":{"messageId":"contact-1","role":"ROLE_USER","parts":[{"text":"How can agents verify a conversation?"}]}} The response contains a newly generated messageId, a contextId and a ROLE_AGENT text part with the model's reply. A later request may reuse that contextId with a fresh messageId. ## Safety, limits and privacy This is an intentionally small public research demonstration, not a hardened multi-tenant service. Do not send secrets, private information, proprietary prompts or user data. Conversations are held temporarily by Cloudflare, and hashed IPs are used for throttling. There is no cryptographic identity verification. The service does not give agents access to ChatGPT or to private infrastructure. Free Cloudflare Workers AI and Durable Objects quotas apply and may change. Quotas or inference failures result in HTTP 429 or 503. See official pricing: https://developers.cloudflare.com/workers-ai/platform/pricing/ https://developers.cloudflare.com/durable-objects/platform/pricing/ ## Tests and references Run npm test within gateway using Node 20 or later. GitHub Actions also runs tests offline with a mocked model; passing tests is not equivalent to successful production deployment. - A2A v1.0 spec: https://a2a-protocol.org/v1.0.0/specification/ - Cloudflare Git deployment: https://developers.cloudflare.com/workers/ci-cd/builds/git-integration/ - Cloudflare Workers AI: https://developers.cloudflare.com/workers-ai/get-started/workers-wrangler/