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
GLOBAL SWEEP: remove hardcoded English from user-facing surface
Operator directive 2026-05-17: "clear all caches and histories first
and remove any hardcoded english (other than generic technically
accurate terminologies--THIS IS A GLOBAL SWEEP!!"
Two user-facing English sites in the pipe were doing locale damage:
1. _CONVERSATIONAL_RE matched ONLY English openers. A Spanish/Korean/
Japanese/etc. "hi/thanks/bye" would NOT trigger the
skip-refine path -- the pipe would spin up the full refine + hermes
+ polish chain for what's actually a conversational ack. Broadened
to cover the languages the operator's chats commonly use:
* Latin scripts: en, es, pt, fr, it, de, nl, sv/da, pl, cs, hi/
transliterated Asian (ohayou/konnichiwa/ni hao/annyeong, etc.),
Hebrew/Arabic transliterations
* Native scripts: cyrillic (Russian), hanzi (Chinese), hiragana/
kanji (Japanese), hangul (Korean), Arabic, Hebrew
Unit-tested 35/35: every multilingual greeting matches, every
non-greeting (operator launch / image / weather requests) does not.
2. Status emits had English narrative ("MiOS-Agent: receiving
prompt...", "MiOS-Agent: refining via X (CPU)...", "MiOS-Agent:
polishing final answer via X (CPU)...", "MiOS-Agent: done",
"polish returned empty -- using raw", "refine: empty output --
passing original", "MiOS-Agent: backend returned no content",
etc.). Operators reading the OWUI status line shouldn't need
English to follow the agent. Now symbol+term form:
"📡 prompt"
"🧠 refine ← qwen2.5-coder:7b (CPU)"
"✓ refine 55c → 583c (CPU)"
"💬 → skip refine"
"🧠 → hermes"
"🛠️ tool: web_search" (unchanged -- model name only)
"🎨 polish ← qwen2.5-coder:7b (CPU)"
"⚠️ polish=∅ → raw"
"✓ clean → skip polish"
"⚙️ task-gen (title_generation) → CPU qwen2.5-coder:7b"
"✅"
"⏱️ 180s" (timeout)
"❌ ConnectionError: ..."
AGENT_THINKING_LABEL trimmed too: "🧠 MiOS-Hermes thinking + tools
(click to expand)" → "🧠 MiOS-Hermes". Tool/model names + numeric
units (chars, seconds) are cross-locale identifiers per the
operator's "generic technically accurate terminologies" carve-out.
Inline failure messages also neutralized:
"_(MiOS-Agent: backend returned no content)_" → "_⚠️ ∅_"
"_(MiOS-Agent: backend timed out)_" → "_⏱️ <N>s_"
"_(MiOS-Agent: pipe error: ...)_" → "_❌ <Class>: <msg>_"
Also: ran mios-cache-clear --all again for the "clear all caches and
histories first" half of the directive -- 889 MB OWUI cache, all
chats / messages / memories, hermes sessions / response_store /
kanban / channel_directory / context_length_cache, Chrome history +
cookies. Preserved: 1 admin user, 2 model rows (with sys prompt +
params), 2 tools (5-spec mios_verbs + openui), 3 functions, configs,
SOUL.md, skills, ollama models, cron.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
description="If the raw agent output is shorter than this and contains no narration markers, pass through unpolished -- no value in spinning up the CPU model for a one-liner result.",
201
201
)
202
202
AGENT_THINKING_LABEL: str=Field(
203
-
default="🧠 MiOS-Hermes thinking + tools (click to expand)",
204
-
description="The <summary> rendered above the collapsed reasoning block. Per-agent label so the operator can tell which agent (hermes / opencode / etc.) produced the thinking.",
203
+
default="🧠 MiOS-Hermes",
204
+
description="The <summary> rendered above the collapsed reasoning block. Per-agent label so the operator can tell which agent (hermes / opencode / etc.) produced the thinking. Kept short + symbol-led so it reads the same across operator locales (operator directive 2026-05-17 GLOBAL SWEEP for hardcoded English).",
205
205
)
206
206
207
207
def__init__(self):
@@ -284,19 +284,58 @@ async def _tail_watcher(
284
284
# gate -> triggered the dashboard rule and the agent dumped
285
285
# mios-system-status as the answer to a greeting. Both ' (U+0027)
286
286
# and ' (U+2019) now match the optional apostrophe slot.
287
+
# Operator directive 2026-05-17: GLOBAL SWEEP to remove hardcoded
288
+
# English. The conversational gate now matches greetings/acks/
289
+
# farewells across the languages the operator's chats commonly
290
+
# use. New languages can be added without code review by editing
291
+
# the alternation. The bare-name list (hi, hola, etc.) covers
292
+
# standalone tokens; the phrase list covers multi-word openers.
0 commit comments