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.
Plug-and-play
AI teams for
real work.
Each cabinet is a complete AI team — agents, jobs, and knowledge. Clone a directory. Run a company.
$ npx cabinets add <owner/repo>$180K
Monthly cost
280
Hrs / week
50
Tasks / week
people
meetings
knowledge
people
meetings
knowledge
people
meetings
knowledge
Open the drawers.
A team used to be people, meetings, and knowledge.
Now each one fits in a cabinet.
was
Sarah Chen
CEO
Marcus Kim
CTO
Lena Park
Growth
now
CEO Agent
.agents/ceo/
CTO Agent
.agents/cto/
Growth Agent
.agents/growth/
was
Weekly standup
Every Monday
Sprint planning
Bi-weekly
Slack check-ins
Ad hoc
now
Weekly Brief
0 9 * * 1
Sprint Plan
0 9 * * 1
Heartbeat
every 4h
was
Lena's brain
Marcus's brain
Maria's brain
now
strategy/index.md
.md
roadmap/index.md
.md
kpis/metrics.csv
.csv
Definition
What is a Cabinet?
A cabinet is an AI team — a self-contained operating unit composed of agents, jobs, and data. Everything lives on disk as plain files.
Agents
Persistent AI team members. Each has a persona, role, heartbeat schedule, and focus areas.
# .agents/ceo/persona.md name: CEO type: lead heartbeat: "0 9 * * 1-5" budget: 100
Jobs
Scheduled automations — cron jobs, heartbeats, and manual tasks. Each owned by an agent.
# .jobs/weekly-brief.yaml schedule: "0 9 * * 1" ownerAgent: ceo enabled: true
Data
Knowledge base on disk — markdown files, CSVs, templates. Visible, inspectable, version-controlled.
# company/strategy/index.md --- title: Company Strategy tags: [strategy, q2] ---
A cabinet is just a directory. Copy it, version it, share it — it works anywhere.
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.
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.
$ git clone https://github.com/hilash/cabinets.git && cp -r cabinets/text-your-mom ./my-companyAdd a cabinet to the registry
- 1
Fork the repo
Fork the cabinets repo on GitHub.
- 2
Create your directory
Add a new top-level directory with your cabinet name in kebab-case.
- 3
Add the required files
Include .cabinet, .agents/, .jobs/, and index.md.
- 4
Submit a pull request
Open a PR and your cabinet will appear in the registry.
Learn more about Cabinet at runcabinet.com.