Collections Overview
Overview
Section titled “Overview”my-buddy stores all data as markdown files with YAML frontmatter in src/content/. There are 8 collections, each with its own schema validated by Zod.
| Collection | Slug Format | Key Fields |
|---|---|---|
| Accounts | kebab-case | type, status, contact, since |
| Contacts | kebab-case | first_name, last_name, account, is_primary |
| Deals | kebab-case | account, stage, value, expected_close |
| Projects | kebab-case | account, status, priority, deadline |
| Tasks | YYYY-MM-DD-name | project, status, priority, due |
| Knowledge Base | kebab-case | tags, updated |
| Meetings | YYYY-MM-DD-name | date, attendees, type, account |
| Journals | YYYY-MM-DD | date, mood, tags, projects |
File Location
Section titled “File Location”All content lives under src/content/:
src/content/├── accounts/├── contacts/├── deals/├── projects/├── tasks/├── kb/├── meetings/└── journals/CRUD Commands
Section titled “CRUD Commands”Every collection has 5 standard commands:
| Command | Description |
|---|---|
/mybuddy.{collection}.create | Create a new entry |
/mybuddy.{collection}.view [slug] | View entry detail |
/mybuddy.{collection}.edit [slug] | Edit entry fields |
/mybuddy.{collection}.list [filters] | List with optional filters |
/mybuddy.{collection}.delete [slug] | Delete with confirmation |
Replace {collection} with: account, contact, deal, project, task, kb, meeting, or journal.
Content Relationships
Section titled “Content Relationships”Collections reference each other through frontmatter slug fields and wiki links:
accounts → contacts (via contact.account)accounts → deals (via deal.account)accounts → projects (via project.account)accounts → meetings (via meeting.account)contacts → deals (via deal.contact)projects → tasks (via task.project)projects → meetings (via meeting.project)projects → journals (via journal.projects)any → kb (via wiki links in markdown body)See Content Relationships for details.