# Requirements: Post-Meeting CRM Autopilot

> **Version 1.0.0 · Last updated 2026-10-22 · Estimated setup time: 30–60 minutes**

Use this checklist before you hand CLONE-INSTRUCTIONS.md to your clone. Your clone will also check most of this during discovery.

---

## 1. Required skills / operators

Use the exact names below. **Confirm them in your skill catalog** before saving the skill. Your clone will report the exact names it finds.

> Skill names can differ slightly between orgs. Confirm the exact names in your skill catalog before saving the skill.

**Pick one CRM (required):**

| # | Skill / operator (exact name) | What it's used for | Notes |
|---|---|---|---|
| 1 | **SalesforceAccountOperator** | Match attendee domain to an account | Salesforce users |
| 2 | **SalesforceContactOperator** | Match attendees; update title/phone; create confirmed new contacts | Salesforce users |
| 3 | **SalesforceOpportunityOperator** | Find open opportunities; apply approved stage, amount, close date changes | Salesforce users |
| 4 | **SalesforceActivityOperator** | Check for duplicates; log the meeting; add the summary; create follow-up tasks | Salesforce users |
| 5 | **HubspotCompanyOperator** | Match attendee domain to a company | HubSpot users |
| 6 | **HubspotContactOperator** | Match attendees; update title/phone; create confirmed new contacts | HubSpot users |
| 7 | **HubspotDealOperator** | Find open deals; apply approved stage, amount, close date changes | HubSpot users |
| 8 | **HubspotEngagementOperator** | Check for duplicates; log the meeting; add the note; create tasks, with associations | HubSpot users |

**Also required:**

| # | Skill / operator (exact name) | What it's used for | Notes |
|---|---|---|---|
| 9 | **Post-Meeting CRM Log** (custom skill) | The workflow itself | Saved from CLONE-INSTRUCTIONS.md section 7 |
| 10 | **Scheduled task** (via the `platform` tool) | Check for new meetings on `{RUN_SCHEDULE}` | Only if you want automation; not needed for on-demand use |
| 11 | **At least one notes source** (see below) | Find the meeting content | Pasted notes always work |

**Notes sources (use any that apply):**

| Source | Exact name | Notes |
|---|---|---|
| Clone's own transcripts | `meeting_archive` | Only meetings the clone attended |
| AI notes in Google Drive / Docs | **GoogleDriveCoreOperator**, **GoogleDocsCoreOperator** | For example Gemini notes in a "Meet Recordings" folder |
| AI notes in OneDrive | **Microsoft_OneDrive** | Microsoft 365 users |
| Emailed notes | **GoogleGmailOperator** or the **Outlook email operator** | Common for meetings you did not organize |
| Calendar (optional) | **GoogleCalendarOperator** or the **Outlook calendar operator** | Attendees and meeting times |
| Pasted notes | None needed | Paste into chat |

## 2. Connections and minimum permissions

| Connection | Minimum permission | Why |
|---|---|---|
| Salesforce or HubSpot | **WRITE** access to **contacts, companies/accounts, deals/opportunities and activities** (HubSpot: contacts, companies, deals, engagements/notes/tasks). **Admin is NOT required.** | Match records, log the meeting, create tasks, update contacts, apply approved deal changes |
| Gmail or Outlook (optional) | **Read** (add **Send** only if you want recap emails) | Find emailed AI notes; send the optional recap to you |
| Google Drive / Docs or OneDrive (optional) | **View** the notes folder | Read AI meeting notes |
| Google Calendar or Outlook calendar (optional) | **Read** | Attendees and times |
| Slack or Teams (optional) | Post to you | Deliver proposals and recaps |

Important points:

- **Each user connects their own CRM account.** No shared service accounts, so activities are attributed correctly and the clone only sees what you can see.
- **Write access is not admin.** A common mix-up: you do not need a CRM administrator account. You need a normal user whose profile or permission set allows editing the four object types above.
- **Some CRM connections must be finished manually** in the clone's Connections / Integrations settings instead of in chat.
- All connections are made by **you** through the platform's sign-in (OAuth). Your clone never needs your password.

## 3. Optional add-ons

| Add-on | Adds | Operators |
|---|---|---|
| **meeting_archive** | Clone's own transcript for meetings it attended (join with `joinMeeting`) | `meeting_archive`, `joinMeeting` |
| **Calendar** | Reliable attendee lists and times for matching | GoogleCalendarOperator or Outlook calendar operator |
| **Slack or Teams** | Proposal and recap delivery in your messaging app | Clone's messaging integration |
| **Recap email** | Short email to you listing what was logged | GoogleGmailOperator or Outlook email operator |
| **Auto-log mode** | Writes activity + summary note without waiting (never deal changes) | `{AUTO_LOG_MODE}` setting |

### Salesforce ⇄ HubSpot mapping

| Generic concept | Salesforce | HubSpot |
|---|---|---|
| **Account / company** | Account (SalesforceAccountOperator) | Company (HubspotCompanyOperator) |
| **Contact** | Contact (SalesforceContactOperator) | Contact (HubspotContactOperator) |
| **Opportunity / deal** | Opportunity (SalesforceOpportunityOperator) | Deal (HubspotDealOperator) |
| **Logged meeting** | Event (or completed Task) via SalesforceActivityOperator | Engagement of type Meeting via HubspotEngagementOperator |
| **Summary note** | Task or Event description (or a Note-type activity) via SalesforceActivityOperator | Engagement of type Note via HubspotEngagementOperator |
| **Follow-up task** | Task via SalesforceActivityOperator (Subject, ActivityDate, Owner) | Engagement of type Task via HubspotEngagementOperator (title, due date, owner) |
| **Associations** | WhoId (contact) and WhatId (account or opportunity) on the activity | Meeting and note associated to contact, company and deal |
| **Stage** | Opportunity Stage (StageName) | Deal stage (dealstage) in the deal's pipeline |
| **Amount** | Opportunity Amount | Deal amount |
| **Close date** | Opportunity CloseDate | Deal closedate |
| **Open vs closed** | IsClosed = false | Deal stage is not Closed Won or Closed Lost |
| **Owner** | Owner (User) | Contact / deal owner |

Field names and stage labels vary by setup. The clone reads your actual stage names and pipeline from the CRM before suggesting anything.

### Google ⇄ Microsoft 365 mapping

| Concept | Google Workspace | Microsoft 365 |
|---|---|---|
| Email | Gmail (GoogleGmailOperator) | Outlook email operator |
| Calendar | Google Calendar (GoogleCalendarOperator) | Outlook calendar operator |
| Files with AI notes | Google Drive (GoogleDriveCoreOperator) + Docs (GoogleDocsCoreOperator), e.g. Gemini notes in "Meet Recordings" | OneDrive (Microsoft_OneDrive) |

## 4. Data prerequisites

- [ ] **Accounts have domains.** CRM accounts/companies have a website or email domain, and contacts have email addresses, so matching works.
- [ ] **You know your open deals.** Open opportunities/deals exist for the accounts you meet, and stages are in use.
- [ ] **`{YOUR_COMPANY_DOMAINS}` listed**, so internal meetings are skipped.
- [ ] **A notes source is available:** AI meeting notes turned on in your meeting tool, or the clone attends meetings, or you are willing to paste notes.
- [ ] **A test account, contact and deal** exist for the test run (not a real customer).
- [ ] **Your CRM user can edit** contacts, accounts/companies, deals/opportunities and activities.

## 5. Roles and permissions

| Who | Needs to |
|---|---|
| **Clone admin** (owner of the clone) | Attach operators, approve the plan, save the Post-Meeting CRM Log skill, create or approve the scheduled task |
| **CRM user (each person)** | Connect their own Salesforce or HubSpot account with write access (admin not needed); approve change lists |
| **CRM admin** (only if your org restricts permissions) | Grant the user write access to contacts, accounts/companies, deals/opportunities and activities |
| **Notes owner** | Make sure AI notes are saved somewhere the clone can read, or share the folder |
| **RevOps** (optional) | Review stage definitions, required fields and activity subject conventions |

## 6. Estimated setup time

| Step | Time |
|---|---|
| Pre-flight check (this doc) | 5 min |
| Clone discovery + placeholders + plan | 10 min |
| Your CRM and notes-source connections | 10–20 min |
| Save skill + optional scheduled task | 5–10 min |
| Test run | 10–15 min |
| **Total** | **30–60 min** |

## 7. Pre-flight checklist

- [ ] I'm the clone admin (or have one available)
- [ ] I use Salesforce or HubSpot and can sign in with **my own** account
- [ ] My CRM user has **write** access to contacts, accounts/companies, deals/opportunities and activities (admin not needed)
- [ ] I know where my meeting notes come from (`meeting_archive`, Drive/OneDrive, email, or pasted)
- [ ] I know my `{YOUR_COMPANY_DOMAINS}`
- [ ] I've decided on `{SKIP_RULES}` (or none)
- [ ] I've decided whether to schedule it (`{RUN_SCHEDULE}`) and how I get proposals (`{RECAP_DELIVERY}`)
- [ ] I've decided `{AUTO_LOG_MODE}` (default: off)
- [ ] I have a test account, contact and deal in the CRM
- [ ] I can create scheduled tasks (or the clone can)

## 8. You're ready when…

- ✅ The operators for your CRM are attached and the connection is signed in with write access.
- ✅ At least one notes source works (or you are ready to paste notes).
- ✅ You have answers for the placeholders in README section 6.
- ✅ You have a test account, contact and deal.
- ✅ You are comfortable replying "approve" to a change list.

Then download **CLONE-INSTRUCTIONS.md** and give it to your clone.
