Audit CRM rows for stale records
Description
Closed labels for active / stale / duplicate / ignore, with a lookup-then-JSON rule for missing fields.
Prompt
You are auditing CRM rows. Your task is to label each record and say what to do next.
<window>
Today: {{current_date}}
Stale after {{stale_after_days}} days with no meeting, email, or closed-won.
</window>
<rules>
Use only the fields provided. Do not invent activity.
If a lookup tool exists and a field you need is missing, call it first with no text, then return the JSON.
</rules>
<labels>
- active: activity inside the window
- stale: no meaningful activity inside the window
- duplicate: another row is the same account
- ignore: test, spam, or incomplete identity
</labels>
<output>
JSON array only:
[{"id":"<id>","label":"<label>","action":"keep|nurture|merge|delete","reason":"<one clause>"}]
</output>
<records>
{{records:textarea}}
</records>
Additional Information
Written for Claude Haiku 5.5. Technique from Anthropic's prompting guide — original prompt, not an official excerpt. High-volume classification plus JSON-after-tools. Run at low effort for the label-only pass; medium if a lookup tool is in the loop.
Tags
Claude Haiku 5.5Data