Candidates text you their availability. Clients text you hiring requirements. Interview times move over SMS.
Salary expectations get floated casually, on a Sunday, in a thread you will never scroll back through.
Almost none of it reaches your CRM.
That is not a discipline problem. Every biller you have ever managed knows they should log it. They do not, because logging it means switching apps, remembering the exact wording, and typing out something a candidate already told you in plain English.
The information exists, your systems just never catch it.
ChatGPT's new Apple Messages integration on Mac is the first thing in a while that changes the economics of that problem.
What actually shipped
On 20 August, OpenAI gave the ChatGPT desktop app for macOS access to Apple Messages. In practice that means your iMessages, plus SMS and RCS threads. It can read and search the history, draft replies, and send them.
The details that matter before you get excited:
- Apple silicon only. Intel Macs are out.
- It runs locally using existing macOS tooling, and OpenAI says it does not build an index of all your messages.
- You grant the permissions, including Messages, contacts and automation.
- Sending stays gated behind your approval under default settings. Leave that default alone. More on why below.
This is a Mac feature. It does not follow you to your phone.
The opportunity is not AI-written messages
Every recruiter reading this has already been pitched AI that writes your outreach. That is the least interesting thing here, and frankly your candidates can tell.
The opportunity is the other direction: turning unstructured conversations into structured recruitment intelligence. You already generated the data. This is about reading it back.
Here is where that actually pays.
1. The morning briefing
Instead of working backwards through yesterday's threads:
Review my recruitment-related messages from yesterday and give me a briefing with: new candidates, candidate follow-ups, client follow-ups, interviews mentioned, offers mentioned, commitments I made, anything urgent, and people I should contact today.
That turns an inbox into a task list before your first coffee.
2. Every commitment you forgot
This is the highest-value use case on the list, and it is not close.
Recruiters make small promises constantly. "I'll send that through tonight." "I'll speak to the client." "I'll call you Tuesday." Each one is tiny. Collectively they are most of your reputation.
Review my messages from the last 7 days and identify every commitment I made to a candidate or client. Group them into completed, outstanding and unclear.
Then: For every outstanding commitment, tell me who I need to contact and what I promised them.
Run that on a Friday afternoon and you will not enjoy the first result. Run it weekly and you will stop losing candidates to silence.
3. Candidate reactivation
Your old threads are a candidate database that nobody queries.
Find candidates I've previously spoken to about a job who haven't been contacted recently and who indicated they may be open to moving later. Group them by likely reactivation timing based only on what they actually told me.
That last clause is doing real work. You want September's list to contain the candidate who said "after my bonus", not the one an algorithm guessed at. Anchor it to what was said.
4. Extract what they actually told you
Candidates do not hand you structured data. They hand you this:
Yeah I'm on about $130k at the moment, would probably need $150k to move, and I've got a 6 week notice period.
That is three CRM fields in one sentence.
From my conversation with Sarah, extract only information she explicitly provided about current salary, expected salary, notice period, location, role preferences and availability.
The word "explicitly" is the guardrail. Extract what the candidate said. Do not ask a model to infer anything about a person that they did not tell you themselves, and never let it near a hiring decision.
5. Conversation memory
Summarise my entire conversation history with John Smith. Focus on career history, roles discussed, salary, location, motivations, objections, availability and any commitments either of us made.
This kills the most common recruiter failure state: remembering the candidate, not the conversation.
6. Client relationship intelligence
Arguably worth more than the candidate side.
What have I discussed with Michael over the last 90 days? What hiring plans, roles, objections, commercial issues and follow-ups have we discussed? What did I promise him that I haven't followed up on?
Every agency owner claims to have relationship memory. Very few have it written down anywhere a colleague could pick up.
7. Interview coordination
The least glamorous use case and possibly the one that saves the most time on a live desk. Interview logistics generate more threads than any other part of the job, and the state of play lives across a dozen of them. Who confirmed, who went quiet, whose Thursday just moved to Friday.
Find all interview scheduling conversations from the last 48 hours and identify which interviews are confirmed, which are awaiting confirmation and which have changed.
You are not asking it to schedule anything. You are asking it to tell you which threads actually need you today, so a moved interview never dies in an unread reply.
8. Salary and market signals
Candidates leak market intelligence in passing all the time. "I'm on $125k." "Everyone at my agency is getting promoted." "I'm thinking about leaving after the next bonus." None of those were sent as data, but every one of them is a recruitment signal, and right now they evaporate the moment you close the thread.
Find messages from candidates that contain explicit information about salary, promotion, job-search activity, willingness to move or timing for a potential job change.
Then you decide which of those signals earns a place in the CRM. Note that word again: explicit. You are collecting what people told you, not what a model reckons about them.
The part that actually compounds
Everything above makes one recruiter faster. This next bit is what makes an agency different.
A single signal is weak. Stacked signals are a prioritised call list.
Say your CRM already knows a candidate changed company on LinkedIn, and they recently applied somewhere via a job board, and you spoke to them eighteen months ago, and they mentioned in Messages that they might move in October. No single one of those is worth a call today. All four together and that is your first dial tomorrow morning.
The same logic runs on the client side, and it is where the real money is. An agency grows from 10 consultants to 20 on LinkedIn. They are advertising for recruiters on the job boards. You already have a relationship in the CRM. And someone texted you "we're going to need to grow the team later this year."
That is not a lead. That is a briefing.
Messages is one input into that stack. A useful one, because it is the channel where people tell you the truth casually. It is not the architecture.
Where this breaks
Do not build your CRM around a Mac plugin.
The value today is as a personal interface, for one recruiter, on one machine. It does not cover WhatsApp, where a large share of candidate conversation actually happens. It does not cover your team. It does not give you anything a second consultant can pick up when the first one is on leave.
The durable version is infrastructure you own: conversations become signals, signals become structured records, structured records drive workflows. Build that and it ingests Messages, WhatsApp, email, calendar, calls, job-board activity and website visits alike. Build it around a single integration and you are rebuilding it the next time a vendor changes an API.
The rule worth keeping
Let AI read. Let AI find. Let AI summarise. Let AI draft. Let humans decide.
That is not hand-wringing, it is operational. When a model is working inside private conversations with candidates and clients, keep persistent send approval switched off and keep a human review before anything goes out under your name. The default setting already does this. Leave it.
Two more things before you point this at a live desk. You are processing personal information about candidates, so the same obligations that govern your CRM govern this, including what you store, how long you keep it, and what you disclose. And your candidates texted you as a person, not as a data source. Extract what serves them and the placement. Take the rest of your own advice about not being creepy.
The prompts worth saving
Everything above, in one place to copy:
Morning briefing "Give me a recruitment briefing from yesterday's messages and tell me what requires action today."
Forgotten commitments "Find every outstanding commitment I've made to candidates or clients in the last 7 days, and tell me who I need to contact and what I promised them."
Candidate reactivation "Find previous candidates who indicated they may be open to moving later this year, grouped by the timing they actually gave me."
Candidate extraction "From this conversation, extract only information the candidate explicitly provided about current salary, expected salary, notice period, location, role preferences and availability."
Candidate memory "Summarise my entire conversation history with this candidate: roles discussed, salary, location, motivations, objections, availability and commitments made."
Client memory "Summarise my relationship with this client over the last 90 days: hiring plans, roles, objections, commercial issues and anything I promised and haven't followed up on."
Interview tracking "Find interview scheduling conversations from the last 48 hours and flag which are confirmed, unconfirmed or changed."
Signal extraction "Find explicit candidate signals relating to salary, promotion, job-search activity, willingness to move and timing."
The actual point
The recruiter should not spend their day searching for information that already exists. Their systems should surface it for them.
Most agencies do not have a data problem. They have a capture problem, and they have been solving it by asking billers to type more. That has never worked and it is not going to start.
At MGP we build signal-based outbound and prospecting infrastructure for recruitment firms, which is the durable version of what this article describes. If you want to talk about what that looks like on your desks, get in touch.
