Shadow
a21671ed5b
Skills: add missing dependency metadata ( #1995 )
...
Co-authored-by: jackheuberger <jackheuberger@users.noreply.github.com >
2026-01-25 20:25:08 -06:00
Shadow
c7fabb43f9
Agents: expand cron tool description ( #1988 )
...
Co-authored-by: Tomas Cupr <tomascupr@users.noreply.github.com >
2026-01-25 20:23:40 -06:00
Shadow
9c26cded75
Docs: add Vercel AI Gateway sidebar entry ( #1901 )
...
Co-authored-by: Jerilyn Zheng <jerilynzheng@users.noreply.github.com >
2026-01-25 20:22:10 -06:00
Shadow
5c231fc21f
Doctor: warn on gateway exposure ( #2016 )
...
Co-authored-by: Alex Alaniz <Alex-Alaniz@users.noreply.github.com >
2026-01-25 20:01:38 -06:00
Peter Steinberger
8f6542409a
chore: bump versions for 2026.1.25
2026-01-25 22:13:04 +00:00
Peter Steinberger
e0adf65dac
test: cover CLI chat delta event ( #1921 ) (thanks @rmorse)
2026-01-25 21:09:04 +00:00
Peter Steinberger
68824c8903
chore: start 2026.1.25 changelog
2026-01-25 20:59:03 +00:00
Peter Steinberger
885167dd58
fix: tighten security audit for loopback auth
2026-01-25 15:16:40 +00:00
Jamieson O'Reilly
6aec34bc60
fix(gateway): prevent auth bypass when behind unconfigured reverse proxy ( #1795 )
...
* fix(gateway): prevent auth bypass when behind unconfigured reverse proxy
When proxy headers (X-Forwarded-For, X-Real-IP) are present but
gateway.trustedProxies is not configured, the gateway now treats
connections as non-local. This prevents a scenario where all proxied
requests appear to come from localhost and receive automatic trust.
Previously, running behind nginx/Caddy without configuring trustedProxies
would cause isLocalClient=true for all external connections, potentially
bypassing authentication and auto-approving device pairing.
The gateway now logs a warning when this condition is detected, guiding
operators to configure trustedProxies for proper client IP detection.
Also adds documentation for reverse proxy security configuration.
* fix: harden reverse proxy auth (#1795 ) (thanks @orlyjamie)
---------
Co-authored-by: orlyjamie <orlyjamie@users.noreply.github.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 15:08:03 +00:00
Peter Steinberger
1c606fdb57
chore: start 2026.1.25 changelog
2026-01-25 14:34:16 +00:00
Peter Steinberger
d1dd8a1d69
chore: release 2026.1.24-2
2026-01-25 14:16:15 +00:00
Peter Steinberger
a22ac64c47
chore: release 2026.1.24-1
2026-01-25 14:08:20 +00:00
Peter Steinberger
71eb6d5dd0
fix(imessage): normalize messaging targets ( #1708 )
...
Co-authored-by: Aaron Ng <1653630+aaronn@users.noreply.github.com >
2026-01-25 13:43:32 +00:00
Peter Steinberger
0130ecd800
fix: paragraph-aware newline chunking ( #1726 )
...
Thanks @tyler6204
Co-authored-by: Tyler Yust <64381258+tyler6204@users.noreply.github.com >
2026-01-25 13:24:19 +00:00
Peter Steinberger
22cf2b6766
fix: config/debug UI overflow ( #1715 )
...
Thanks @saipreetham589.
Co-authored-by: SaiPreetham <saipreetham.pesu@gmail.com >
2026-01-25 13:20:59 +00:00
Andre Foeken
9bd5def32c
fix(telegram): fall back to text when voice messages forbidden ( #1725 )
...
* fix(telegram): fall back to text when voice messages forbidden
When TTS auto mode is enabled, slash commands like /status would fail
silently because sendVoice was rejected with VOICE_MESSAGES_FORBIDDEN.
The entire reply would fail without any text being sent.
This adds error handling to catch VOICE_MESSAGES_FORBIDDEN specifically
and fall back to sending the text content as a regular message instead
of failing completely.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* fix: handle telegram voice fallback errors (#1725 ) (thanks @foeken)
---------
Co-authored-by: Echo <andre.foeken@Donut.local >
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 13:18:41 +00:00
Peter Steinberger
5a21722f32
docs: expand 2026.1.24 highlights
2026-01-25 13:00:52 +00:00
Peter Steinberger
6110514606
docs: reorder 2026.1.24 changelog
2026-01-25 12:58:31 +00:00
Peter Steinberger
7a5e103a6a
fix: treat Windows platform labels as Windows for node shell ( #1760 )
...
Thanks @ymat19.
Co-authored-by: ymat19 <45934497+ymat19@users.noreply.github.com >
2026-01-25 12:57:06 +00:00
Peter Steinberger
026def686e
fix(matrix): decrypt E2EE media + size guard ( #1744 )
...
Thanks @araa47.
Co-authored-by: Akshay <araa47@users.noreply.github.com >
2026-01-25 12:53:57 +00:00
Peter Steinberger
8f3da653b0
fix: allow control ui token auth without pairing
2026-01-25 12:47:17 +00:00
David Gelberg
2fcbed2111
UI: refresh dashboard design system ( #1786 )
...
* UI: refresh dashboard design system
- Typography: swap Inter for Space Grotesk (geometric, techy)
- Colors: punchier accent red, add teal secondary, warmer darks
- Cards: better shadows, hover lift effect, increased padding
- Stats: uppercase labels, larger bold values
- Buttons: hover lift micro-interaction, glow on primary
- Status dots: glow effects and subtle pulse animation
- Callouts: gradient backgrounds for depth
- Navigation: active state accent bar indicator
- Layout: more breathing room, bolder page titles
* UI: remove nav active bar indicator
* UI: hide nav scrollbar, remove nav border
* fix: add changelog entry for dashboard refresh (#1786 ) (thanks @mousberg)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 12:29:25 +00:00
plum-dawg
c96ffa7186
feat: Add Line plugin ( #1630 )
...
* feat: add LINE plugin (#1630 ) (thanks @plum-dawg)
* feat: complete LINE plugin (#1630 ) (thanks @plum-dawg)
* chore: drop line plugin node_modules (#1630 ) (thanks @plum-dawg)
* test: mock /context report in commands test (#1630 ) (thanks @plum-dawg)
* test: limit macOS CI workers to avoid OOM (#1630 ) (thanks @plum-dawg)
* test: reduce macOS CI vitest workers (#1630 ) (thanks @plum-dawg)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 12:22:36 +00:00
Dan Guido
101d0f451f
fix(voice-call): prevent audio overlap with TTS queue ( #1713 )
...
* fix(voice-call): prevent audio overlap with TTS queue
Add a TTS queue to serialize audio playback and prevent overlapping
speech during voice calls. Previously, concurrent speak() calls could
send audio chunks simultaneously, causing garbled/choppy output.
Changes:
- Add queueTts() to MediaStreamHandler for sequential TTS playback
- Wrap playTtsViaStream() audio sending in the queue
- Clear queue on barge-in (when user starts speaking)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* fix(voice-call): use iterative queue processing to prevent heap exhaustion
The recursive processQueue() pattern accumulated stack frames, causing
JavaScript heap out of memory errors on macOS CI. Convert to while loop
for constant stack usage regardless of queue depth.
* fix: prevent voice-call TTS overlap (#1713 ) (thanks @dguido)
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 12:02:17 +00:00
Peter Steinberger
7e9aa3c275
fix(telegram): honor outbound proxy config ( #1774 , thanks @radek-paclt)
...
Co-authored-by: Radek Paclt <developer@muj-partak.cz >
2026-01-25 11:41:54 +00:00
Peter Steinberger
50f233d16d
chore: stabilize prek hooks runner selection ( #1720 ) (thanks @dguido)
2026-01-25 10:55:28 +00:00
Peter Steinberger
612a27f3dd
feat: add diagnostics flags
2026-01-25 10:40:27 +00:00
Peter Steinberger
737037129e
fix: propagate config env vars to gateway services ( #1735 ) (thanks @Seredeep)
2026-01-25 10:37:35 +00:00
Peter Steinberger
98cecc9c56
fix: harden message aborts + bluebubbles dm create ( #1751 ) (thanks @tyler6204)
2026-01-25 10:20:14 +00:00
Peter Steinberger
5f9863098b
fix: skip image understanding for vision models ( #1747 )
...
Thanks @tyler6204.
Co-authored-by: Tyler Yust <64381258+tyler6204@users.noreply.github.com >
2026-01-25 09:57:19 +00:00
Peter Steinberger
d4f895d8f2
fix: move gateway lock to temp dir
2026-01-25 09:21:46 +00:00
Peter Steinberger
653401774d
fix(telegram): honor linkPreview on fallback ( #1730 )
...
* feat: add notice directive parsing
* fix: honor telegram linkPreview config (#1700 ) (thanks @zerone0x)
2026-01-25 07:55:39 +00:00
Peter Steinberger
495616d13e
fix(ui): refine config save guardrails ( #1707 )
...
* fix: refine config save guardrails
* docs: add changelog for config save guardrails (#1707 ) (thanks @Glucksberg)
2026-01-25 05:52:32 +00:00
Peter Steinberger
bac80f0886
fix: listen on ipv6 loopback for gateway
2026-01-25 05:49:48 +00:00
Peter Steinberger
8507ea08bd
docs: expand macOS VM guide ( #1693 ) (thanks @f-trycua)
2026-01-25 05:16:41 +00:00
Peter Steinberger
5f6409a73d
fix: configurable signal startup timeout
2026-01-25 04:51:35 +00:00
Rohan Nagpal
06a7e1e8ce
Telegram: threaded conversation support ( #1597 )
...
* Telegram: isolate dm topic sessions
* Tests: cap vitest workers
* Tests: cap Vitest workers on CI macOS
* Tests: avoid timer-based pi-ai stream mock
* Tests: increase embedded runner timeout
* fix: harden telegram dm thread handling (#1597 ) (thanks @rohannagpal)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-25 04:48:51 +00:00
Peter Steinberger
9eaaadf8ee
fix: clarify control ui auth hints ( fixes #1690 )
2026-01-25 04:46:42 +00:00
Seb Slight
d4f60bf16a
TTS: gate auto audio on inbound voice notes ( #1667 )
...
Co-authored-by: Sebastian <sebslight@gmail.com >
2026-01-25 04:35:20 +00:00
Peter Steinberger
9afde64e26
fix: validate web_search freshness ( #1688 ) (thanks @JonUleis)
2026-01-25 04:23:25 +00:00
Peter Steinberger
458e731f8b
fix: newline chunking across channels
2026-01-25 04:11:36 +00:00
Peter Steinberger
58c7c61e62
fix: add duplex for fetch uploads
2026-01-25 04:05:30 +00:00
Peter Steinberger
3a35d313d9
fix: signal reactions
2026-01-25 03:24:44 +00:00
Peter Steinberger
b1a555da13
fix: skip tailscale dns probe when off
2026-01-25 02:51:20 +00:00
Peter Steinberger
c3e777e3e1
fix: keep raw config edits scoped to config view ( #1673 ) (thanks @Glucksberg)
2026-01-25 02:48:07 +00:00
Peter Steinberger
e6e71457e0
fix: honor trusted proxy client IPs (PR #1654 )
...
Thanks @ndbroadbent.
Co-authored-by: Nathan Broadbent <git@ndbroadbent.com >
2026-01-25 01:52:19 +00:00
Peter Steinberger
b9dc117309
docs: refine venice highlight
2026-01-25 01:49:53 +00:00
Peter Steinberger
fc0e303e05
feat: add edge tts fallback provider
2026-01-25 01:05:43 +00:00
Peter Steinberger
6a7a1d7085
fix: add chat stop button
...
Co-authored-by: Nathan Broadbent <ndbroadbent@users.noreply.github.com >
2026-01-25 01:00:23 +00:00
Peter Steinberger
a6c97b5a48
fix: reload TUI history after reconnect
2026-01-25 00:36:36 +00:00