zhangwei-way
b6503e9a35
feat(knowledge): add per-message RAGFlow retrieval scope ( #5238 )
...
* feat(knowledge): integrate RAGFlow retrieval and management
* test(knowledge): cover merged listing tool
* feat(knowledge): add per-message retrieval scope
* chore(docs): remove unrelated document
* docs(knowledge): add interaction screenshots
* feat(knowledge): simplify scope selector trigger
* docs(knowledge): refresh selector screenshot
* feat(knowledge): defer standalone management
* docs(knowledge): show chat-only scope UI
* fix(knowledge): honor scope on clarification replies
* fix(knowledge): harden scoped replay validation
* docs(knowledge): clarify replay scope precedence
* fix(knowledge): keep provider settings on tools
* fix(config): preserve tools-only knowledge settings
* fix(knowledge): submit custom assistant identity
* refactor(knowledge): trim PR scope changes
* fix(knowledge): sanitize document scope display
* feat(knowledge): enable scope selection in main chat
* fix(knowledge): emphasize active scope icon without button frame
* fix(knowledge): close context scrubbing and refresh e2e checks
* fix(knowledge): preserve idempotent canonical retries
* fix(knowledge): accept promptless conversation runs
* style(knowledge): format backend regression tests
* chore(knowledge): trim PR scope and fix frontend format
* fix(knowledge): remove shared-scope notice
* fix(knowledge): remove scope persistence notice
* docs(knowledge): include main chat in catalog scope
* fix(knowledge): preserve scope recovery and upgrades
* fix(config): preserve LightRAG knowledge upgrades
---------
Co-authored-by: foreleven <for-eleven@hotmail.com>
2026-09-18 16:59:31 +08:00
yang rui
ac2b6415ea
feat(agents): support Unicode display names for custom agents ( #5324 )
...
* feat(agents): support Unicode display names for custom agents
* fix(agents): preserve and validate Unicode display names
* fix(agents): tolerate invalid stored labels and reject invisible names
* fix(agents): identify agent in invalid display name warning
* style(frontend): format agent display name fallback
---------
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-09-12 11:09:41 +08:00
Vicki
c35022e18b
fix(frontend): show agent skill badges with empty tool groups ( #5326 )
...
* fix(frontend): show skill badges with empty tool groups
* test(frontend): cover agent skill badges with empty tool groups
* test(frontend): cover agents without badge content
2026-09-11 11:37:56 +08:00
PeaceMaker-best
e3df6ea4a8
feat(channels): select custom agents per conversation ( #5168 )
...
* feat(channels): select custom agents per conversation
Signed-off-by: PeaceMaker-best <221849497+PeaceMaker-best@users.noreply.github.com>
* fix(channels): reserve agent slash command across clients
Signed-off-by: PeaceMaker-best <221849497+PeaceMaker-best@users.noreply.github.com>
* fix(tui): hide reserved slash commands from skills
Signed-off-by: PeaceMaker-best <221849497+PeaceMaker-best@users.noreply.github.com>
* fix(channels): preserve selected agent across clients
---------
Signed-off-by: PeaceMaker-best <221849497+PeaceMaker-best@users.noreply.github.com>
Co-authored-by: PeaceMaker-best <221849497+PeaceMaker-best@users.noreply.github.com>
2026-09-06 16:46:51 +08:00
ChaseMoon
c139ba108f
fix(frontend): keep mobile sidebar trigger clickable ( #5149 )
...
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-09-03 09:24:49 +08:00
陈志谦
9232e1e6a9
fix: DeerFlow brand casing in disclaimer, What's New title, setup-sandbox .PHONY ( #4970 )
...
* fix: DeerFlow brand casing in disclaimer, 'What's New' title, setup-sandbox .PHONY
- en-US disclaimer said 'Deerflow'; every other user-facing string
brands it 'DeerFlow' (rendered under the chat composer)
- landing section title 'Whats New in DeerFlow 2.0' -> 'What's New'
- setup-sandbox was the only Makefile target missing from .PHONY
* test: align disclaimer assertions with DeerFlow brand casing
The unit and e2e suites still expected the old "Deerflow" spelling in
inputBox.disclaimer; update both to the corrected locale string so the
i18n load test and the chat footer assertion pass again.
---------
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-08-24 10:58:48 +08:00
Aari
e5c62cab5a
feat(frontend): add Browser Live to Custom Agent chats ( #4719 )
...
* feat(frontend): add Browser Live to Custom Agent chats
* test(frontend): cover mock Custom Agent Browser Live
2026-08-07 21:38:27 +08:00
Ryker_Feng
fcbf0609b0
feat(chat): edit and rerun latest user turn ( #4377 )
...
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-07-27 22:46:51 +08:00
DanielWalnut
cb698832de
feat(frontend): add localized AI disclaimer ( #4374 )
...
* feat(frontend): add localized AI disclaimer
* fix(frontend): preserve sidecar composer alignment
2026-07-22 21:31:27 +08:00
Ryker_Feng
39cc26ddfc
feat(frontend): restore per-thread composer drafts ( #4282 )
2026-07-20 08:06:32 +08:00
Huixin615
4915b5e4cf
fix(frontend): enable regenerate in custom agent chats ( #3967 )
2026-07-07 07:10:48 +08:00
yangzheli
c6b0423558
feat(frontend): add Playwright E2E tests with CI workflow ( #2279 )
...
* feat(frontend): add Playwright E2E tests with CI workflow
Add end-to-end testing infrastructure using Playwright (Chromium only).
14 tests across 5 spec files cover landing page, chat workspace,
thread history, sidebar navigation, and agent chat — all with mocked
LangGraph/Backend APIs via network interception (zero backend dependency).
New files:
- playwright.config.ts — Chromium, 30s timeout, auto-start Next.js
- tests/e2e/utils/mock-api.ts — shared API mocks & SSE stream helpers
- tests/e2e/{landing,chat,thread-history,sidebar,agent-chat}.spec.ts
- .github/workflows/e2e-tests.yml — push main + PR trigger, paths filter
Updated: package.json, Makefile, .gitignore, CONTRIBUTING.md,
frontend/CLAUDE.md, frontend/AGENTS.md, frontend/README.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: apply Copilot suggestions
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-04-18 08:21:08 +08:00