{"id":"pst_01M5R4E07T9051AADJ5N06A77W","url":"https://openvibe.blog/@openvibe/patch-notes-vibe-openvibes-assistant-on-openvibe-oct-24","blog":{"id":"blg_01M362MF0EDJ7QHQTRD8A3Q981","handle":"openvibe","title":"The OpenVibe blog","url":"https://openvibe.blog/"},"title":"Patch notes: Vibe, OpenVibe's assistant, on openvibe (Oct 24)","summary":"What shipped on OpenVibe on 2026-10-24: 34 changes to OpenVibe.Chat, OpenVibe.Network, OpenVibe.Bot, OpenVibe.Live, OpenVibe.Media, OpenVibe.MediaHub and 17 more.","body_markdown":"What shipped on OpenVibe on 2026-10-24: 34 changes to OpenVibe.Chat, OpenVibe.Network, OpenVibe.Bot, OpenVibe.Live, OpenVibe.Media, OpenVibe.MediaHub and 17 more. Every line below is a commit message from the OpenVibers repositories, linked to the change itself.\n\n## Highlights\n\n- **OpenVibe.Chat:** Vibe, OpenVibe's assistant, on openvibe.chat/vibe: a ChatGPT-style app where each chat is a private room Vibe answers unasked, with a page reader tool (#139) ([`761a93f`](https://github.com/OpenVibers/OpenVibe.Chat/commit/761a93fa9d12178373b5394036051414c6b7360a))\n\n## OpenVibe.Chat\n\n[openvibe.chat](https://openvibe.chat) · [repository](https://github.com/OpenVibers/OpenVibe.Chat)\n\n- Global chat refuses and hides walls of one short piece repeated, and walls typed in the global room itself ([8][8][8]… showed on openvibe.chat's front page) (#138) ([`bd41ac6`](https://github.com/OpenVibers/OpenVibe.Chat/commit/bd41ac620a79edf8ec42ce77e4d465b68e69db47))\n- Vibe, OpenVibe's assistant, on openvibe.chat/vibe: a ChatGPT-style app where each chat is a private room Vibe answers unasked, with a page reader tool (#139) ([`761a93f`](https://github.com/OpenVibers/OpenVibe.Chat/commit/761a93fa9d12178373b5394036051414c6b7360a))\n- Add Vibe in one click: a room's or channel's AI members get OpenVibe's assistant, asked with @vibe (#140) ([`cee9aab`](https://github.com/OpenVibers/OpenVibe.Chat/commit/cee9aabf72394f71dd77dad4a2bf1577852a826b))\n- Vibe searches the open web: a web_search tool that asks OpenVibe.Actor's web agent as the person who asked (#141) ([`518138b`](https://github.com/OpenVibers/OpenVibe.Chat/commit/518138b44173f3709be1e75faab32fd4efc07964))\n- Vibe sees pictures: AI members get the pictures a message links as image parts, the composer sends pictures, and a chat can start with one (#142) ([`a227057`](https://github.com/OpenVibers/OpenVibe.Chat/commit/a227057de10c491f3f21a16baa15575472f9ca6a))\n\n## OpenVibe.Network\n\n[openvibe.network](https://openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Network)\n\n- The seasonal-themes opt-out follows the account (display preference seasonal: on|off), and /themes shows the season with its switch (#317) ([`c388b7c`](https://github.com/OpenVibers/OpenVibe.Network/commit/c388b7c5ac137ba198485dbe2a92a0b4040d8698))\n- Launcher groups: people's products first, the building blocks under For developers (#318) ([`31b136b`](https://github.com/OpenVibers/OpenVibe.Network/commit/31b136bb5914f48f237416c99beba51e4bc7abbd))\n- Chat may start and read Actor tasks for the person Vibe is talking with (web search through Actor) (#319) ([`9deeb22`](https://github.com/OpenVibers/OpenVibe.Network/commit/9deeb22cfab3778e7b3df221f8675ae7aa7b451f))\n\n## OpenVibe.Bot\n\n[openvibe.bot](https://openvibe.bot) · [repository](https://github.com/OpenVibers/OpenVibe.Bot)\n\n- A queue command decided under a turn never follows that turn's halt (control epoch checked at send), and owner takeover pauses the turn and halts the robot first, resuming with its time kept (#155) ([`8282ab4`](https://github.com/OpenVibers/OpenVibe.Bot/commit/8282ab42458e9481bc89d14ff37975fd1d17b3dc))\n- Robot commands and turn halts carry turn_epoch (milliseconds, rising across restarts), so a device can refuse a command from an ended turn (#156) ([`5041c19`](https://github.com/OpenVibers/OpenVibe.Bot/commit/5041c19634bee886fd56399c5be80ca57df7155f))\n\n## OpenVibe.Live\n\n[openvibe.live](https://openvibe.live) · [repository](https://github.com/OpenVibers/OpenVibe.Live)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#348) ([`d434b12`](https://github.com/OpenVibers/OpenVibe.Live/commit/d434b124a5d3028af08e60b81dd1c604726c231a))\n- Rewinding a live MP4 recording plays Media's playlist over the growing file (live-info dvr_hls), not a seekable copy; the file stays the fallback (#349) ([`f57ce89`](https://github.com/OpenVibers/OpenVibe.Live/commit/f57ce8932ddc202eb637ea7c20bd60ec4076e7ea))\n\n## OpenVibe.Media\n\n[openvibe.media](https://openvibe.media) · [repository](https://github.com/OpenVibers/OpenVibe.Media)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#167) ([`511bd16`](https://github.com/OpenVibers/OpenVibe.Media/commit/511bd16d9475143790b15410aa2a70ce2c3f1321))\n- A recording in progress is its own DVR: /v/:id/dvr.m3u8 names its fragments as slices of the growing file (no seekable copy needed); VOD_DVR_SNAPSHOT_MP4=0 stops the MP4 copy (#168) ([`9b03178`](https://github.com/OpenVibers/OpenVibe.Media/commit/9b03178b79aaf0a35132f4b43c47f567daf8e89d))\n\n## OpenVibe.MediaHub\n\n[openvibe.video](https://openvibe.video) · [repository](https://github.com/OpenVibers/OpenVibe.MediaHub)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#122) ([`25d78da`](https://github.com/OpenVibers/OpenVibe.MediaHub/commit/25d78da1a2ae05f6039580b5e9734f5e6d9c7f2e))\n- A recording in progress on openvibe.video plays Media's DVR playlist over the growing file (MP4, not private), not the seekable copy (#123) ([`08b7ae9`](https://github.com/OpenVibers/OpenVibe.MediaHub/commit/08b7ae9bfe2e0a0a1fe73a5d0d4bcfacb9ef1be4))\n\n## OpenRestream\n\n[openre.stream](https://openre.stream) · [repository](https://github.com/OpenVibers/OpenRestream)\n\n- openvibe-shared v4.10.0 (was v4.9.0) (#98) ([`a9ed8ae`](https://github.com/OpenVibers/OpenRestream/commit/a9ed8aea986d5cbad13f87f67226c184ef90fb04))\n- openvibe-contracts v0.212.0 (was v0.209.0) (#99) ([`0d26ed1`](https://github.com/OpenVibers/OpenRestream/commit/0d26ed11a3f9ad0c605e8eda039c7f9ea2ff8c42))\n\n## OpenVibe.Actor\n\n[openvibe.actor](https://openvibe.actor) · [repository](https://github.com/OpenVibers/OpenVibe.Actor)\n\n- The answer checker knows today's date, so a correct web answer about a recent release is not refused as 'in the future' (#107) ([`1832f3a`](https://github.com/OpenVibers/OpenVibe.Actor/commit/1832f3aeee74f569400b56dd7fc56cdf6c10aa0b))\n\n## OpenVibe.News\n\n[openvibe.news](https://openvibe.news) · [repository](https://github.com/OpenVibers/OpenVibe.News)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#88) ([`47bfc3b`](https://github.com/OpenVibers/OpenVibe.News/commit/47bfc3bedb74f493227f1a8e031a9883b9a9a924))\n\n## OpenVibe.Play\n\n[play.openvibe.network](https://play.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Play)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#33) ([`51d1120`](https://github.com/OpenVibers/OpenVibe.Play/commit/51d112049ee1206006840ee5558c509d79fdff48))\n\n## OpenVibe.Quest\n\n[openvibe.quest](https://openvibe.quest) · [repository](https://github.com/OpenVibers/OpenVibe.Quest)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#79) ([`f27ac28`](https://github.com/OpenVibers/OpenVibe.Quest/commit/f27ac28d67f4db2ae4a8ed48232648d1d4eb0be6))\n\n## OpenVibe.Rent\n\n[openvibe.rent](https://openvibe.rent) · [repository](https://github.com/OpenVibers/OpenVibe.Rent)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#90) ([`d241b39`](https://github.com/OpenVibers/OpenVibe.Rent/commit/d241b39b72533cb46616344381a288b40de6c7fb))\n\n## OpenVibe.Reviews\n\n[openvibe.reviews](https://openvibe.reviews) · [repository](https://github.com/OpenVibers/OpenVibe.Reviews)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#95) ([`37ff109`](https://github.com/OpenVibers/OpenVibe.Reviews/commit/37ff109f055bbe8bf42458e4d50d984558e06fb6))\n\n## OpenVibe.Search\n\n[search.openvibe.network](https://search.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Search)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#87) ([`5bb4060`](https://github.com/OpenVibers/OpenVibe.Search/commit/5bb40606bd5fb980740f99e05cee23dd49cec201))\n\n## OpenVibe.Services\n\n[openvibe.services](https://openvibe.services) · [repository](https://github.com/OpenVibers/OpenVibe.Services)\n\n- Services home: the building blocks by plain name, and a way to Vibe for people (#98) ([`1c9d013`](https://github.com/OpenVibers/OpenVibe.Services/commit/1c9d01394f721ce43463177405acd43630a22da6))\n\n## OpenVibe.Space\n\n[openvibe.space](https://openvibe.space) · [repository](https://github.com/OpenVibers/OpenVibe.Space)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#81) ([`c917dc3`](https://github.com/OpenVibers/OpenVibe.Space/commit/c917dc33e26a74d8807ca1ae8ff92c54c3f0feb5))\n\n## OpenVibe.Tips\n\n[openvibe.tips](https://openvibe.tips) · [repository](https://github.com/OpenVibers/OpenVibe.Tips)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#83) ([`2b4a78e`](https://github.com/OpenVibers/OpenVibe.Tips/commit/2b4a78e7379d9f97a4e8f6de2b003711dafe1541))\n\n## OpenVibe.Trade\n\n[openvibe.trade](https://openvibe.trade) · [repository](https://github.com/OpenVibers/OpenVibe.Trade)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#90) ([`34ca4c5`](https://github.com/OpenVibers/OpenVibe.Trade/commit/34ca4c57dd17f651c0a9b839ba3ceeacea8915ce))\n\n## OpenVibe.VIP\n\n[openvibe.vip](https://openvibe.vip) · [repository](https://github.com/OpenVibers/OpenVibe.VIP)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#81) ([`c15d63b`](https://github.com/OpenVibers/OpenVibe.VIP/commit/c15d63b00def5c91dd17bc9cf919d7566eddd21a))\n\n## OpenVibe.Watch\n\n[openvibe.watch](https://openvibe.watch) · [repository](https://github.com/OpenVibers/OpenVibe.Watch)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#91) ([`93b3f8c`](https://github.com/OpenVibers/OpenVibe.Watch/commit/93b3f8c0e04b806f71c5cbd6531e4c061f905795))\n\n## OpenVibe.Wiki\n\n[openvibe.wiki](https://openvibe.wiki) · [repository](https://github.com/OpenVibers/OpenVibe.Wiki)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#99) ([`ebbfdb8`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/ebbfdb8dbfb7813b834ee6c6c8abd63329318190))\n\n## OpenVibe.Work\n\n[openvibe.work](https://openvibe.work) · [repository](https://github.com/OpenVibers/OpenVibe.Work)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#72) ([`81e024c`](https://github.com/OpenVibers/OpenVibe.Work/commit/81e024cb54dffe2a0abf5a011cd29e10a94baf06))\n\n## OpenVibe.Zone\n\n[openvibe.zone](https://openvibe.zone) · [repository](https://github.com/OpenVibers/OpenVibe.Zone)\n\n- openvibe-contracts v0.212.0 (was v0.209.0) (#36) ([`894a8d3`](https://github.com/OpenVibers/OpenVibe.Zone/commit/894a8d3efd692bcc45bbb500d542e02fe1acff1d))\n\n---\n\nPatch notes are put together automatically when enough changes have shipped, or when a large feature lands. See every site's own updates page for the live list.","revision":1,"state":"published","visibility":"public","published_at":"2026-10-24T23:37:43.953Z","revised_at":"2026-10-24T23:37:43.937Z","author":{"subject":"usr_01KKT9AC60KM7CRTB3WN1Z8P56","name":"goosely","username":"goosely"},"authorship":{"mode":"imported","workflow":null,"reviewed":false,"disclosure":{"mode":"imported","short":"Imported","long":"Imported from Commit messages from the OpenVibers repositories on GitHub; originally by OpenVibers."}},"tags":["patch-notes","chat","network","bot","live","media","media-hub","openre","actor","news","play"],"categories":[],"series":{"title":"Patch notes","url":"https://openvibe.blog/@openvibe/series/patch-notes","position":null},"media":[],"citations":[],"indexability":{"indexable":true,"robots":"index, follow","reasons":[]}}