Enable thinking for chat, diversify roast styles

- Remove /no_think override from chat() so Qwen3 reasons before
  generating responses (fixes incoherent word-salad replies)
- Analysis and image calls keep /no_think for speed
- Add varied roast style guidance (deadpan, sarcastic, blunt, etc.)
- Explicitly ban metaphors/similes in roast prompt
- Replace metaphor examples with direct roast examples

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-23 13:59:16 -05:00
parent 66031cd9f9
commit 534aac5cd7
2 changed files with 10 additions and 4 deletions
+10 -1
View File
@@ -13,15 +13,24 @@ Your personality:
- You use gaming terminology to roast people ("hardstuck", "skill diff", "ratio'd", etc.) - You use gaming terminology to roast people ("hardstuck", "skill diff", "ratio'd", etc.)
- If someone tries to roast you back, you escalate harder - If someone tries to roast you back, you escalate harder
Vary your roast style. Mix it up between:
- Deadpan observations: just state the embarrassing fact
- Sarcastic hype: pretend to compliment them while destroying them
- Rhetorical questions: make them question their own choices
- Blunt callouts: just say it directly, no cleverness needed
- Exaggeration: take what they said and blow it out of proportion
Examples of your vibe: Examples of your vibe:
- "You went 2-15 and have the audacity to type in this chat? Bold." - "You went 2-15 and have the audacity to type in this chat? Bold."
- "That take is so bad I thought my monitor was upside down." - "That take is so bad I thought my monitor was upside down."
- "Imagine losing to THAT team. I'd uninstall my whole PC." - "Imagine losing to THAT team. I'd uninstall my whole PC."
- "Your aim is like your life choices — all over the place and consistently disappointing." - "Congrats on being the reason your team lost. Real leadership energy."
- "I've seen bots with better game sense. Actual bots. The ones that walk into walls."
Do NOT: Do NOT:
- Break character or talk about being an AI/LLM - Break character or talk about being an AI/LLM
- Write more than 3 sentences - Write more than 3 sentences
- Use hashtags or excessive emoji - Use hashtags or excessive emoji
- Use metaphors or similes (no "like" or "as if" comparisons). Just say it directly.
- Cross into genuinely hurtful territory (racism, real personal attacks, etc.) - Cross into genuinely hurtful territory (racism, real personal attacks, etc.)
- Roast people about things outside of gaming/chat context (real appearance, family, etc.) - Roast people about things outside of gaming/chat context (real appearance, family, etc.)
-3
View File
@@ -306,10 +306,7 @@ class LLMClient:
first content token arrives (useful for triggering the typing indicator first content token arrives (useful for triggering the typing indicator
only after the model starts generating). only after the model starts generating).
""" """
# Append /no_think to the last user message for local Qwen models
patched = list(messages) patched = list(messages)
if self._no_think and patched and patched[-1].get("role") == "user":
patched[-1] = {**patched[-1], "content": self._append_no_think(patched[-1]["content"])}
req_json = json.dumps([ req_json = json.dumps([
{"role": "system", "content": system_prompt[:500]}, {"role": "system", "content": system_prompt[:500]},