mudrii
|
5d82c82313
|
feat: per-channel responsePrefix override (#9001)
* feat: per-channel responsePrefix override
Add responsePrefix field to all channel config types and Zod schemas,
enabling per-channel and per-account outbound response prefix overrides.
Resolution cascade (most specific wins):
L1: channels.<ch>.accounts.<id>.responsePrefix
L2: channels.<ch>.responsePrefix
L3: (reserved for channels.defaults)
L4: messages.responsePrefix (existing global)
Semantics:
- undefined -> inherit from parent level
- empty string -> explicitly no prefix (stops cascade)
- "auto" -> derive [identity.name] from routed agent
Changes:
- Core logic: resolveResponsePrefix() in identity.ts accepts
optional channel/accountId and walks the cascade
- resolveEffectiveMessagesConfig() passes channel context through
- Types: responsePrefix added to WhatsApp, Telegram, Discord, Slack,
Signal, iMessage, Google Chat, MS Teams, Feishu, BlueBubbles configs
- Zod schemas: responsePrefix added for config validation
- All channel handlers wired: telegram, discord, slack, signal,
imessage, line, heartbeat runner, route-reply, native commands
- 23 new tests covering backward compat, channel/account levels,
full cascade, auto keyword, empty string stops, unknown fallthrough
Fully backward compatible - no existing config is affected.
Fixes #8857
* fix: address CI lint + review feedback
- Replace Record<string, any> with proper typed helpers (no-explicit-any)
- Add curly braces to single-line if returns (eslint curly)
- Fix JSDoc: 'Per-channel' → 'channel/account' on shared config types
- Extract getChannelConfig() helper for type-safe dynamic key access
* fix: finish responsePrefix overrides (#9001) (thanks @mudrii)
* fix: normalize prefix wiring and types (#9001) (thanks @mudrii)
---------
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com>
|
2026-02-04 16:16:34 -05:00 |
|
Peter Steinberger
|
41d2993f7b
|
fix(matrix): require unique allowlist matches in wizard
|
2026-02-03 18:04:02 -08:00 |
|
Peter Steinberger
|
8f3bfbd1c4
|
fix(matrix): harden allowlists
|
2026-02-03 09:34:02 -08:00 |
|
cpojer
|
f06dd8df06
|
chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts.
|
2026-02-01 10:03:47 +09:00 |
|
cpojer
|
230ca789e2
|
chore: Lint extensions folder.
|
2026-01-31 22:42:45 +09:00 |
|
cpojer
|
8cab78abbc
|
chore: Run pnpm format:fix.
|
2026-01-31 21:13:13 +09:00 |
|
Peter Steinberger
|
9a7160786a
|
refactor: rename to openclaw
|
2026-01-30 03:16:21 +01:00 |
|
Peter Steinberger
|
6d16a658e5
|
refactor: rename clawdbot to moltbot with legacy compat
|
2026-01-27 12:21:02 +00:00 |
|
Peter Steinberger
|
1506d493ea
|
fix: switch Matrix plugin SDK
|
2026-01-27 01:00:23 +00:00 |
|
Peter Steinberger
|
026def686e
|
fix(matrix): decrypt E2EE media + size guard (#1744)
Thanks @araa47.
Co-authored-by: Akshay <araa47@users.noreply.github.com>
|
2026-01-25 12:53:57 +00:00 |
|
Dan Guido
|
48aea87028
|
feat: add prek pre-commit hooks and dependabot (#1720)
* feat: add prek pre-commit hooks and dependabot
Pre-commit hooks (via prek):
- Basic hygiene: trailing-whitespace, end-of-file-fixer, check-yaml, check-added-large-files, check-merge-conflict
- Security: detect-secrets, zizmor (GitHub Actions audit)
- Linting: shellcheck, actionlint, oxlint, swiftlint
- Formatting: oxfmt, swiftformat
Dependabot:
- npm and GitHub Actions ecosystems
- Grouped updates (production/development/actions)
- 7-day cooldown for supply chain protection
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* docs: add prek install instruction to AGENTS.md
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-25 10:53:23 +00:00 |
|
Peter Steinberger
|
458e731f8b
|
fix: newline chunking across channels
|
2026-01-25 04:11:36 +00:00 |
|
Adam Holt
|
c07949a99c
|
Channels: add per-group tool policies
|
2026-01-24 05:49:39 +00:00 |
|
Peter Steinberger
|
aeb6b2ffad
|
refactor: standardize channel logging
|
2026-01-23 23:34:30 +00:00 |
|
Peter Steinberger
|
07ce1d73ff
|
refactor: standardize control command gating
|
2026-01-23 23:34:30 +00:00 |
|
Peter Steinberger
|
1113f17d4c
|
refactor: share reply prefix context
|
2026-01-23 23:34:30 +00:00 |
|
Peter Steinberger
|
8252ae2da1
|
refactor: unify typing callbacks
|
2026-01-23 23:33:32 +00:00 |
|
Peter Steinberger
|
d82ecaf9dc
|
refactor: centralize inbound session updates
|
2026-01-23 23:33:32 +00:00 |
|
Peter Steinberger
|
02bd6e4a24
|
refactor: centralize ack reaction gating
|
2026-01-23 22:24:31 +00:00 |
|
Peter Steinberger
|
b77e730657
|
fix: add per-channel markdown table conversion (#1495) (thanks @odysseus0)
|
2026-01-23 18:39:25 +00:00 |
|
Peter Steinberger
|
eebd750781
|
fix: improve matrix direct room resolution (#1436) (thanks @sibbl) (#1486)
* fix: improve matrix direct room resolution (#1436) (thanks @sibbl)
* docs: update changelog for matrix fix (#1486) (thanks @sibbl)
|
2026-01-23 05:38:04 +00:00 |
|
Sebastian Schubotz
|
aa11300175
|
fix(matrix): broken import and enhance direct room resolve logic (#1436)
* fix(matrix): fix broken import again
* fix(matrix): improve error handling and fallback logic in resolveDirectRoomId
|
2026-01-23 05:35:01 +00:00 |
|
Peter Steinberger
|
e3a99aa2ce
|
refactor: split matrix provider modules
|
2026-01-20 14:32:04 +00:00 |
|
Peter Steinberger
|
fdb171cb15
|
refactor: centralize channel ui metadata
|
2026-01-20 13:11:49 +00:00 |
|
Peter Steinberger
|
d91f0ceeb3
|
fix: polish matrix e2ee storage (#1298) (thanks @sibbl)
|
2026-01-20 11:59:36 +00:00 |
|
Sebastian Schubotz
|
9b71382efb
|
rewrite(matrix): use matrix-bot-sdk as base to enable e2ee encryption, strictly follow location + typing + group concepts, fix room bugs
|
2026-01-20 11:59:11 +00:00 |
|
Peter Steinberger
|
d198474415
|
feat: resolve allowlists in channel plugins
|
2026-01-18 22:52:00 +00:00 |
|
Peter Steinberger
|
744d1329cb
|
feat: make inbound envelopes configurable
Co-authored-by: Shiva Prasad <shiv19@users.noreply.github.com>
|
2026-01-18 18:50:37 +00:00 |
|
Peter Steinberger
|
9c0773c469
|
chore: update dependencies
|
2026-01-18 14:16:04 +00:00 |
|
Peter Steinberger
|
858a5f48d8
|
Merge pull request #1176 from sibbl/fix-matrix-allowfrom
Matrix: fix redundant allowFrom assignment in monitorMatrixProvider
|
2026-01-18 13:57:00 +00:00 |
|
Peter Steinberger
|
20c26eb303
|
fix: prevent sqlite-vec duplicate id failures
|
2026-01-18 13:55:56 +00:00 |
|
Sebastian Schubotz
|
234fe5b5cd
|
fix(matrix): remove redundant allowFrom assignment in monitorMatrixProvider
|
2026-01-18 14:05:08 +01:00 |
|
Peter Steinberger
|
e944f21ec0
|
test: drop core runtime import in matrix directory
|
2026-01-18 11:03:27 +00:00 |
|
Peter Steinberger
|
ee6e534ccb
|
refactor: route channel runtime via plugin api
|
2026-01-18 11:01:16 +00:00 |
|
Peter Steinberger
|
0d9172d761
|
fix: persist session origin metadata
|
2026-01-18 03:41:51 +00:00 |
|
Peter Steinberger
|
1420d113d8
|
refactor: migrate extensions to plugin sdk
|
2026-01-18 02:55:07 +00:00 |
|
Peter Steinberger
|
34590d2144
|
feat: persist session origin metadata across connectors
|
2026-01-18 02:42:10 +00:00 |
|
Peter Steinberger
|
62354dff9c
|
refactor: share allowlist match metadata
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
|
2026-01-18 01:49:25 +00:00 |
|
Peter Steinberger
|
075ff675ac
|
refactor(channels): share allowlist + resolver helpers
|
2026-01-18 01:00:25 +00:00 |
|
Peter Steinberger
|
c7ea47e886
|
feat(channels): add resolve command + defaults
|
2026-01-18 01:00:24 +00:00 |
|
Peter Steinberger
|
a5aa48beea
|
feat: add dm allowlist match metadata logs
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
|
2026-01-18 00:14:44 +00:00 |
|
Peter Steinberger
|
fe00d6aacf
|
feat: add matrix room match metadata logs
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
|
2026-01-18 00:00:00 +00:00 |
|
Peter Steinberger
|
984692cda2
|
refactor: reuse channel config resolver in matrix extension
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
|
2026-01-17 23:53:05 +00:00 |
|
Peter Steinberger
|
a8d9d630bc
|
fix: handle legacy matrix polls (#1088) (thanks @sibbl)
|
2026-01-17 17:27:12 +00:00 |
|
Sebastian Schubotz
|
b78b06353a
|
feat(matrix): add specific voice message + image sending extending generic attachment sending
|
2026-01-17 17:12:38 +00:00 |
|
Sebastian Schubotz
|
c49b6cc241
|
fix(matrix): fix sending being broken by normalizing thread ID normalization in message sending functions; improve matrix types
|
2026-01-17 17:12:38 +00:00 |
|
Peter Steinberger
|
d5fdda8e28
|
refactor: prune room legacy
|
2026-01-17 07:41:24 +00:00 |
|
Peter Steinberger
|
07c93dfd30
|
refactor: streamline target resolver helpers
|
2026-01-17 07:34:26 +00:00 |
|
Peter Steinberger
|
6a3ed5c850
|
fix(security): gate slash/control commands
|
2026-01-17 06:49:34 +00:00 |
|
Peter Steinberger
|
331141ad77
|
refactor: centralize message target resolution
Co-authored-by: Thinh Dinh <tobalsan@users.noreply.github.com>
|
2026-01-17 06:04:49 +00:00 |
|