{"id":26745206,"url":"https://github.com/cloudflare/ai","last_synced_at":"2026-04-05T14:03:19.338Z","repository":{"id":283116296,"uuid":"948501453","full_name":"cloudflare/ai","owner":"cloudflare","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-01T21:47:12.000Z","size":14958,"stargazers_count":983,"open_issues_count":50,"forks_count":267,"subscribers_count":16,"default_branch":"main","last_synced_at":"2026-04-02T02:34:29.438Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudflare.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-14T12:57:48.000Z","updated_at":"2026-04-01T18:46:59.000Z","dependencies_parsed_at":"2025-10-03T17:24:30.620Z","dependency_job_id":"5e066d94-7920-4f5c-ba0a-a550478011e8","html_url":"https://github.com/cloudflare/ai","commit_stats":null,"previous_names":["cloudflare/ai"],"tags_count":93,"template":false,"template_full_name":null,"purl":"pkg:github/cloudflare/ai","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudflare","download_url":"https://codeload.github.com/cloudflare/ai/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudflare%2Fai/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31437928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T13:13:19.330Z","status":"ssl_error","status_checked_at":"2026-04-05T13:13:17.778Z","response_time":75,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-28T08:15:52.680Z","updated_at":"2026-04-05T14:03:19.319Z","avatar_url":"https://github.com/cloudflare.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","AI \u0026 Machine Learning"],"sub_categories":["Storage Solutions"],"readme":"# Cloudflare AI\n\nPackages and examples for building AI-powered applications on Cloudflare. Includes providers for the [Vercel AI SDK](https://sdk.vercel.ai/) and [TanStack AI](https://tanstack.com/ai), with support for [Workers AI](https://ai.cloudflare.com/) and [AI Gateway](https://developers.cloudflare.com/ai-gateway/).\n\n## Packages\n\n| Package                                                  | Description                                                                                                                                                                   | npm                                                                                                                   |\n| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |\n| [`workers-ai-provider`](./packages/workers-ai-provider/) | Workers AI provider for the Vercel AI SDK. Chat, image generation, embeddings, transcription, text-to-speech, and reranking.                                                  | [![npm](https://img.shields.io/npm/v/workers-ai-provider)](https://www.npmjs.com/package/workers-ai-provider)         |\n| [`@cloudflare/tanstack-ai`](./packages/tanstack-ai/)     | Workers AI and AI Gateway adapters for TanStack AI. Chat, image, transcription, TTS, summarization, plus gateway routing for OpenAI, Anthropic, Gemini, Grok, and OpenRouter. | [![npm](https://img.shields.io/npm/v/@cloudflare/tanstack-ai)](https://www.npmjs.com/package/@cloudflare/tanstack-ai) |\n| [`ai-gateway-provider`](./packages/ai-gateway-provider/) | AI Gateway provider for the Vercel AI SDK. Route requests through Cloudflare's AI Gateway for caching, rate limiting, and observability.                                      | [![npm](https://img.shields.io/npm/v/ai-gateway-provider)](https://www.npmjs.com/package/ai-gateway-provider)         |\n\n## Examples\n\n| Example                                           | Description                                                                                                                                                                                                                                                 |\n| ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [`examples/workers-ai`](./examples/workers-ai/)   | Full-featured Workers AI playground using the Vercel AI SDK. Demonstrates all 6 capabilities: chat (with tool calling and reasoning), image generation, embeddings, transcription, text-to-speech, and reranking. Supports both binding and REST API modes. |\n| [`examples/tanstack-ai`](./examples/tanstack-ai/) | Multi-provider demo using TanStack AI. Provider-first UI with Workers AI (binding and gateway), OpenAI, Anthropic, Gemini, Grok, and OpenRouter — each with capability sub-tabs for chat, image, summarize, transcription, and TTS.                         |\n\n## Demos\n\nThe [`demos/`](./demos/) directory contains additional focused demos for specific patterns — tool calling, structured output, agents, MCP servers, and more. See [demos.json](./demos.json) for the full list.\n\n## Local Development\n\n```bash\n# Clone and install\ngit clone git@github.com:cloudflare/ai.git\ncd ai\npnpm install\n\n# Run an example\ncd examples/workers-ai\npnpm dev\n\n# Run tests for a package\ncd packages/workers-ai-provider\npnpm test\n\n# Run E2E tests (requires Cloudflare credentials)\npnpm test:e2e\n```\n\n## Contributing\n\n1. Fork or clone the repo, then `pnpm install` from the root.\n2. Create a branch for your change.\n3. If your change affects a published package, run `pnpm changeset` and describe what changed.\n4. Submit a PR to `main`.\n\n## Release Process\n\nThis repo uses [Changesets](https://github.com/changesets/changesets). When a PR with changesets merges to `main`, a \"Version Packages\" PR is created automatically. Merging that PR bumps versions and publishes to npm.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudflare%2Fai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudflare%2Fai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudflare%2Fai/lists"}