Guanchao Wang
b8df0dbd7f
feat: message aggregator ( #1985 )
...
* feat: aggregator
* fix: resolve deadlock, mutation, and safety issues in message aggregator
- Fix deadlock: don't await cancelled timer tasks inside the lock;
_flush_buffer acquires the same lock, causing a deadlock cycle
- Fix message_event mutation: keep original message_event unmodified
to preserve message_id/metadata for reply/quote; only pass merged
message_chain separately
- Fix Plain positional arg: Plain('\n') → Plain(text='\n')
- Fix float() ValueError: wrap delay cast in try/except
- Add MAX_BUFFER_MESSAGES (10) cap to prevent unbounded buffer growth
- Default enabled to false to avoid surprising latency on upgrade
- Fix flush_all: cancel all timers under one lock acquisition, then
flush outside the lock to avoid deadlock
---------
Co-authored-by: RockChinQ <rockchinq@gmail.com >
2026-02-25 14:20:34 +08:00
Dongze Yang
298437f352
feat(platform): add Forward message support for aiocqhttp adapter ( #2003 )
...
* feat(platform): add Forward message support for aiocqhttp adapter
- Add _send_forward_message method to send merged forward cards via OneBot API
- Support NapCat's send_forward_msg API with fallback to send_group_forward_msg
- Fix MessageChain deserialization for Forward messages in handler.py
- Properly deserialize nested ForwardMessageNode.message_chain to preserve data
This enables plugins to send QQ merged forward cards through the standard
LangBot send_message API using the Forward message component.
* style: fix ruff lint and format issues
- Remove f-string prefix from log message without placeholders
- Apply ruff format to aiocqhttp.py and handler.py
* refactor: remove custom deserializer, rely on SDK for Forward deserialization
- Remove _deserialize_message_chain from handler.py; use standard
MessageChain.model_validate() (Forward handling fixed in SDK via
langbot-app/langbot-plugin-sdk#38 )
- Fix group_id type: use int instead of str for OneBot compatibility
- Add warning log when Forward message is used with non-group target
* chore: bump langbot-plugin to 0.2.7 (Forward deserialization fix)
---------
Co-authored-by: RockChinQ <rockchinq@gmail.com >
2026-02-25 14:03:17 +08:00
Dongze Yang
94d72c378c
fix(web): emit initial form values on mount to prevent saving empty config ( #2004 )
...
DynamicFormComponent uses form.watch(callback) to notify parent of form
values, but react-hook-form's watch callback only fires on subsequent
changes, not on mount. This causes PluginForm's currentFormValues to
remain as {} if the user saves without modifying any field, overwriting
the existing plugin config with an empty object in the database.
2026-02-25 13:34:52 +08:00
fdc310
f09ba6a0e3
fix: Add the file upload function and optimize the media message proc… ( #2002 )
...
* fix: Add the file upload function and optimize the media message processing
* fix: Optimize the message processing logic, improve the concatenation of text elements and the sending of media messages
* fix: Simplify the file request construction and message processing logic to enhance code readability
2026-02-25 12:24:16 +08:00
Junyan Chin
1eda076b93
feat: add plugin recommendation lists to market page ( #2001 )
2026-02-24 21:24:36 +08:00
Junyan Qin
d6c10763a8
chore: Bump version to 4.8.4 and update langbot-plugin dependency to 0.2.6
v4.8.4
2026-02-23 23:32:43 +08:00
Junyan Qin
9df50d2cab
chore: Standardize section headers in multiple language README files
2026-02-23 17:16:18 +08:00
Junyan Qin
6c6b510a0a
chore: Update logo in README files to new resource location
2026-02-23 17:01:37 +08:00
Junyan Qin
063dc6fe97
feat: Add unsaved changes tracking to PipelineFormComponent
2026-02-23 14:36:04 +08:00
Junyan Chin
42caae1bcf
feat: Implement extension and bot limitations across services and UI ( #1991 )
...
- Added checks for maximum allowed extensions, bots, and pipelines in the backend services (PluginsRouterGroup, BotService, MCPService, PipelineService).
- Updated system configuration to include limitation settings for max_bots, max_pipelines, and max_extensions.
- Enhanced frontend components to handle limitations, providing user feedback when limits are reached.
- Added internationalization support for limitation messages in English, Japanese, Simplified Chinese, and Traditional Chinese.
2026-02-22 17:25:45 +08:00
Typer_Body
aa09a27a63
Merge pull request #1975 from TyperBody/master
...
Add new platform named satori
2026-02-21 23:30:28 +08:00
Typer_Body
96e32a10e2
Update satori.py
2026-02-21 23:18:47 +08:00
Typer_Body
9a9f0eaa7d
Update satori.py
2026-02-21 23:14:07 +08:00
Typer_Body
f5dea3c64c
Update satori.py
2026-02-21 03:15:21 +08:00
Copilot
e213046302
fix: correct license declaration in OpenAPI spec from AGPL-3.0 to Apache-2.0 ( #1988 )
...
* Initial plan
* fix: update license from AGPL-3.0 to Apache-2.0 in service-api-openapi.json
Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: RockChinQ <45992437+RockChinQ@users.noreply.github.com >
2026-02-19 21:10:03 +08:00
Typer_Body
41d31d77d8
Change type from int to integer in satori.yaml
2026-02-18 18:07:57 +08:00
Typer_Body
6fb7fc80cc
Add files via upload
2026-02-18 17:58:56 +08:00
Typer_Body
7bee5ff2f8
ruff
2026-02-18 17:43:41 +08:00
Typer_Body
afe82ebdfd
Update print statement from 'Hello' to 'Goodbye'
2026-02-18 17:25:29 +08:00
Typer_Body
65c10ea54b
Update fmt.Println message from 'Hello' to 'Goodbye'
2026-02-18 17:12:20 +08:00
Typer_Body
ff0023c6c2
Merge branch 'master' into master
2026-02-18 17:02:16 +08:00
Typer_Body
0e17d869ab
Update README_RU.md
2026-02-18 16:53:56 +08:00
Typer_Body
7ec41bb91a
Add Satori support to the README_KO.md
2026-02-18 16:51:16 +08:00
Typer_Body
da164c214e
Update README_VI.md
2026-02-18 16:50:29 +08:00
Typer_Body
32a5de9bbb
Add Satori support to README_TW.md
2026-02-18 16:49:53 +08:00
Typer_Body
1b12b1fc35
Update README.md
2026-02-18 16:49:02 +08:00
Typer_Body
caa1ed9d6a
Delete README_EN.md
2026-02-18 16:47:59 +08:00
Typer_Body
05f40e72ff
Add files via upload
2026-02-18 16:46:53 +08:00
Guanchao Wang
27fb22d7be
Merge pull request #1966 from langbot-app/feat/export-history
...
feat: support export message history
2026-02-17 22:33:07 +08:00
wangcham
ca504384d2
Merge branch 'feat/export-history' of https://github.com/langbot-app/LangBot into feat/export-history
2026-02-17 22:22:33 +08:00
wangcham
b7e1e43fbd
fix: some errors
2026-02-17 22:21:53 +08:00
Junyan Chin
deabb19389
Update src/langbot/pkg/platform/sources/satori.py
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-17 22:20:27 +08:00
Junyan Chin
809035daac
Update src/langbot/pkg/platform/sources/satori.py
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-17 22:19:51 +08:00
RockChinQ
1eac87b89f
Update README files across multiple languages to reflect new platform capabilities and improve clarity. Enhanced descriptions for AI bot development and deployment, and added links for further documentation.
2026-02-17 15:52:13 +08:00
RockChinQ
70a2d137f0
Replace English README with Chinese version and update language links across all README files
2026-02-17 15:42:33 +08:00
Junyan Chin
c72b785c1f
Update bug-report_en.yml
2026-02-16 14:07:50 +08:00
Junyan Chin
8588199640
Revise bug report instructions for clarity
...
Updated bug report template to request export files for external platforms.
2026-02-16 14:07:28 +08:00
dependabot[bot]
2e42cd2faf
chore(deps): bump axios from 1.13.4 to 1.13.5 in /web ( #1979 )
...
Bumps [axios](https://github.com/axios/axios ) from 1.13.4 to 1.13.5.
- [Release notes](https://github.com/axios/axios/releases )
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md )
- [Commits](https://github.com/axios/axios/compare/v1.13.4...v1.13.5 )
---
updated-dependencies:
- dependency-name: axios
dependency-version: 1.13.5
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-15 16:18:02 +08:00
dependabot[bot]
7b3555af45
chore(deps): bump cryptography from 46.0.4 to 46.0.5 ( #1978 )
...
Bumps [cryptography](https://github.com/pyca/cryptography ) from 46.0.4 to 46.0.5.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/cryptography/compare/46.0.4...46.0.5 )
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.5
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-15 16:16:47 +08:00
dependabot[bot]
e12a77ca05
chore(deps): bump pillow from 12.1.0 to 12.1.1 ( #1977 )
...
Bumps [pillow](https://github.com/python-pillow/Pillow ) from 12.1.0 to 12.1.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases )
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst )
- [Commits](https://github.com/python-pillow/Pillow/compare/12.1.0...12.1.1 )
---
updated-dependencies:
- dependency-name: pillow
dependency-version: 12.1.1
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-15 16:15:17 +08:00
Junyan Qin
9ce3ad8300
fix: update JSX setting in TypeScript configuration to use react-jsx
2026-02-15 15:07:35 +08:00
Typer_Body
1f60d9c3d6
Add files via upload
2026-02-12 22:27:51 +08:00
Typer_Body
d855d29c15
Add files via upload
2026-02-12 22:25:14 +08:00
Typer_Body
18083e9160
Update README_TW.md
2026-02-12 22:12:53 +08:00
Typer_Body
7f9e8ecac1
Add files via upload
2026-02-12 22:12:28 +08:00
Typer_Body
995c852f0a
Add Satori to the supported platforms list
2026-02-12 02:52:26 +08:00
Typer_Body
682962cc47
Add Satori to supported platforms list
2026-02-12 02:51:54 +08:00
Typer_Body
24e90a7f9b
Add Satori to the supported platforms list
2026-02-12 02:51:37 +08:00
Typer_Body
6a5a7182db
Add Satori to the supported LLMs list
2026-02-12 02:51:15 +08:00
Typer_Body
c581c8e809
Add Satori to supported platforms list
2026-02-12 02:50:59 +08:00