Peter Steinberger
c1b37f29f0
refactor(tests): dedupe browser and telegram tool test fixtures
2026-03-03 01:37:12 +00:00
LI SHANXIN
c1b75ab8e2
fix(telegram): make reaction handling soft-fail and message-id resilient ( #20236 )
...
* Telegram: soft-fail reactions and fallback to inbound message id
* Telegram: soft-fail missing reaction message id
* Update CHANGELOG.md
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-02-23 10:25:14 -05:00
Peter Steinberger
7bbd597383
fix(media): enforce agent media roots in plugin send actions
...
Co-authored-by: Oliver Drobnik <333270+odrobnik@users.noreply.github.com >
Co-authored-by: thisischappy <257418353+thisischappy@users.noreply.github.com >
2026-02-22 22:24:27 +01:00
Peter Steinberger
3c75bc0e41
refactor(test): dedupe agent and discord test fixtures
2026-02-22 20:04:51 +00:00
Peter Steinberger
fcb86408fd
test: move embedded and tool agent suites out of e2e
2026-02-22 11:17:47 +00:00
Peter Steinberger
9131b22a28
test: migrate suites to e2e coverage layout
2026-02-13 14:28:22 +00:00
0xRain
4b86c9e555
fix(telegram): surface REACTION_INVALID as non-fatal warning ( #14340 )
...
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-02-12 00:28:47 -06:00
cpojer
f06dd8df06
chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts.
2026-02-01 10:03:47 +09:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00
A. Duk
284b54af42
feat: Add support for Telegram quote (partial message replies) ( #2900 )
...
* feat: Add support for Telegram quote (partial message replies)
- Enhanced describeReplyTarget() to detect and extract quoted text from msg.quote
- Updated reply formatting to distinguish between full message replies and quotes
- Added isQuote flag to replyTarget object for proper identification
- Quote replies show as [Quoting user] "quoted text" [/Quoting]
- Regular replies unchanged: [Replying to user] full message [/Replying]
Resolves need for partial message reply support in Telegram Bot API.
Backward compatible with existing reply functionality.
* updating references
* Mac: finish Moltbot rename
* Mac: finish Moltbot rename (paths)
* fix(macOS): rename Clawdbot directories to Moltbot for naming consistency
Directory renames:
- apps/macos/Sources/Clawdbot → Moltbot
- apps/macos/Sources/ClawdbotDiscovery → MoltbotDiscovery
- apps/macos/Sources/ClawdbotIPC → MoltbotIPC
- apps/macos/Sources/ClawdbotMacCLI → MoltbotMacCLI
- apps/macos/Sources/ClawdbotProtocol → MoltbotProtocol
- apps/macos/Tests/ClawdbotIPCTests → MoltbotIPCTests
- apps/shared/ClawdbotKit → MoltbotKit
- apps/shared/MoltbotKit/Sources/Clawdbot* → Moltbot*
- apps/shared/MoltbotKit/Tests/ClawdbotKitTests → MoltbotKitTests
Resource renames:
- Clawdbot.icns → Moltbot.icns
Code fixes:
- Update Package.swift paths to reference Moltbot* directories
- Fix clawdbot* → moltbot* symbol references in Swift code:
- clawdbotManagedPaths → moltbotManagedPaths
- clawdbotExecutable → moltbotExecutable
- clawdbotCommand → moltbotCommand
- clawdbotNodeCommand → moltbotNodeCommand
- clawdbotOAuthDirEnv → moltbotOAuthDirEnv
- clawdbotSelectSettingsTab → moltbotSelectSettingsTab
* fix: update remaining ClawdbotKit path references to MoltbotKit
- scripts/bundle-a2ui.sh: A2UI_APP_DIR path
- package.json: format:swift and protocol:check paths
- scripts/protocol-gen-swift.ts: output paths
- .github/dependabot.yml: directory path and comment
- .gitignore: build cache paths
- .swiftformat: exclusion paths
- .swiftlint.yml: exclusion path
- apps/android/app/build.gradle.kts: assets.srcDir path
- apps/ios/project.yml: package path
- apps/ios/README.md: documentation reference
- docs/concepts/typebox.md: documentation reference
- apps/shared/MoltbotKit/Package.swift: fix argument order
* chore: update Package.resolved after dependency resolution
* fix: add MACOS_APP_SOURCES_DIR constant and update test to use new path
The cron-protocol-conformance test was using LEGACY_MACOS_APP_SOURCES_DIR
which points to the old Clawdbot path. Added a new MACOS_APP_SOURCES_DIR
constant for the current Moltbot path and updated the test to use it.
* fix: finish Moltbot macOS rename (#2844 ) (thanks @fal3)
* Extensions: use workspace moltbot in memory-core
* fix(security): recognize Venice-style claude-opus-45 as top-tier model
The security audit was incorrectly flagging venice/claude-opus-45 as
'Below Claude 4.5' because the regex expected -4-5 (with dash) but
Venice uses -45 (without dash between 4 and 5).
Updated isClaude45OrHigher() regex to match both formats.
Added test case to prevent regression.
* Branding: update bot.molt bundle IDs + launchd labels
* Branding: remove legacy android packages
* fix: wire telegram quote support (#2900 )
Co-authored-by: aduk059 <aduk059@users.noreply.github.com >
* fix: support Telegram quote replies (#2900 ) (thanks @aduk059)
---------
Co-authored-by: Gustavo Madeira Santana <gumadeiras@users.noreply.github.com >
Co-authored-by: Shadow <shadow@clawd.bot >
Co-authored-by: Alex Fallah <alexfallah7@gmail.com >
Co-authored-by: Josh Palmer <joshp123@users.noreply.github.com >
Co-authored-by: jonisjongithub <jonisjongithub@users.noreply.github.com >
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
Co-authored-by: aduk059 <aduk059@users.noreply.github.com >
2026-01-27 15:59:24 -05:00
Peter Steinberger
6d16a658e5
refactor: rename clawdbot to moltbot with legacy compat
2026-01-27 12:21:02 +00:00
Ayaan Zaidi
34fea720f8
fix(telegram): improve sticker vision + cache ( #2548 ) (thanks @longjos)
2026-01-27 12:56:38 +05:30
Peter Steinberger
f3f80509e3
test: cover tg/group/topic inline button targets ( #1072 ) — thanks @danielz1z
...
Co-authored-by: danielz1z <danielz1z@users.noreply.github.com >
2026-01-17 08:00:16 +00:00
Peter Steinberger
470add877c
feat: default telegram reaction level minimal
2026-01-16 20:35:47 +00:00
Peter Steinberger
69761e8a51
feat: scope telegram inline buttons
2026-01-16 20:16:41 +00:00
Peter Steinberger
a0d2a7232e
fix: allow media-only sends
2026-01-16 03:15:26 +00:00
Bohdan Podvirnyi
0e1dcf9cb4
feat: added capability for clawdbot to react
2026-01-15 17:07:38 +00:00
Peter Steinberger
0d0b77ded6
fix(telegram): wire delete action for message tool ( #903 ) - thanks @sleontenko
...
Co-authored-by: Stan <sleontenko@users.noreply.github.com >
2026-01-15 00:29:53 +00:00
Peter Steinberger
c379191f80
chore: migrate to oxlint and oxfmt
...
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com >
2026-01-14 15:02:19 +00:00
Peter Steinberger
90342a4f3a
refactor!: rename chat providers to channels
2026-01-13 08:40:39 +00:00
Peter Steinberger
6d378ee608
feat(telegram): inline keyboard buttons ( #491 )
...
Co-authored-by: Azade <azade@hey.com >
2026-01-09 20:47:03 +01:00
mneves75
33e2d53be3
feat(telegram): wire replyToMode config, add forum topic support, fix messaging tool duplicates
...
Changes:
- Default replyToMode from "off" to "first" for better threading UX
- Add messageThreadId and replyToMessageId params for forum topic support
- Add messaging tool duplicate detection to suppress redundant block replies
- Add sendMessage action to telegram tool schema
- Add @grammyjs/types devDependency for proper TypeScript typing
- Remove @ts-nocheck and fix all type errors in send.ts
- Add comprehensive docs/telegram.md documentation
- Add PR-326-REVIEW.md with John Carmack-level code review
Test coverage:
- normalizeTextForComparison: 5 cases
- isMessagingToolDuplicate: 7 cases
- sendMessageTelegram thread params: 5 cases
- handleTelegramAction sendMessage: 4 cases
- Forum topic isolation: 4 cases
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-08 00:50:47 +00:00
Peter Steinberger
3afef2d504
feat: unify provider reaction tools
2026-01-07 04:16:39 +01:00