| name | handoff-intake |
| description | This skill should be used when an Orderful customer has just closed and the Implementation team needs to absorb the AE handoff. Triggers on: "intake new customer", "process the handoff for [customer]", "AE handoff for [customer]", "start onboarding for [customer]", "new customer just landed", "absorb the handoff doc", "kick off implementation for [customer]". Pulls the AE handoff document, Salesforce account context, any Slack handoff thread, and pre-sales call transcripts from the shared Drive folder, then produces a structured onboarding profile that downstream onboarding skills (kickoff-prep, partner-list-intake, migration-plan) consume.
|
| version | 0.2.0 |
Handoff Intake
Absorb a freshly-closed customer into the onboarding pipeline. Produce a single structured profile that every other skill in this plugin reads from.
When this fires
The customer has just moved to Type = "Customer" in Salesforce. The AE has dropped a handoff doc and probably a Slack message. The Implementation team needs to know who this customer is, what was sold, who the contacts are, what partners they trade with, and what was promised — before the kickoff call.
Inputs to gather
Run these in parallel; don't wait for one to finish before starting the next.
Salesforce — the source of truth for the deal
- Account record (use
find or soqlQuery): name, ID, owner (AE), industry, employee count, ARR, close date, type, OrgID custom field.
- Latest Closed Won Opportunity: amount, contract length, line items, products purchased, sales engineer.
- Contacts on the Account: name, title, email, role (decision-maker vs. day-to-day).
AE handoff document
- Search Google Drive / the user's connected file system for a doc titled "[Customer] handoff" or similar.
- If found, read it end to end. Extract: stated goals, in-scope transactions, partner list (if attached), promised timelines, known constraints, escalation contacts.
- If not found, flag it — don't fabricate.
Pre-sales call transcripts (Google Drive)
- Folder ID:
1QEycvwoKScvJ0zv-d8WbQql_X-Ujjpep (Orderful's shared call-transcripts folder).
- Use the Google Drive MCP to
search_files within that folder for filenames containing the customer name or slug — try both forms (e.g., "Acme Foods" and "acme-foods"). Match permissively; people name calls inconsistently.
- For each hit, download the content via
read_file_content. Transcripts are usually .docx, .txt, or .vtt.
- Read each transcript in full. Extract verbatim quotes (1–2 sentences each) for:
- Stated goals — what the customer said they wanted, in their words.
- Concerns / pain points — what they said is broken today.
- Scope edges — transactions, partners, or integrations they mentioned that aren't in the handoff doc.
- EDI vendor history — who they're moving off of and why.
- Promises the AE made on the call — even if not captured in the handoff doc.
- Cap extraction at ~3–6 quotes per transcript. Don't dump full transcripts into the profile.
- If multiple customers could match the filename (e.g., "Acme Foods" vs. "Acme Manufacturing"), list the candidates and flag the ambiguity — don't silently include both.
- If no transcripts are found, write "No transcripts found in shared folder for " — don't fabricate.
Slack handoff thread
- Search
#sales-handoff (or equivalent) for the customer name in the last 60 days.
- Pull the thread. Surface anything the AE said in Slack that didn't make it into the doc — promises, concerns, "watch out for X".
Orderful org (if it exists)
search_organizations by name. If a result exists, fetch get_account_context for the org.
- Capture: Org ID, ISA ID, communication channels configured, partnerships already created (rare at this stage, but possible).
Output
A single Markdown profile saved to the user's workspace as <customer-slug>-onboarding-profile.md. Use this exact structure:
# <Customer Name> — Onboarding Profile
**Generated:** <date> · **Stage:** Just landed · **SFDC:** <link> · **Orderful org:** <id or "not provisioned">
## The deal in one paragraph
<2–3 sentences. What did they buy, why, who from, when does the contract start, what's the dollar value.>
## Contacts
| Name | Title | Role | Email |
|---|---|---|---|
...
## In-scope work
- Transactions: <810, 850, etc.>
- Partner count promised: <N or "TBD">
- EDI vendor situation: <e.g. moving off Cleo VAN>
- Integration: <e.g. NetSuite via SFTP>
- Go-live target: <date or "TBD">
## What the AE promised
- <bullet list of explicit commitments — timelines, scope, custom asks>
- <Append any on-call commitments captured in transcripts but not in the handoff doc. Format as a bullet with a block-quote and a source link, e.g.:
- On the 2026-03-12 discovery call the AE committed to a 60-day go-live:
> "We can absolutely get you live in 60 days from contract signature."
[discovery call transcript](<drive link>)>
## Known risks / watch-outs
- <Things the AE flagged in the doc or Slack. Be specific.>
- <Append customer-voiced concerns from transcripts. Format with a block-quote and source link, e.g.:
- Strong skepticism about SPS-managed partners:
> "We've been burned by SPS twice — we don't want to repeat that."
[demo call transcript](<drive link>)>
## Missing information
- <Anything you'd expect in a handoff that wasn't there. This drives the kickoff agenda.>
- <Surface any topic raised on calls that the handoff doc doesn't address, and any contradiction between the transcripts and the handoff doc.>
## Sources
- AE handoff doc: <link or "not found">
- Slack handoff thread: <link or "not found">
- Salesforce Account: <link>
- Closed Won Opportunity: <link>
- Call transcripts:
- [<file name>](<drive link>) — <1-line gist>
- <or "No transcripts found in shared folder for <customer>">
Rules
- Don't fabricate. If the partner list wasn't in the handoff, write "TBD — must gather at kickoff." Don't invent partners.
- Be skeptical of the AE. AEs sometimes promise things Implementation can't deliver. List those promises explicitly under "What the AE promised" so the AM can decide whether to push back.
- Trust the customer's voice over the AE's summary. If a transcript and the handoff doc disagree on scope, timeline, or promises, surface the transcript version and flag the discrepancy in "Missing information". Quote, don't paraphrase.
- Pull contacts from Salesforce, not the handoff doc. The doc often lists one or two; SFDC has the full list.
- One profile per customer. If a profile already exists for this customer, ask whether to overwrite or update.
- Workspace path. Save to the user's selected folder if available, else save to the temporary workspace and provide a
computer:// link.
After saving, output a 4–5 line summary in chat: who the customer is, what they bought, the biggest open question for kickoff, and a link to the profile file. Then suggest: "Next step — run kickoff-prep once you have a kickoff call scheduled."