Commit Graph
5674 Commits
Author SHA1 Message Date
a970179e11 fix(discord): deliver guild interaction cards to the originating channel
Pipeline group conversations are keyed by guild id, so send_interaction
targeted the guild and Discord returned Unknown Channel. Resolve the channel
from the message being answered, edit cards in that channel, and report the
card's conversation on callbacks so the Host scope check matches.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-11-03 20:55:05 +08:00
9238833fa4 ci(plugins): test coding Runners against SDK 0.7.20
Claude Code and Codex now call ctx.request_interaction, first released in 0.7.20.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-11-03 20:12:32 +08:00
cf8e161c04 ci(plugins): expect SDK 0.7.20 in Runner workflows
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-11-03 20:04:41 +08:00
daf269c80b chore(merge): integrate master and pin SDK 0.7.20
- Resolve test_dingtalk_api conflict: keep A2UI card tests and master's voice tests
- Pin langbot-plugin==0.7.20 from PyPI and drop the fork git source
- Require langbot-plugin>=0.7.20 for runners using request_interaction
- Drain queued QQ gateway tasks before adapter shutdown in tests

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-11-03 13:14:27 +08:00
huanghuoguoguo 990f766661 Merge pull request #2846 from langbot-app/fix/memory-fact-integrity
feat(LongTermMemory): add temporal recall and reviewed semantic memory
2026-11-03 10:22:37 +08:00
fdc310 7de0df45d9 fix(runner): keep blocking card interactions alive 2026-11-03 06:54:19 +08:00
fdc310 0f017efdfc fix(qqofficial): keep card callbacks responsive 2026-11-03 06:54:02 +08:00
43c0ba7e44 feat(speech): implement TTS and STT model layer and pipeline stages (LANG-251) (#2839)
* feat(speech): implement TTS and STT model layer and pipeline stages (LANG-251)

Co-authored-by: multica-agent <[email protected]>

* fix(speech): fix invoke signatures and provider lookup in speech stages and model testing

Co-authored-by: multica-agent <[email protected]>

* feat(speech): rename STT to ASR, improve TTS voice parameter handling and failure recovery

Co-authored-by: multica-agent <[email protected]>

* fix(persistence, lint, web): fix migration revision id, legacy table check, ruff duplicates, and frontend types

Co-authored-by: multica-agent <[email protected]>

* fix(speech): restore migration and CI contracts

Co-authored-by: multica-agent <[email protected]>

* fix(pipeline,ui): fix select dropdown width gap, add speech to guided tour, and configure show_if for speech options

Co-authored-by: multica-agent <[email protected]>

* feat(speech,openclaw): support silk audio transcoding, graceful fallback, duration estimation, and multi-lang deploy docs

Co-authored-by: multica-agent <[email protected]>

* fix(audio): enhance ffmpeg executable detection via venv and imageio_ffmpeg

Co-authored-by: multica-agent <[email protected]>

* fix(provider): improve LiteLLM error classification and avoid falling back to Unknown error

Co-authored-by: multica-agent <[email protected]>

* fix(openclaw): serialize voice_item attributes and improve transcoding fallback logging

Co-authored-by: multica-agent <[email protected]>

* fix(audio,openclaw): handle transient TMPDIR deletion and add size attribute to voice_item

Co-authored-by: multica-agent <[email protected]>

* fix(openclaw): download and convert inbound voice messages and align voice sending protocol

Co-authored-by: multica-agent <[email protected]>

* fix(models): redesign add model popover tabs layout and include ASR/TTS models in provider counts and scanning

Co-authored-by: multica-agent <[email protected]>

* fix(audio): decrypt and transcode wecombot voice to mp3, align openclaw weixin voice delivery

Co-authored-by: multica-agent <[email protected]>

* fix(wecombot): transcode outbound voice to silk and support voice_delivery mode

Co-authored-by: multica-agent <[email protected]>

* fix(discord,web): map audio attachments to voice for ASR, prefer base64 voice in webui

Co-authored-by: multica-agent <[email protected]>

* fix(telegram): deliver voice replies in streaming and non-streaming modes with quote origin

Co-authored-by: multica-agent <[email protected]>

* feat(dingtalk): route voice messages through pipeline ASR and send TTS replies as voice

Inbound DingTalk audio now arrives as a Voice component with its duration,
so the pipeline speech recognition switch decides how it is transcribed.
DingTalk's own recognition text is used only when the audio cannot be
downloaded.

Outbound Voice components are transcoded to ogg/opus, uploaded as voice
media and sent as native sampleAudio messages in both the omni and legacy
adapters. Audio over 60 seconds, or audio that cannot be transcoded or is
rejected as a voice message, is sent as a file instead. Voice parts no longer
leak into the reply text as "[Voice]".

Also estimate ogg durations from the granule position and ignore non-audio
MIME hints when extracting voice bytes, so ffmpeg can probe the input.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>

* fix(ci): include speech model counts in provider responses and fix lint/image build

- Copy every count returned by get_provider_model_counts into the provider
  payload instead of indexing asr_count/tts_count, and update the test fakes
  to return the speech model counts.
- Install libc6-dev in the runtime image so the pilk audio extra can compile.
- Apply ruff and prettier formatting required by the lint jobs.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>

* test(e2e): expect the speech step in the pipeline setup guide

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>

---------

Co-authored-by: multica-agent <[email protected]>
Co-authored-by: Claude Opus 5.5 <[email protected]>
2026-11-02 23:51:22 +08:00
huanghuoguoguo d666e1f5cf fix(LongTermMemory): enforce stored context budgets before publication 2026-11-02 22:17:33 +08:00
huanghuoguoguo 7355a23eed Merge remote-tracking branch 'origin/master' into fix/memory-fact-integrity 2026-11-02 21:13:10 +08:00
huanghuoguoguo 5627a3b9bc fix(LongTermMemory): reject summaries that cannot fit recall context 2026-11-02 21:13:10 +08:00
huanghuoguoguo dd95ff9796 fix(LongTermMemory): clear derived memory across document and KB deletion 2026-11-02 21:11:14 +08:00
huanghuoguoguo 1d81e1dcc7 fix(LongTermMemory): validate integrated temporal and summary boundaries 2026-11-02 21:10:04 +08:00
huanghuoguoguo f207965e68 feat(LongTermMemory): review consolidation proposals in Memory Console 2026-11-02 20:52:56 +08:00
huanghuoguoguo 8a3657430c feat(LongTermMemory): publish reviewed summaries with scoped source lineage 2026-11-02 20:50:01 +08:00
huanghuoguoguo 34ac1a8ee5 fix(LongTermMemory): preserve temporal precision and complete evidence spans 2026-11-02 20:45:19 +08:00
huanghuoguoguo 7cd90087b1 feat(LongTermMemory): retain fact provenance and review model-selected evidence 2026-11-02 20:45:14 +08:00
huanghuoguoguo 7d1f217350 fix(LongTermMemory): unify bounded current and historical recall 2026-11-02 20:41:33 +08:00
Martin 4623148817 fix(core): 收紧 event-first 会话身份传播 (#2832) 2026-11-02 20:33:17 +08:00
huanghuoguoguo 2cbe686a57 fix(LongTermMemory): preserve facts during correction and archival 2026-11-02 20:11:51 +08:00
huanghuoguoguo 558ded2b7a fix(LongTermMemory): support memory tools in Agent processors (#2843)
* fix(LongTermMemory): support memory tools in Agent processors

* docs(LongTermMemory): clarify tool and Pipeline lifecycle access

* test(LongTermMemory): isolate persistent Chroma clients across fixtures
2026-11-02 20:11:23 +08:00
huanghuoguoguo 1a344aeb9f fix(agent): prepare plugin execution identity at context creation (#2842)
* fix(tools): propagate current execution identity to plugin calls

* fix(agent): construct complete execution identity before tool dispatch
2026-11-02 19:44:35 +08:00
RockChinQ 97886eac94 Merge pull request #2844 from langbot-app/agent/mika/49dceac9ee97
ci: build the dev image only on master and manual dispatch
2026-11-02 17:06:28 +08:00
Mikaandmultica-agent f8487471cd ci: build the dev image only on master and manual dispatch
Every branch push published a permanent rockchin/langbot:sha-<sha> tag plus a
branch-name tag, leaving 678 live Docker Hub tags across 265 branches. Restrict
push triggers to master; other branches stay buildable via workflow_dispatch.

Co-authored-by: multica-agent <[email protected]>
2026-11-02 08:59:58 +00:00
Guanchao Wang 8e304c9359 Merge pull request #2837 from jry21223/fix/wecom-heartbeat-send-failure-reconnect
fix(wecombot): reconnect when heartbeat send fails
2026-11-02 03:36:26 +00:00
d6bd73aee6 ci(platform): notify maintainers when PRs change platform adapter files
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-11-01 15:55:12 +00:00
JERRY 485992c6fd fix(wecombot): close WebSocket after heartbeat send failure 2026-11-01 22:38:06 +08:00
fdc310 4ae6db73d7 chore(merge): integrate master cancellation controls 2026-10-31 23:33:36 +08:00
huanghuoguoguo 8ee321f8c1 test(n8n): exercise latest DefaultRunner in daily regression (#2830)
* fix(n8n): validate runner timeout values

* fix(n8n): validate runner timeout values

* test(n8n): add latest DefaultRunner regression

* test(n8n): add latest DefaultRunner regression

* test(n8n): add latest DefaultRunner regression

* test(n8n): fix latest Runner response assertion
2026-10-31 22:24:22 +08:00
Martin 5aa1b0f5ae 完善 ACPAgentRunner 会话管理与权限边界 (#2822)
* feat(acp-agent-runner): add ACP session commands

* fix(acp-agent-runner): 收紧会话管理契约

* fix(acp-agent-runner): 修复 event-first 会话身份与切换能力校验
2026-10-31 21:53:46 +08:00
Martin 5be3b03e77 完善 Core Runner 取消与群聊控制命令 (#2821)
* feat(core): add generic runner cancellation control

* fix(core): 完善 Runner 取消与群聊控制命令

* fix(core): 支持多并发会话及时停止任务
2026-10-31 21:52:25 +08:00
fdc310 0d97014c64 test(interaction): update legacy admission assertions 2026-10-31 20:20:25 +08:00
fdc310 74d783419d test(agent): remove obsolete async fixture mark 2026-10-31 20:06:43 +08:00
fdc310 4cc3ab52fb chore(deps): pin blocking interaction SDK revision 2026-10-31 19:57:06 +08:00
fdc310 bca82cb633 refactor(agent): unify blocking interaction callbacks and adapters 2026-10-31 19:53:17 +08:00
huanghuoguoguo f750bb96ac test(ci): add daily Dify Cloud Agent regression
Add daily Dify Cloud Agent regression via Runner
2026-10-31 15:35:55 +08:00
fdc310 02162a5a1a chore(plugins): sync LocalAgent catalog version 2026-10-31 15:24:35 +08:00
fdc310 5e718bca79 fix(agent): avoid duplicate replies and enable LocalAgent cards 2026-10-31 15:20:46 +08:00
ShryukGrandhi a6ed298f2a fix(logs): keep newline between log pages in get_log_by_pointer (#2826)
Signed-off-by: ShryukGrandhi <[email protected]>
2026-10-31 15:16:10 +08:00
fdc310 e38091dba7 fix(interactions): align adapter manifests and close timed-out streams 2026-10-31 14:12:07 +08:00
fdc310 45c7c3a0a5 test(runner): keep legacy SDK probe importable 2026-10-31 14:04:01 +08:00
fdc310 27d4184bef fix(ci): lock blocking interaction SDK for dependent checks 2026-10-31 13:59:02 +08:00
huanghuoguoguo 7ff04002a2 refactor(tools): organize regression harness packages (#2828)
Reorganize regression tools into explicit packages and update all repository references.
2026-10-31 12:17:04 +08:00
huanghuoguoguo 306e154256 fix(regression): confirm Box removal before skipping inspect errors
Confirm Box container removal before tolerating docker inspect races.
2026-10-31 09:47:02 +08:00
fdc310 07fcdb35b5 fix(interactions): respect live adapter APIs and preserve deadlines 2026-10-31 03:21:52 +08:00
fdc310 16cedd2389 Merge remote-tracking branch 'origin/master' into feat/blocking-interactions 2026-10-31 03:17:49 +08:00
fdc310 bafe1df93d feat(interactions): resume runner in place after card submission 2026-10-31 03:17:42 +08:00
RockChinQandmultica-agent 566952c0f7 feat(provider): preserve MiniMax thinking history and refresh discovery (#2824)
Co-authored-by: multica-agent <[email protected]>
2026-10-31 02:45:08 +08:00
Pratik GandhiandRockChinQ a1dda4ac80 docs(agent-runner): fix links to AGENT_RUNNER_QA_GUIDE.md (#2726)
Ten links in dev-docs/agent-runner-pluginization/ pointed to the non-existent ./RUNNER_QA_GUIDE.md; point them to AGENT_RUNNER_QA_GUIDE.md. Rebased onto the docs/ -> dev-docs/ move.

Co-authored-by: RockChinQ <[email protected]>
2026-10-31 02:15:08 +08:00
Martin fe6f279d24 chore(docker): drop obsolete compose version and expose ACP daemon port (#2789) 2026-10-31 02:05:48 +08:00