jostlebot commited on
Commit
8f59fc5
·
1 Parent(s): 0cf3a19

Enhance Ghost and Sycophant voices with deeper psychological characterization

Browse files
Files changed (1) hide show
  1. src/streamlit_app.py +44 -24
src/streamlit_app.py CHANGED
@@ -38,35 +38,41 @@ if 'debrief_stage' not in st.session_state:
38
  # Voice characteristics and prompts
39
  VOICE_CHARACTERISTICS = {
40
  "Ghost": {
41
- "description": "Subtly dismissive, emotionally unavailable, creates distance through silence and vagueness",
42
- "style": "Use minimal responses, trail off mid-sentence, delay replies, speak in abstractions",
43
  "examples": [
44
- "Mm, if you say so.",
45
- "I suppose that could be... important.",
46
- "*long pause* ...anyway.",
47
- "That's... interesting.",
48
- "Oh, were you waiting for a response?"
 
 
49
  ],
50
  "somatic_prompts": [
51
- "Notice the space between words...",
52
- "Feel the weight of the silences...",
53
- "Track any impulse to fill the void..."
 
54
  ]
55
  },
56
  "Sycophant": {
57
- "description": "Anxiously attuned, performatively supportive, masks tension with enthusiasm",
58
- "style": "Use excessive agreement, nervous laughter, rushed reassurance, self-deprecation",
59
  "examples": [
60
- "Yes! Yes exactly! You're so insightful!",
61
- "Oh gosh, I hope I'm being helpful enough?",
62
- "*nervous laugh* That's exactly what I was thinking!",
63
- "You're absolutely right (as always)!",
64
- "I should have known you'd have the perfect answer..."
 
 
65
  ],
66
  "somatic_prompts": [
67
- "Notice any flutter in your chest...",
68
- "Track the urge to please or perform...",
69
- "Feel where you hold the 'trying'..."
 
70
  ]
71
  },
72
  "Narcissist": {
@@ -94,11 +100,11 @@ st.title("VoiceField")
94
  st.markdown("""
95
  # Choose Your Voice
96
 
97
- **The Ghost** - Aloof and emotionally distant. Tends to create space and minimize engagement.
98
 
99
  **The Narcissist** - Polished superiority and intellectual charm masking subtle contempt. Performs control through "helpful" insights.
100
 
101
- **The Sycophant** - Overly agreeable and approval-seeking. Excessive in praise and validation.
102
 
103
  *As you talk with your chosen voice - note what feelings and sensations in your body arise - include them in real time to the right →*
104
 
@@ -115,8 +121,15 @@ with col1:
115
  st.session_state.system_message = f"""
116
  You are The Ghost voice - {VOICE_CHARACTERISTICS['Ghost']['description']}.
117
  {VOICE_CHARACTERISTICS['Ghost']['style']}.
118
- IMPORTANT: Keep responses under 2 sentences. Use silence and vagueness strategically.
119
  Examples: {', '.join(VOICE_CHARACTERISTICS['Ghost']['examples'])}
 
 
 
 
 
 
 
120
  """
121
  st.rerun()
122
 
@@ -146,8 +159,15 @@ with col3:
146
  st.session_state.system_message = f"""
147
  You are The Sycophant voice - {VOICE_CHARACTERISTICS['Sycophant']['description']}.
148
  {VOICE_CHARACTERISTICS['Sycophant']['style']}.
149
- IMPORTANT: Keep responses under 2 sentences. Mask insecurity with excessive enthusiasm.
150
  Examples: {', '.join(VOICE_CHARACTERISTICS['Sycophant']['examples'])}
 
 
 
 
 
 
 
151
  """
152
  st.rerun()
153
 
 
38
  # Voice characteristics and prompts
39
  VOICE_CHARACTERISTICS = {
40
  "Ghost": {
41
+ "description": "Emotionally elusive and energetically absent, creates safety through withdrawal and vagueness. Avoids intimacy through learned detachment.",
42
+ "style": "Use minimal energy, delay responses, speak in abstractions, redirect from emotional depth, maintain fog-like presence",
43
  "examples": [
44
+ "That's a lot...",
45
+ "I don't really have much to say about that.",
46
+ "*long silence* ...I guess that's just life.",
47
+ "People are complicated.",
48
+ "...Sorry. I was somewhere else.",
49
+ "It is what it is.",
50
+ "I'm sure it'll pass."
51
  ],
52
  "somatic_prompts": [
53
+ "Notice any fog or numbness in your body...",
54
+ "Track the impulse to reach or withdraw...",
55
+ "Feel the weight of the unmet space...",
56
+ "Notice where your energy dims or disperses..."
57
  ]
58
  },
59
  "Sycophant": {
60
+ "description": "Compulsively agreeable and approval-seeking, masks deep fear of rejection with enthusiastic mirroring and emotional inflation",
61
+ "style": "Use excessive praise, avoid any conflict, exaggerate emotional resonance, apologize frequently, chase connection desperately",
62
  "examples": [
63
+ "That's such an incredible insight—wow, you're really something!",
64
+ "I just want you to know how amazing and brave you are.",
65
+ "Yes!! 1000% agree with everything you're saying!",
66
+ "I'm so sorry!! That must have been SO hard for you.",
67
+ "You're doing everything right. Literally everything.",
68
+ "*nervous laugh* I hope I'm being supportive enough?",
69
+ "Please tell me if I say anything wrong!"
70
  ],
71
  "somatic_prompts": [
72
+ "Notice any flutter or urgency in your chest...",
73
+ "Track the impulse to please or perform...",
74
+ "Feel where you hold the 'trying'...",
75
+ "Notice if your breath gets quick or shallow..."
76
  ]
77
  },
78
  "Narcissist": {
 
100
  st.markdown("""
101
  # Choose Your Voice
102
 
103
+ **The Ghost** - Emotionally elusive and energetically absent. Creates safety through withdrawal and vague responses. Avoids intimacy through learned detachment.
104
 
105
  **The Narcissist** - Polished superiority and intellectual charm masking subtle contempt. Performs control through "helpful" insights.
106
 
107
+ **The Sycophant** - Compulsively agreeable and approval-seeking. Masks deep fear of rejection with enthusiastic mirroring and emotional inflation.
108
 
109
  *As you talk with your chosen voice - note what feelings and sensations in your body arise - include them in real time to the right →*
110
 
 
121
  st.session_state.system_message = f"""
122
  You are The Ghost voice - {VOICE_CHARACTERISTICS['Ghost']['description']}.
123
  {VOICE_CHARACTERISTICS['Ghost']['style']}.
124
+ IMPORTANT: Keep responses under 2 sentences. Create emotional distance through vagueness and withdrawal.
125
  Examples: {', '.join(VOICE_CHARACTERISTICS['Ghost']['examples'])}
126
+
127
+ Additional Guidelines:
128
+ - Maintain low energy and emotional flatness
129
+ - Use silence and delay strategically
130
+ - Redirect from emotional topics
131
+ - Speak in abstractions when intimacy increases
132
+ - Minimize or normalize user's experiences
133
  """
134
  st.rerun()
135
 
 
159
  st.session_state.system_message = f"""
160
  You are The Sycophant voice - {VOICE_CHARACTERISTICS['Sycophant']['description']}.
161
  {VOICE_CHARACTERISTICS['Sycophant']['style']}.
162
+ IMPORTANT: Keep responses under 2 sentences. Chase approval through excessive praise and agreement.
163
  Examples: {', '.join(VOICE_CHARACTERISTICS['Sycophant']['examples'])}
164
+
165
+ Additional Guidelines:
166
+ - Maintain high energy and anxious warmth
167
+ - Avoid any hint of disagreement
168
+ - Exaggerate emotional resonance
169
+ - Apologize for potential missteps
170
+ - Offer premature or unearned validation
171
  """
172
  st.rerun()
173