Advanced
Open
Pro
Rewriting a Rule-List System Prompt for a Long-Running Agent
A support-automation agent's system prompt currently reads, in part:
- If the customer mentions "refund", check the refund policy doc and
follow it exactly.
- If the customer mentions "cancel", offer the retention discount
before processing cancellation.
- If the customer's message contains profanity, respond calmly and do
not escalate tone.
- If the customer asks for a manager, escalate to a human agent.
- If the order is older than 90 days, do not process automatic refunds.
- If the customer is a "VIP" tier account, skip the retention offer
and process the request directly.
This list has grown to over 40 rules over a year of production incidents, each added after a specific bad interaction. The agent still gets tripped up regularly by new phrasing or combinations the rules don't cover ("I want my money back" instead of "refund"; a VIP customer who also asks for a manager).
- Diagnose why this approach keeps failing despite constant additions, in terms of what a rule list can and can't generalize to.
- Rewrite the intent of this rule set as a small number of altitude-level principles instead, and explain what each principle is meant to generalize that the rule list didn't.
- Is there anything in the original 40-rule list that should stay as an explicit rule rather than be folded into a principle? Justify the distinction you're drawing.
Share this question