182 Commits

Author SHA1 Message Date
NA-Wen
378b96ce83 update contributors 2026-04-07 13:33:42 +08:00
NA-Wen
b9b2c3dc8d update contributors 2026-04-07 13:31:57 +08:00
NA-Wen
5dcb54a942 update contributor list 2026-04-07 12:03:19 +08:00
Yufan Dang
f62de7047a
Merge pull request #598 from kartik-mem0/feat/mem0-memory-store
feat: add Mem0 memory integration with config, implementation, docs, tests, and dependency
2026-04-07 11:56:11 +08:00
kartik-mem0
2d9e889b91 chore: update the openai model to use the latest version 2026-04-06 13:23:04 +05:30
kartik-mem0
531741545e refactor: update Mem0Memory to use independent user/agent scoping and exclude assistant output 2026-04-06 13:16:46 +05:30
Shu Yao
117e4d8d0c
Merge pull request #600 from voidborne-d/fix/send-message-sync-cross-loop
fix: use run_coroutine_threadsafe in send_message_sync to prevent cross-loop RuntimeError
2026-04-04 18:23:24 +08:00
Shu Yao
eec617a67c
Merge pull request #585 from LaansDole/main
Fix: YAML workflow list UI now only shows 'No description'
2026-04-04 18:13:11 +08:00
Yufan Dang
67172ac658
Merge pull request #596 from nregret/feature/i18n-zh-support
feat: Add comprehensive i18n support 前端中文i18n
2026-04-04 13:28:53 +08:00
voidborne-d
511d05e545 fix: use run_coroutine_threadsafe in send_message_sync to prevent cross-loop crash
WebSocketManager.send_message_sync is called from background worker threads
(via asyncio.get_event_loop().run_in_executor) during workflow execution — by
WebSocketLogger, ArtifactDispatcher, and WebPromptChannel.

Previous implementation:
  try:
      loop = asyncio.get_running_loop()
      if loop.is_running():
          asyncio.create_task(...)          # path only reachable from main thread
      else:
          asyncio.run(...)                  # creates a NEW event loop
  except RuntimeError:
      asyncio.run(...)                      # also creates a new event loop

The problem: WebSocket objects are bound to the *main* uvicorn event loop.
asyncio.run() spins up a separate event loop and calls websocket.send_text()
there, which in Python 3.12 raises:

  RuntimeError: Task got Future attached to a different loop

...causing all log/artifact/prompt messages emitted from workflow threads to be
silently dropped or to crash the worker thread.

Fix:
- Store the event loop that created the first WebSocket connection as
  self._owner_loop (captured in connect(), which always runs on the main loop).
- send_message_sync schedules the coroutine on that loop via
  asyncio.run_coroutine_threadsafe(), then waits with a 10 s timeout.
- Calling from the main thread still works (run_coroutine_threadsafe is safe
  when called from any thread, including the loop thread itself).

Added 7 tests covering:
- send from main thread
- send from worker thread (verifies send_text runs on the owner loop thread)
- 8 concurrent workers with no lost messages
- send after disconnect does not crash
- send before connect (no owner loop) does not crash
- owner loop captured on first connect
- owner loop stable across multiple connects
2026-04-02 16:01:46 +00:00
kartik-mem0
adc00f4faf feat: add Mem0 memory integration with config, implementation, docs, tests, and dependency 2026-04-01 20:24:24 +05:30
YunLong
a388476648 feat: complete rewrite of custom select using Teleport for full floating and readonly interaction 2026-04-01 19:26:19 +08:00
YunLong
efab565100 fix: position custom select dropdown absolutely to prevent modal height stretching 2026-04-01 19:02:35 +08:00
YunLong
37aaf31904 feat: Add comprehensive i18n support and fix WorkflowEdge crash bug 2026-04-01 18:54:28 +08:00
Shu Yao
cb75e0692c
Merge pull request #595 from NA-Wen/main
update contributor list
2026-04-01 10:48:58 +08:00
NA-Wen
0b8a9d6f09 update contributor list 2026-04-01 10:46:25 +08:00
NA-Wen
ed993b4377 update contributor list 2026-04-01 10:44:26 +08:00
Do Le Long An
efb7e00fc1
Merge branch 'OpenBMB:main' into main 2026-03-23 14:42:29 +07:00
Yufan Dang
3c72d860d2
Merge pull request #586 from ACE-Prism/main
Release the ChatDev Python SDK
v2.2.0
2026-03-22 09:24:47 +08:00
Prism
5ed6dfeea6
Add ChatDev Python SDK announcement to README
Added announcement for ChatDev Python SDK in the news section.
2026-03-22 01:07:58 +08:00
Prism
5e6a0c337a
Add ChatDev Python SDK release announcement
Added announcement for the ChatDev Python SDK release.
2026-03-22 01:05:51 +08:00
Prism
2d45152324
Fix formatting in README news section 2026-03-21 19:53:47 +08:00
Prism
41e84d2621
Update README.md 2026-03-21 19:52:44 +08:00
Prism
60812fa420
Update README-zh.md with new SDK announcement
Added announcement for ChatDev Python SDK release with installation details.
2026-03-21 19:49:18 +08:00
laansdole
65d1f2795b fix: YAML workflow list UI now only shows 'No description' 2026-03-19 23:37:03 +07:00
Yufan Dang
8ec59f7485
Merge pull request #568 from gouziman/main
Modify GameDev workflow
2026-03-19 08:52:00 +08:00
Yufan Dang
59fbbca247
Merge pull request #579 from zxrys/feature/add-contributor
add: new contributors
2026-03-19 08:51:21 +08:00
Shu Yao
34ecbe5b1c
Merge pull request #584 from NA-Wen/main
Enable OpenClaw Integration with ChatDev Backend Workflow Support
2026-03-17 21:07:48 +08:00
Shu Yao
036fb6efe1
Merge branch 'main' into main 2026-03-17 21:07:37 +08:00
Shu Yao
fea709142a
Merge pull request #582 from LaansDole/main
Fix: hardcoded embedding dimension
2026-03-17 10:43:17 +08:00
Shu Yao
51ca75cc7c
Merge pull request #583 from LaansDole/fix/toggle-chat-fullscreen-scrollable
Fix/toggle chat fullscreen scrollable
2026-03-17 10:37:12 +08:00
NA-Wen
546884980d delete unnecessary files 2026-03-17 10:18:06 +08:00
NA-Wen
c2dd7abd55 fix typos 2026-03-17 10:15:52 +08:00
NA-Wen
033617e4ba delete skills.md 2026-03-17 10:15:52 +08:00
Yufan Dang
68fb2fb8f1
Merge branch 'OpenBMB:main' into main 2026-03-17 09:59:38 +08:00
laansdole
0350a50ffb chores: refactor 2026-03-16 17:56:51 +07:00
laansdole
25bdfd9665 fix: min height 0 to make fullscreen chat scrollable 2026-03-16 17:55:57 +07:00
laansdole
7cd1bf5da8 fix(frontend): make fullscreen chat panel scrollable 2026-03-16 17:53:10 +07:00
laansdole
f3d6a2f94e feat: make check-backend for quality checks 2026-03-16 16:56:52 +07:00
laansdole
6a898ce2da fix: stored memory embeddings had mixed dim 2026-03-16 16:27:37 +07:00
Shu Yao
75e889decf
Merge pull request #580 from NINE-J/style/sidebar-scroll-behavior
fix: Fix what the navigation hide interaction affects all pages
2026-03-15 14:49:43 +08:00
NINE
b8b399797a fix: Fix what the navigation hide interaction affects all pages 2026-03-15 14:49:26 +09:00
Shu Yao
1c636e5b56
Merge pull request #577 from LaansDole/main
Feat: add persistent chat panel with fullscreen toggle
2026-03-15 13:17:20 +08:00
Shu Yao
9d010dea12 add: new contributors
upgrade: adjusting contributor ranking
fix: remove `--reload` in Makefile
2026-03-15 13:00:58 +08:00
laansdole
d796015f0d fix: text overflow the panel 2026-03-15 11:57:55 +07:00
Shu Yao
45cf26bb05
Merge pull request #576 from NINE-J/style/tutorial-view
style: Resolve nested scrollbars & implement auto-hiding navigation f…
2026-03-15 12:14:38 +08:00
laansdole
5525813676 feat(frontend): add persistent chat panel with fullscreen toggle
- Convert chat from tab-based to persistent collapsible overlay panel
- Chat panel visible alongside Graph view as a side overlay
- Toggle button (chevron) to collapse/expand the overlay panel
- 'Chat' in view toggle activates full-screen chat mode filling left panel
- 'Graph' in view toggle shows graph with chat as overlay
- isChatPanelOpen state preserved across mode switches
- Default viewMode is 'chat' (full-screen on load)
- No Spatial features included
2026-03-14 09:36:10 +07:00
NINE
1c8d23544a style: Resolve nested scrollbars & implement auto-hiding navigation for Tutorial UX 2026-03-14 03:04:47 +09:00
Yufan Dang
5883f4915d
Merge branch 'OpenBMB:main' into main 2026-03-11 13:36:31 +08:00
NA-Wen
db267ffc9c add skills.md 2026-03-11 13:32:58 +08:00