refactor: unified brand naming to BoosChat
Rebrand all user-facing product name references from legacy Chinese name to unified "BoosChat" across frontend components, metadata, test fixtures, and documentation.
This commit is contained in:
@@ -1,8 +1,8 @@
|
|||||||
# 贝壳AI客服
|
# BoosChat
|
||||||
|
|
||||||
> An AI-agent-first customer support system that unifies live chat, knowledge retrieval, ticketing, and seamless human handoff.
|
> An AI-agent-first customer support system that unifies live chat, knowledge retrieval, ticketing, and seamless human handoff.
|
||||||
|
|
||||||
`贝壳AI客服`是一个以 **AI Agent 为核心** 的智能客服系统,面向需要同时处理在线咨询、知识库问答、人工接管和工单流转的团队。
|
`BoosChat`是一个以 **AI Agent 为核心** 的智能客服系统,面向需要同时处理在线咨询、知识库问答、人工接管和工单流转的团队。
|
||||||
|
|
||||||
它不是一个简单的聊天机器人,而是一套围绕客服场景设计的完整系统:
|
它不是一个简单的聊天机器人,而是一套围绕客服场景设计的完整系统:
|
||||||
|
|
||||||
@@ -281,7 +281,7 @@ make migration # 执行 migration
|
|||||||
- 客服工作台:负责接管会话、处理消息与人工服务
|
- 客服工作台:负责接管会话、处理消息与人工服务
|
||||||
- 客户侧 Web 接入:通过 `/kefu`、`/kefu/chat` 和 `web/public/sdk` 中的嵌入式脚本承接用户咨询入口
|
- 客户侧 Web 接入:通过 `/kefu`、`/kefu/chat` 和 `web/public/sdk` 中的嵌入式脚本承接用户咨询入口
|
||||||
|
|
||||||
这使得`贝壳AI客服`可以同时覆盖:
|
这使得`BoosChat`可以同时覆盖:
|
||||||
|
|
||||||
- AI 接待
|
- AI 接待
|
||||||
- 人工协同
|
- 人工协同
|
||||||
@@ -290,7 +290,7 @@ make migration # 执行 migration
|
|||||||
|
|
||||||
## 开源定位
|
## 开源定位
|
||||||
|
|
||||||
`贝壳AI客服`适合作为以下方向的开源基础项目:
|
`BoosChat`适合作为以下方向的开源基础项目:
|
||||||
|
|
||||||
- AI 客服系统
|
- AI 客服系统
|
||||||
- AI Helpdesk / AI Support Platform
|
- AI Helpdesk / AI Support Platform
|
||||||
|
|||||||
Vendored
+1
-1
@@ -66,7 +66,7 @@ func buildSeedItems(aiAgentID int64) []models.Channel {
|
|||||||
AIAgentID: aiAgentID,
|
AIAgentID: aiAgentID,
|
||||||
ConfigJSON: jsons.ToJsonStr(dto.WebChannelConfig{
|
ConfigJSON: jsons.ToJsonStr(dto.WebChannelConfig{
|
||||||
Title: "在线客服",
|
Title: "在线客服",
|
||||||
Subtitle: "贝壳AI提供技术支持",
|
Subtitle: "BoosChat 提供技术支持",
|
||||||
ThemeColor: "#2563eb",
|
ThemeColor: "#2563eb",
|
||||||
Position: "right",
|
Position: "right",
|
||||||
Width: "780px",
|
Width: "780px",
|
||||||
|
|||||||
Vendored
+2
-2
@@ -152,10 +152,10 @@ func ensureKnowledgeBase(db *gorm.DB) (*models.KnowledgeBase, error) {
|
|||||||
|
|
||||||
func ensureFAQKnowledgeBase(db *gorm.DB) (*models.KnowledgeBase, error) {
|
func ensureFAQKnowledgeBase(db *gorm.DB) (*models.KnowledgeBase, error) {
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
item := repositories.KnowledgeBaseRepository.FindOne(db, sqls.NewCnd().Eq("name", "贝壳客服平台 FAQ"))
|
item := repositories.KnowledgeBaseRepository.FindOne(db, sqls.NewCnd().Eq("name", "BoosChat 客服平台 FAQ"))
|
||||||
if item == nil {
|
if item == nil {
|
||||||
item = &models.KnowledgeBase{
|
item = &models.KnowledgeBase{
|
||||||
Name: "贝壳客服平台 FAQ",
|
Name: "BoosChat 客服平台 FAQ",
|
||||||
Description: "模拟真实客服场景的 FAQ 测试数据,覆盖账号、坐席、机器人、知识库、工单、计费与发票等常见问题。",
|
Description: "模拟真实客服场景的 FAQ 测试数据,覆盖账号、坐席、机器人、知识库、工单、计费与发票等常见问题。",
|
||||||
KnowledgeType: string(enums.KnowledgeBaseTypeFAQ),
|
KnowledgeType: string(enums.KnowledgeBaseTypeFAQ),
|
||||||
Status: enums.StatusOk,
|
Status: enums.StatusOk,
|
||||||
|
|||||||
Vendored
+1
-1
@@ -22,7 +22,7 @@ func Init() error {
|
|||||||
id: 1,
|
id: 1,
|
||||||
groupName: "新客接待",
|
groupName: "新客接待",
|
||||||
title: "首次接入欢迎语",
|
title: "首次接入欢迎语",
|
||||||
content: "您好,欢迎来到贝壳AI客服中心,我是今天为您服务的顾问。您可以直接告诉我您想了解的产品、价格或接入方式,我这边先帮您快速判断。",
|
content: "您好,欢迎来到 BoosChat 客服中心,我是今天为您服务的顾问。您可以直接告诉我您想了解的产品、价格或接入方式,我这边先帮您快速判断。",
|
||||||
status: enums.StatusOk,
|
status: enums.StatusOk,
|
||||||
sortNo: 100,
|
sortNo: 100,
|
||||||
},
|
},
|
||||||
|
|||||||
Vendored
+2
-2
@@ -17,11 +17,11 @@ func Init() error {
|
|||||||
sortNo int
|
sortNo int
|
||||||
}{
|
}{
|
||||||
{1, 0, "售前", 1},
|
{1, 0, "售前", 1},
|
||||||
{2, 1, "贝壳AI", 1},
|
{2, 1, "BoosChat", 1},
|
||||||
{3, 2, "产品咨询", 1},
|
{3, 2, "产品咨询", 1},
|
||||||
{4, 2, "购买意向", 1},
|
{4, 2, "购买意向", 1},
|
||||||
{5, 0, "售后", 2},
|
{5, 0, "售后", 2},
|
||||||
{6, 5, "贝壳AI", 1},
|
{6, 5, "BoosChat", 1},
|
||||||
{7, 6, "问题反馈", 1},
|
{7, 6, "问题反馈", 1},
|
||||||
{8, 6, "产品部署", 2},
|
{8, 6, "产品部署", 2},
|
||||||
{9, 6, "需求工单", 3},
|
{9, 6, "需求工单", 3},
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ export default function LoginPage() {
|
|||||||
</div>
|
</div>
|
||||||
<div className="space-y-3">
|
<div className="space-y-3">
|
||||||
<h2 className="max-w-lg text-5xl font-semibold tracking-tight">
|
<h2 className="max-w-lg text-5xl font-semibold tracking-tight">
|
||||||
贝壳AI客服
|
BoosChat
|
||||||
</h2>
|
</h2>
|
||||||
<p className="max-w-xl text-sm leading-6 text-white/72">
|
<p className="max-w-xl text-sm leading-6 text-white/72">
|
||||||
懂问题,更懂用户;快响应,更能落地。
|
懂问题,更懂用户;快响应,更能落地。
|
||||||
@@ -50,12 +50,12 @@ export default function LoginPage() {
|
|||||||
<Link href="/dashboard/login" className="flex items-center gap-2 font-medium">
|
<Link href="/dashboard/login" className="flex items-center gap-2 font-medium">
|
||||||
<img
|
<img
|
||||||
src="/images/logo.svg"
|
src="/images/logo.svg"
|
||||||
alt="CS Agent"
|
alt="BoosChat"
|
||||||
width="32"
|
width="32"
|
||||||
height="32"
|
height="32"
|
||||||
className="size-7 shrink-0 object-contain"
|
className="size-7 shrink-0 object-contain"
|
||||||
/>
|
/>
|
||||||
CS Agent
|
BoosChat
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex flex-1 items-center justify-center">
|
<div className="flex flex-1 items-center justify-center">
|
||||||
|
|||||||
+2
-2
@@ -23,8 +23,8 @@ const geistMono = Geist_Mono({
|
|||||||
})
|
})
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "AI 客服后台管理系统",
|
title: "BoosChat",
|
||||||
description: "AI 客服后台管理系统",
|
description: "BoosChat 智能客服系统",
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
|
|||||||
@@ -49,12 +49,12 @@ export function AppSidebar({ ...props }: ComponentProps<typeof Sidebar>) {
|
|||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
src="/images/logo.svg"
|
src="/images/logo.svg"
|
||||||
alt="贝壳AGENT"
|
alt="BoosChat"
|
||||||
width="32"
|
width="32"
|
||||||
height="32"
|
height="32"
|
||||||
className="size-7 shrink-0 object-contain"
|
className="size-7 shrink-0 object-contain"
|
||||||
/>
|
/>
|
||||||
<span className="text-base font-semibold">贝壳AGENT</span>
|
<span className="text-base font-semibold">BoosChat</span>
|
||||||
</SidebarMenuButton>
|
</SidebarMenuButton>
|
||||||
</SidebarMenuItem>
|
</SidebarMenuItem>
|
||||||
</SidebarMenu>
|
</SidebarMenu>
|
||||||
|
|||||||
@@ -84,9 +84,9 @@ export function LoginForm({
|
|||||||
<FieldGroup>
|
<FieldGroup>
|
||||||
<div className="flex flex-col gap-2 text-center">
|
<div className="flex flex-col gap-2 text-center">
|
||||||
<span className="mx-auto inline-flex rounded-full border border-amber-300/60 bg-amber-50 px-3 py-1 text-[11px] font-medium tracking-[0.22em] text-amber-900 uppercase">
|
<span className="mx-auto inline-flex rounded-full border border-amber-300/60 bg-amber-50 px-3 py-1 text-[11px] font-medium tracking-[0.22em] text-amber-900 uppercase">
|
||||||
贝壳AI
|
BoosChat
|
||||||
</span>
|
</span>
|
||||||
<h1 className="text-3xl font-semibold tracking-tight">欢迎使用贝壳 AI 客服平台</h1>
|
<h1 className="text-3xl font-semibold tracking-tight">欢迎使用 BoosChat 客服平台</h1>
|
||||||
</div>
|
</div>
|
||||||
<Field>
|
<Field>
|
||||||
<FieldLabel htmlFor="username">用户名</FieldLabel>
|
<FieldLabel htmlFor="username">用户名</FieldLabel>
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
allowBuilds:
|
||||||
|
'@parcel/watcher': true
|
||||||
|
msw: true
|
||||||
|
sharp: true
|
||||||
|
unrs-resolver: true
|
||||||
|
|
||||||
ignoredBuiltDependencies:
|
ignoredBuiltDependencies:
|
||||||
- sharp
|
- sharp
|
||||||
- unrs-resolver
|
- unrs-resolver
|
||||||
|
|||||||
Reference in New Issue
Block a user