Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
2430838
feat: implement group chat functionality
RiverTwilight Oct 10, 2025
a25e1df
fix
arvinxx Oct 10, 2025
57f2de9
update
arvinxx Oct 10, 2025
f98cadb
revert pglite mock
arvinxx Oct 10, 2025
e430689
fix: Add missing test
RiverTwilight Oct 11, 2025
c5c24ba
fix mention
arvinxx Oct 10, 2025
bae22d1
fix mention
arvinxx Oct 10, 2025
5751be4
lint: Clear unused varibles
RiverTwilight Oct 11, 2025
087bc4b
fix: type check
RiverTwilight Oct 12, 2025
58cf6e9
fix: Coverage
RiverTwilight Oct 12, 2025
7546361
build: Add missing test
RiverTwilight Oct 12, 2025
49f0c96
fix: add mention back
RiverTwilight Oct 13, 2025
3843ec2
fix: Add missing test
RiverTwilight Oct 13, 2025
8875eda
fix: Add test for topic
RiverTwilight Oct 13, 2025
cf26d7a
feat: Group chat fallback style
RiverTwilight Oct 13, 2025
ac2d27e
fix: Revert unncessary files
RiverTwilight Oct 13, 2025
4ae6a7f
fix: circular deps
RiverTwilight Oct 14, 2025
f971b02
feat: tool usage
RiverTwilight Oct 14, 2025
76bf85d
fix: Replace debug info
RiverTwilight Oct 14, 2025
5024aa6
feat: Update i18n
RiverTwilight Oct 14, 2025
2e24a77
opti: Better prompr
RiverTwilight Oct 14, 2025
d7f8ba3
fix claude
arvinxx Oct 14, 2025
972d1ce
feat: Filter model without function calling
RiverTwilight Oct 14, 2025
84d52f3
fix: DM reduction
RiverTwilight Oct 14, 2025
d0f7034
lint: Address build error
RiverTwilight Oct 14, 2025
13e985e
fix: Test error
RiverTwilight Oct 14, 2025
9edff96
feat: Store model info
RiverTwilight Oct 14, 2025
c4e2555
style: Clean up welcome messaeg
RiverTwilight Oct 14, 2025
ad8f213
feat: Use new welcome message
RiverTwilight Oct 14, 2025
ce038b2
fix: inbox not working
RiverTwilight Oct 14, 2025
58b73bc
fix: inbox not working
RiverTwilight Oct 14, 2025
3fcb292
fix: type error
RiverTwilight Oct 15, 2025
c9dc45f
feat: Optimize prompt
RiverTwilight Oct 16, 2025
32f9629
fix: Revert unintentional changes
RiverTwilight Oct 16, 2025
c310d2f
lint: Remove unused code
RiverTwilight Oct 16, 2025
40a46dc
fix: better test
RiverTwilight Oct 16, 2025
96d47a1
fix: Use debug
RiverTwilight Oct 16, 2025
a7d90f9
refact: Move normalization postion
RiverTwilight Oct 16, 2025
325f28f
opti: Better prompt
RiverTwilight Oct 16, 2025
7c00ce2
opti: Better prompt
RiverTwilight Oct 16, 2025
993c9d8
opti: Better prompt
RiverTwilight Oct 16, 2025
f345065
lint: Clear console.log
RiverTwilight Oct 16, 2025
dcc1000
fix: Update test snap
RiverTwilight Oct 16, 2025
1158796
fix: test error
RiverTwilight Oct 16, 2025
ccc13d9
fix: Unexpectly test fail
RiverTwilight Oct 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
52 changes: 52 additions & 0 deletions docs/usage/features/group-chat.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: Group Chat
description: Turn any conversation into a team effort. Multiple AI agents collaborate naturally to give you richer, more insightful responses.
tags:
- Group Chat
- Multi-Agent
- AI Orchestration
- Agent Coordination
---

# Group Chat

<Image alt={'Group Chat'} cover src={'https://github.com/user-attachments/assets/6e5599f6-1e39-4b14-a218-4f5ffa2c306a'} />

Sometimes one perspective isn't enough. Group Chat brings together multiple AI agents, each with their own expertise, to collaborate on your conversations. Richer discussions, diverse viewpoints, and solutions you wouldn't get from any single agent.

## Highlights

- Multiple assistants with specialized knowledge work together, each contributing their strengths
- A built-in host ensures the group chat runs smoothly and organized
- Private messaging allows seamless coordination between assistants
- You get comprehensive answers from multiple perspectives
- Ready to use with your own assistants or rich group chat team templates

## Use Cases

**Learning and Research**: Different assistants gather different materials through different tools, then come together for spontaneous discussion.

**Entertainment**: Multiplayer language games like Werewolf, Model United Nations, and Turtle Soup.

**Brainstorming**: Diverse perspectives spark better ideas.

**Problem Solving**: Benefit from insights across different professional fields, with different tools and MCPs, group chat allows you to have the perfect AI team.

## Quick Start

Click the "Create Group Chat" button, you can choose to create directly from preset group chat templates, or select your own assistants to form a group chat.

You can use @ to mention a group member in the group chat, or click their avatar to send them a private message. Everything works just like in a real chat room.

### Interrupt and Resume Group Chat

You can interrupt the host's thinking at any time, and the group chat will "pause" after interruption. You can start the moderator at any time, and the group chat will continue.

Of course, conversations may also stop naturally.

### Advanced Options

- Group Chat Speed: Customize the response speed of the group chat
- Custom Moderator: Guide the moderator's behavior according to specific needs

Group Chat transforms how you interact with AI. Instead of getting one answer, you participate in a conversation—complete with different viewpoints, collaborative problem-solving, and profound insights that emerge when AI agents work together.
52 changes: 52 additions & 0 deletions docs/usage/features/group-chat.zh-CN.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: 群聊
description: 让对话变成团队协作。多个 AI 智能体自然配合,为你提供更丰富、更有洞察力的回答。
tags:
- 群组对话
- 多智能体
- AI 编排
- 智能体协调
---

# 群聊

<Image alt={'群聊'} cover src={'https://github.com/user-attachments/assets/6e5599f6-1e39-4b14-a218-4f5ffa2c306a'} />

有时候,一个视角远远不够。群聊功能让多个拥有不同知识和技能的 AI 智能体聚在一起,协作参与你的对话。更丰富的讨论、多元的观点,以及任何单一智能体都无法提供的解决方案。

## 亮点

- 多个具有专业知识的助手协同工作,各取所长
- 群聊内置的主持人将确保整个群聊有条不紊的进行
- 私信功能让助手间无缝协调配合
- 你将从多个视角获得全面的答案
- 开箱即用,由你自己的助手组成,或者使用丰富的群聊团队模版

## 适用场景

**学习研究**:不同的助手通过不同的工具收集不同的资料,汇聚一处并自发讨论。

**娱乐**:狼人杀、模拟联合国、海龟汤等多人语聊游戏。

**头脑风暴**:多元观点激发更好的想法。

**问题解决**:受益于不同专业领域的见解,以及不同的工具和 MCP,群聊允许你拥有完美的 AI 团队。

## 快速开始

点击「创建群聊」按钮,你可以选择直接从预设的群聊模版创建,或选择你自己的助手组成群聊。

你可以在群聊中输入 @ 来提及某个群成员,或者点击它们的头像对其私聊。一切就像是在真实的聊天室中一样。

### 中断与继续群聊

你可以随时打断主持人的思考,打断后群聊将会「暂停」。你可以随时开启主持人,群聊便会继续。

当然,对话也有可能自然地停止。

### 高级选项

- 群聊速度:自定义群聊的回答速度
- 自定义主持人:根据特定需要指导主持人的行为

群聊改变了你与 AI 的互动方式。不再是获得一个答案,而是参与一场对话 —— 包含不同观点、协作解决问题,以及 AI 智能体协同工作时产生的深刻洞察。
97 changes: 96 additions & 1 deletion locales/ar/chat.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"ModelSwitch": {
"title": "النموذج"
},
"active": "نشط",
"agentDefaultMessage": "مرحبًا، أنا **{{name}}**، يمكنك بدء المحادثة معي على الفور، أو يمكنك الذهاب إلى [إعدادات المساعد]({{url}}) لإكمال معلوماتي.",
"agentDefaultMessageWithSystemRole": "مرحبًا، أنا **{{name}}**، كيف يمكنني مساعدتك؟",
"agentDefaultMessageWithoutEdit": "مرحبًا، أنا **{{name}}**، كيف يمكنني مساعدتك؟",
Expand All @@ -13,17 +14,28 @@
"thought": "عملية التفكير",
"unknownTitle": "عمل غير مسمى"
},
"availableAgents": "المساعدون المتاحون",
"backToBottom": "العودة إلى الأسفل",
"chatList": {
"longMessageDetail": "عرض التفاصيل"
},
"clearCurrentMessages": "مسح رسائل الجلسة الحالية",
"confirmClearCurrentMessages": "سيتم مسح رسائل الجلسة الحالية قريبًا، وبمجرد المسح لن يمكن استعادتها، يرجى تأكيد الإجراء الخاص بك",
"confirmRemoveChatGroupItemAlert": "سيتم حذف هذه المحادثة الجماعية، ولن يتأثر أعضاء المجموعة، يرجى تأكيد العملية الخاصة بك",
"confirmRemoveGroupItemAlert": "سيتم حذف هذه المجموعة قريبًا. بعد الحذف، سيُنتقل المساعدون في هذه المجموعة إلى القائمة الافتراضية. يرجى تأكيد إجراء الحذف.",
"confirmRemoveGroupSuccess": "تم حذف الدردشة الجماعية بنجاح",
"confirmRemoveSessionItemAlert": "سيتم حذف هذا المساعد قريبًا، وبمجرد الحذف لن يمكن استعادته، يرجى تأكيد الإجراء الخاص بك",
"confirmRemoveSessionSuccess": "تم حذف المساعد بنجاح",
"defaultAgent": "المساعد الافتراضي",
"defaultGroupChat": "المحادثة الجماعية",
"defaultList": "القائمة الافتراضية",
"defaultSession": "المساعد الافتراضي",
"dm": {
"placeholder": "ستظهر رسائلك الخاصة مع {{agentTitle}} هنا.",
"tooltip": "أرسل رسالة خاصة",
"visibleTo": "مرئي فقط لـ {{target}}",
"you": "أنت"
},
"duplicateSession": {
"loading": "جاري النسخ...",
"success": "تم النسخ بنجاح",
Expand Down Expand Up @@ -58,11 +70,56 @@
"title": "استخراج محتوى رابط الويب"
}
},
"group": {
"desc": "التعاون مع عدة مساعدين للذكاء الاصطناعي في مساحة محادثة مشتركة.",
"memberTooltip": "هناك {{count}} عضوًا في المجموعة",
"orchestratorThinking": "المُنسق يفكر...",
"removeMember": "إزالة عضو",
"title": "مجموعة"
},
"groupDescription": "وصف المجموعة",
"groupSidebar": {
"members": {
"addMember": "إضافة عضو",
"memberSettings": "إعدادات العضو",
"orchestrator": "المُنسق",
"orchestratorThinking": "المُنسق يفكر...",
"removeMember": "إزالة عضو",
"stopOrchestrator": "إيقاف التفكير",
"triggerOrchestrator": "بدء المحادثة الجماعية"
},
"tabs": {
"host": "المضيف",
"members": "الأعضاء",
"role": "الإعداد"
}
},
"groupWizard": {
"chooseMembers": "اختر المساعدين الحاليين...",
"createGroup": "إنشاء دردشة جماعية",
"existingMembers": "الأعضاء الحاليون",
"groupMembers": "سيتم أيضًا إضافة هؤلاء المساعدين إلى قائمتك",
"host": {
"description": "لجعل الدردشة الجماعية تعمل تلقائيًا",
"title": "المضيف",
"tooltip": "إذا تم تعطيل مضيف الدردشة الجماعية، فستحتاج إلى الإشارة يدويًا إلى الأعضاء باستخدام @ لكي يتمكنوا من الرد"
},
"memberCount": "{{count}} عضو",
"noMatchingTemplates": "لا توجد قوالب مطابقة",
"noSelectedTemplates": "لم يتم اختيار أي قالب",
"noTemplateMembers": "لا يوجد أعضاء في القالب",
"noTemplates": "لا توجد قوالب متاحة",
"searchTemplates": "ابحث في القوالب...",
"title": "إنشاء دردشة جماعية",
"useTemplate": "استخدام القالب"
},
"hideForYou": "تم إخفاء محتوى الرسائل الخاصة، يرجى تفعيل خيار 【عرض محتوى الرسائل الخاصة】 في الإعدادات للعرض",
"history": {
"title": "سيتذكر المساعد آخر {{count}} رسالة فقط"
},
"historyRange": "نطاق التاريخ",
"historySummary": "ملخص الرسائل التاريخية",
"inactive": "غير نشط",
"inbox": {
"desc": "قم بتشغيل مجموعة الدماغ وأشعل شرارة التفكير. مساعدك الذكي، هنا حيث يمكنك التواصل بكل شيء",
"title": "دردشة عشوائية"
Expand All @@ -83,6 +140,7 @@
"intentUnderstanding": {
"title": "جارٍ فهم وتحليل نواياك..."
},
"inviteMembers": "دعوة الأعضاء",
"knowledgeBase": {
"all": "جميع المحتويات",
"allFiles": "جميع الملفات",
Expand All @@ -101,12 +159,29 @@
"uploadGuide": "يمكنك عرض الملفات التي تم تحميلها في «قاعدة المعرفة»",
"viewMore": "عرض المزيد"
},
"memberSelection": {
"addMember": "إضافة عضو",
"allMembers": "جميع الأعضاء",
"createGroup": "إنشاء محادثة جماعية",
"noAvailableAgents": "لا يوجد مساعدين متاحين للدعوة",
"noSelectedAgents": "لم يتم اختيار مساعدين بعد",
"searchAgents": "البحث عن مساعدين...",
"setInitialMembers": "اختيار أعضاء المجموعة"
},
"members": "الأعضاء",
"mention": {
"title": "الإشارة إلى الأعضاء"
},
"messageAction": {
"delAndRegenerate": "حذف وإعادة الإنشاء",
"deleteDisabledByThreads": "يوجد موضوعات فرعية، لا يمكن الحذف",
"regenerate": "إعادة الإنشاء"
},
"messages": {
"dm": {
"sentTo": "مرئي فقط لـ {{name}}",
"title": "الرسائل الخاصة"
},
"modelCard": {
"credit": "نقاط",
"creditPricing": "التسعير",
Expand Down Expand Up @@ -156,6 +231,13 @@
"previousMessage": "الرسالة السابقة"
},
"newAgent": "مساعد جديد",
"newGroupChat": "إنشاء دردشة جماعية جديدة",
"noAgentsYet": "لا يوجد أي مساعد في هذه المجموعة بعد. انقر على زر + لدعوة مساعد.",
"noAvailableAgents": "لا يوجد مساعدون متاحون للدعوة",
"noMatchingAgents": "لا يوجد مساعد متطابق",
"noMembersYet": "لا يوجد أعضاء في هذه المجموعة بعد. انقر على زر + لدعوة المساعدين.",
"noSelectedAgents": "لم يتم اختيار أي مساعد بعد",
"owner": "مالك المجموعة",
"pin": "تثبيت",
"pinOff": "إلغاء التثبيت",
"rag": {
Expand Down Expand Up @@ -196,12 +278,16 @@
"title": "بحث عبر الإنترنت"
},
"searchAgentPlaceholder": "مساعد البحث...",
"searchAgents": "مساعد البحث...",
"selectedAgents": "المساعدون المختارون",
"sendPlaceholder": "أدخل محتوى الدردشة...",
"sessionGroup": {
"config": "إدارة المجموعات",
"confirmRemoveGroupAlert": "سيتم حذف هذه المجموعة قريبًا، وبعد الحذف، سيتم نقل مساعدي هذه المجموعة إلى القائمة الافتراضية، يرجى تأكيد إجراءك",
"createAgentSuccess": "تم إنشاء المساعد بنجاح",
"createGroup": "إضافة مجموعة جديدة",
"createGroupFailed": "فشل إنشاء المحادثة الجماعية",
"createGroupSuccess": "تم إنشاء المحادثة الجماعية بنجاح",
"createSuccess": "تم الإنشاء بنجاح",
"creatingAgent": "جاري إنشاء المساعد...",
"inputPlaceholder": "الرجاء إدخال اسم المجموعة...",
Expand Down Expand Up @@ -235,6 +321,12 @@
"loading": "جارٍ التعرف...",
"prettifying": "جارٍ التجميل..."
},
"supervisor": {
"todoList": {
"allComplete": "تم إنجاز جميع المهام",
"title": "المهام المنجزة"
}
},
"thread": {
"divider": "موضوع فرعي",
"threadMessageCount": "{{messageCount}} رسالة",
Expand All @@ -248,6 +340,7 @@
"chats": "رسائل المحادثة",
"historySummary": "ملخص التاريخ",
"rest": "المتبقي",
"supervisor": "مُنسق المجموعة",
"systemRole": "تعيين الدور",
"title": "تفاصيل الرمز",
"tools": "تعيين الإضافات",
Expand All @@ -273,6 +366,7 @@
"action": "قراءة صوتية",
"clear": "مسح الصوت"
},
"untitledAgent": "مساعد بدون اسم",
"updateAgent": "تحديث معلومات المساعد",
"upload": {
"action": {
Expand Down Expand Up @@ -300,5 +394,6 @@
"videoSizeExceeded": "لا يمكن أن يتجاوز حجم ملف الفيديو 20 ميغابايت، حجم الملف الحالي هو {{actualSize}}"
}
},
"you": "أنت",
"zenMode": "وضع التركيز"
}
}
14 changes: 7 additions & 7 deletions locales/ar/components.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"ArgsInput": {
"addArgument": "إضافة معامل",
"argumentPlaceholder": "المعامل {{index}}",
"enterFirstArgument": "أدخل المعامل الأول..."
"addArgument": "إضافة وسيط",
"argumentPlaceholder": "الوسيط {{index}}",
"enterFirstArgument": "أدخل الوسيط الأول..."
},
"DragUpload": {
"dragDesc": "اسحب الملفات هنا، يدعم تحميل عدة صور.",
Expand Down Expand Up @@ -145,10 +145,10 @@
"uploadingWithCount": "تم تحميل {{completed}} من أصل {{total}}"
},
"validation": {
"fileSizeExceeded": "تجاوز حجم الملف الحد المسموح به",
"fileSizeExceededDetail": "{{fileName}} ({{actualSize}}) يتجاوز الحد الأقصى للحجم وهو {{maxSize}}",
"fileSizeExceededMultiple": "{{count}} من الملفات تتجاوز الحد الأقصى للحجم {{maxSize}}: {{fileList}}",
"imageCountExceeded": "تجاوز عدد الصور الحد المسموح به"
"fileSizeExceeded": "تجاوز حجم الملف الحد المسموح",
"fileSizeExceededDetail": "{{fileName}} ({{actualSize}}) يتجاوز الحد الأقصى للحجم {{maxSize}}",
"fileSizeExceededMultiple": "{{count}} ملفات تتجاوز الحد الأقصى للحجم {{maxSize}}: {{fileList}}",
"imageCountExceeded": "تجاوز عدد الصور الحد المسموح"
}
},
"OllamaSetupGuide": {
Expand Down
3 changes: 3 additions & 0 deletions locales/ar/error.json
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,9 @@
"stt": {
"responseError": "فشل طلب الخدمة، يرجى التحقق من الإعدادات أو إعادة المحاولة"
},
"supervisor": {
"decisionFailed": "تعذر على مشرف المجموعة العمل. يرجى التحقق من إعدادات المشرف الخاصة بك، والتأكد من تكوين النموذج الصحيح، ومفتاح API، وعنوان API."
},
"testConnectionFailed": "فشل اختبار الاتصال: {{error}}",
"tts": {
"responseError": "فشل طلب الخدمة، يرجى التحقق من الإعدادات أو إعادة المحاولة"
Expand Down
5 changes: 4 additions & 1 deletion locales/ar/providers.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,10 @@
"description": "Bedrock هي خدمة تقدمها أمازون AWS، تركز على توفير نماذج لغة ورؤية متقدمة للذكاء الاصطناعي للشركات. تشمل عائلة نماذجها سلسلة Claude من Anthropic وسلسلة Llama 3.1 من Meta، وتغطي مجموعة من الخيارات من النماذج الخفيفة إلى عالية الأداء، وتدعم مهام مثل توليد النصوص، والحوار، ومعالجة الصور، مما يجعلها مناسبة لتطبيقات الشركات بمختلف أحجامها واحتياجاتها."
},
"bfl": {
"description": "مختبر أبحاث رائد في مقدمة الذكاء الاصطناعي، يبني البنية التحتية البصرية للمستقبل."
"description": "مختبر بحثي رائد في مجال الذكاء الاصطناعي المتقدّم، يبني بنية تحتية بصرية للغد."
},
"cerebras": {
"description": "Cerebras هو نظام استدلال ذكاء اصطناعي يعتمد على نظام CS-3 المخصص، ويهدف إلى تقديم أسرع خدمات النماذج اللغوية الكبيرة (LLM) في العالم مع استجابة فورية وقدرة معالجة عالية. تم تصميمه خصيصًا للقضاء على التأخير وتسريع سير العمل المعقد للذكاء الاصطناعي مثل توليد الشيفرات في الوقت الحقيقي والمهام التفاعلية."
},
"cerebras": {
"description": "Cerebras هو نظام استدلال ذكاء اصطناعي يعتمد على نظام CS-3 المخصص، ويهدف إلى تقديم أسرع خدمات النماذج اللغوية الكبيرة (LLM) في العالم مع استجابة فورية وقدرة معالجة عالية. تم تصميمه خصيصًا للقضاء على التأخير وتسريع سير العمل المعقد للذكاء الاصطناعي مثل توليد الشيفرات في الوقت الحقيقي والمهام التفاعلية."
Expand Down
Loading
Loading