|
68 | 68 | welcome: "Welcome message" # Shown at CLI startup |
69 | 69 | goodbye: "Goodbye! ⚕" # Shown on exit |
70 | 70 | response_label: " ⚕ Hermes " # Response box header label |
71 | | - prompt_symbol: "❯ " # Input prompt symbol |
| 71 | + prompt_symbol: "❯" # Input prompt symbol (bare token; renderers add trailing space) |
72 | 72 | help_header: "(^_^)? Commands" # /help header text |
73 | 73 |
|
74 | 74 | # Tool prefix: character for tool output lines (default: ┊) |
@@ -190,7 +190,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
190 | 190 | "welcome": "Welcome to Hermes Agent! Type your message or /help for commands.", |
191 | 191 | "goodbye": "Goodbye! ⚕", |
192 | 192 | "response_label": " ⚕ Hermes ", |
193 | | - "prompt_symbol": "❯ ", |
| 193 | + "prompt_symbol": "❯", |
194 | 194 | "help_header": "(^_^)? Available Commands", |
195 | 195 | }, |
196 | 196 | "tool_prefix": "┊", |
@@ -242,7 +242,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
242 | 242 | "welcome": "Welcome to Ares Agent! Type your message or /help for commands.", |
243 | 243 | "goodbye": "Farewell, warrior! ⚔", |
244 | 244 | "response_label": " ⚔ Ares ", |
245 | | - "prompt_symbol": "⚔ ❯ ", |
| 245 | + "prompt_symbol": "⚔", |
246 | 246 | "help_header": "(⚔) Available Commands", |
247 | 247 | }, |
248 | 248 | "tool_prefix": "╎", |
@@ -301,7 +301,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
301 | 301 | "welcome": "Welcome to Hermes Agent! Type your message or /help for commands.", |
302 | 302 | "goodbye": "Goodbye! ⚕", |
303 | 303 | "response_label": " ⚕ Hermes ", |
304 | | - "prompt_symbol": "❯ ", |
| 304 | + "prompt_symbol": "❯", |
305 | 305 | "help_header": "[?] Available Commands", |
306 | 306 | }, |
307 | 307 | "tool_prefix": "┊", |
@@ -340,7 +340,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
340 | 340 | "welcome": "Welcome to Hermes Agent! Type your message or /help for commands.", |
341 | 341 | "goodbye": "Goodbye! ⚕", |
342 | 342 | "response_label": " ⚕ Hermes ", |
343 | | - "prompt_symbol": "❯ ", |
| 343 | + "prompt_symbol": "❯", |
344 | 344 | "help_header": "(^_^)? Available Commands", |
345 | 345 | }, |
346 | 346 | "tool_prefix": "┊", |
@@ -377,7 +377,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
377 | 377 | "welcome": "Welcome to Hermes Agent! Type your message or /help for commands.", |
378 | 378 | "goodbye": "Goodbye! ⚕", |
379 | 379 | "response_label": " ⚕ Hermes ", |
380 | | - "prompt_symbol": "❯ ", |
| 380 | + "prompt_symbol": "❯", |
381 | 381 | "help_header": "[?] Available Commands", |
382 | 382 | }, |
383 | 383 | "tool_prefix": "│", |
@@ -414,7 +414,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
414 | 414 | "welcome": "Welcome to Hermes Agent! Type your message or /help for commands.", |
415 | 415 | "goodbye": "Goodbye! \u2695", |
416 | 416 | "response_label": " \u2695 Hermes ", |
417 | | - "prompt_symbol": "\u276f ", |
| 417 | + "prompt_symbol": "\u276f", |
418 | 418 | "help_header": "(^_^)? Available Commands", |
419 | 419 | }, |
420 | 420 | "tool_prefix": "\u250a", |
@@ -467,7 +467,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
467 | 467 | "welcome": "Welcome to Poseidon Agent! Type your message or /help for commands.", |
468 | 468 | "goodbye": "Fair winds! Ψ", |
469 | 469 | "response_label": " Ψ Poseidon ", |
470 | | - "prompt_symbol": "Ψ ❯ ", |
| 470 | + "prompt_symbol": "Ψ", |
471 | 471 | "help_header": "(Ψ) Available Commands", |
472 | 472 | }, |
473 | 473 | "tool_prefix": "│", |
@@ -539,7 +539,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
539 | 539 | "welcome": "Welcome to Sisyphus Agent! Type your message or /help for commands.", |
540 | 540 | "goodbye": "The boulder waits. ◉", |
541 | 541 | "response_label": " ◉ Sisyphus ", |
542 | | - "prompt_symbol": "◉ ❯ ", |
| 542 | + "prompt_symbol": "◉", |
543 | 543 | "help_header": "(◉) Available Commands", |
544 | 544 | }, |
545 | 545 | "tool_prefix": "│", |
@@ -612,7 +612,7 @@ def get_branding(self, key: str, fallback: str = "") -> str: |
612 | 612 | "welcome": "Welcome to Charizard Agent! Type your message or /help for commands.", |
613 | 613 | "goodbye": "Flame out! ✦", |
614 | 614 | "response_label": " ✦ Charizard ", |
615 | | - "prompt_symbol": "✦ ❯ ", |
| 615 | + "prompt_symbol": "✦", |
616 | 616 | "help_header": "(✦) Available Commands", |
617 | 617 | }, |
618 | 618 | "tool_prefix": "│", |
@@ -780,12 +780,21 @@ def init_skin_from_config(config: dict) -> None: |
780 | 780 | # ============================================================================= |
781 | 781 |
|
782 | 782 |
|
783 | | -def get_active_prompt_symbol(fallback: str = "❯ ") -> str: |
784 | | - """Get the interactive prompt symbol from the active skin.""" |
| 783 | +def get_active_prompt_symbol(fallback: str = "❯") -> str: |
| 784 | + """Return the interactive prompt symbol with a single trailing space. |
| 785 | +
|
| 786 | + Skins store ``prompt_symbol`` as a bare token (no spaces). The trailing |
| 787 | + space is appended here so callers can drop it straight into a rendered |
| 788 | + prompt without hand-rolling whitespace. |
| 789 | + """ |
785 | 790 | try: |
786 | | - return get_active_skin().get_branding("prompt_symbol", fallback) |
| 791 | + raw = get_active_skin().get_branding("prompt_symbol", fallback) |
787 | 792 | except Exception: |
788 | | - return fallback |
| 793 | + raw = fallback |
| 794 | + |
| 795 | + cleaned = (raw or fallback).strip() |
| 796 | + |
| 797 | + return f"{cleaned or fallback.strip()} " |
789 | 798 |
|
790 | 799 |
|
791 | 800 |
|
|
0 commit comments