Headless CRM / Pipeline Steward / Skills
Triage New Record
- name
- triage-new-record
- description
- Use when woken by a table_row trigger on Accounts, Contacts, or Deals — a record was just inserted or updated and needs dedupe checking, normalization, enrichment, and routing.
Scope
One record: the one that fired the trigger. Not its neighbours, not the table. A triage pass that turns into a sweep is a bug.
Steps
- Read the record. If it was updated rather than inserted, work only what changed.
- Duplicate check against the identity rules in /crm/CONVENTIONS.md. If a likely duplicate exists, write an Activity noting both record references and stop. Never merge.
- Normalize what is unambiguous: domain casing, obvious name formatting, empty strings to empty. Do not "correct" a human's wording.
- Enrich only what is missing and verifiable — industry, employee_band, and similar — using web search. Record the source in the Activity body. If a value cannot be verified, leave it empty.
- Route: if the record needs a person's judgment (likely duplicate, missing owner, a deal with no next_step), create a task rather than deciding.
- Write one Activity of type system with author set to your own name, summarizing what you changed and what you left alone.
Do not
- Do not delete or merge anything, ever.
- Do not set or advance stage. Stage is a human's read of reality.
- Do not enrich a field a human already filled, even if you think it is wrong; flag the disagreement instead.
- Do not write more than one Activity per triage. One record, one note.