# What is Agentuity?

The full-stack platform for building, deploying, and operating AI agents

Write TypeScript, define routes, and deploy with a single command. We handle the infrastructure, from automatic scaling to built-in observability and more.

Here's a basic example:

```typescript
import { createAgent } from '@agentuity/runtime';
import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { s } from '@agentuity/schema';

const agent = createAgent('Chat', {
  schema: {
    input: s.object({ message: s.string() }),
    output: s.object({ response: s.string() }),
  },
  handler: async (ctx, input) => {
    const { text } = await generateText({
      model: openai('gpt-5.4-nano'),
      prompt: input.message,
    });
    return { response: text };
  },
});

export default agent;
```

This agent uses the AI SDK to call OpenAI and respond to messages. Deploy with `agentuity deploy` and it scales automatically. Call it from web apps, other agents, or any HTTP client.

## What You Get

- **Routes & Triggers**: HTTP, WebSocket, SSE, and scheduled work
- **Storage**: Key-value, vector, object storage, durable streams
- **[Sandbox](/services/sandbox)**: Execute code in isolated containers with controlled resources and network access
- **[AI Gateway](/agents/ai-gateway)**: Route LLM calls through OpenAI, Anthropic, Google, and more
- **Type Safety**: Built-in schema validation with `@agentuity/schema`, Zod, or Valibot
- **Observability**: Logging, tracing, real-time analytics
- **[Web App](https://app.agentuity.com)**: Visual dashboard for deployments, logs, and more
- **Frontend**: Deploy React apps alongside your agents

## How It Works

Each agent lives in its own file under `src/agent/`. Routes are defined separately in `src/api/index.ts`:

| File           | Purpose                              |
| -------------- | ------------------------------------ |
| `agent.ts`     | Agent logic with schema validation   |
| `api/index.ts` | HTTP endpoints that call your agents |

Infrastructure like routes and scheduled work is defined in code, not config. Rolling back a deployment restores the exact configuration from that version.

---

<p className="text-base text-cyan-800 dark:text-cyan-500 mb-6">We're building for a future where agents are the primary way to build and operate software, and where infrastructure is purpose-built for this new paradigm.</p>

## Next Steps

- [Installation](/get-started/installation): Set up your environment
- [Quickstart](/get-started/quickstart): Build your first agent in 5 minutes