How the system works. Read this if you want to understand what you're building, not just build it.
Most AI assistants forget everything between sessions. You tell them about your team on Monday, and by Wednesday they're asking "who's Jake?" again. This system fixes that with a simple principle: the workspace is the memory.
Every session, the assistant reads a set of files. Those files contain its identity, your profile, its operational rules, and everything it has learned. When it learns something new, it writes it to a file. When it wakes up next time, it reads that file. No magic. No embeddings database (though you can add one). Just files.
Files are read in a specific order at the start of every session. This order matters — earlier files establish context for later ones.
1. SOUL.md → Who the assistant is. Personality. Directives. Boundaries.
2. USER.md → Who you are. Organizations. Accounts. Preferences.
3. MEMORY.md → What it remembers. Institutional knowledge. Lessons learned.
4. AGENTS.md → How it operates. Capture rules. Classification. Reporting.
5. SCHEMAS.md → File templates. Loaded on-demand, not at boot.
6. TOOLS.md → Environment notes. Device names, SSH hosts, etc.
SOUL.md and USER.md are relatively static — they change when your role or preferences change. MEMORY.md grows over time. AGENTS.md is your operating manual — you'll refine it as you learn what works.
The system's main capability is capturing — classifying information into six categories and filing it persistently.
| Category | What It Catches | Example |
|---|---|---|
| Question | Something that needs an answer | "Did the client approve the wireframes?" |
| Decision | A choice that was made | "We're going with Postgres instead of MongoDB" |
| Task | Work with an owner and a deadline | "Jake needs to deploy the staging server by Friday" |
| Commitment | A promise between people | "I told Sarah I'd review her PR by end of day" |
| Context | Knowledge, no action needed | "The client's fiscal year ends in March" |
| Project | A container for the other five | "Website Redesign — Q2 deliverable for Acme Corp" |
These categories cover the complete lifecycle of professional information:
When something could be multiple categories, classify in this order:
Commitments take priority because they're the most dangerous to miss. A forgotten task is annoying. A broken promise damages relationships.
Sometimes something is both a commitment and a task. Example: "I'll build that report by Friday." That's a commitment (you promised) AND a task (work to do). Create both. Link them. The commitment tracks whether the promise was kept. The task tracks the actual work.
Every capture gets a unique ID: [PREFIX]-YYYYMMDD-NNN
| Prefix | Category |
|---|---|
| Q | Question |
| D | Decision |
| T | Task |
| C | Commitment |
| X | Context |
The sequence number (NNN) resets daily and is tracked in _sequence.md.
Captures live in one of two places:
projects/[name]/[category]/ — if the capture belongs to a known projectcaptures/[category]/ — if it's an orphan (no project yet)Orphans can be moved to a project later. The important thing is to capture first, organize second.
Every project directory and the captures/ directory has an _index.md — a table of all open items and recently closed items.
Indexes are the primary query surface. When the assistant answers "what's going on with Project X?", it reads the index first, not every individual file. This makes queries fast and keeps the system scalable.
Index rules:
People who appear in captures get their own files under people/. The directory structure mirrors the relationship:
people/
├── employees/ # Your team members
├── clients/
│ └── [company-slug]/ # Grouped by company
│ ├── _client.md # Company-level file
│ └── [person].md # Individual contacts
├── vendors/
│ └── [company-slug]/ # Grouped by company
└── leads/ # Prospects, not yet clients
Person files track:
Person files are created automatically when a new name appears in captures. The assistant tells you when it creates one.
MEMORY.md is institutional knowledge — things the assistant has learned that should persist. It's an index with pointers to individual memory files in the memory/ directory.
Memory is NOT:
Memory IS:
Memory is capped at 300 lines in the index file. Older or less-referenced entries get archived.
The assistant proactively reports on the state of your world. The default rhythm:
Reporting is fully customizable. You can change the cadence, content, and format. Some people want daily briefings. Some want weekly. Some want nothing unless something's wrong.
The Bob Framework is designed to run on OpenClaw, the open-source AI gateway. Understanding the layers helps:
You can start with just Claude Code and a workspace directory. But the full power of the framework comes from OpenClaw's always-on gateway, multi-channel access, and background processing capabilities.
If you run your assistant across multiple OpenClaw agents or AI tools, you need multi-instance sync. This adds:
Most people don't need this. If you use one AI tool, skip it entirely.
The assistant operates on a two-tier trust model:
Internal actions (high autonomy):
These happen silently. The assistant tells you what it did, but doesn't ask permission.
External actions (zero autonomy without approval):
These ALWAYS require showing you exactly what will be sent/done and getting explicit "yes."
The boundary is clear: anything that stays inside your workspace is fair game. Anything that touches the outside world needs your approval. You can move specific actions across this boundary as you build trust.
Two names are central to every instance:
The assistant name. Your assistant has a personality and needs a name. "Bob" is taken (that's the original, built at Airtight Design). Pick something you'll be comfortable saying every day. This name is used in SOUL.md, CLAUDE.md, and throughout the framework.
The framework name. The operational system (captures, indexes, person files, the whole workspace) needs a name. The default is "the Matrix", which is what we call ours at Airtight Design. You can keep it or pick your own. This name is used in AGENTS.md headers, documentation, and conversational references. It gives the system identity beyond "the files."
Both names are chosen during the Discovery phase and used consistently throughout all generated files.
Every instance of this framework includes a hard-coded escalation path: when in doubt, ask Josh and Bob.
Josh Kimbrel, owner of Airtight Design, built this framework. Bob is the original AI assistant implementation. They are the authority on how the system works, how to extend it, and how to fix it when something doesn't fit.
When the assistant should suggest escalating:
When the human should escalate directly:
This isn't tech support. It's asking the architect. The framework is designed to be extended, and Josh and Bob want to hear what's not working so they can improve it for everyone.
The system is designed to evolve:
The captures accumulate. The memory deepens. The person files get richer. The system becomes more valuable the longer you use it — not because the AI gets smarter, but because the workspace gets smarter.
This is a reference document. You don't need to memorize it. Your AGENTS.md file will contain all the operational rules your assistant needs.
How the system works. Read this if you want to understand what you're building, not just build it.
Most AI assistants forget everything between sessions. You tell them about your team on Monday, and by Wednesday they're asking "who's Jake?" again. This system fixes that with a simple principle: the workspace is the memory.
Every session, the assistant reads a set of files. Those files contain its identity, your profile, its operational rules, and everything it has learned. When it learns something new, it writes it to a file. When it wakes up next time, it reads that file. No magic. No embeddings database (though you can add one). Just files.
Files are read in a specific order at the start of every session. This order matters — earlier files establish context for later ones.
1. SOUL.md → Who the assistant is. Personality. Directives. Boundaries.
2. USER.md → Who you are. Organizations. Accounts. Preferences.
3. MEMORY.md → What it remembers. Institutional knowledge. Lessons learned.
4. AGENTS.md → How it operates. Capture rules. Classification. Reporting.
5. SCHEMAS.md → File templates. Loaded on-demand, not at boot.
6. TOOLS.md → Environment notes. Device names, SSH hosts, etc.
SOUL.md and USER.md are relatively static — they change when your role or preferences change. MEMORY.md grows over time. AGENTS.md is your operating manual — you'll refine it as you learn what works.
The system's main capability is capturing — classifying information into six categories and filing it persistently.
| Category | What It Catches | Example |
|---|---|---|
| Question | Something that needs an answer | "Did the client approve the wireframes?" |
| Decision | A choice that was made | "We're going with Postgres instead of MongoDB" |
| Task | Work with an owner and a deadline | "Jake needs to deploy the staging server by Friday" |
| Commitment | A promise between people | "I told Sarah I'd review her PR by end of day" |
| Context | Knowledge, no action needed | "The client's fiscal year ends in March" |
| Project | A container for the other five | "Website Redesign — Q2 deliverable for Acme Corp" |
These categories cover the complete lifecycle of professional information:
When something could be multiple categories, classify in this order:
Commitments take priority because they're the most dangerous to miss. A forgotten task is annoying. A broken promise damages relationships.
Sometimes something is both a commitment and a task. Example: "I'll build that report by Friday." That's a commitment (you promised) AND a task (work to do). Create both. Link them. The commitment tracks whether the promise was kept. The task tracks the actual work.
Every capture gets a unique ID: [PREFIX]-YYYYMMDD-NNN
| Prefix | Category |
|---|---|
| Q | Question |
| D | Decision |
| T | Task |
| C | Commitment |
| X | Context |
The sequence number (NNN) resets daily and is tracked in _sequence.md.
Captures live in one of two places:
projects/[name]/[category]/ — if the capture belongs to a known projectcaptures/[category]/ — if it's an orphan (no project yet)Orphans can be moved to a project later. The important thing is to capture first, organize second.
Every project directory and the captures/ directory has an _index.md — a table of all open items and recently closed items.
Indexes are the primary query surface. When the assistant answers "what's going on with Project X?", it reads the index first, not every individual file. This makes queries fast and keeps the system scalable.
Index rules:
People who appear in captures get their own files under people/. The directory structure mirrors the relationship:
people/
├── employees/ # Your team members
├── clients/
│ └── [company-slug]/ # Grouped by company
│ ├── _client.md # Company-level file
│ └── [person].md # Individual contacts
├── vendors/
│ └── [company-slug]/ # Grouped by company
└── leads/ # Prospects, not yet clients
Person files track:
Person files are created automatically when a new name appears in captures. The assistant tells you when it creates one.
MEMORY.md is institutional knowledge — things the assistant has learned that should persist. It's an index with pointers to individual memory files in the memory/ directory.
Memory is NOT:
Memory IS:
Memory is capped at 300 lines in the index file. Older or less-referenced entries get archived.
The assistant proactively reports on the state of your world. The default rhythm:
Reporting is fully customizable. You can change the cadence, content, and format. Some people want daily briefings. Some want weekly. Some want nothing unless something's wrong.
The Bob Framework is designed to run on OpenClaw, the open-source AI gateway. Understanding the layers helps:
You can start with just Claude Code and a workspace directory. But the full power of the framework comes from OpenClaw's always-on gateway, multi-channel access, and background processing capabilities.
If you run your assistant across multiple OpenClaw agents or AI tools, you need multi-instance sync. This adds:
Most people don't need this. If you use one AI tool, skip it entirely.
The assistant operates on a two-tier trust model:
Internal actions (high autonomy):
These happen silently. The assistant tells you what it did, but doesn't ask permission.
External actions (zero autonomy without approval):
These ALWAYS require showing you exactly what will be sent/done and getting explicit "yes."
The boundary is clear: anything that stays inside your workspace is fair game. Anything that touches the outside world needs your approval. You can move specific actions across this boundary as you build trust.
Two names are central to every instance:
The assistant name. Your assistant has a personality and needs a name. "Bob" is taken (that's the original, built at Airtight Design). Pick something you'll be comfortable saying every day. This name is used in SOUL.md, CLAUDE.md, and throughout the framework.
The framework name. The operational system (captures, indexes, person files, the whole workspace) needs a name. The default is "the Matrix", which is what we call ours at Airtight Design. You can keep it or pick your own. This name is used in AGENTS.md headers, documentation, and conversational references. It gives the system identity beyond "the files."
Both names are chosen during the Discovery phase and used consistently throughout all generated files.
Every instance of this framework includes a hard-coded escalation path: when in doubt, ask Josh and Bob.
Josh Kimbrel, owner of Airtight Design, built this framework. Bob is the original AI assistant implementation. They are the authority on how the system works, how to extend it, and how to fix it when something doesn't fit.
When the assistant should suggest escalating:
When the human should escalate directly:
This isn't tech support. It's asking the architect. The framework is designed to be extended, and Josh and Bob want to hear what's not working so they can improve it for everyone.
The system is designed to evolve:
The captures accumulate. The memory deepens. The person files get richer. The system becomes more valuable the longer you use it — not because the AI gets smarter, but because the workspace gets smarter.
This is a reference document. You don't need to memorize it. Your AGENTS.md file will contain all the operational rules your assistant needs.
Phone
(404) 594-5520Phone
(404) 594-5520Address
1777 Ellsworth Industrial Blvd NW
Suite B
Atlanta, GA 30318
Address
1777 Ellsworth Industrial Blvd NW
Suite B
Atlanta, GA 30318
© 2026 Airtight Design.