rome is a free, open source ai interaction & interfaces project written in TypeScript and released under MIT. It has 508 GitHub stars, 41 forks and 47 open issues, and was last pushed 68 minutes ago. On this registry it ranks #110 of 113 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available.

Rome

The agentic OS for humans and agents.

CI License: MIT Follow Rome on X Join the Rome Discord server

Website · Try Rome Cloud · Documentation · App Store

What is Rome?

Most progress in AI comes from scaling models. Rome scales the other axis, the environment: the tools, workflows, memory, and interfaces an agent works within (why this matters).

Rome is a guardrailed environment where human and agent collaborate, and the collaboration compounds. Agents build their own harnesses, design their own SOPs, and orchestrate workflows under your guidance. Proven capabilities stick. Every interaction raises the ceiling for the next.

Rome also works as an open source alternative to Grok Bot and Meta's Muse for persistent agents, scheduled tasks, and custom apps.

Get started

Rome Cloud

Rome Cloud provisions a private Rome environment for each guardian. It is currently available as a preview.

Join the preview →

Run with Docker

One script checks for Docker, pulls the published image, and starts Rome:

curl -fsSL https://raw.githubusercontent.com/rome-os/rome/main/scripts/quickstart-docker.sh | bash

Or clone the repository and run the script from it:

git clone https://github.com/rome-os/rome.git
cd rome
./scripts/quickstart-docker.sh

The dashboard comes up at http://localhost:7663, bound to loopback only. First-run onboarding is open to whoever reaches it first, so exposing it beyond the machine takes an explicit --bind. State lives in named Docker volumes, so re-running the script upgrades the container without losing data. Telemetry export stays off unless you set OTEL_EXPORTER_OTLP_ENDPOINT. Run the script with --help for ports, profiles, and the other settings it forwards.

Run the development environment

To run this repository from source, you need:

  • Node.js 24 or newer
  • Corepack and pnpm 11.6
  • Docker with Docker Compose

From a checkout of this repository:

corepack enable
pnpm install
pnpm dev:all

pnpm dev:all starts the production-shaped local stack: Rome, observability, routing, and the web development server. It connects to https://romeos.cc by default; set ROME_DEV_PANTHEON_ORIGIN to use another Rome Cloud deployment. The script prints the local URLs and development credentials when startup completes.

This is the contributor development path, not the final production self-hosting distribution. See CLAUDE.md for the complete development loop, container commands, and validation requirements.

Rome Apps

Rome App is the new way to interact with your agent.

Chat is a good place to ask for something once. Repeated work deserves a place of its own: an inbox that remembers what was triaged, a code review loop you can inspect, a price tracker that keeps watching, or a morning brief that arrives on schedule.

A Rome App combines a purpose-built interface, agent reasoning, reusable workflows, and persistent data into one installable product. It is not a thin wrapper around a prompt. The app remains useful after the conversation ends, after the browser closes, and when the user comes back tomorrow.

Purpose-built UI & UX AI-native Persistent by default Community-powered
An interface designed for the job Agents are part of how the product works Data and workflows carry forward Install, share, and learn from other builders

A useful rule of thumb: a workflow is a verb; an app is a noun. Use a workflow to perform a task and return a result. Build an app when the work needs a home of its own, with user-editable data, multiple actions, or a persistent agent.

Rome can build the missing app

When there is not an app for what you need, describe it to Rome in plain language. Rome can turn that request into a short specification, scaffold the app or workflow, build it into your instance, and keep iterating with you in the same conversation.

The result is ordinary, git-tracked source code rather than hidden model state. Keep it private, adapt it as your needs change, or publish it for others to install from the App Store. This creates Rome's self-evolution loop:

Describe a need → Rome builds the capability → the app keeps working
       ↑                                              ↓
       └──────────── refine, reuse, and share ────────┘

Under the hood

A Rome App starts with an app.yaml manifest and can ship any mix of:

Artifact Purpose
Actions Typed operations that agents, routines, and app code can invoke
Agents App-owned collaborators with their own instructions and tools
Skills Plain-language procedures loaded when an agent needs them
Hooks Extensions to message, event, and agent-turn lifecycles
Web UI & APIs Purpose-built interfaces and app-owned HTTP surfaces
Database & files Persistent, app-private state that survives across runs

Together these form a capability: the unit Rome discovers and reuses in later work. The app is that capability's human interface: apps organize human interaction; capabilities organize agent action.

Apps build on two public SDKs:

  • @rome-os/app-runtime for backend capabilities.
  • @rome-os/app-web-sdk for embedded web interfaces and the Rome build CLI.

Browse the Rome App Store, read the building guide, or start with the app quickstart.

What people do with Rome

These are the kinds of requests Rome is designed to follow through on:

Run the code review loop

“Fix all P1 and P2 review comments until there are no merge blockers left. Let me know when you finish.”
Organize your email

“Sort my inbox. Archive the noise, flag anything urgent, and draft replies for messages that need me.”
Track a game's price

“Track the price of this game and let me know when it drops below $30.”
Interview your customers

“Interview five customers about onboarding. Ask follow-up questions and summarize what we should improve.”

Rome can handle one-off tasks, scheduled work, long-running follow-through, and purpose-built app experiences without forcing everything into one chat window.

How Rome compares

Rome sits where two product waves meet: persistent agents and personal software. The agent products share Rome's thesis that agents should persist and improve. There the comparison is what accumulates, what runs when work repeats, and where you operate the result. The personal software platforms share Rome's thesis that software should be built per person. There the comparison is who and what stands behind the app.

What accumulates What runs repeated work Where you operate it Hosting
Rome Actions, skills, and apps as git-tracked code, plus memory and app-private data Saved actions, with model calls as needed A purpose-built app, plus chat channels (Telegram, Discord, WhatsApp) Self-hosted or Rome Cloud
Grok Bot (xAI) Memory, skills, and files on a shared cloud computer Bots running skills and routines Chat, file previews, and computer access xAI-hosted
Muse (Meta) Memory, goals, files, and interactive artifacts Scheduled and event-triggered agent work Muse app, WhatsApp, goals, and artifacts Meta-hosted
Hermes Agent (Nous Research) Bounded me

readme truncated — read the full docs on github

Frequently asked questions

Is rome free to use?

rome is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does rome do?

A compounding agent OS for recursive agents. Also an open source alternative to Grok Bot and Meta's Muse.

What is rome written in?

rome is primarily written in TypeScript. Its source is publicly available at https://github.com/rome-os/rome, and it has 508 GitHub stars.