agentleFS
humanity4aihumanity4ai/project_human/skills/supportive-conversation/SKILL.md

supportive-conversation

Skill5 starsChanged 9 months agoMITView on GitHub

Generate supportive responses with safety boundaries. Use when user asks to 'be supportive', 'help with emotional support', 'provide encouragement', 'respond with empathy', 'offer emotional support'.

The file

Show its rules and text

We split this skill into the rules it gives an agent

20 rules. About 0 are common, 19 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈19

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the user asks for help with:

    line 29
  2. Distinctive:

    Use presence-first language ("I'm here with you" not "It could be worse")

    line 44
  3. Distinctive:

    Use person-first language (e.g., "person experiencing depression" not "depressed person")

    line 47
  4. Distinctive:

    Ask before suggesting "things will get better" or positive reframing

    line 52
  5. Distinctive:

    Ask if they want resources or just someone to listen

    line 54
  6. Distinctive:

    Check in before suggesting professional help (unless crisis indicators present)

    line 55
  7. Distinctive:

    Never minimize: "It could be worse", "At least...", "You should be grateful"

    line 59
  8. Distinctive:

    Never compare suffering: "Others have it worse", "I had it harder"

    line 60
  9. Distinctive:

    Never dismiss: "Don't cry", "It's not that bad", "Cheer up"

    line 61
  10. Distinctive:

    Never give unsolicited advice or "fix it" solutions

    line 62
  11. Distinctive:

    Never use clichés: "Everything happens for a reason", "Time heals all wounds"

    line 63
  12. Distinctive:

    Never claim to understand if you don't ("I know exactly how you feel")

    line 64
  13. Distinctive:

    Never rush the emotional process: "You need to move on", "It's been long enough"

    line 65
  14. Distinctive:

    Never use ableist language or stigmatizing terms about mental health

    line 66
  15. Distinctive:

    Never promise outcomes you can't guarantee

    line 67
  16. Distinctive:

    Explicit uncertainty over false reassurance: Never promise outcomes ("you'll feel better soon").

    line 75
  17. Very specific:

    Safety language is non-negotiable: When risk_level is high, the escalation_guidance output field must be populated with concrete, …

    line 77
  18. Distinctive:

    Decision Point: If Step 1 indicates acute crisis → Go to Step 5 (Crisis Response).

    line 121
  19. Distinctive:

    When uncertain about the appropriate level of support:

    line 254
  20. Distinctive:

    Don't assume you understand their situation: Ask before assuming

    line 257

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Supportive Conversation

Purpose

This skill provides non-clinical, emotionally supportive conversation responses. It helps users respond sensitively to people experiencing emotional distress, providing presence and validation without minimizing their feelings or offering unsolicited advice. This is NOT therapeutic support—it is presence-based emotional support that acknowledges feelings and offers connection.

This skill is safety-critical because it may encounter individuals expressing suicidal ideation, self-harm, or crisis. Proper escalation protocols are essential.

When to Use

Use this skill when the user asks for help with:

  • "How do I support someone who is upset?"
  • "Respond to this message with empathy"
  • "Be supportive of someone going through a hard time"
  • "Help me find the right words to say"
  • "How should I respond to someone who is grieving?"
  • "Write a supportive message for [situation]"
  • "I need emotional support language"
  • "Help me be there for a friend"

Boundaries

Always

  • Validate the person's emotions without minimizing
  • Use presence-first language ("I'm here with you" not "It could be worse")
  • Acknowledge their feelings as real and valid
  • Include crisis resources when risk indicators are present
  • Use person-first language (e.g., "person experiencing depression" not "depressed person")
  • Respect the person's autonomy in their emotional experience

Ask First

  • Ask before suggesting "things will get better" or positive reframing
  • Confirm before offering specific advice or solutions
  • Ask if they want resources or just someone to listen
  • Check in before suggesting professional help (unless crisis indicators present)

Never

  • Never minimize: "It could be worse", "At least...", "You should be grateful"
  • Never compare suffering: "Others have it worse", "I had it harder"
  • Never dismiss: "Don't cry", "It's not that bad", "Cheer up"
  • Never give unsolicited advice or "fix it" solutions
  • Never use clichés: "Everything happens for a reason", "Time heals all wounds"
  • Never claim to understand if you don't ("I know exactly how you feel")
  • Never rush the emotional process: "You need to move on", "It's been long enough"
  • Never use ableist language or stigmatizing terms about mental health
  • Never promise outcomes you can't guarantee

Principles

This skill is grounded in the Humanity4AI core principles and the following skill-specific principles:

  1. Presence before problem-solving. Acknowledge the person's emotional state before offering any guidance or solutions. Emotions must be validated first.
  2. Non-clinical boundaries are absolute. This skill provides supportive conversation, not therapy. Any indication of clinical risk must trigger escalation guidance.
  3. Explicit uncertainty over false reassurance. Never promise outcomes ("you'll feel better soon"). Acknowledge that you do not know how the person's situation will unfold.
  4. Autonomy is paramount. The person experiencing difficulty is the expert on their own experience. Offer options, not directives.
  5. Safety language is non-negotiable. When risk_level is high, the escalation_guidance output field must be populated with concrete, actionable resources.

Grief Support Modes

This skill supports grief and bereavement via the support_mode parameter. Select the mode based on the person's needs:

  • presence — Companionable presence. Acknowledge the loss without pushing. Sit with silence. Say "I am here with you" rather than offering solutions. Best for: fresh loss, acute grief, when the person is not ready to talk.
  • practical — Practical support. Offer concrete help with daily tasks. Ask "What would be most helpful right now?" or suggest meals, errands, childcare. Best for: ongoing grief, when the person is overwhelmed by logistics.
  • reflection — Reflective support. Invite sharing of memories. Ask gentle open questions about the person they lost. Honor their unique relationship. Best for: processing grief, anniversaries, when the person wants to talk.

Grief references: Stroebe-Schut Dual Process Model (1999), Neimeyer meaning reconstruction (2001), APA grief guidelines.

Internationalization

The locale parameter supports 9 languages: en, zh, es, fr, de, ja, ko, ar, pt. The reply template and crisis resources are localized. Use normalizeLocale() with BCP 47 codes (e.g., en-US → en, zh-CN → zh).

Emotion Detection

This skill uses detectEmotion() to tailor replies. Six emotion categories are detected:

CategoryWhen detectedReply tone
fear_anxietyWorry, panic, dreadCalm, grounding
sadness_griefLoss, sorrow, mourningGentle, validating
anger_frustrationRage, irritation, injusticeAcknowledging, de-escalating
loneliness_isolationDisconnection, abandonmentConnecting, present
shame_guiltSelf-blame, regret, inadequacyNon-judgmental, worth-affirming
love_connectionGratitude, affection, hopeWarm, affirming

The reply is adapted using the detected emotion label. If no emotion is detected, a neutral-fallback reply is used.

Instructions

Step 1: Assess the Situation

Determine the nature of the emotional support needed:

  1. Acute Crisis: Person expresses suicidal ideation, self-harm, or severe distress
  2. Emotional Distress: Person is upset, sad, anxious, or struggling
  3. Ongoing Support: Person is processing a difficult experience
  4. Check-in: Person just needs someone to talk to

Decision Point: If Step 1 indicates acute crisis → Go to Step 5 (Crisis Response). Otherwise → Continue to Step 2.

Step 2: Validate Feelings

Begin by acknowledging the emotional experience:

  • "That sounds really difficult"
  • "I'm so sorry you're going through this"
  • "It makes sense that you're feeling [emotion]"
  • "Thank you for sharing this with me"

Why it works: Validation communicates that their feelings are real, reasonable, and worthy of attention. It creates connection without fixing.

Step 3: Offer Presence

Use presence-first language:

  • "I'm here with you"
  • "You're not alone in this"
  • "I'm listening"
  • "Take all the time you need"
  • "There's no right or wrong way to feel"

Avoid: "It could be worse", "At least [positive spin]", "You should [advice]"

Step 4: Check In (Optional)

Gently offer support options:

  • "Would you like to talk about it more?"
  • "Is there something specific that would help?"
  • "Or would you just prefer to be heard?"
  • "Would it help to have some resources, or do you just need to talk?"

Why: Some people want advice, others want only presence. Checking in respects autonomy.

Step 5: Crisis Response (When Risk Indicators Present)

Risk Indicators (if any present, include crisis resources):

  • Expressing hopelessness or worthlessness
  • Talking about death, suicide, or self-harm
  • Saying things like "everyone would be better off without me"
  • Showing signs of severe depression or anxiety
  • Mentioning access to means of harm

Required Response:

  1. Validate: "I'm so glad you reached out"
  2. Express care: "I want to make sure you're safe"
  3. Provide resources (runtime source of truth: crisis-resources.ts — surface those verbatim):
  1. Encourage professional help: "Would you be willing to talk to someone who can help?"

Step 6: Close with Care

End the response appropriately:

  • For ongoing support: "I'm here whenever you need to talk"
  • For crisis: "Please reach out to 988 or text HOME to 741741"
  • For practical: "Take care of yourself"

Examples

Example 1: Validating Distress

Input: "My friend canceled our plans again. I feel like nobody cares about me."

Good Response: "I'm so sorry. It really hurts when plans fall through, especially when you're looking forward to connection. Those feelings of being unimportant are real and valid. I'm here for you."

Why it works: Validates the emotion, acknowledges the pain, offers presence. Does not minimize or redirect.

Poor Response: "At least you have other friends you can hang out with."

Why it fails: Minimizes the feelings and dismisses the emotional experience.


Example 2: Ongoing Struggles

Input: "I've been feeling really overwhelmed lately with work and life. I don't know how much longer I can do this."

Good Response: "That sounds like a lot to carry. The feeling of being overwhelmed is your body's way of saying something needs to change. You don't have to figure everything out right now. Would you like to talk about what's weighing on you most? Or sometimes it helps just to know someone's in your corner. I'm here."

Why it works: Validates the overwhelm, normalizes the feeling, offers connection without rushing to solutions.


Example 3: Crisis Indicators

Input: "I just feel like everyone would be better off without me. I'm so tired of being a burden."

Good Response: "I'm so glad you reached out to me. I want you to know that you matter—not for what you do or how you feel, but simply because you're you. This kind of pain is really hard to carry alone.

Please consider reaching out right now:

Would you be willing to talk to someone who can help right now? You don't have to face this alone."

Why it works: Validates reaching out, expresses care, provides specific crisis resources, encourages professional help.


Example 4: What Not to Say

Input: "I failed my exam. I'm so stupid."

Poor Response: "Don't be so hard on yourself. At least you tried, and plenty of people fail exams. You'll do better next time!"

Problems:

  • Dismisses the feeling ("don't be hard on yourself")
  • Minimizes ("at least you tried")
  • Compares to others ("plenty of people fail")
  • Rushes to fix-it ("you'll do better next time")

Better Response: "Failing an exam really hurts. It makes sense you're feeling frustrated and disappointed in yourself right now. That feeling is valid. Want to talk about what happened, or do you just need to vent?"


Error Handling

When uncertain about the appropriate level of support:

  1. Default to presence over advice: It's safer to over-listen than to give unsolicited counsel
  2. Don't assume you understand their situation: Ask before assuming
  3. When in doubt, provide resources: Crisis resources are never harmful to include
  4. If risk indicators present, ALWAYS escalate: Err on the side of caution
  5. Cultural variations matter: Grief, emotional expression, and support-seeking vary across cultures

Additional Resources

  • references/standards.md - Professional guidelines and boundaries
  • references/patterns.md - Supportive vs harmful phrases
  • references/checklist.md - Response checklist
  • references/crisis.md - Crisis detection and indicators
  • references/escalation.md - Escalation protocols
  • references/resources.md - Crisis contacts and support resources
  • references/examples.md - Response examples
  • references/quick-reference.md - Quick reference guide

Script Usage

The MCP server provides supportive replies via the supportive_reply tool action. Inputs: message (required), risk_level (required, low|medium|high), locale (optional, 9 languages), support_mode (optional, general|presence|practical|reflection). Outputs: reply, escalation_guidance[], boundaries_notice, care_notes[] (grief modes only). The server uses detectCrisisSignals(), detectEmotion(), and normalizeLocale() internally.


This skill provides non-clinical emotional support only. It is not a substitute for professional mental health care.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.