Files
Rdmclin2 965fc929e1 feat: add unified messaging tool for cross-platform communication (#13296)
*  feat: add cross-platform message tool for AI bot channel operations

Implement a unified message tool (`lobe-message`) that provides AI with
messaging capabilities across Discord, Telegram, Slack, Google Chat,
and IRC through a single interface with platform-specific extensions.

Core APIs: sendMessage, readMessages, editMessage, deleteMessage,
searchMessages, reactToMessage, getReactions, pin/unpin management,
channel/member info, thread operations, and polls.

Architecture follows the established builtin-tool pattern:
- Package: @lobechat/builtin-tool-message (manifest, types, executor,
  ExecutionRuntime, client components)
- Registry: registered in builtin-tools (renders, inspectors,
  interventions, streamings)
- Server runtime: stub service ready for platform adapter integration

https://claude.ai/code/session_011sHc6R7V4cSYKere9RY1QM

* feat: implement platform specific message service

* chore: add wechat platform

* chore: update wechat api service

* chore: update protocol implementation

* chore: optimize  platform api test

* fix: lark domain error

* feat: support bot message cli

* chore: refactor adapter to service

* chore: optimize bot status fetch

* fix: bot status

* fix: channel nav ignore

* feat: message tool support bot manage

* feat: add lobe-message runtime

* feat: support direct message

* feat: add history limit

* chore: update const limit

* feat: optimize  server id message history limit

* chore: optimize system role & inject platform environment info

* chore: update  readMessages vibe

* fix: form body width 50%

* chore: optimize tool prompt

* chore: update i18n files

* chore: optimize read message system role and update bot message lh

* updage readMessage api rate limit

* chore: comatible for readMessages

* fix: feishu readMessage implementation error

* fix: test case

* chore: update i18n files

* fix: lint error

* chore: add timeout for conversaction case

* fix: message test case

* fix: vite gzip error

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-03-31 00:26:32 +08:00

54 lines
3.3 KiB
JSON

{
"chat.avatar": "آواتار",
"chat.placeholder": "...",
"common.cancel": "لغو",
"common.confirm": "تأیید",
"common.delete": "حذف",
"common.edit": "ویرایش",
"editableMessage.addProps": "افزودن ویژگی‌ها",
"editableMessage.delete": "حذف",
"editableMessage.input": "ورودی",
"editableMessage.inputPlaceholder": "لطفاً محتوای نمونه ورودی را وارد کنید",
"editableMessage.output": "خروجی",
"editableMessage.outputPlaceholder": "لطفاً محتوای نمونه خروجی را وارد کنید",
"editableMessage.system": "سیستم",
"emojiPicker.delete": "حذف",
"emojiPicker.draggerDesc": "برای بارگذاری، تصویر را کلیک یا به این ناحیه بکشید",
"emojiPicker.emoji": "ایموجی",
"emojiPicker.fileTypeError": "فقط می‌توانید فایل‌های تصویری بارگذاری کنید!",
"emojiPicker.upload": "بارگذاری",
"emojiPicker.uploadBtn": "برش و بارگذاری",
"form.other": "یا مستقیماً تایپ کنید",
"form.otherBack": "بازگشت به گزینه‌ها",
"form.reset": "بازنشانی",
"form.skip": "رد کردن",
"form.submit": "ارسال",
"form.unsavedChanges": "تغییرات ذخیره‌نشده",
"form.unsavedWarning": "تغییرات ذخیره‌نشده دارید. آیا مطمئن هستید که می‌خواهید خارج شوید؟",
"hotkey.conflict": "این کلید میانبر با یک کلید دیگر تداخل دارد.",
"hotkey.invalidCombination": "کلید میانبر باید شامل یک کلید ترکیبی (Ctrl، Alt، Shift) و فقط یک کلید عادی باشد.",
"hotkey.placeholder": "برای ضبط کلید میانبر، کلیدها را فشار دهید",
"hotkey.reset": "بازنشانی به پیش‌فرض",
"messageModal.cancel": "لغو",
"messageModal.confirm": "تأیید",
"messageModal.edit": "ویرایش",
"sideNav.collapse": "بستن نوار کناری",
"sideNav.demoActiveLabel": "فعال",
"sideNav.demoFeatureAutoCollapseDesc": "برای جمع شدن هوشمند، کمتر از حد آستانه بکشید",
"sideNav.demoFeatureAutoCollapseTitle": "جمع شدن خودکار",
"sideNav.demoFeaturePerformanceDesc": "بدون انیمیشن برای عملکرد بهتر",
"sideNav.demoFeaturePerformanceTitle": "عملکرد",
"sideNav.demoFeatureResizeDesc": "برای تنظیم عرض پنل بکشید",
"sideNav.demoFeatureResizeTitle": "تغییر اندازه انعطاف‌پذیر",
"sideNav.demoFeatureSmartHandleDesc": "برای نمایش دکمه تغییر وضعیت، نشانگر را نگه دارید",
"sideNav.demoFeatureSmartHandleTitle": "دسته هوشمند",
"sideNav.demoFeaturesTitle": "ویژگی‌ها",
"sideNav.demoHint": "لبه پنل را بکشید و از دکمه تغییر وضعیت استفاده کنید ->",
"sideNav.demoSubtitle": "پنل کناری به سبک محیط کاری با قابلیت تغییر اندازه با کشیدن",
"sideNav.demoTitle": "دموی DraggableSideNav",
"sideNav.expand": "باز کردن نوار کناری",
"tokenTag.overload": "بیش‌بار",
"tokenTag.remained": "باقی‌مانده",
"tokenTag.used": "استفاده‌شده"
}