Internal tools you can stop worrying about

With Avo, your Rails app is your company's command center, whether that means a support desk, patient records, an inventory app, or all three. Support, ops, and finance ask it questions and get answers, not tickets, from the app, the AI chat, MCP, or the CLI.

You stay in control: permissions decide who sees what, nothing changes until someone clicks Confirm, and every change leaves an audit trail.

Free to start. Unlimited users. No per-seat fees.

one app, five ways in

Click, ask, or automate.

Your team clicks through ready-made screens, or asks the chat in plain words. Their AI client connects over MCP, and your scripts and integrations use the CLI and the REST API. You describe each model once, in a short Ruby file, and the same permissions answer on all five.

Avo at the header tank on a terraced hillside, one hand on the valve wheel, as water runs from the one tank down five terraces of avocado trees to a pond.

The UI

for your whole team

Your team finds, edits, and acts on records in screens that are already built, with search, filters, and actions for every model. Nobody has to design a screen first.

Chat

for teammates, in plain words

An AI chat bar on every page. A teammate asks for last week's failed orders or runs an action, and nothing changes until they click Confirm.

MCP server

for the AI client your team already uses

Connect Claude, Cursor, or ChatGPT to your app. An admin approves each client on a consent screen and picks what it may read and write.

CLI

for developers, scripts, and coding agents

List, create, update, and delete records with one command each. Tables for people, JSON for scripts.

REST API

for integrations, partners, and mobile apps

Every model you add gets a documented JSON API with an OpenAPI spec. No serializers to write, no routes to wire up.

five ways in, one set of rules

You decide who sees what. On all five.

Five ways into your data only works if the same rules stand at each one. They do.

who can see what

  • Write a rule once. It holds everywhere.

    The same rule answers in the UI, the chat, over MCP, the CLI, and the API.

    Authorization add-on, in every bundle

    See how to write a policy (docs, opens in a new tab)
  • Forget a rule, and the answer is no.

    Once authorization is on, anything you haven't allowed is denied. A missing rule shuts a record. It doesn't open it.

  • Hide a field once. It's gone everywhere.

    Not on any screen, not in search, not in the API, not in what an AI client reads. Nobody can write to it either.

who is on the other end

  • Everything acts as a real person.

    The chat, an AI client, and an API token each act as one teammate. They can never do more than that person can.

  • Connections start read-only.

    An admin approves each AI client, picks what it may read and write, and can end it any time. Tokens are never stored in a readable form.

  • Every change has a name on it.

    Audit logging records who did it and how they got in, whether that was the UI, the chat, an AI client, or a token.

It all runs inside your own Rails app, on your own database. No customer data reaches us. Every vulnerability we fix is published, and the fix reaches your app with bundle update.

Read the full security record
01

the app behind the app

You don't build one app, you build two.

The first app is the product people pay for. The second is the internal tooling behind it: the admin panels, dashboards, and CRUD screens your team lives in. It's never finished, and no company ever won its market because the admin panel was great. Build the second app from scratch and you carry two apps. Build it on Avo and most of it is already there.

02

"just have the agent build it"

Your agent can build the admin. Don't make it start from zero.

Start from a blank app and the agent spends the session, and your tokens, building the same foundation every admin needs: tables, forms, pagination, search, auth wiring, permissions. On the next app it builds that foundation again, a little differently, and each version is new code to review and trust from zero. The speed is real. The foundation shouldn't be new every time.

03

where Avo comes in

Most of the second app is already built.

It's already built, reviewed by the Avo team, and running in hundreds of apps. Select-all that means the whole query, not just the visible page. Confirmation on the actions that deserve it. Permissions you write once. The stack decisions are made and still yours to override, and the gem ships skills your agent reads, so what it writes is a short Ruby resource you can review.

One app to maintain instead of two.

Read the full story

What you don't have to build

Every admin needs the same foundation. With Avo it comes built, reviewed, and maintained.

The same foundation in every app

Every app starts from Avo, so what you reviewed and trusted in the last one carries into the next.

Tokens, time, and focus go to your product

An Avo resource is a short Ruby file, so your agent spends fewer tokens and your attention goes to your business logic.

Your data stays correct

Validations, associations, and the edge cases that only show up across many apps are already handled.

Vetted by hundreds of customers, better every release

Every release is reviewed by the Avo core team and exercised across hundreds of real apps, and upgrades arrive with bundle update.

In their own words

We are migrating from ActiveAdmin to Avo and both in terms of Developer experience and User experience, it is a game changer!

Adrien Poly
Adrien Poly
CTO, Plume

When I added Avo to the project I was not expecting much. Just another admin panel gem...

But the more I use it, the more crucial it became. I've been building very complicated data dashboards with it at the speed of light.

I only now understand, even in the age of LLMs, it's a sick project! Saves a lot of time.

Stanislav (Stas) Katkov
Stanislav (Stas) Katkov
Author of Posh TUI

It was my first time using Avo, and I was impressed by how easy it was to get started and how good the user experience was. The benefits were clear right away, without needing a lot of setup. Avo supports developers in making the most out of Rails as a one-person framework!

Bram Janssen
Bram Janssen
Rails World Conference App Developer

Avo just worked great. We were able to plug things together really easily, and it's given us the flexibility we needed to build out a really rich product

Tom Coates
Tom Coates
Head of Engineering, BBC Maestro

I can't believe I just learned about Avo! After trying it for 10 minutes, it was the easiest purchase ever. I used RailsAdmin before and had so many upgrading issues. Besides that, Avo is so much simpler to configure and build.

Michael Koper
Michael Koper
Founder of nusii.com

I just wanted to say I love working with Avo in RubyGems.org

Maciej Mensfeld
Maciej Mensfeld
RubyGems.org Security

Adding Avo to my project was like adding multiple developers to my team - and that's before I even purchased a license!

Caleb Harrison
Caleb Harrison
Ruby and Crystal Developer

I often think of it as... just having in-house designer, a front end, and a full stack. And AVO just gives you this with a very nice DSL where you just save time. So that's what's nice about it. Every time you use it, you save time

Mike Eyrikh
Mike Eyrikh
Tech Lead, Guestit

Avo has let me push further on the features my users benefit from most whilst trusting I am giving volunteer curators a backend experience I can still be proud of.

It's a real multiplier on the project and adopting it was undoubtedly the best technical decision we've made.

John Bannister
John Bannister
Rails developer, Exlibris RPG

I've spent time looking into solutions that complement a sensible modern stack that gets you to the point of focussing on the product you're building sooner and does not induce conceptual compression along the way.

Avo fits nicely into that stack.

David Teren
David Teren
Rails developer

Avo has allowed the RubyGems.org team to build internal tools incredibly quickly, which is especially important due to our limited resources

André Arko
André Arko
Gem.coop co-founder

We are heavily used Avo Pro in order to build a new "admin first" platform that can be managed by our non-tech team with ease.

The interface is extremely intuitive and can be extended fast with custom actions.

Paul Werther
Paul Werther
CTO, greenhats GmbH

I would never build a custom admin panel in the future.
We wasted too much money and could not focus on our main business.

Jonas Reif
Jonas Reif
Co-Founder, Upspeak.de

We have used Avo as the admin dashboard for our event app to manage speakers and sessions for years. We work with early career devs on this app and Avo has saved them hours of work so they could focus on what's most important: the user experience.

Amanda B. Perino
Amanda B. Perino
Rails Foundation Executive Director

From the blog

All posts

Active Storage image optimization at scale-ish: lessons from 1,916 conference photos

Active Storage tutorials stop at `resize_to_limit`. Here is what happens at 1,916 photos: variants generated inside the Puma request, `preprocessed:` enqueuing 17,250 jobs, an N+1 that only appears once you move to a CDN, and a CDN that never considered your images cacheable in the first place. All measured on a gallery that is live and open source.

Adrian Marin · Author & CEO

Avo 4 Open Beta

The Avo 4 Open Beta is here. Try the new UI4 visual style, new features like Collaboration, Forms, Kanban, HTTP Resources, REST API, and Reactive Fields — plus a comprehensive upgrade guide to help you migrate from Avo 3.

Build internal tools
on RailsIcons/pause solid

Whatever your team needs next, it's screens over models you already have. Pick one and have it running this afternoon.

It's your models, your repo, your servers. Free to start.