# Build AI agents. Deploy instantly.

Describe the agent you want. camelAI builds a working AI app, deploys it to a live URL, and handles everything.

No API keys. No provider config. Just describe what you want.

## camelAI Chat

Build me a support chatbot that answers questions about our docs and cites the relevant page

camelAI is building...

Building

├─Scaffolded chat UI with streaming  
├─Built RAG pipeline for doc indexing  
├─Added source citations to responses  
├─Wired up Workers AI binding  
└─Published to support-bot--acme.camelai.app

## Every app gets AI built in.

The platform handles models, authentication, and infrastructure. You just describe what your AI should do.

### AI Models

Workers AI powers every deployed app natively. Your AI agent gets access to language models without any setup.

### No API Keys

Zero configuration. The platform virtualizes AI bindings at deploy time — your code never touches credentials or provider config.

### Streaming Responses

Real-time streaming out of the box. Your users see AI responses as they generate, just like ChatGPT.

### Persistent Conversations

Conversation history is stored automatically using Durable Objects. Your agent remembers every interaction.

### Custom Tools

Define tools your AI agent can call using Zod schemas. Weather lookups, database queries, API calls — anything.

### One-Click Deploy

One command to a live URL. Your AI app goes from code to *.camelai.app instantly. Share it with anyone.

## This is what camelAI builds for you.

Real production code. Cloudflare's AI chat framework, the Vercel AI SDK, streaming responses, persistent conversations. Not a prototype.

### workers/chat.ts

```javascript
import { AIChatAgent } from "@cloudflare/ai-chat";
import { createWorkersAI } from "workers-ai-provider";
import { streamText, createUIMessageStream,
  createUIMessageStreamResponse, convertToModelMessages
} from "ai";

export class Chat extends AIChatAgent<Env> {
  async onChatMessage(onFinish, options) {
    const workersai = createWorkersAI({
      binding: this.env.AI
    });

const stream = createUIMessageStream({
      execute: async ({ writer }) => {
        const result = streamText({
          model: workersai("auto", {}),
          messages: await convertToModelMessages(
            this.messages
          ),
          system: "You are a helpful assistant.",
        });
        writer.merge(result.toUIMessageStream());
      },
    });

return createUIMessageStreamResponse({ stream });
  }
}
```

This is the entire chat agent. The platform handles AI model routing, authentication, and message persistence. Your code stays clean.

## Your agent is more than a chatbot.

AI apps built on camelAI receive inputs, reason about them, use tools, and take action — all autonomously.

### Input

#### Trigger

A user asks a question. A webhook fires. A cron job runs. An email arrives.

### Receive

#### Your AI App

Your deployed app receives the request at its live URL. The full conversation context is already loaded.

### Process

#### Reason with AI

The agent thinks, calls tools, queries databases, fetches external data. All powered by Workers AI.

### Act

#### Take Action

Respond to the user. Update a database. Send a Slack message. Generate a report. Trigger the next step.

### Persistent context — your agent remembers everything across every interaction

## What will you build first?

Start with a sentence, not a product brief. camelAI turns the idea into a live AI app with models, storage, and deployment already wired in.

### Build from intent, not a spec

**Customer support chatbot**  
A chatbot trained on your docs that lives at a public URL. Answers questions, cites sources, handles follow-ups.

**Prompt**  
Public doc agent  
"Build a support chatbot that answers questions about our docs and cites the relevant page in every response"

**RAG over your docs**  
**Source citations**  
**URL summarizer**  
Live at support-bot--acme.camelai.app

**Document summarizer**  
Upload a PDF or paste text and get structured summaries. Extracts key points, action items, and decisions.

**AI writing assistant**  
Custom system prompts tuned to your brand voice. Write blog posts, emails, product copy — all on-brand.

**Lead qualification agent**  
Score inbound form submissions with AI. Route hot leads to sales, send nurture sequences to the rest.

## AI agents that do real work.

Give the agent a schedule, an inbox, memory, and live systems to work with. This is where camelAI stops being a prompt box and starts behaving like a persistent operator.

### Core loop

#### Persistent computer + deployed app

The agent keeps context across threads, uses real tools, and can act through the channels your team already works in. Not another static chatbot shell.

### Scheduled runtime

#### AI + Cron

+Runs without you  
An agent that wakes up on a schedule, analyzes fresh data, and acts on the results. Combine AI reasoning with automated triggers.

### Connected systems

#### AI + Integrations

+50+ integrations  
Pull data from Notion, Salesforce, or HubSpot. Analyze it with AI. Push results to Slack, email, or a dashboard.

### Persistent memory

#### AI + Database

+Stateful by default  
Store conversation history, build knowledge bases, track user interactions over time. Your agent gets smarter with every conversation.

### Native inbox

#### AI + Email

+Reply in thread  
Your agent has its own inbox. Email it tasks, questions, or data — it processes everything with AI and replies right to your thread.

## Frequently asked questions

### What's the difference between building an AI agent on camelAI vs. using an API like OpenAI directly?

### Can I deploy a custom AI chatbot to a live URL without managing servers?

### Do I need API keys to build an AI agent on camelAI?

### Can my AI agent connect to external tools and databases?

### How does conversation persistence work for AI agents built on camelAI?

## Describe the agent. We'll build it.

Start building AI-powered apps for free.
