CAMELRUN · OPEN SOURCE · AGPL
Cloud hosting for AI agents
Define an agent's model, instructions, tools, and channels. camelRun runs the agent loop, keeps its history, and wakes it when there is work.
import { Agents } from "@camelai/run";
const agents = new Agents(); // CAMELAI_API_KEY
const agent = await agents.upsert("support-triage", { model: "anthropic/ claude-sonnet-5-5", instructions: "Be concise." });
console.log((await agent.run( "Which tickets look urgent?")).text);
await agents.close();What it is
Deploy AI agents without managing infrastructure
Most teams putting an AI agent in their product build the agent loop and the hosting themselves. camelRun is the off-the-shelf version, the way teams use Postgres instead of writing their own database.
- Model
- anthropic/
claude-sonnet-5-5 - Instructions
- "Be concise."
- Tools
- weather
- Channels
- slack
- The agent
loop - History and compaction
- Code sandbox
- Wake-ups and schedules
- Scaling to thousands of agents
Scale
Run thousands of AI agents at once
Give every customer, ticket, or pull request its own agent, and scale up without talking to sales.
Durability
AI agents that survive deploys and crashes
An agent's history, files, and pending work live in camelRun, not in your app. When a server goes away, another one picks up where it left off.
the turn to finish
repeat a tool call
person, not billed
Tools
Connect your tools with OpenAPI, MCP, or your own code
camelRun makes every tool call, so the model never sees your credentials. If your app stops answering, the call fails and the agent keeps working.
Every operation becomes a tool.
Remote servers, including ones that need auth.
TypeScript or Python functions, no public endpoint.
Web search, web fetch, schedules, and asking the user.
Every operation becomes a tool.
Remote servers, including ones that need auth.
TypeScript or Python functions, no public endpoint.
Web search, web fetch, schedules, and asking the user.
Channels
Put your agent in Slack, Discord, email, GitHub, or your own app
Connect a channel in the console and every thread, email, or pull request gets its own agent. Telegram and webhooks from services like Sentry, Linear, and Stripe work too.
One agent per thread.
alice: @agent Delete the preview environment pr-4312.
agent: Approve this action? delete_environment (application) with {"name":"pr-4312"} Reply approve or deny.
alice: approve
agent: Deleted pr-4312.
No lock-in
Use any model, bring your own keys, or host camelRun yourself
Switch an agent's model at any time and it keeps its history. camelRun is open source under the AGPL. Self-hosting takes one Docker container and Postgres.
- Anthropic, model id anthropic/claude-sonnet-5-5
- OpenAI, model id openai/gpt-5.2
- OpenRouter, model id openrouter/anthropic/claude-sonnet-5
- Ollama, model id home-ollama/qwen3:32b
- Amazon Bedrock, model id amazon-bedrock/global.anthropic.claude-sonnet-5-5
- vLLM
Pricing
Pay only for the time your agents spend working
Idle and sleeping agents cost only storage.
$0.01 per agent-hour of active run time
For GitHub accounts older than 30 days
- Storage
- $0.10per GB-month
- Model tokens
- $0 on your keysList price on our keys, no markup
- Web search
- $0.001 to $0.007per search
FAQ
Questions about camelRun
Run your first AI agent in five minutes
Sign in with GitHub, create an API key, and run the quickstart.
npm install @camelai/run
export CAMELAI_API_KEY=art_...
npx tsx quickstart.ts
pip install camelai-run
export CAMELAI_API_KEY=art_...
python quickstart.py
claude mcp add --transport http camelrun https:// run.camelai.com/ mcp