Commit Graph

8220 Commits

Author SHA1 Message Date
Shivam Kumar Raut
b5c885bbd9
fix(ui): auto-expand chat textarea on input (Fixes #2939) (#2950) 2026-01-27 13:05:56 -08: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
Shadow
9ec4c619e0
Branding: remove legacy android packages 2026-01-27 14:46:50 -06:00
Shadow
f7a0b0934d
Branding: update bot.molt bundle IDs + launchd labels 2026-01-27 14:46:50 -06:00
Vignesh
1d37815443
fix(models): recognize Venice-style claude-opus-45 as claude-opus-4-5 thanks @jonisjongithub 2026-01-27 12:40:06 -08:00
jonisjongithub
60873a1ed1 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.
2026-01-27 12:20:40 -08:00
Josh Palmer
9883d5d897 Extensions: use workspace moltbot in memory-core 2026-01-27 21:19:30 +01:00
Shadow
e6186ee3db fix: finish Moltbot macOS rename (#2844) (thanks @fal3) 2026-01-27 14:17:20 -06:00
Alex Fallah
4a3102117b 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.
2026-01-27 14:17:20 -06:00
Alex Fallah
cf5ed4b5a4 chore: update Package.resolved after dependency resolution 2026-01-27 14:17:20 -06:00
Alex Fallah
289440256b 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
2026-01-27 14:17:20 -06:00
Alex Fallah
d33cd45061 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
2026-01-27 14:17:20 -06:00
Shadow
c1a7917de7
Mac: finish Moltbot rename (paths) 2026-01-27 14:12:47 -06:00
Shadow
cc72498b46
Mac: finish Moltbot rename 2026-01-27 14:12:17 -06:00
Gustavo Madeira Santana
3fe4b2595a
updating references 2026-01-27 13:37:47 -05:00
Peter Steinberger
640c8d1554 fix: ignore windows vitest worker crashes 2026-01-27 17:37:21 +00:00
Ayaan Zaidi
f662039c47 docs: note daemon runtime prompt fix (#2874) 2026-01-27 22:45:15 +05:30
Ayaan Zaidi
0ad40f4d7c fix: avoid daemon runtime prompt under spinner 2026-01-27 22:45:15 +05:30
Peter Steinberger
4a9c921168 fix: use threads pool for windows ci tests 2026-01-27 17:02:01 +00:00
Peter Steinberger
cf334d3b7d fix: shard windows ci test runs 2026-01-27 16:39:28 +00:00
Peter Steinberger
240232aed1 fix: run windows ci tests serially 2026-01-27 16:13:02 +00:00
Peter Steinberger
889882f339 fix: cap windows vitest workers in ci 2026-01-27 15:51:21 +00:00
Peter Steinberger
3817e0ce2c fix: bundle a2ui before tests 2026-01-27 15:38:31 +00:00
Peter Steinberger
e4518d2271 fix: allow docker builds to skip missing a2ui assets 2026-01-27 15:16:20 +00:00
Peter Steinberger
0594ccf92a fix: skip a2ui bundling when sources are excluded 2026-01-27 15:01:57 +00:00
Peter Steinberger
3015e11fd7 fix: stabilize install smoke against clawdbot installer 2026-01-27 14:58:01 +00:00
Peter Steinberger
5eff33abe6 fix: sync pnpm lockfile for moltbot rename 2026-01-27 14:37:10 +00:00
Peter Steinberger
3f83afe4a6 chore: update a2ui bundle hash 2026-01-27 13:00:02 +00:00
Peter Steinberger
44f9017355 fix: include compat dist in npm package 2026-01-27 12:59:59 +00:00
Peter Steinberger
7e99311e1d chore: normalize io compat test newline 2026-01-27 12:49:23 +00:00
Peter Steinberger
58640e9ecb fix: load config from moltbot and legacy dirs 2026-01-27 12:49:07 +00:00
Peter Steinberger
735aea9efa refactor: align skills and loaders with moltbot rename 2026-01-27 12:21:02 +00:00
Peter Steinberger
6d16a658e5 refactor: rename clawdbot to moltbot with legacy compat 2026-01-27 12:21:02 +00:00
Peter Steinberger
83460df96f chore: update molt.bot domains 2026-01-27 12:21:01 +00:00
Peter Steinberger
f4004054ab 📖 lore.md: Added full Great Molt chaos + Icon Generation Saga
- Handle snipers, GitHub disaster, Handsome Molty incident
- Fake developers creating pump-and-dump scams
- 20+ icon iterations documented
- Peter: 'this is cinema'

🦞
2026-01-27 10:23:55 +00:00
Peter Steinberger
72fea5e305 chore: bump version to 2026.1.26 2026-01-27 09:10:47 +00:00
Ayaan Zaidi
d7a00dc823 fix: gate sticker vision on image input 2026-01-27 13:49:42 +05:30
Ayaan Zaidi
a49250fffc docs: add changelog for #2650 2026-01-27 13:49:42 +05:30
Ayaan Zaidi
cc80495baa fix(telegram): send sticker pixels to vision models 2026-01-27 13:49:42 +05:30
Gustavo Madeira Santana
2ad550abe8 fix: land /help + /commands formatting (#2504) (thanks @hougangdev) 2026-01-27 02:43:14 -05:00
Gustavo Madeira Santana
cc1782b105 fix: tighten commands output + telegram pagination (#2504)
Co-authored-by: hougangdev <hougangdev@users.noreply.github.com>
2026-01-27 02:43:14 -05:00
hougangdev
97440eaf52 test: update status tests for new help/commands format 2026-01-27 02:43:14 -05:00
hougangdev
d91b4a3045 feat: improve /help and /commands formatting with categories and pagination
- Add CommandCategory type to organize commands into groups (session, options, status, management, media, tools, docks)
- Refactor /help to show grouped sections for better discoverability
- Add pagination support for /commands on Telegram (8 commands per page with nav buttons)
- Show grouped list without pagination on other channels
- Handle commands_page_N callback queries for Telegram pagination navigation
2026-01-27 02:43:14 -05:00
Vignesh
d3a6333ef7
docs: allow nested gateway security pages (#2641) 2026-01-26 23:41:35 -08:00
Ayaan Zaidi
54d6cd70b8 docs: update changelog for #2629 2026-01-27 12:56:38 +05:30
Ayaan Zaidi
34fea720f8 fix(telegram): improve sticker vision + cache (#2548) (thanks @longjos) 2026-01-27 12:56:38 +05:30
Josh Long
506bed5aed feat(telegram): add sticker support with vision caching
Add support for receiving and sending Telegram stickers:

Inbound:
- Receive static WEBP stickers (skip animated/video)
- Process stickers through dedicated vision call for descriptions
- Cache vision descriptions to avoid repeated API calls
- Graceful error handling for fetch failures

Outbound:
- Add sticker action to send stickers by fileId
- Add sticker-search action to find cached stickers by query
- Accept stickerId from shared schema, convert to fileId

Cache:
- Store sticker metadata (fileId, emoji, setName, description)
- Fuzzy search by description, emoji, and set name
- Persist to ~/.clawdbot/telegram/sticker-cache.json

Config:
- Single `channels.telegram.actions.sticker` option enables both
  send and search actions

🤖 AI-assisted: Built with Claude Code (claude-opus-4-5)
Testing: Fully tested - unit tests pass, live tested on dev gateway
The contributor understands and has reviewed all code changes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 12:47:23 +05:30
Peter Steinberger
9daa846457 docs(bluebubbles): note reverse-proxy localhost trust caveat 2026-01-27 05:47:49 +00:00
Vignesh
9a2be717b7
docs: redirect gateway/security/formal-verification (#2594) 2026-01-26 21:28:45 -08:00
TideFinder
6c451f47f4
Fix a subtle bug: modelDefault doesn’t apply when provider === "auto" (#2576)
* Fix a subtle bug: `modelDefault` doesn’t apply when provider === "auto"

1.Fix bugs when provider === "auto" which can lead model end up get ""

2. Fix to only include remote if you actually have any remote fields. (Is this intentional?)

* Refactor memory-search.ts to simplify remote checks

Remove redundant hasRemote variable and simplify includeRemote condition.

* oxfmt-friendly version

oxfmt-friendly version

* fix: local updates for PR #2576

Co-authored-by: papago2355 <papago2355@users.noreply.github.com>

* fix: memory search auto defaults (#2576) (thanks @papago2355)

---------

Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com>
Co-authored-by: papago2355 <papago2355@users.noreply.github.com>
2026-01-27 00:28:04 -05:00