macOS companion app

چت وب (macOS)

برنامهٔ نوار منوی macOS، رابط کاربری WebChat را به‌صورت یک نمای بومی SwiftUI در خود جای می‌دهد. این برنامه به Gateway متصل می‌شود و برای عامل انتخاب‌شده به‌طور پیش‌فرض از نشست اصلی استفاده می‌کند (همراه با انتخاب‌گر نشست برای نشست‌های دیگر).

  • حالت محلی: مستقیماً به وب‌سوکت Gateway محلی متصل می‌شود.
  • حالت از راه دور: پورت کنترل Gateway را از طریق SSH فوروارد می‌کند و از آن تونل به‌عنوان سطح داده استفاده می‌کند.

اجرا و اشکال‌زدایی

  • دستی: منوی Lobster → "باز کردن چت".

  • باز شدن خودکار برای آزمایش:

    dist/OpenClaw.app/Contents/MacOS/OpenClaw --webchat
    
  • لاگ‌ها: ./scripts/clawlog.sh (زیرسامانه ai.openclaw، دسته WebChatSwiftUI).

نحوهٔ اتصال اجزا

  • سطح داده: متدهای WS در Gateway یعنی chat.history، chat.send، chat.abort، chat.inject و رویدادهای chat، agent، presence، tick، health.
  • chat.history ردیف‌های رونوشت نرمال‌سازی‌شده برای نمایش را برمی‌گرداند: تگ‌های دستور درون‌خطی از متن قابل مشاهده حذف می‌شوند، payloadهای XML فراخوانی ابزار به‌صورت متن ساده (از جمله <tool_call>...</tool_call>، <function_call>...</function_call>، <tool_calls>...</tool_calls>، <function_calls>...</function_calls> و بلوک‌های کوتاه‌شدهٔ فراخوانی ابزار) و توکن‌های کنترلی مدل ASCII/تمام‌عرضِ نشت‌کرده حذف می‌شوند، ردیف‌های دستیار که فقط شامل توکن بی‌صدا هستند، مانند NO_REPLY / no_reply دقیق، کنار گذاشته می‌شوند، و ردیف‌های بیش‌ازحد بزرگ می‌توانند با جای‌نگهدارها جایگزین شوند.
  • نشست: به‌طور پیش‌فرض از نشست اصلی (main، یا global وقتی دامنه سراسری است) استفاده می‌کند. رابط کاربری می‌تواند بین نشست‌ها جابه‌جا شود.
  • فرایند ورود اولیه از یک نشست اختصاصی استفاده می‌کند تا راه‌اندازی اجرای اول جدا نگه داشته شود.

سطح امنیتی

  • حالت از راه دور فقط پورت کنترل وب‌سوکت Gateway را از طریق SSH فوروارد می‌کند.

محدودیت‌های شناخته‌شده

  • رابط کاربری برای نشست‌های چت بهینه شده است (نه یک سندباکس کامل مرورگر).

مرتبط