What are Cabinets?

A cabinet is a portable, file-system native operating unit for AI-powered business functions. It is a directory on disk that contains everything a team needs to operate.

A company is a tree of cabinets

Just as a real company is a tree of teams — each with its own people, knowledge, and workflows — an AI company is a tree of cabinets. The root cabinet is your company. Child cabinets are departments, projects, or functions.

my-company/root cabinet
.cabinetidentity
.agents/AI team members
.jobs/scheduled work
index.mdentry point
company/shared knowledge
marketing/
reddit/child cabinet
tiktok/child cabinet
app-development/child cabinet

What's inside a cabinet

.cabinet

YAML identity file — name, version, description, and parent relationships.

schemaVersion: 1
id: marketing
name: Marketing
kind: child

.agents/

AI team members. Each agent has a persona, heartbeat schedule, budget, and focus areas.

name: CEO
emoji: "🎯"
type: lead
heartbeat: "0 9 * * 1-5"

.jobs/

Scheduled automations. Cron expressions, owner agent, and prompt templates.

schedule: "0 9 * * 1"
ownerAgent: ceo
enabled: true

index.md

Entry point describing the cabinet's purpose, with YAML frontmatter for tags and metadata.

---
title: Marketing
tags: [marketing, growth]
---

Core principles

Local-first

Files on disk, no database required. Your data stays where you put it.

Portable

Copy, move, or version control any cabinet. It is just a directory.

Inspectable

Everything is readable in a text editor. No opaque formats, no lock-in.

Composable

Nest cabinets to model any org structure. A child cabinet is just a subdirectory with its own .cabinet file.

Install a cabinet

Clone the registry and copy any cabinet into your project.

Terminal
$ git clone https://github.com/hilash/cabinets.git && cp -r cabinets/text-your-mom ./my-company

Add a cabinet to the registry

  1. 1

    Fork the repo

    Fork the cabinets repo on GitHub.

  2. 2

    Create your directory

    Add a new top-level directory with your cabinet name in kebab-case.

  3. 3

    Add the required files

    Include .cabinet, .agents/, .jobs/, and index.md.

  4. 4

    Submit a pull request

    Open a PR and your cabinet will appear in the registry.

Learn more about Cabinet at runcabinet.com.