Peter Steinberger
61e385b331
feat: add per-agent heartbeat config
2026-01-16 01:17:34 +00:00
Peter Steinberger
f8f319713f
fix: show provider/model labels in TUI
2026-01-16 01:13:14 +00:00
Peter Steinberger
bb665bf22c
fix: persist local gateway mode in configure wizard
2026-01-16 01:05:55 +00:00
Peter Steinberger
6084421ec6
feat: add provider auth plugins
2026-01-16 00:42:28 +00:00
Peter Steinberger
8c3cdba21c
feat: sticky auth profile rotation + usage headers
2026-01-16 00:25:49 +00:00
void
e274b5a040
fix: heartbeat prompt + dedupe ( #980 ) (thanks @voidserf)
...
- tighten default heartbeat prompt guidance
- suppress duplicate heartbeat alerts within 24h
Co-authored-by: void <voidserf@users.noreply.github.com>
2026-01-16 00:24:52 +00:00
Peter Steinberger
8312a19f02
fix: handle Telegram General topic thread params ( #848 ) (thanks @azade-c)
2026-01-16 00:08:56 +00:00
Peter Steinberger
a4b347b454
feat: refine subagents + add chat.inject
...
Co-authored-by: Tyler Yust <tyler6204@users.noreply.github.com>
2026-01-15 23:44:31 +00:00
Peter Steinberger
db9be87d94
refactor: centralize daemon path resolution
2026-01-15 23:19:52 +00:00
juanpablodlc
4a99b9b651
feat(whatsapp): add debounceMs for batching rapid messages ( #971 )
...
* feat(whatsapp): add debounceMs for batching rapid messages
Add a `debounceMs` configuration option to WhatsApp channel settings
that batches rapid consecutive messages from the same sender into a
single response. This prevents triggering separate agent runs for
each message when a user sends multiple short messages in quick
succession (e.g., "Hey!", "how are you?", "I was wondering...").
Changes:
- Add `debounceMs` config to WhatsAppConfig and WhatsAppAccountConfig
- Implement message buffering in `monitorWebInbox` with:
- Map-based buffer keyed by sender (DM) or chat ID (groups)
- Debounce timer that resets on each new message
- Message combination with newline separator
- Single message optimization (no modification if only one message)
- Wire `debounceMs` through account resolution and monitor tuning
- Add UI hints and schema documentation
Usage example:
{
"channels": {
"whatsapp": {
"debounceMs": 5000 // 5 second window
}
}
}
Default behavior: `debounceMs: 0` (disabled by default)
Verified: All existing tests pass (3204 tests), TypeScript compilation
succeeds with no errors.
Implemented with assistance from AI coding tools.
Closes #967
* chore: wip inbound debounce
* fix: debounce inbound messages across channels (#971 ) (thanks @juanpablodlc)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-15 23:07:19 +00:00
Peter Steinberger
8b89980a89
feat(date-time): standardize time context and tool timestamps
2026-01-15 22:27:06 +00:00
Jake
634a429c50
fix(model-picker): list each provider/model combo separately ( #970 )
...
* fix(model-picker): list each provider/model combo separately
Previously, /model grouped models by name and showed all providers
that offer the same model (e.g. 'claude-sonnet-4-5 — anthropic, google-antigravity').
This was confusing because:
1. Users couldn't tell which provider would be used when selecting by number
2. The display implied choice between providers but selection was automatic
Now each provider/model combination is listed separately so users
can explicitly select the exact provider they want.
- Remove model grouping in buildModelPickerItems
- Display format changed from 'model — providers' to 'provider/model'
- pickProviderForModel now returns the single provider directly
- Updated tests to reflect new behavior
* fix: simplify model picker entries (#970 ) (thanks @mcinteerj)
---------
Co-authored-by: Keith the Silly Goose <keith@42bolton.macnet.nz>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-15 22:20:11 +00:00
Peter Steinberger
2b113c4d6c
chore: update changelog ( #969 ) (thanks @bjesuiter)
2026-01-15 22:10:27 +00:00
Peter Steinberger
cb78fa46a1
fix: make node-llama-cpp optional
2026-01-15 18:37:02 +00:00
Shadow
316e8b2eb2
Discord: fix allowlist gating. Closes #961
2026-01-15 11:53:13 -06:00
Peter Steinberger
4de81ed6c4
docs(changelog): move browser relay fixes to 2026.1.15
2026-01-15 17:26:54 +00:00
Peter Steinberger
b6fb24f6d2
Merge pull request #964 from bohdanpodvirnyi/feat/telegram-reactions
...
feat(telegram): add bidirectional emoji reactions support
2026-01-15 17:21:51 +00:00
Peter Steinberger
2b1c26f900
fix: refine telegram reactions ( #964 ) (thanks @bohdanpodvirnyi)
2026-01-15 17:20:17 +00:00
Peter Steinberger
36292d3fbb
fix: preserve Antigravity Claude signatures ( #959 ) (thanks @rdev)
2026-01-15 17:06:39 +00:00
Peter Steinberger
c043e9767f
fix: default model fallback when provider/model missing ( #954 ) (thanks @roshanasingh4)
2026-01-15 16:58:41 +00:00
Peter Steinberger
2d1ae0916f
chore: start 2026.1.15 (unreleased)
2026-01-15 16:47:19 +00:00
Peter Steinberger
0a5b1fbcd1
fix(browser): handle extension relay page selection
2026-01-15 11:16:53 +00:00
Peter Steinberger
8daab932a2
chore(macos): prep Sparkle release 2026.1.14-1
2026-01-15 11:15:41 +00:00
Peter Steinberger
876efb11e7
docs(changelog): note chrome relay fixes
2026-01-15 10:46:48 +00:00
Peter Steinberger
4f1a4ab072
feat(browser): add snapshot refs=aria mode
2026-01-15 10:22:29 +00:00
Peter Steinberger
95735c3978
chore: bump version to 2026.1.14-1
2026-01-15 10:00:43 +00:00
Peter Steinberger
d5d33d4848
fix(browser): persist role refs per targetId
2026-01-15 09:56:24 +00:00
Shadow
74bc5bfd7c
Commands: add dynamic arg menus
2026-01-15 09:31:16 +00:00
Peter Steinberger
7e1e7ba2d8
fix(agents): skip thinking tags in code spans
2026-01-15 09:23:56 +00:00
Peter Steinberger
609d029e20
docs(changelog): regroup 2026.1.14
2026-01-15 09:07:30 +00:00
Peter Steinberger
4275ed68a2
fix(browser): default to chrome extension takeover
2026-01-15 09:02:42 +00:00
Peter Steinberger
75d2785d20
fix(browser): make extension relay zero-config
2026-01-15 09:02:42 +00:00
Peter Steinberger
b77b47bb98
fix: use canonical main session keys in apps
2026-01-15 08:59:05 +00:00
Peter Steinberger
5f87f7bbf5
fix: macos wizard auth bootstrap
2026-01-15 08:47:45 +00:00
Peter Steinberger
725a6b71dc
feat: add matrix channel plugin
2026-01-15 08:40:37 +00:00
Peter Steinberger
11d4fc101e
fix: sync cron run history selection in control ui
2026-01-15 08:38:21 +00:00
Peter Steinberger
4e6fb47a3f
fix(changelog): merge 2026.1.14 sections
2026-01-15 08:35:25 +00:00
Peter Steinberger
1797233989
fix(tui): surface model errors
2026-01-15 08:31:02 +00:00
Peter Steinberger
c269d5f258
fix: isolate Slack thread sessions ( #758 )
2026-01-15 08:11:03 +00:00
Peter Steinberger
627cc1f04b
fix(changelog): keep 2026.1.14 unreleased
2026-01-15 08:09:32 +00:00
Peter Steinberger
53d0bf653a
fix: canonicalize main session keys
2026-01-15 08:05:41 +00:00
Peter Steinberger
a5a9788b20
fix: imessage dm replies and error details ( #935 )
2026-01-15 08:05:10 +00:00
Peter Steinberger
9c04a79c0a
fix(ui): move docs link into nav
2026-01-15 08:01:34 +00:00
Peter Steinberger
0ac5480034
fix(onboarding): move web search hint to end
2026-01-15 07:57:18 +00:00
Peter Steinberger
8dacafce7f
fix: harden whatsapp command auth
2026-01-15 07:54:39 +00:00
Peter Steinberger
79f340a410
chore: prep 2026.1.14 npm release
2026-01-15 07:47:18 +00:00
Peter Steinberger
081e5ef572
fix(tools): enable web_fetch by default
2026-01-15 07:42:07 +00:00
Peter Steinberger
3e6917c8ae
fix: restore notify init + Plivo numbers ( #846 ) (thanks @vrknetha)
2026-01-15 07:28:14 +00:00
Peter Steinberger
0a1eeedc10
fix: unblock control commands during active runs
2026-01-15 07:08:48 +00:00
Peter Steinberger
1c96477686
fix: harden session cache + heartbeat restore
...
Co-authored-by: Ronak Guliani <ronak-guliani@users.noreply.github.com>
2026-01-15 07:07:12 +00:00
Peter Steinberger
82d83a9d54
Merge pull request #852 from mneves75/fix/cron-settings-channel-param
...
fix(macos): use channel param in CronSettings+Testing
2026-01-15 06:38:33 +00:00
Peter Steinberger
66de8aedeb
fix: satisfy swiftformat lint ( #852 ) (thanks @mneves75)
2026-01-15 06:38:15 +00:00
Peter Steinberger
154b8e3e0e
fix: bridge respawned child signals ( #933 ) (thanks @roshanasingh4)
...
Co-authored-by: Roshan Singh <roshanasingh4@users.noreply.github.com>
2026-01-15 06:37:27 +00:00
Peter Steinberger
728cd5e974
fix: document WhatsApp read receipts toggle ( #882 ) (thanks @chrisrodz)
2026-01-15 06:22:33 +00:00
Peter Steinberger
44a237b637
feat(browser): copy extension path to clipboard
2026-01-15 06:19:47 +00:00
Peter Steinberger
d59aab7fd3
chore: drop Clawdis legacy references
2026-01-15 06:18:44 +00:00
Peter Steinberger
9603eff79a
Merge pull request #909 from roshanasingh4/fix/macos-wizard-gateway-logdir
...
macOS: fix wizard hang when /tmp/clawdbot is missing
2026-01-15 06:13:51 +00:00
Peter Steinberger
e9d6dec2f4
fix: make log dir overrideable in tests ( #909 ) (thanks @roshanasingh4)
2026-01-15 06:13:20 +00:00
Peter Steinberger
0cbfea79fa
docs(cli): add per-command CLI pages
2026-01-15 06:13:10 +00:00
Peter Steinberger
9c396f6331
fix: note timezone + 24h prompt update ( #859 ) (thanks @CashWilliams)
2026-01-15 06:08:43 +00:00
Peter Steinberger
2bd9e84851
fix(agents): strip tool leak text ( #905 )
...
Thanks @erikpr1994.
Co-authored-by: Erik Pastor Rios <erikpastorrios1994@gmail.com>
2026-01-15 05:58:02 +00:00
Peter Steinberger
54fb59b8f3
feat: extend Telegram dock commands and config hashing ( #929 )
...
Thanks @grp06.
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-01-15 05:49:28 +00:00
Peter Steinberger
2e70c3ceab
fix: return setup hint when web_search lacks key
2026-01-15 05:35:22 +00:00
Peter Steinberger
ca1902fb4e
feat(security): expand audit and safe --fix
2026-01-15 05:31:43 +00:00
Peter Steinberger
cd2af64860
fix: cap tool call IDs for OpenAI/OpenRouter ( #875 ) (thanks @j1philli)
2026-01-15 05:25:45 +00:00
Peter Steinberger
77cf40da87
feat: profile-aware gateway service names ( #671 )
...
Thanks @bjesuiter.
Co-authored-by: Benjamin Jesuiter <bjesuiter@gmail.com>
2026-01-15 05:23:41 +00:00
Peter Steinberger
042b65dfcc
feat: add web tools config to configure
2026-01-15 05:08:56 +00:00
Peter Steinberger
568cc368ae
feat: add onboarding plugin install flow
2026-01-15 05:04:09 +00:00
Peter Steinberger
ef78b198cb
feat: add Chrome extension browser relay
2026-01-15 04:52:28 +00:00
Peter Steinberger
5fdaef3646
fix: downgrade unsigned gemini thinking
2026-01-15 04:51:21 +00:00
Peter Steinberger
fa4670c5fe
feat: improve agent auth guidance
2026-01-15 04:51:21 +00:00
Peter Steinberger
c4402a1ce5
docs: clarify agent auth + sandboxed skills
2026-01-15 04:51:03 +00:00
Peter Steinberger
edd8c613d6
feat(security): add audit --fix
2026-01-15 04:50:06 +00:00
Roshan Singh
1baa55c145
Structured subagent announce output + include run outcome ( #835 )
...
* docs: clarify subagent announce status
* Make subagent announce structured and include run outcome
* fix: stabilize sub-agent announce status (#835 ) (thanks @roshanasingh4)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-15 04:48:07 +00:00
Peter Steinberger
f275cc180b
feat: add web tools
2026-01-15 04:07:40 +00:00
Peter Steinberger
31d3aef8d6
fix: prevent config clobbering
2026-01-15 04:06:11 +00:00
Peter Steinberger
bd467ff765
chore: mark 2026.1.14 as unreleased
2026-01-15 04:05:18 +00:00
Peter Steinberger
429f973280
test: cover browser snapshot labels and efficient mode
2026-01-15 04:04:30 +00:00
Peter Steinberger
fa8d9b9189
feat: add provider-specific tool policies
2026-01-15 03:55:20 +00:00
Peter Steinberger
1078d178d7
fix: doctor ack reaction migration ( #927 )
...
Thanks @grp06.
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-01-15 03:51:55 +00:00
Peter Steinberger
dfea2991c9
fix(daemon): clear launchd disabled state before bootstrap ( #849 ) (thanks @ndraiman)
2026-01-15 03:35:24 +00:00
George Pickett
8f797f213e
Logging: tolerate EIO console writes
2026-01-15 03:20:48 +00:00
Peter Steinberger
7e8de907f8
fix: note detect-secrets CI scan ( #227 ) (thanks @Hyaxia)
2026-01-15 03:16:41 +00:00
Peter Steinberger
da9e27f466
docs: update changelog for telegram aggregation
2026-01-15 03:05:46 +00:00
Peter Steinberger
e569f15631
fix: scrub tuple items schemas for Gemini tools ( #926 ) — thanks @grp06
...
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-01-15 02:59:35 +00:00
Peter Steinberger
eaace34233
fix: restore docker binds and PATH in sandbox exec ( #873 )
...
Thanks @akonyer.
Co-authored-by: Aaron Konyer <aaronk@gomodular.ca>
2026-01-15 02:58:20 +00:00
Peter Steinberger
2fb2035dbf
fix: normalize Claude CLI auth mode to oauth ( #855 )
...
Thanks @sebslight.
Co-authored-by: Sebastian <sebslight@gmail.com>
2026-01-15 02:29:43 +00:00
Peter Steinberger
3c51290e0d
Merge pull request #850 from evalexpr/fix/slack-top-level-require-mention
...
fix(slack): respect top-level requireMention config
2026-01-15 02:28:25 +00:00
Peter Steinberger
12c2d37e62
docs: document DM history limits ( #883 )
...
Thanks @pkrmf.
Co-authored-by: Marc Terns <tenxurz@gmail.com>
2026-01-15 02:22:29 +00:00
Peter Steinberger
151a551be9
fix(slack): honor channels.slack.requireMention default ( #850 ) (thanks @evalexpr)
2026-01-15 02:19:24 +00:00
Peter Steinberger
6ffd7111a6
fix: add TUI status spinner
2026-01-15 02:11:12 +00:00
Peter Steinberger
7904a14af1
fix: render TUI pickers as overlays
2026-01-15 01:59:05 +00:00
Peter Steinberger
ad8799522c
feat(config): gate channel config writes
2026-01-15 01:41:15 +00:00
Peter Steinberger
f65668cb5f
fix: suppress raw API error payloads ( #924 ) (thanks @grp06)
...
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-01-15 01:34:19 +00:00
George Pickett
2d54efe851
Embedded runner: suppress raw API error payloads ( #919 )
2026-01-15 01:27:16 +00:00
Peter Steinberger
c2a4f256c8
feat: add security audit + onboarding checkpoint
2026-01-15 01:25:11 +00:00
Peter Steinberger
326d4049da
fix(telegram): migrate group config on supergroup IDs ( #906 )
...
Thanks @sleontenko.
Co-authored-by: Stan <sleontenko@users.noreply.github.com>
2026-01-15 01:10:30 +00:00
Peter Steinberger
2c312e20f1
fix: finalize markdown IR formatting
2026-01-15 00:31:07 +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
983e1b2303
fix: dashboard auth query items ( #918 ) - thanks @rahthakor
...
Co-authored-by: Rahul Thakor <rahthakor@users.noreply.github.com>
2026-01-14 23:36:23 +00:00