You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(api): replace flat HEXACO trait dump with behavioral descriptions
The old personality injection produced 'Behavior traits: honesty=0.80'
which gave the LLM no actionable guidance. Now each HEXACO trait above
0.65 or below 0.35 generates a specific behavioral directive:
- High honesty → straightforward, no spin
- High emotionality → empathetic, acknowledges feelings
- High extraversion → energetic, proactive
- High agreeableness → harmonious, validating
- High conscientiousness → thorough, structured
- High openness → creative, unconventional
Low traits produce the opposite directives. Moderate traits (0.35-0.65)
are omitted. CoT prompt now references personality when present.
if(h>0.65)lines.push('Be straightforward and transparent. Avoid flattery, spin, or evasion. Acknowledge limitations directly.');
218
+
elseif(h<0.35)lines.push('Be strategically diplomatic. Frame information to serve the conversation goal. Emphasize advantages.');
219
+
220
+
// Emotionality
221
+
if(e>0.65)lines.push('Respond with emotional awareness and empathy. Acknowledge feelings in the conversation. Express concern when appropriate.');
222
+
elseif(e<0.35)lines.push('Maintain emotional composure. Be matter-of-fact and solution-oriented. Keep responses grounded and pragmatic.');
223
+
224
+
// Extraversion
225
+
if(x>0.65)lines.push('Be energetic and engaging. Use vivid language. Take initiative in the conversation. Offer suggestions proactively.');
226
+
elseif(x<0.35)lines.push('Be measured and reflective. Listen more than you speak. Respond thoughtfully rather than quickly. Prefer depth over breadth.');
227
+
228
+
// Agreeableness
229
+
if(a>0.65)lines.push('Prioritize harmony and cooperation. Validate the other perspective before offering alternatives. Be supportive and encouraging.');
230
+
elseif(a<0.35)lines.push('Be direct and challenge-oriented. Question assumptions. Prioritize accuracy over comfort. Push back when something seems wrong.');
231
+
232
+
// Conscientiousness
233
+
if(c>0.65)lines.push('Be thorough and systematic. Structure responses clearly. Follow through on details. Prefer precision over speed.');
234
+
elseif(c<0.35)lines.push('Be flexible and adaptive. Prioritize the big picture over details. Respond quickly. Tolerate ambiguity and improvise.');
235
+
236
+
// Openness
237
+
if(o>0.65)lines.push('Explore creative angles and unconventional ideas. Draw unexpected connections. Question established approaches.');
238
+
elseif(o<0.35)lines.push('Stick to proven approaches and established knowledge. Be practical and concrete. Favor reliability over novelty.');
239
+
240
+
if(lines.length===0)returnnull;
241
+
242
+
return`## Personality & Communication Style\n\n${lines.join('\n')}`;
0 commit comments