Commit graph

143 commits

Author SHA1 Message Date
xmanrui
6b9118fe95 fix: support legacy and current DSH hosts 2026-08-29 20:22:07 +08:00
xmanrui
0cb79f74e9 feat: add message source context enhancement 2026-08-29 10:46:06 +08:00
xmanrui
5928b33057 fix(dingtalk): mention senders in streamed group replies
Reuse sender metadata and the existing AI Card lifecycle to include native mentions in ordinary group answers. Preserve mentions across progress, completion, and cleanup without sending a separate reminder.

Verified with npm run check (1671 tests) and a real ordinary Q&A in the existing DingTalk test group.
2026-08-28 23:08:52 +08:00
xmanrui
092d2cbb9c test(dingtalk): cover PR #76 mentions and credit contributor
Add regression coverage for group mention chunks, private replies, mention payloads, and batch reply failure handling. Credit divingleee in package contributors and rebuild the checked-in bundles.
2026-08-28 21:51:03 +08:00
xmanrui
6c6d4af936 fix(feishu): preserve long streaming replies
Keep a bounded streaming preview, then deliver the complete final answer across multiple cards. Preserve all provider message IDs and cover long snapshots and Unicode boundaries with regression tests.

Fixes #78
2026-08-28 10:50:35 +08:00
xmanrui
8c6c31a1b6 feat: add bounded history previews across nine channels
Add shared /history parsing, read-only session access, message filtering, and bounded replies. Default to three messages, cap at five, and exclude saved history commands.

Include channel integration tests, translations, command help, and the Issue #62 implementation plan.
2026-08-28 03:01:53 +08:00
xmanrui
f0b6b38b45 fix: use in-process Harness API for local plugin connections 2026-08-28 01:24:17 +08:00
xmanrui
91e2d5962a fix(weixin): report safe delivery diagnostics 2026-08-26 22:18:48 +08:00
xmanrui
dc66366ac0 fix(weixin): trust international WeChat hosts 2026-08-26 18:46:55 +08:00
xmanrui
25d0b2fb0b Revert "fix(whatsapp): handle group mentions and caller allowlists"
This reverts commit 9664e85599.
2026-08-26 18:01:08 +08:00
xmanrui
422fd34aa4 fix(wecom): separate thinking from answers 2026-08-26 17:31:20 +08:00
xmanrui
2d395860b3 fix(ui): keep bot status in card top-right 2026-08-26 17:27:48 +08:00
xmanrui
9664e85599 fix(whatsapp): handle group mentions and caller allowlists 2026-08-26 17:07:29 +08:00
xmanrui
ea5176be93 fix(qq): harden markdown reply delivery 2026-08-26 01:26:47 +08:00
xiemanR
8f03c66775
Merge pull request #60 from LAN-SHH/fix/qq-c2c-markdown-replies
fix(qq): deliver C2C replies as markdown
2026-08-25 23:40:41 +08:00
xmanrui
c62032f2c3 fix: contain Telegram card layout 2026-08-25 23:28:26 +08:00
xmanrui
1ce8126edb feat(settings): move IM bot to top-level menu
Remove the legacy Plugins-tab registrations, keep the channel-logo navigation, and harden upgrade/package verification.
2026-08-25 22:42:41 +08:00
LAN-SHH
9d3700b1cd fix(qq): deliver C2C replies as markdown 2026-08-25 21:52:49 +08:00
Evilh2019
adeab2dec8
fix(feishu): treat single-text-paragraph posts as commands (#57)
Treat attachment-free Feishu rich-text posts containing bot commands like ordinary text commands instead of forwarding them to the Harness.

Co-authored-by: OpenClaw Agent <agent@openclaw.ai>
2026-08-25 19:28:20 +08:00
xmanrui
1445b93891 fix: preserve error reactions for failed interactions 2026-08-25 17:15:06 +08:00
xmanrui
da01e3acee feat: add status reactions across messaging channels 2026-08-25 17:12:28 +08:00
xmanrui
cb34e3f8de feat(weixin): show typing indicator during turns 2026-08-25 13:53:21 +08:00
xmanrui
ad3c08ace3 feat: add structured message failure reporting 2026-08-25 13:42:43 +08:00
xmanrui
c5becbe379 feat: add plugin version command 2026-08-25 12:25:01 +08:00
xmanrui
10ca7eec2c fix(feishu): complete permissions repair flow 2026-08-25 04:25:21 +08:00
xmanrui
068cf57259 feat: add private chat batch input commands 2026-08-25 02:39:31 +08:00
xmanrui
2cc3a42d45 fix(whatsapp): respond to linked-account group messages 2026-08-25 01:12:55 +08:00
xmanrui
9e39333ff6 feat: add reasoning effort commands 2026-08-25 00:41:44 +08:00
xmanrui
36cbbe48e7 Merge pull request #48 from luochen211/fix/weixin-long-reply-chunking
fix: chunk long WeChat replies for iLink
2026-08-24 21:53:51 +08:00
cuidong233
5e07137c44 fix(weixin): align long-reply limits across runtime 2026-08-24 19:29:02 +08:00
xmanrui
bd9c58cf9e fix(feishu): stabilize post-merge card workflows 2026-08-24 18:49:32 +08:00
xmanrui
9d1dc71794 fix(feishu): harden interactive card flows 2026-08-24 18:49:32 +08:00
cuidong233
868372fb04 fix(weixin): chunk long replies for iLink limits 2026-08-24 12:20:07 +08:00
C3H3-AI
45f55f73eb fix(feishu): streamline menu card layout and update help card
- Move preset/model/archive controls from settings card to main menu
- Arrange 4 dropdowns in 2x2 grid with external icons
- Align steer and archive side by side
- Replace #showSettingsCard with #sendMenuCard for preset/model/archive updates
- Add #sendMenuCard after 'new' button action for consistency
- Update help card to reflect current menu layout (12 items)
- Clean up duplicate sessionlist entries in menuHelpText
- Add missing English dictionary entries
2026-08-24 09:46:32 +08:00
C3H3-AI
044ab74c28 merge: integrate upstream v2.0.0 (files, images, i18n) into feishu-card-system
- Resolve conflicts in feishu-cards.mjs / bridge.mjs / control-command.mjs / lib
- Keep card-system enhancements: menuCard/settingsCard/presetCard/modelCard, /m newCard, card form submit, model select
- Adopt upstream i18n t() wrapping + file/image delivery + inbound files
- Add missing English dictionary entries for new feishu card strings
- Rebuild lib (package now 2.0.0)
2026-08-24 07:22:50 +08:00
xmanrui
d4b8666495 fix: harden host language switching 2026-08-24 03:55:55 +08:00
xmanrui
3741dd8fd9 Merge pull request #46 from zaakirio/feat/host-i18n-en
feat(i18n): add English support for host-side chat messages
2026-08-24 03:51:43 +08:00
xmanrui
a5c516a61c merge: add native Telegram rich delivery
# Conflicts:
#	lib/index.js
2026-08-24 03:44:19 +08:00
xmanrui
fde088e381 fix(delivery): surface failed semantic finals 2026-08-24 03:41:53 +08:00
xmanrui
d7f4cf03ab feat(telegram): deliver native rich messages 2026-08-24 03:33:30 +08:00
Zaakir
dcd7cd64d8 feat(i18n): add English support for host-side chat messages
Wrap all user-facing chat text in src/channels with a host-side t()
translator (Chinese is the identity default, so untranslated text is
always sent verbatim in Chinese). English is selected via the host
plugin config `language: en` or the DSH_IM_LANGUAGE environment
variable, and the settings UI keeps following the DSH web locale.

- add src/channels/shared/i18n.mjs with setImHostLanguage/t() and a
  Chinese-key -> English dictionary split by area (shared + channels)
- complete the English dictionary for every t() key in src/channels,
  including the feishu channel (welcome/help, repair flow, interactive
  cards, watch flow) and the shared command/approval/stream text
- wrap previously untranslated chat-facing strings in feishu bridge,
  feishu runtime, editable-message-stream, harness-client,
  connection-test and image-prompt
- dedupe dictionary entries that existed in multiple channel files and
  canonicalize conflicting translations into the shared dictionaries
- extend the i18n unit test to decode string-literal escapes so keys
  containing \n are checked correctly
- document the language switch in README.md, README.en.md and
  CHANGELOG.md, and rebuild lib/index.js

Added English support for bot chat messages across all nine IM
channels and AI Office without changing any Chinese output.
2026-08-24 00:32:30 +05:00
xmanrui
5b3db16097 fix(discord): close thread recovery races 2026-08-24 03:32:06 +08:00
xmanrui
2609ae20e8 fix(discord): request managed thread message content 2026-08-24 03:32:01 +08:00
xmanrui
47cf028914 feat(discord): route guild conversations into threads 2026-08-24 03:31:58 +08:00
xmanrui
73f262711b test(telegram): lock plain delivery baseline 2026-08-24 03:31:43 +08:00
xmanrui
54496f9ba4 test(discord): lock channel addressing baseline 2026-08-24 03:31:41 +08:00
xmanrui
3ec5f1eca7 feat: add native image delivery across channels 2026-08-24 03:25:38 +08:00
xmanrui
ade50210f0 fix(qq): prevent turn feed message spam 2026-08-24 00:48:21 +08:00
jonah.fu
81b9535ed5 fix(qq): drop per-tool notices, keep errors and interim text
Real agent turns invoke tools constantly; one 'Tool call X' message
per call flooded the chat with near-zero information. Tool frames now
only flush the pending interim explanation text; successful tool
results stay silent, and failures still push the tool name with the
error detail.
2026-08-23 23:00:38 +08:00
jonah.fu
46acf5a425 Merge upstream/main: inbound files across channels + v1.3.0
Resolve qq-bridge.mjs by keeping the inbound-file support (hasFiles,
files passthrough) and dropping the upstream stream session, which
this branch replaces with the discrete turn-feed notices.
2026-08-23 22:46:44 +08:00