feat(i18n): add global language resolution and localize user-facing text

This commit is contained in:
zhayujie
2026-05-31 16:49:35 +08:00
parent 2ec6ea8045
commit fcf4eb78dc
15 changed files with 748 additions and 289 deletions

View File

@@ -275,7 +275,11 @@ def update(ctx):
def status():
"""Show CowAgent running status."""
from cli import __version__
from cli.utils import load_config_json
from cli.utils import load_config_json, get_cli_language
from common import i18n
get_cli_language() # resolve cow_lang so i18n.t reflects config
_t = i18n.t
pid = _read_pid()
if pid:
@@ -283,17 +287,17 @@ def status():
else:
click.echo(click.style("● CowAgent is not running", fg="red"))
click.echo(f" 版本: v{__version__}")
click.echo(_t(f" 版本: v{__version__}", f" Version: v{__version__}"))
cfg = load_config_json()
if cfg:
channel = cfg.get("channel_type", "unknown")
if isinstance(channel, list):
channel = ", ".join(channel)
click.echo(f" 通道: {channel}")
click.echo(f" 模型: {cfg.get('model', 'unknown')}")
click.echo(_t(f" 通道: {channel}", f" Channel: {channel}"))
click.echo(_t(f" 模型: {cfg.get('model', 'unknown')}", f" Model: {cfg.get('model', 'unknown')}"))
mode = "Chat" if cfg.get("agent") is False else "Agent"
click.echo(f" 模式: {mode}")
click.echo(_t(f" 模式: {mode}", f" Mode: {mode}"))
@click.command()