Commit Graph

197 Commits

Author SHA1 Message Date
Dominic Damoah
d3a0acd8b1 Merge branch 'main' into feat/mattermost-channel 2026-01-22 18:17:40 -05:00
Peter Steinberger
c52c2faed6 docs: align node transport with gateway ws 2026-01-22 23:10:09 +00:00
Dominic Damoah
f873523e1b Merge branch 'main' into feat/mattermost-channel 2026-01-22 02:49:17 -05:00
Peter Steinberger
c5e29f395f feat: extend Control UI assistant identity 2026-01-22 07:08:13 +00:00
Peter Steinberger
2d2a040795 Merge remote-tracking branch 'origin/main' into feature/agent-avatar-support 2026-01-22 06:03:56 +00:00
Peter Steinberger
c260b5d585 feat: add elevated ask/full modes 2026-01-22 05:41:11 +00:00
Peter Steinberger
5bc4841918 feat: add agent identity avatars (#1329) (thanks @dlauer) 2026-01-22 05:37:15 +00:00
Peter Steinberger
c5025bd120 feat: surface repo root in runtime prompt 2026-01-22 05:20:42 +00:00
Peter Steinberger
2c28fca67d feat: add agent avatar support (#1329) (thanks @dlauer) 2026-01-22 04:00:07 +00:00
Zach Knickerbocker
66810207e2 feat: configurable heartbeat session 2026-01-22 01:36:28 +00:00
Peter Steinberger
e9245837ea fix: enforce secure control ui auth 2026-01-21 23:58:42 +00:00
Dominic Damoah
1d34352691 feat: add Mattermost channel support
Add Mattermost as a supported messaging channel with bot API and WebSocket integration. Includes channel state tracking (tint, summary, details), multi-account support, and delivery target routing. Update documentation and tests to include Mattermost alongside existing channels.
2026-01-21 18:40:56 -05:00
Peter Steinberger
7efa487150 fix: add explicit tailnet gateway bind 2026-01-21 20:36:09 +00:00
Peter Steinberger
b0b96fe731 feat: add heartbeat active hours 2026-01-21 20:30:37 +00:00
Peter Steinberger
112ba5de4b feat: add auth-aware cache defaults 2026-01-21 20:23:39 +00:00
Peter Steinberger
d89894365d fix: restore 1h cache ttl option 2026-01-21 20:00:32 +00:00
Peter Steinberger
496eea9412 docs: clarify cache-ttl pruning window 2026-01-21 20:00:32 +00:00
Peter Steinberger
b47d8624ff feat: add cache-ttl pruning mode 2026-01-21 19:46:24 +00:00
Echo
ba1f1f1e5d feat(sessions): add channelIdleMinutes config for per-channel session idle durations (#1353)
* feat(sessions): add channelIdleMinutes config for per-channel session idle durations

Add new `channelIdleMinutes` config option to allow different session idle
timeouts per channel. For example, Discord sessions can now be configured
to last 7 days (10080 minutes) while other channels use shorter defaults.

Config example:
  sessions:
    channelIdleMinutes:
      discord: 10080  # 7 days

The channel-specific idle is passed as idleMinutesOverride to the existing
resolveSessionResetPolicy, integrating cleanly with the new reset policy
architecture.

* fix

* feat: add per-channel session reset overrides (#1353) (thanks @cash-echo-bot)

---------

Co-authored-by: Cash Williams <cashwilliams@gmail.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-21 19:10:31 +00:00
Peter Steinberger
6350065f68 docs: align gateway service naming 2026-01-21 17:45:26 +00:00
Peter Steinberger
fcff0604c7 fix: harden bluebubbles short ids and fetch wrapper (#1369) (thanks @tyler6204) 2026-01-21 17:09:15 +00:00
Peter Steinberger
2d743b3a14 docs: update node CLI references 2026-01-21 16:48:42 +00:00
Peter Steinberger
1a9cfd5149 fix: add browser snapshot default mode (#1336)
Co-authored-by: Seb Slight <sbarrios93@gmail.com>
2026-01-21 03:03:10 +00:00
Peter Steinberger
f88e2abb5a fix: harden web fetch SSRF and redirects
Co-authored-by: Eli <fogboots@users.noreply.github.com>
2026-01-21 02:54:14 +00:00
Peter Steinberger
b246c0358b fix: default Anthropic API cache TTL to 1h 2026-01-20 15:48:53 +00:00
Peter Steinberger
8c2a478c6d fix: shorten bonjour gateway service type 2026-01-20 15:10:06 +00:00
Peter Steinberger
20c58a285b docs: update protocol + security notes 2026-01-20 13:04:20 +00:00
Peter Steinberger
de3168af2f feat: add device token auth and devices cli 2026-01-20 10:30:53 +00:00
Peter Steinberger
6aa974894e chore: raise default agent concurrency 2026-01-20 10:08:26 +00:00
Peter Steinberger
386309ddd0 fix: enforce ws3 roles + node allowlist 2026-01-20 09:24:01 +00:00
Peter Steinberger
159ab379f8 fix: expand /v1/responses inputs (#1229) (thanks @RyanLisse) 2026-01-20 07:37:30 +00:00
Peter Steinberger
b1c13b0eab fix: enforce strict config validation 2026-01-19 03:39:25 +00:00
Peter Steinberger
07180a8d00 feat: auto-recreate sandbox containers on config change 2026-01-19 01:35:27 +00:00
Peter Steinberger
9942636ba5 feat(session): add daily reset policy
Co-authored-by: Austin Mudd <austinm911@gmail.com>
2026-01-18 06:37:37 +00:00
Peter Steinberger
6ac6a3b3c7 feat(channels): add resolve command + defaults 2026-01-18 01:00:24 +00:00
Peter Steinberger
4e4febbec5 fix: add Kimi Code docs + defaults (#1085) (thanks @dan-dr) 2026-01-17 17:35:40 +00:00
Peter Steinberger
372ce23423 feat: unify hooks installs and webhooks 2026-01-17 07:08:04 +00:00
Peter Steinberger
ffd81e03ba feat: notify on exec exit 2026-01-17 05:43:34 +00:00
Peter Steinberger
f37b33c13e refactor: unify media understanding pipeline 2026-01-17 04:39:00 +00:00
Peter Steinberger
80f1e070cb feat: add inbound media understanding
Co-authored-by: Tristan Manchester <tmanchester96@gmail.com>
2026-01-17 03:54:46 +00:00
Peter Steinberger
12505d9c9e fix: align channel config schemas and env precedence 2026-01-17 00:43:05 +00:00
Shadow
cf35a6422c Docs: note schema-driven config UI 2026-01-17 00:43:05 +00:00
Peter Steinberger
66b0b6e3fc docs: expand iMessage remote setup 2026-01-17 00:39:48 +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
Peter Steinberger
491f45f058 feat: enhance web_fetch fallbacks 2026-01-17 00:00:49 +00:00
Peter Steinberger
f89fb0eeb9 feat: improve web_fetch readability extraction 2026-01-16 23:18:01 +00:00
Sebastian
8e5237ce89 feat(config): add env var substitution in config values
Support ${VAR_NAME} syntax in any config string value, substituted at
config load time. Useful for referencing API keys and secrets from
environment variables without hardcoding them in the config file.

- Only uppercase env vars matched: [A-Z_][A-Z0-9_]*
- Missing/empty env vars throw MissingEnvVarError with path context
- Escape with $${VAR} to output literal ${VAR}
- Works with $include (included files also get substitution)

Closes #1009
2026-01-16 16:32:07 -05:00
Peter Steinberger
56c2830994 feat: enable telegram reaction notifications by default 2026-01-16 20:51:42 +00:00
Ruby
1ae19b55c9 feat: add session.identityLinks for cross-platform DM session linking (#1033)
Co-authored-by: Shadow <shadow@clawd.bot>
2026-01-16 14:23:22 -06:00
Peter Steinberger
c93b02d9d2 fix: scope whatsapp self-chat response prefix 2026-01-16 10:54:11 +00:00