Skip to content

Build agents in code.

Install the CLI, write tools in TypeScript, test locally and deploy. Your agents work in the same Workspace as your team.

src/tools/score-account.ts
// A tool the Account Strategist can call
export default defineTool({
  name: "score_account",
  description: "Score an account against our ideal customer",
  input: z.object({ domain: z.string() }),
  run: async ({ domain }) => {
    const co = await crm.company(domain);
    return { score: fit(co), why: reasons(co) };
  }
});
Terminal
$ lua test
✓ score_account · 12 cases passed
$ lua push
✓ Version 14 pushed
$ lua deploy
✓ Live · app ready in Workspaces

Governance in code

Block tools, require approval on others and scan for prompt injection, declared on the agent.

Workflows and jobs

Scheduled runs, approval steps, goals and signals, tested offline.

Apps

A Vite and React app per agent, with typed routes that run on Lua and the agent in a side pane.

Build in code. Watch it work in Workspaces.