agency-os is a free, open source content management systems (cms) project written in Vue and released under MIT. It has 973 GitHub stars, 178 forks and 23 open issues, and was last pushed 7 months ago. On this registry it ranks #33 of 47 tracked projects in Content Management Systems (CMS), with 5 head-to-head comparisons available.

What is agency-os?

AgencyOS is an open-source operating system for digital agencies — a Nuxt 3 website and application running on a Directus backend — built for agency owners and teams who need to run projects, client relationships, and invoicing without building internal tooling from scratch.

What it is

AgencyOS describes itself as everything needed to get an agency off the ground or to improve tooling for an existing company. It consists of two main pieces: a backend and APIs powered by Directus, which also acts as the headless CMS, and a frontend website and application powered by Nuxt. The project is designed to be 100 percent hackable, so a team can build its own project management app or its own agency operating system in record time rather than starting from zero. It is the result of a partnership between Directus and NuxtLabs, is written primarily in Vue, carries an MIT licence, and lives at agencyos.dev with 973 stars and 178 forks.

The concrete problem it solves is the work that surrounds client delivery rather than the delivery itself. Managing large projects with many moving pieces, communicating with clients to manage expectations, and ensuring the agency gets paid on time are described as the hard bits of running an agency. When every billable hour counts, there is no time to build tooling from scratch, and off-the-shelf technology often falls short of a team's preferred workflow. AgencyOS addresses this by combining the website, a CRM, a project tracker, and a client portal in one system — the README explicitly asks why an agency would maintain separate project management and CRM tools.

Key capabilities

  • Dynamic page builder with live preview, alongside blog posts and categories, for the included website template.
  • Full SEO support out of the box: meta tags, sitemap, redirects, JSON-LD, and dynamic OG image generation.
  • Dynamic form generation with validation, global search, Google Fonts support, full dark mode, and theming through a config file.
  • CRM covering organizations and contacts, a sales pipeline with activities, and a dynamic project proposal builder.
  • Project and task management with customizable project templates, invoicing, and expense tracking.
  • Custom dashboards built without writing code, plus process automation using Directus Flows.
  • A private authenticated client portal where clients view their projects, tasks, and files, pay invoices through Stripe, and can be assigned tasks as part of project templates.

Who uses it and how

  • Digital agencies that deliver client work and want the surrounding operations — pipeline, proposals, projects, invoices — in a single self-hosted system.
  • Teams currently paying for and maintaining separate project management and CRM tools, who would rather work in one place.
  • Agencies that need clients to self-serve and be held accountable for supplying the files and information required to finish a project, through the private authenticated portal.
  • Operators who want to assemble their own dashboards and automate processes without writing code, using Directus Flows.
  • Developers evaluating Directus as a platform, since AgencyOS is built as a complete example of rapidly building an application on it.

Getting started

Setup has two pieces — a Directus project for the backend and APIs, and the Nuxt frontend and website — and the README's Installation and Development section walks through creating the Directus project and running the app. A hosted demo is available at agency-os.vercel.app, and the README links a set of video tutorials.

How it compares

The facts provided do not name any paid products that AgencyOS replaces, so no comparison on licence, self-hosting, data ownership, or cost model can honestly be drawn here. The only other tools named are Directus and Nuxt, which are its building blocks rather than its alternatives, leaving AgencyOS standing alone in this registry as an agency operations system rather than a general-purpose CMS.

When to use it — and when not to

A self-hoster takes on operating two services — a Directus backend and a Nuxt frontend — along with hosting, upgrades, and the configuration of integrations such as Stripe payments. Teams that want a managed product with vendor support, or that have no appetite for running and maintaining that stack, should look elsewhere. The available README excerpt also stops partway through the installation instructions, and the facts give no release history, testing, or security detail, with 23 open issues on the repository — worth reviewing before committing a production agency to it.

project readme (upstream, from github) — read inline

AgencyOS

AgencyOS is everything you need to get your agency off the ground, or improve tooling for your existing company. Nuxt 3 Website / Application + Directus Backend.

Brought to you by partnership magic ✨ between Directus and NuxtLabs.

Introduction · ⭐ Features · 🚧 Installation and Development · 🚢 Deployment · 🧰 Tech Stack · 🛟 Community Help · ❤️ Contributing



Introduction

One of the easiest parts of running a successful digital agency is doing the actual work. I mean - who doesn’t love to put their head down to collaborate, design, and build amazing stuff for clients?

The hard bits are everything else that goes along with that – managing large projects with tons of moving pieces, communicating with clients to properly manage expectations, ensuring you’re paid on time, and more.

When every billable hour counts, you don’t have the time to build your own tools from scratch. And you shouldn’t be forced to settle for off-the-shelf tech that falls short of your preferred workflow.

AgencyOS is the open source operating system to help you run (or start) your digital agency. It’s built on open source tools (Nuxt and Directus) and designed to be 100% hackable so you can build YOUR solution, YOUR project management app, YOUR agency’s operating system – in record time.

Why?

Quite a few folks on the Directus core team have experience running agencies and we know it’s not all rainbows and sunshine. We wanted to build an tool that our agency partners (and any other agency) would get a lot of value from. It was also created as a complete example to showcase the power and flexibility of Directus as a platform to rapidly build your own apps and tools.

Getting Started


⭐ Features

Website

When you’re hard at work delivering for clients - your own site tends to suffer. AgencyOS includes beautiful website template that’s easily customizable and already integrated with an easy-to-use headless CMS.

It’s not a starter template. It’s a complete website project for you customize or inspire you to build an even better solution.

  • Dynamic page builder with live preview
  • Blog posts and categories
  • Dynamic form generation with validation
  • Dynamic OG image generation
  • Full SEO support out of the box – (meta tags, sitemap, redirects, JSON-LD, and more)
  • Global search functionality
  • Common utilities so you don't need to include yet another package
  • Google Fonts support
  • ESLint and Prettier pre-configured
  • Full dark mode support
  • Themeable with easy config file

CRM / Project Tracker

Maintaining important client relationships doesn’t just fall to the sales team. So why maintain separate project management and CRM tools? AgencyOS includes a completely customizable CRM so you can work the way you want.

  • Organizations and contacts
  • Sales pipeline and activities
  • Dynamic project proposal builder
  • Project and task management
  • Customizable project templates
  • Invoicing and expense tracking
  • Customize and build your own dashboards without writing code
  • Automate processes using Directus Flows

Client Portal

Communication is probably the biggest driver of project success. With AgencyOS’s private client portal - you can insure your clients stay up to date and even hold them accountable for delivering the files and information you need to complete their project

  • Private authenticated portal for clients to self-serve
  • Clients can view their projects, tasks, and files
  • Clients can pay invoices through Stripe
  • Assign tasks to clients as part of project templates



🚧 Installation and Development

There are two main pieces to AgencyOS - the backend and APIs powered by Directus and the frontend website and application powered by Nuxt.

🐰 Directus - Backend + Headless CMS

1 - Create a Directus project

There are two ways you can quickly setup a Directus project to use for AgencyOS.

1a - Register for a Directus Cloud account

https://directus.cloud/register

This is the easy button. You don’t have to mess with Docker or working out how to deploy a Directus instance at AWS, Digital Ocean, or similar hosts. A couple of clicks and in less than 2 minutes you’ll have a ready to go Directus project.

Directus offers a 14 day free trial for Cloud projects which is plenty of time to give AgencyOS a spin. Note: After the 14 day trial you will need to pay for the service. Consult the Directus pricing page for the latest pricing information.

OR

1b - Self Host a Directus Instance

If you're prefer to self-host Directus, we highly recommend you do so with Docker.

Important Note: This is a free and open source community release. Therefore, we cannot provide support for self-hosted instances WITHOUT an Enterprise Self-Hosted license or formal support agreement. Learn more and contact our team for details on Enterprise Self-Hosted.

You’ll find a docker-compose.yaml inside the repo that you can use to quickly spin up a local instance of Directus to test with. You should have Docker installed and running on your machine first. You can download it here.

PostgreSQL is the tested and preferred database vendor for this project. The project has been tested and verified to work against the docker-compose.yaml file included in the repo. Directus does support many different SQL database vendors, but we ONLY test this project against PostgreSQL.

# Navigate to the .directus directory
$ cd .directus

# Run docker compose
$ docker compose up

# Docker does it's thing and your Directus project will be available at http://localhost:8055/ or http://0.0.0.0:8055/

You can find more install instructions using Docker here on the Directus documentation.

For deploying the project live, please see the Deployment section.

2 - Generate a static token for the admin user

You need the static token to seed the project.

  1. Go to the User Directory
  2. Choose the Administrative User
  3. Scroll down to the Token field
  4. Generate token and copy it
  5. Save the user (do NOT forget to save because you’ll get an error that shows Invalid token!)

3 - Apply the AgencyOS Template

Open your terminal, run the following command, and simply follow the prompts.

npx directus-template-cli@latest apply

Using the @latest tag ensures you download the most up to date version of our templates - in case you've ran the command previously.

  1. Choose the Agency OS template.
  2. Paste the URL to your Directus instance
  3. Paste your Admin user static token
  4. Wait for script to finish

You can learn more about the Directus Template CLI tool here. Note: It can take a few minutes for the template script to run if you’re using a remotely hosted Directus instance.




⛰️ Nuxt - Frontend

For your website and client portal, AgencyOS uses Nuxt as the frontend framework of choice.

1 - Clone the repo

Use This Template

Or from the terminal

git clone https://github.com/directus-community/agency-os.git your-project

Navigate to the project

cd your-project

2 - Fix your .env file

  • Change the filename env.example to .env
  • Add the url to your Directus instance
  • Add the static token for your admin user you generated above

Your .env file should look similar to this.

## Directus Setup
DIRECTUS_URL="https://your-instance.directus.app"
DIRECTUS_SERVER_TOKEN="your_directus_server_token_for_server_only_routes"
SITE_URL="http://localhost:3000"

## Stripe Setup (If you want to allow payments within the portal)

readme truncated — read the full docs on github

Frequently asked questions

Is agency-os free to use?

agency-os 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 agency-os do?

The open source operating system for digital agencies. Built with Directus and Nuxt.

What is agency-os written in?

agency-os is primarily written in Vue. Its source is publicly available at https://github.com/directus-labs/agency-os, and it has 973 GitHub stars.