If you've tried building AI agents on other platforms, you've probably hit the same wall: YAML configuration files, drag-and-drop builders that break on complex logic, and "low-code" tools that are really just high-friction code.
Lua takes a fundamentally different approach. We believe developers should write real code with real tools.
TypeScript all the way down
Every agent on Lua is a TypeScript project. You get full IDE support — autocomplete, type checking, refactoring, debugging. Your agent logic is real code that you can test, version control, and review in pull requests.
Here's what a Lua tool looks like:
import { LuaTool } from 'lua-cli';
import { z } from 'zod';
export class CheckOrderStatus implements LuaTool {
name = "check_order_status";
description = "Look up the status of a customer order";
inputSchema = z.object({
orderId: z.string().describe("The order ID to look up")
});
async execute(input) {
const order = await fetchOrder(input.orderId);
return {
status: order.status,
estimatedDelivery: order.eta,
trackingUrl: order.tracking
};
}
}That's it. A TypeScript class with a Zod schema for input validation. No YAML. No configuration language. No proprietary DSL to learn.
A modern developer workflow
The Lua CLI gives you a workflow that feels familiar:
# Create a new agent project
lua init my-support-agent
# Start development with live reload
lua dev
# Test interactively in the terminal
lua chat
# Deploy to production
lua deployDuring development, lua dev gives you live reload — change a file, and your agent updates instantly. lua chat lets you test conversations right in your terminal before deploying.
Skills and tools architecture
Lua organizes agent capabilities into Skills — collections of related Tools that your agent can use. A customer support skill might include tools for checking order status, processing refunds, and updating shipping addresses.
This architecture keeps your code modular and testable. Each tool is an independent TypeScript class that you can unit test, mock, and compose into different skill sets for different agents.
30+ starter templates
You don't have to start from scratch. Lua provides over 30 working code examples covering common use cases — from weather APIs to full e-commerce flows. Clone a template, customize it, and deploy. Most developers go from install to production in under 5 minutes.
Zero infrastructure overhead
The best part? You write TypeScript and we handle everything else. Hosting, scaling, load balancing, CDN delivery, environment variables, logs, monitoring — all managed by Lua. You focus on business logic. We focus on keeping it running.
Try the quickstart guide and deploy your first agent in minutes.