Commit Graph

6117 Commits

Author SHA1 Message Date
Peter Steinberger
02034aefa3 feat: add internal hooks system 2026-01-17 01:31:57 +00:00
Peter Steinberger
cf23c3461c fix(browser): remote profile tab ops follow-up (#1060) (thanks @mukhtharcm)
Landed via follow-up to #1057.

Gate: pnpm lint && pnpm build && pnpm test
2026-01-17 01:28:22 +00:00
Peter Steinberger
28c999f8aa style: format health/status files 2026-01-17 01:25:10 +00:00
Peter Steinberger
5f016a4d95 docs: update health/status + doctor docs 2026-01-17 01:19:43 +00:00
Peter Steinberger
42e5a4f581 test: update health/status and legacy migration coverage 2026-01-17 01:19:43 +00:00
Peter Steinberger
410da59646 refactor: centralize account bindings + health probes 2026-01-17 01:19:43 +00:00
Peter Steinberger
c6f7851083 test: drop legacy connections settings smoke test 2026-01-17 01:13:45 +00:00
Peter Steinberger
1766d37d27 docs: align channels naming in mac tests 2026-01-17 01:13:45 +00:00
Peter Steinberger
736d4a256b Merge pull request #1057 from mukhtharcm/feat/browser-persistent-tabs-remote-profiles
feat(browser): use persistent Playwright connections for remote profile tab operations
2026-01-17 00:57:58 +00:00
Peter Steinberger
cf6ac73c82 fix: browser remote tab ops harden (#1057) (thanks @mukhtharcm) 2026-01-17 00:57:35 +00:00
Peter Steinberger
825d4adccc Merge pull request #1040 from clawdbot/shadow/config-ui
Config: schema-driven channels and settings
2026-01-17 00:45:42 +00:00
Peter Steinberger
330abac145 fix: note config-first channel auth (#1040) (thanks @thewilloftheshadow) 2026-01-17 00:43:37 +00:00
Peter Steinberger
89f4f0bd44 docs: fix changelog after 2026.1.15 release 2026-01-17 00:43:37 +00:00
Peter Steinberger
77df4e344f feat: enhance web_fetch fallbacks 2026-01-17 00:43:37 +00:00
Peter Steinberger
5a8dd7d73e feat: improve web_fetch readability extraction 2026-01-17 00:43:05 +00:00
Peter Steinberger
2cefd1cae0 fix: prefer config tokens over env for discord/telegram 2026-01-17 00:43:05 +00:00
Peter Steinberger
58a5d21e40 feat(ui): delete sessions from Control UI 2026-01-17 00:43:05 +00:00
Peter Steinberger
17e6b37f0c feat: expand skill command registration 2026-01-17 00:43:05 +00:00
Peter Steinberger
12505d9c9e fix: align channel config schemas and env precedence 2026-01-17 00:43:05 +00:00
Shadow
36a897577e macOS: fix config form rendering 2026-01-17 00:43:05 +00:00
Shadow
cf35a6422c Docs: note schema-driven config UI 2026-01-17 00:43:05 +00:00
Shadow
7d8c556f9e Changelog: note schema-driven channels UI 2026-01-17 00:43:05 +00:00
Shadow
9fbc21916a Config: schema-driven channels and settings 2026-01-17 00:43:05 +00:00
Muhammed Mukhthar CM
d9611c77a2 feat(browser): use persistent Playwright connections for remote profile tab operations
For remote CDP profiles (e.g., Browserless), tab operations now use Playwright's
persistent connection instead of stateless HTTP requests. This ensures tabs
persist across operations rather than being terminated after each request.

Changes:
- pw-session.ts: Add listPagesViaPlaywright, createPageViaPlaywright, and
  closePageByTargetIdViaPlaywright functions using the cached Playwright connection
- pw-ai.ts: Export new functions for dynamic import
- server-context.ts: For remote profiles (!cdpIsLoopback), use Playwright-based
  tab operations; local profiles continue using HTTP endpoints
- server-context.ts: Fix ensureTabAvailable to not require wsUrl for remote
  profiles since Playwright accesses pages directly

This is a follow-up to #895 which added authentication support for remote CDP
profiles. The original PR description mentioned switching to persistent Playwright
connections for tab operations, but only the auth changes were merged.
2026-01-17 00:42:53 +00:00
Peter Steinberger
66b0b6e3fc docs: expand iMessage remote setup 2026-01-17 00:39:48 +00:00
Peter Steinberger
e1dcc2ee5e Merge pull request #1054 from tyler6204/fix/imsg-remote-attachments
iMessage: Add remote attachment support for VM/SSH deployments
2026-01-17 00:37:21 +00:00
Peter Steinberger
11d485fd4f fix: avoid imessage rpc restart loop 2026-01-17 00:35:24 +00:00
Peter Steinberger
64a3b1696e refactor: simplify env var substitution scan 2026-01-17 00:34:00 +00:00
Peter Steinberger
8faf4c87db fix: harden env var substitution parsing (#1044) (thanks @sebslight) 2026-01-17 00:29:08 +00:00
Peter Steinberger
1556f4c834 Merge pull request #1044 from sebslight/env-var-substitution
feat(config): add env var substitution in config values
2026-01-17 00:25:26 +00:00
Sash Catanzarite
37a36e4b4f fix: honor message tool channel for tool dedupe (#1053)
- Treat message tool `channel` as provider hint for dedupe/suppression.
- Prefer NO_REPLY after message tool sends to avoid duplicate replies.

Co-authored-by: Sash Catanzarite <1166151+thesash@users.noreply.github.com>
2026-01-17 00:23:51 +00:00
Peter Steinberger
e0f9ace360 docs: clarify model key format 2026-01-17 00:15:37 +00:00
Peter Steinberger
73888d132a Merge pull request #1049 from YuriNachos/fix/issue-1020-sessions-perms
fix(sessions): preserve 0600 permissions on sessions.json writes
2026-01-17 00:07:49 +00:00
Peter Steinberger
6d9ec89a7e docs: fix changelog after 2026.1.15 release 2026-01-17 00:03:56 +00:00
Peter Steinberger
7457e80ade style: format with oxfmt 2026-01-17 00:03:00 +00:00
Peter Steinberger
491f45f058 feat: enhance web_fetch fallbacks 2026-01-17 00:00:49 +00:00
Peter Steinberger
a97e8a8521 docs(changelog): note PR #1050 fixes
Co-authored-by: Yurii Chukhlib <yuri.v.chu@gmail.com>
2026-01-16 23:59:04 +00:00
Peter Steinberger
1f6232785a fix(openai-image-gen): handle url and b64_json responses
Co-authored-by: Yurii Chukhlib <yuri.v.chu@gmail.com>
2026-01-16 23:59:04 +00:00
Peter Steinberger
83aba4e31c fix(session): preserve overrides on /new reset
Co-authored-by: Yurii Chukhlib <yuri.v.chu@gmail.com>
2026-01-16 23:59:04 +00:00
Yurii Chukhlib
2865cd9f32 fix(channels): include linked field in WhatsApp describeAccount
Fixes #1030

The describeAccount function for WhatsApp was not returning the
linked field, causing the Channels status section to show
"Not linked" even when WhatsApp was properly linked and working.

The fix adds the linked field to describeAccount, set to the same
value as configured (Boolean(account.authDir)). This ensures that
the Channels section and Health section show consistent status.
2026-01-16 23:59:04 +00:00
Peter Steinberger
a3059cb8c2 fix: scope history injection to pending-only 2026-01-16 23:52:42 +00:00
Tyler Yust
4450c2a7c0 iMessage: Add remote attachment support for VM/SSH deployments 2026-01-16 15:51:42 -08:00
Peter Steinberger
957656269c fix: prefer config over env for matrix creds 2026-01-16 23:24:18 +00:00
Peter Steinberger
ce49bb9a7f docs: redirect /install/node to install section 2026-01-16 23:18:50 +00:00
Peter Steinberger
f89fb0eeb9 feat: improve web_fetch readability extraction 2026-01-16 23:18:01 +00:00
Peter Steinberger
53385a2285 Merge pull request #1046 from YuriNachos/feature/web-search-localization
feat(web-search): add country and language parameters
2026-01-16 23:17:46 +00:00
Peter Steinberger
b171d76764 docs: clarify Brave web_search defaults (#1046) (thanks @YuriNachos) 2026-01-16 23:16:59 +00:00
Yurii Chukhlib
c0323db3cc docs(web-search): document country and language parameters
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 23:14:33 +00:00
Yurii Chukhlib
4efd83ac67 test(web-search): add tests for country and language parameters
Added three new test cases to verify the new country, search_lang, and ui_lang
parameters are correctly passed to the Brave Search API.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 23:14:33 +00:00
Yurii Chukhlib
f9119ab38b feat(web-search): pass country and language params to Brave API
- Add country, search_lang, and ui_lang optional parameters to runWebSearch
- Pass new parameters to Brave Search API as URL query parameters
- Update cache key to include localization parameters
- Wire parameters through createWebSearchTool execute function
2026-01-16 23:14:33 +00:00