Kevin Lin
ff9d069a33
feat(web): add Perplexity Sonar as alternative search provider
2026-01-18 08:08:36 +08:00
Peter Steinberger
a08438ae97
refactor(discord): centralize target parsing
...
Co-authored-by: Jonathan Rhyne <jonathan@pspdfkit.com>
2026-01-18 00:04:38 +00:00
Peter Steinberger
4c12c4fc04
feat: add channel match metadata logs
...
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
2026-01-17 23:48:45 +00:00
Peter Steinberger
794bab45ff
fix: harden memory cli manager cleanup
...
Co-authored-by: Nicholas Spisak <jsnsdirect@gmail.com>
2026-01-17 23:45:42 +00:00
Peter Steinberger
16e5fa1db9
test: cover daemon install helpers
2026-01-17 23:41:45 +00:00
Peter Steinberger
125be3e111
fix: restore wizard/doctor imports
2026-01-17 23:41:45 +00:00
Peter Steinberger
b60a53e10d
feat: enable batch indexing by default
2026-01-17 23:29:40 +00:00
Peter Steinberger
9de762faa2
refactor: unify gateway daemon install plan
2026-01-17 23:29:34 +00:00
Peter Steinberger
5aed38eebc
fix(discord): honor thread allowlists in reactions
...
Co-authored-by: Codex <codex@openai.com>
2026-01-17 23:03:51 +00:00
Peter Steinberger
e63e483c38
refactor(channels): share channel config matching
...
Co-authored-by: Codex <codex@openai.com>
2026-01-17 23:03:51 +00:00
Shadow
277e43e32c
Discord: inherit thread allowlists
2026-01-17 23:03:51 +00:00
Peter Steinberger
852aa16ca0
fix: stabilize memory sync progress
2026-01-17 23:02:03 +00:00
Peter Steinberger
82b7153ac1
fix: handle daemon install failure in wizard
2026-01-17 23:00:34 +00:00
Peter Steinberger
7d2e510087
fix: retry embedding 5xx errors
2026-01-17 22:48:50 +00:00
Peter Steinberger
9ca4c10e59
test: cover channels capabilities probes
2026-01-17 22:33:18 +00:00
Peter Steinberger
a31a79396b
feat: add OpenAI batch memory indexing
2026-01-17 22:32:04 +00:00
Peter Steinberger
9d9fff2991
fix: sessions list label fallback
...
Co-authored-by: abdaraxus <abdaraxus@users.noreply.github.com>
2026-01-17 22:22:01 +00:00
Peter Steinberger
030ed5d592
fix: skip empty memory chunks
2026-01-17 21:58:59 +00:00
Peter Steinberger
f6d359932a
fix: parallelize memory embedding indexing
2026-01-17 21:57:12 +00:00
Peter Steinberger
3200b51160
fix: format exec elevated flag first in tool summaries
2026-01-17 21:54:24 +00:00
Peter Steinberger
4b11ebb30e
fix: split long memory lines
2026-01-17 21:11:56 +00:00
Peter Steinberger
40345642fa
fix: show memory index counts in progress
2026-01-17 21:09:22 +00:00
Peter Steinberger
e932772230
fix: report memory index progress
2026-01-17 20:42:04 +00:00
Peter Steinberger
63d466fe5e
fix(telegram): expand text_link entities in inbound text
...
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 20:41:34 +00:00
Peter Steinberger
c2fada7062
fix: suppress duplicate discord slow-listener logs
2026-01-17 20:37:36 +00:00
Peter Steinberger
d9c29f5ce5
fix: add agent context to ws logs
2026-01-17 20:37:36 +00:00
Peter Steinberger
f5d5ef6857
feat: confirm memory index completion
2026-01-17 20:35:15 +00:00
Peter Steinberger
361a17415f
chore: release 2026.1.17-1
2026-01-17 20:26:24 +00:00
Peter Steinberger
fb393c3c51
feat: add progress to memory status deep
2026-01-17 20:25:19 +00:00
Peter Steinberger
e0158c5d5d
feat: add deep memory status checks
2026-01-17 20:18:36 +00:00
Peter Steinberger
be12b0771c
fix: soften windows daemon install
2026-01-17 20:12:26 +00:00
Peter Steinberger
1309fc1f48
test: expand frontmatter coverage
2026-01-17 20:12:04 +00:00
Peter Steinberger
4fdecfb845
fix: split memory embedding batches
2026-01-17 20:10:11 +00:00
Peter Steinberger
31c6f178f3
fix: preserve inline frontmatter values
2026-01-17 19:56:10 +00:00
Peter Steinberger
1e2ab8bf1e
fix: improve frontmatter parsing
2026-01-17 19:56:10 +00:00
Sebastian Slight
35a1d81518
fix: handle multi-line metadata blocks in HOOK.md frontmatter
...
The frontmatter parser was using a simple line-by-line regex that only
captured single-line key-value pairs. This meant multi-line metadata
blocks (as used by bundled hooks) were not parsed correctly.
Changes:
- Add extractMultiLineValue() to handle indented continuation lines
- Use JSON5 instead of JSON.parse() to support trailing commas
- Add comprehensive test coverage for frontmatter parsing
Fixes #1113
2026-01-17 19:56:10 +00:00
Peter Steinberger
1c4297d8b5
test: update memory cli mocks for vector probe
2026-01-17 19:49:41 +00:00
Peter Steinberger
e3638a9a9e
fix: probe memory vector availability
2026-01-17 19:46:34 +00:00
Peter Steinberger
2e231d09ec
Infra: update MiniMax usage endpoint
2026-01-17 19:45:48 +00:00
Peter Steinberger
727c07bd88
feat: add slack user scopes and teams graph hints
2026-01-17 19:33:03 +00:00
Peter Steinberger
ef40ab2933
test: expand memory cli coverage
2026-01-17 19:30:46 +00:00
Peter Steinberger
a7c0887f94
feat: add per-provider scope probes to channels capabilities
2026-01-17 19:28:52 +00:00
Peter Steinberger
53218b91c6
fix: close memory cli managers
2026-01-17 19:20:55 +00:00
Peter Steinberger
2d4de656d2
test: avoid global SIGTERM emit in child-process-bridge
2026-01-17 19:20:48 +00:00
Peter Steinberger
a828e60067
feat: add channels capabilities command
2026-01-17 19:06:07 +00:00
Peter Steinberger
96df70fccf
fix: add nested agent log context
2026-01-17 18:59:59 +00:00
Peter Steinberger
0e49dca53c
feat: add experimental session memory source
2026-01-17 18:53:52 +00:00
Peter Steinberger
8ec4af4641
fix(status): show 2 usage windows in /status ( #1101 )
...
Thanks @rhjoh.
Co-authored-by: Rhys Johnston <rhys.johnston00@gmail.com>
2026-01-17 18:46:41 +00:00
Peter Steinberger
2f6d9417bd
test(memory): await watch sync completion
2026-01-17 18:45:42 +00:00
Peter Steinberger
534a012a4e
style: apply oxfmt
2026-01-17 18:32:23 +00:00
Peter Steinberger
7a3fa9ce03
feat: show update availability in status
2026-01-17 18:23:27 +00:00
Peter Steinberger
8a67d29748
fix: improve WSL2 systemd daemon hints
2026-01-17 18:19:55 +00:00
Peter Steinberger
408f4f2dac
fix: reuse shared ansi stripper
2026-01-17 18:18:14 +00:00
Peter Steinberger
3df2dc0b15
fix: normalize exec tool alias naming
2026-01-17 18:15:45 +00:00
Peter Steinberger
5304a8c2d1
fix: add timestamped tool context to logs
2026-01-17 18:14:21 +00:00
Peter Steinberger
1569d29b2d
fix: normalize telegram forwarded context ( #1090 ) (thanks @sleontenko)
2026-01-17 18:08:23 +00:00
Peter Steinberger
50c8e74230
fix(doctor): avoid ack reaction migration without config ( #1087 )
...
Thanks @YuriNachos.
Co-authored-by: Yuri Chukhlib <YuriNachos@users.noreply.github.com>
2026-01-17 18:07:06 +00:00
Peter Steinberger
1045b032a2
refactor(logging): use subsystem loggers for discord/ws
2026-01-17 18:03:40 +00:00
Peter Steinberger
5a08471dcd
feat: add sqlite-vec memory search acceleration
2026-01-17 18:02:34 +00:00
Peter Steinberger
252dfbcd40
fix: include context in elevated exec denial
2026-01-17 17:55:11 +00:00
Artus KG
5599e4cf35
test: make session update timestamp UTC
2026-01-17 17:45:14 +00:00
Peter Steinberger
7876679c5d
style: apply oxfmt
2026-01-17 17:44:54 +00:00
Peter Steinberger
755c847d9a
fix: soften discord interaction logging
2026-01-17 17:42:46 +00:00
Peter Steinberger
80a8639940
refactor: centralize telegram send param parsing
2026-01-17 17:36:37 +00:00
Peter Steinberger
6cb5704291
Merge pull request #1085 from dan-dr/chore/kimi-code-provider
...
Add Kimi Code provider onboarding
2026-01-17 17:36:30 +00:00
Peter Steinberger
4a987c836d
fix: add Kimi Code docs + defaults ( #1085 ) (thanks @dan-dr)
2026-01-17 17:35:40 +00:00
Peter Steinberger
af29c6a980
fix: allow media-only telegram voice sends ( #1099 ) (thanks @mukhtharcm)
2026-01-17 17:33:08 +00:00
Muhammed Mukhthar CM
f2a0e8e5bb
feat(telegram): support sending audio as native voice notes via asVoice param in message tool
2026-01-17 17:32:50 +00:00
ddyo
e93a1d8138
feat: add kimi code provider onboarding
2026-01-17 17:25:07 +00:00
Peter Steinberger
eecb340f64
style: format update-cli
2026-01-17 12:51:08 +00:00
Peter Steinberger
49c35c752c
fix: stamp build commit metadata
2026-01-17 12:30:11 +00:00
Peter Steinberger
25d8043b9d
feat: add gateway update check on start
2026-01-17 12:07:17 +00:00
Peter Steinberger
a9f21b3d3a
feat: add update channel support
2026-01-17 11:40:05 +00:00
Peter Steinberger
6b784a9771
style: oxfmt
2026-01-17 10:26:08 +00:00
Peter Steinberger
f8e673cdbc
fix: block invalid config startup
...
Co-authored-by: Muhammed Mukhthar CM <mukhtharcm@gmail.com>
2026-01-17 10:25:24 +00:00
Peter Steinberger
69ba2765de
refactor(security): harden CommandAuthorized plumbing
2026-01-17 10:19:34 +00:00
Peter Steinberger
31e8ecca10
fix: format verbose tool output by channel
2026-01-17 10:17:57 +00:00
Peter Steinberger
4ca38286d8
chore: fix lint/format and update changelog
...
Co-authored-by: ItzR3NO <ItzR3NO@users.noreply.github.com>
2026-01-17 10:16:35 +00:00
Peter Steinberger
fbf1c3ca3c
test: cover plugin enable/disable semantics
2026-01-17 10:16:35 +00:00
Peter Steinberger
1a4313c2aa
fix: avoid crash on memory embeddings errors ( #1004 )
2026-01-17 09:45:53 +00:00
Peter Steinberger
a6deb0d9d5
feat: bundle provider auth plugins
...
Co-authored-by: ItzR3NO <ItzR3NO@users.noreply.github.com>
2026-01-17 09:38:53 +00:00
Peter Steinberger
b6ea5895b6
fix: gate image tool and deepgram audio payload
2026-01-17 09:34:40 +00:00
Peter Steinberger
d66bc65ca6
refactor: unify media provider options
2026-01-17 09:28:05 +00:00
Peter Steinberger
89f85ddeab
fix: normalize deepgram audio upload bytes
2026-01-17 09:19:27 +00:00
Peter Steinberger
bbb71c9198
refactor: prune legacy group targets
2026-01-17 09:01:47 +00:00
Peter Steinberger
ae6792522d
feat: add deepgram audio options
2026-01-17 08:53:42 +00:00
Peter Steinberger
e637bbdfb5
feat: add Deepgram audio transcription
...
Co-authored-by: Safzan Pirani <safzanpirani@users.noreply.github.com>
2026-01-17 08:53:42 +00:00
Peter Steinberger
1002c74d9c
refactor: share inbound envelope label helper
2026-01-17 08:51:31 +00:00
Peter Steinberger
13b931c006
refactor: prune legacy group prefixes
2026-01-17 08:47:25 +00:00
Peter Steinberger
ab49fe0e92
fix: tidy iMessage/Signal sender envelopes ( #1080 ) - thanks @tyler6204
...
Co-authored-by: Tyler Yust <TYTYYUST@YAHOO.COM>
2026-01-17 08:29:54 +00:00
Tyler Yust
d0bc08a934
fix: reduce redundant envelope formatting for iMessage and Signal
2026-01-17 08:29:54 +00:00
Tyler Yust
64d21f5ea8
fix: improve message handling by logging sender issues
2026-01-17 08:29:54 +00:00
Peter Steinberger
56f3a2de25
fix(security): default-deny command execution
2026-01-17 08:28:09 +00:00
Peter Steinberger
d8b463d0b3
fix: cap pending process output
2026-01-17 08:26:12 +00:00
Peter Steinberger
837eea4ebd
fix: refresh TUI session info after runs
2026-01-17 08:22:32 +00:00
Peter Steinberger
55622bac06
Merge pull request #1079 from d-ploutarchos/fix/tui-token-refresh
...
TUI: refresh token counts after agent runs complete
2026-01-17 08:17:03 +00:00
Peter Steinberger
f172ccfcf6
fix: remove stray skills watcher bracket
2026-01-17 08:15:21 +00:00
Peter Steinberger
a2a6893566
fix: allow skills watcher ignore list
2026-01-17 08:12:57 +00:00
Peter Steinberger
616ee3075c
fix: repair skills watcher ignored typing
2026-01-17 08:12:00 +00:00
Peter Steinberger
c5239f6a8e
fix: stabilize pty tests and media kind
2026-01-17 08:10:44 +00:00
Peter Steinberger
cccd7c7b8e
test: stabilize windows pty expectations
2026-01-17 08:07:31 +00:00
Peter Steinberger
8f1132e8ec
fix: share skills watcher ignores
2026-01-17 08:07:06 +00:00
Peter Steinberger
e6477363e9
refactor: normalize channel capabilities typing
2026-01-17 08:06:35 +00:00
Peter Steinberger
1a4fc8dea6
fix: guard memory sync errors
2026-01-17 08:04:48 +00:00
Peter Steinberger
a3daf3d115
style: oxfmt
2026-01-17 08:01:46 +00:00
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
7cebe7a506
style: run oxfmt
2026-01-17 08:00:05 +00:00
Peter Steinberger
5986175268
fix: restore CI lint/build
2026-01-17 08:00:05 +00:00
Peter Steinberger
7630c6dccb
Merge pull request #1074 from roshanasingh4/fix/1056-ignore-heavy-watch-paths
...
Fix #1056 : prevent macOS FD exhaustion by ignoring node_modules in skills watcher
2026-01-17 07:56:54 +00:00
Peter Steinberger
d63cc1e8a7
fix: allow telegram prefixes/topics for inline buttons ( #1072 ) — thanks @danielz1z
...
Co-authored-by: danielz1z <danielz1z@users.noreply.github.com>
2026-01-17 07:49:57 +00:00
danielz1z
80bb6b712c
fix: handle telegram: prefix in resolveTelegramTargetChatType
...
When using inlineButtons="dm" or "group" scope, the validation check
resolveTelegramTargetChatType() failed for numeric chat IDs because
normalizeTelegramMessagingTarget() adds a "telegram:" prefix during
target resolution.
For example, target "5232990709" becomes "telegram:5232990709" after
normalization, but the regex /^-?\d+$/ expects a pure numeric string.
The fix strips the telegram: prefix before checking the numeric pattern.
Adds tests for resolveTelegramTargetChatType with various input formats.
2026-01-17 07:47:14 +00:00
Peter Steinberger
410b8f223e
fix: keep extension relay list current ( #1073 )
...
Thanks @roshanasingh4.
Co-authored-by: Roshan Singh <88576930+roshanasingh4@users.noreply.github.com>
2026-01-17 07:43:31 +00:00
Roshan Singh
693f152895
Fix #1035 : refresh extension tab metadata
...
Handle Target.targetInfoChanged in extension relay so /json/list reflects updated title/url after navigation. Adds regression coverage.
2026-01-17 07:43:09 +00:00
Peter Steinberger
78a4441ac2
test: stabilize bash send-keys submit
2026-01-17 07:41:24 +00:00
Peter Steinberger
c92265a51b
refactor: canonicalize gateway session store keys
2026-01-17 07:41:24 +00:00
Peter Steinberger
d5fdda8e28
refactor: prune room legacy
2026-01-17 07:41:24 +00:00
Dimitrios Ploutarchos
cddf198321
TUI: refresh token counts after agent runs complete. Closes #1078
2026-01-17 07:40:59 +00:00
Peter Steinberger
6d969fe58e
refactor: normalize media attachment selection
2026-01-17 07:38:11 +00:00
Peter Steinberger
68c7d577a4
chore: drop target format helper
2026-01-17 07:36:13 +00:00
Peter Steinberger
1ea8917e2b
refactor: trim resolver exports
2026-01-17 07:36:09 +00:00
Peter Steinberger
07c93dfd30
refactor: streamline target resolver helpers
2026-01-17 07:34:26 +00:00
Peter Steinberger
cf0ea6c756
refactor: unify target resolver metadata
2026-01-17 07:34:26 +00:00
Peter Steinberger
8c9e32c4a3
refactor: share sessions list row type
...
Co-authored-by: Adam Holt <mail@adamholt.co.nz>
2026-01-17 07:34:21 +00:00
Peter Steinberger
34d59d7913
refactor: rename hooks docs and add tests
2026-01-17 07:32:54 +00:00
Peter Steinberger
0c0d9e1d22
Merge pull request #1071 from danielz1z/fix/capabilities-object-format
...
fix: handle object-format capabilities in normalizeCapabilities
2026-01-17 07:31:52 +00:00
Peter Steinberger
2ee45d50a4
refactor: tighten media diagnostics
2026-01-17 07:27:38 +00:00
Peter Steinberger
0c0e1e4226
refactor: extend media understanding
2026-01-17 07:17:13 +00:00
Peter Steinberger
86a46874da
fix: preserve discord chunk whitespace
2026-01-17 07:11:21 +00:00
Peter Steinberger
3a6ee5ee00
feat: unify hooks installs and webhooks
2026-01-17 07:08:04 +00:00
Peter Steinberger
5dc87a2ed4
fix: respond to PTY cursor queries
2026-01-17 07:05:24 +00:00
Peter Steinberger
a85ddf258c
fix: expose deliveryContext in sessions_list
...
Co-authored-by: Adam Holt <mail@adamholt.co.nz>
2026-01-17 06:54:31 +00:00
Peter Steinberger
1f3a09b43b
fix: persist deliveryContext on last-route updates
...
Co-authored-by: Adam Holt <mail@adamholt.co.nz>
2026-01-17 06:54:31 +00:00
Peter Steinberger
7b31b280f8
refactor: reuse agent outbound target resolution
...
Co-authored-by: Adam Holt <mail@adamholt.co.nz>
2026-01-17 06:54:31 +00:00
Peter Steinberger
6a3ed5c850
fix(security): gate slash/control commands
2026-01-17 06:49:34 +00:00
Peter Steinberger
37a2eee837
refactor: drop legacy session store keys
2026-01-17 06:48:44 +00:00
Peter Steinberger
353d778988
refactor: centralize target normalization
2026-01-17 06:45:11 +00:00
Peter Steinberger
5a1ff5b9e7
refactor: tune media understanding
2026-01-17 06:44:19 +00:00
Peter Steinberger
3dc4a96330
feat: add process submit helper
2026-01-17 06:38:56 +00:00
Peter Steinberger
65a8a93854
fix: normalize delivery routing context
...
Co-authored-by: adam91holt <adam91holt@users.noreply.github.com>
2026-01-17 06:38:33 +00:00
Peter Steinberger
eb8a0510e0
refactor: unify queue drop handling
2026-01-17 06:38:33 +00:00
Peter Steinberger
a4178e4062
fix: stabilize pty send-keys tests
2026-01-17 06:32:24 +00:00
Roshan Singh
e7953d8164
Fix #1056 : ignore heavy paths in skills watcher
...
On macOS, watching deep dependency trees can exhaust file descriptors and lead to spawn EBADF failures. The skills watcher only needs to observe skill changes, so ignore dotfiles, node_modules, and dist by default. Adds regression coverage.
2026-01-17 06:26:27 +00:00
Peter Steinberger
5ebfc0738f
feat: add session slug generator
2026-01-17 06:23:26 +00:00
Peter Steinberger
bd32cc40e6
feat: add keypad key mappings
2026-01-17 06:22:05 +00:00
Peter Steinberger
b31d8d3b10
feat: add tmux-style process key helpers
2026-01-17 06:12:56 +00:00
Peter Steinberger
331141ad77
refactor: centralize message target resolution
...
Co-authored-by: Thinh Dinh <tobalsan@users.noreply.github.com>
2026-01-17 06:04:49 +00:00
Peter Steinberger
c7ae5100fa
refactor: share queue helpers
...
Co-authored-by: adam91holt <adam91holt@users.noreply.github.com>
2026-01-17 06:02:27 +00:00
Peter Steinberger
285ed8bac3
fix: sync delivery routing context
...
Co-authored-by: adam91holt <adam91holt@users.noreply.github.com>
2026-01-17 06:02:27 +00:00
Peter Steinberger
e59d8c5436
style: oxfmt format
2026-01-17 05:48:56 +00:00
Peter Steinberger
8b42902cee
refactor: drop legacy room chatType
2026-01-17 05:46:40 +00:00