[feat(ai)]: Redesign of Dubbo Admin AI Agent (#1343)

* [chore(ai)]optimize agent initialization, use genkit-v1.0.4

* [feat(ai/server)]implement gin web server with OpenAPI doc

* [chore(ai/server)]support with Anthropic SSE format

* [feat(ai)]add user-friendly feedback and summary of react

* [chore(ai)]merge branch ai with origin/ai

* [chore(ai)]optimize prompts and react flows

* [chore(ai)]decoupling chat and session & replace panic with error return

* [chore(ai)]sort and format imports

* [feat(ai)]introduce Pinecone RAG & Cohere Rerank utils

* [chore(ai)]optimize errors handle logic

* [chore(ai/server)]add mock session create function

* [refactor(ai)]optimize tool use, refactor propmts

* [chore(ai)]fix bugs in ReAct flows, optimize propmts

* [chore(ai)]optimize the startup logic, add README.md

* [chore(ai)]add content block support, optimize prompts

* [chore(ai)]implement session granularity chat history, optimize prompts

* [chore(ai)]optimize errors sending

* [refactor(ai)]refactor memory, add sliding window and turn memory

* [feat(ai)]add memory query tools to allow self memory retrieval

* [feat(ai)]add markdown data cleaner and RAG support, optimize propmts for RAG

* [feat(ai)]add support of usage statistics, optimize prompts, fix genkit bug

* [chore(ai)]optimize sse events sending and memory tool call

* [chore(ai)]optimize prompts and empty tool response handling

* [chore(ai/server)]update openapi doc

* feat: complete basic agent ui and interface integration (#1)

* feat: 完善agent基础页面以及接口对接

* feat: 完善agent ui

* docs: 修改文案

* fix: 修复请求头

* feat: 添加错误信息显示和重试功能

* feat: 优化消息滚动和错误处理逻辑

* feat: 完善agentui

* feat: 完善agentui

* fix(AgentDrawer): 修正 AI 思考状态更新逻辑

- 在 sendMessage 函数开始时立即设置 isAiThinking 状态
- 注释掉 message_start 事件中重复设置 isAiThinking 的代码
- 保持 AI 状态更新逻辑的一致性与及时性

* style(ui-vue3): 优化聊天及消息区域滚动条样式

- 为聊天区域滚动条添加细窄样式,适配Webkit与Firefox浏览器
- 优化消息内容区域滚动条视觉效果,统一颜色与圆角设计
- 调整代码块滚动条样式,提升整体页面一致性和美观度
- 采用hover效果增强用户交互体验

* refactor(ai-chat): 拆分AgentDrawer为多个子组件提升可维护性

- 抽离消息列表为MessageList组件,简化主组件代码
- 抽离消息项为MessageItem组件,负责单条消息展示逻辑
- 抽离输入区域为ChatInput组件,处理消息输入及相关事件
- 抽离会话历史为SessionHistoryModal组件,管理历史对话界面
- 抽离建议问题卡片为SuggestionCard组件,统一样式和交互
- 调整AgentDrawer组件,改用子组件替代原有内联结构
- 移除原有部分变量,使用子组件ref及prop进行状态管理
- 优化滚动到底部逻辑,委托给MessageList组件处理
- 通过事件和prop实现主组件与子组件间通信和功能调用

---------

Co-authored-by: LGgbond <1493170339@qq.com>
58 files changed
tree: 0ce78e63d9bb6123c32660a3b7815e4cb691456a
  1. .github/
  2. ai/
  3. api/
  4. app/
  5. docs/
  6. hack/
  7. pkg/
  8. release/
  9. tools/
  10. ui-vue3/
  11. .asf.yaml
  12. .codecov.yml
  13. .gitattributes
  14. .gitignore
  15. .licenserc.yaml
  16. CONTRIBUTING.md
  17. DISCLAIMER
  18. go.mod
  19. go.sum
  20. LICENSE
  21. Makefile
  22. NOTICE
  23. README.md
README.md

Build codecov license

Dubbo Admin is the console designed for better visualization of Dubbo services.

Repositories

The main code repositories of Dubbo Admin include:

  • ui-vue3: Implements the front-end interface of Dubbo Admin.
  • Dubbo Admin Console: Implemented in the app and pkg directories.
    For more details, see the app/README.

Quick Start

Please refer to official website.

Roadmap

Please refer to RoadMap.

Contributing

Admin UI

Admin Server

Other Information

Refer to CONTRIBUTING.md

License

Apache License 2.0, see LICENSE.