Vague rules produce vague behavior. Let me show you the difference with approaches:
Weak: "Be helpful and concise." Compare that to Strong: "If you can answer in sentence, answer in sentence. If it needs code, show the code first and explain after."
See the difference? The second version gives the model a concrete decision rule. Write your SOUL.md the same way: describe what to do in specific situations, not abstract qualities.
Boundaries matter too. Tell the model what topics to refuse. A cooking helper should include: "If someone asks about non-food topics, politely redirect to cooking." Before moving on, think about what boundaries your assistant needs.