{"id":"pst_01M4Z5SVHGCE97GEXQ8NM478TV","url":"https://openvibe.blog/@openvibe/patch-notes-86-changes-across-38-sites","blog":{"id":"blg_01M362MF0EDJ7QHQTRD8A3Q981","handle":"openvibe","title":"The OpenVibe blog","url":"https://openvibe.blog/"},"title":"Patch notes: 86 changes across 38 sites","summary":"What shipped on OpenVibe on 2026-10-15: 86 changes to OpenVibe.AI, OpenVibe.Network, OpenVibe.Host, OpenVibe.Actor, OpenVibe.Bot, OpenVibe.Codes and 32 more.","body_markdown":"What shipped on OpenVibe on 2026-10-15: 86 changes to OpenVibe.AI, OpenVibe.Network, OpenVibe.Host, OpenVibe.Actor, OpenVibe.Bot, OpenVibe.Codes and 32 more. Every line below is a commit message from the OpenVibers repositories, linked to the change itself.\n\n## Highlights\n\n- **OpenVibe.Sources:** Sources: OVHcloud's VPS catalog (ovhcloud-vps), with api selectors, where patterns and max_bytes (contracts 0.180.0) (#51) ([`9314938`](https://github.com/OpenVibers/OpenVibe.Sources/commit/931493873f7fd5e695198a0aa10a3e8a09398e2c))\n\n## OpenVibe.AI\n\n[ai.openvibe.services](https://ai.openvibe.services) · [repository](https://github.com/OpenVibers/OpenVibe.AI)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#69) ([`59a17bb`](https://github.com/OpenVibers/OpenVibe.AI/commit/59a17bb4816cfae8b23bc41954768c729577ffb5))\n- AI: an OpenAI-compatible endpoint — POST /v1/chat/completions with tools, metered as runs of ai.complete (#70) ([`24f0dfe`](https://github.com/OpenVibers/OpenVibe.AI/commit/24f0dfee28c444f7a51e57fd13b17ce3bbfe9320))\n- AI: the public vhost proxies /v1/chat/completions (POST, unbuffered) and /v1/models (GET) (#71) ([`55784d5`](https://github.com/OpenVibers/OpenVibe.AI/commit/55784d52e1e1e801b648dbdc24963bac388961ae))\n- AI: the pool offers complete from OpenAI-format providers that declare chat, and /v1 answers 503 (not 502) when no upstream can (#72) ([`6a0aa32`](https://github.com/OpenVibers/OpenVibe.AI/commit/6a0aa32ab643ca133a2e5181236659a2ef3feaf1))\n- openvibe-shared v4.1.8 (was v4.1.7) (#73) ([`10006c7`](https://github.com/OpenVibers/OpenVibe.AI/commit/10006c75fe25add522f01c0fc89fc71afb95873c))\n- AI: an app names its project's own provider on /v1/chat/completions (x_openvibe.provider, an ADR-056 secret revealed per run) (#74) ([`c8b1400`](https://github.com/OpenVibers/OpenVibe.AI/commit/c8b1400e7993eac3648ea1aba71b1792dea75423))\n\n## OpenVibe.Network\n\n[openvibe.network](https://openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Network)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#196) ([`54f6b07`](https://github.com/OpenVibers/OpenVibe.Network/commit/54f6b07fe181b7357c1a61a8810470bf0ba42362))\n- Network: project secrets — admins write a value once, services sign with it or receive it for a granted origin, nobody reads it back (ADR-056) (#197) ([`9aeac0a`](https://github.com/OpenVibers/OpenVibe.Network/commit/9aeac0abb21ac48bfbe478546f40183e5bc8ba95))\n- Network: Watch may use project secrets (network.secret.use default grant) (#198) ([`4c61779`](https://github.com/OpenVibers/OpenVibe.Network/commit/4c61779b64cd0a240a74cb889148a694cecb085e))\n- STATUS.json current: the pinned contracts, sdk and shared versions; updated 2026-10-15 (#199) ([`c16bc52`](https://github.com/OpenVibers/OpenVibe.Network/commit/c16bc522cc434342101742c293c4fef02e527c37))\n- openvibe-shared v4.1.8 (was v4.1.7) (#200) ([`84fd736`](https://github.com/OpenVibers/OpenVibe.Network/commit/84fd7364c8d72ae5395abcc32f8dad88a735619b))\n- Network: AI may use project secrets (network.secret.use) for an app's own provider key (#201) ([`4f7fba1`](https://github.com/OpenVibers/OpenVibe.Network/commit/4f7fba106536a786b4e5b80c359c7f56495d5865))\n\n## OpenVibe.Host\n\n[openvibe.host](https://openvibe.host) · [repository](https://github.com/OpenVibers/OpenVibe.Host)\n\n- STATUS.json current: the pinned contracts, sdk and shared versions; updated 2026-10-15 (#94) ([`fb76284`](https://github.com/OpenVibers/OpenVibe.Host/commit/fb762849ed4b191f3d8ca7eaba8fa01e4b1a5a18))\n- openvibe-shared v4.1.5 (was v4.1.3) (#95) ([`6f727ca`](https://github.com/OpenVibers/OpenVibe.Host/commit/6f727ca0d407484080dcacf2438857617e2b94e0))\n- openvibe-shared v4.1.7 (was v4.1.5) (#96) ([`4b28c6e`](https://github.com/OpenVibers/OpenVibe.Host/commit/4b28c6e1735b4314c694f6e5a745b16fc2b4df27))\n- Host: OVHcloud VPS plans from Sources (unmetered at their port speed), a third provider (#97) ([`c243e60`](https://github.com/OpenVibers/OpenVibe.Host/commit/c243e601327a43b4894ac30e3a2927d51abd089c))\n- openvibe-shared v4.1.8 (was v4.1.7) (#98) ([`71aa755`](https://github.com/OpenVibers/OpenVibe.Host/commit/71aa7559302da5949716604bfb303b7f5e5e9c71))\n\n## OpenVibe.Actor\n\n[openvibe.actor](https://openvibe.actor) · [repository](https://github.com/OpenVibers/OpenVibe.Actor)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#70) ([`995f1d6`](https://github.com/OpenVibers/OpenVibe.Actor/commit/995f1d6f2078e52769643d464ad1aba5668e7877))\n- Actor: a task's webhook can be signed with the project's own secret (secret_ref; Network signs, Actor never holds it) (#71) ([`0fc07c4`](https://github.com/OpenVibers/OpenVibe.Actor/commit/0fc07c48a48730c70b039d0f1d252f49aabf467b))\n- STATUS.json current: the pinned contracts, sdk and shared versions; updated 2026-10-15 (#72) ([`9557bd8`](https://github.com/OpenVibers/OpenVibe.Actor/commit/9557bd8bfa2a3cdcbfdc41de7d0d85d258db85eb))\n- openvibe-shared v4.1.8 (was v4.1.7) (#73) ([`75667d0`](https://github.com/OpenVibers/OpenVibe.Actor/commit/75667d0a78239f3ca146f5b93410cc913b434840))\n\n## OpenVibe.Bot\n\n[openvibe.bot](https://openvibe.bot) · [repository](https://github.com/OpenVibers/OpenVibe.Bot)\n\n- Bot: the front page lists every robot Bot has a profile for (ROS 2, LOOI and a phone joined) (#110) ([`288f8c6`](https://github.com/OpenVibers/OpenVibe.Bot/commit/288f8c652047e3fada74b93b8c2e4f1eb39c4d19))\n- openvibe-shared v4.1.7 (was v4.1.5) (#111) ([`4985842`](https://github.com/OpenVibers/OpenVibe.Bot/commit/4985842836ccad9da562c2194b31b0ef6eb9efea))\n- Bot: a machine revoked on OpenVibe.Network stops at once (network.node.revoked revokes its devices and closes the socket) (#112) ([`9c6bee0`](https://github.com/OpenVibers/OpenVibe.Bot/commit/9c6bee09d39b4844e63d3c6c5d46f8b1abcedcdc))\n- openvibe-shared v4.1.8 (was v4.1.7) (#113) ([`811d448`](https://github.com/OpenVibers/OpenVibe.Bot/commit/811d44824645a6df096ba635dd244010dc67b2de))\n\n## OpenVibe.Codes\n\n[openvibe.codes](https://openvibe.codes) · [repository](https://github.com/OpenVibers/OpenVibe.Codes)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#69) ([`e6d83d1`](https://github.com/OpenVibers/OpenVibe.Codes/commit/e6d83d15e63812ce955d088cb6972ff0a73dbc3c))\n- Codes: an OpenVibe.AI agent runs the harness loop on AI's OpenAI-compatible endpoint with the app's Network token (#70) ([`0307a4c`](https://github.com/OpenVibers/OpenVibe.Codes/commit/0307a4c07d86942bcfb577a256cf279eacb0f230))\n- openvibe-shared v4.1.8 (was v4.1.7) (#71) ([`20c2ebe`](https://github.com/OpenVibers/OpenVibe.Codes/commit/20c2ebea4ccaa9cbd44ae1d1678ba9318a7d24f1))\n- Codes: the OpenVibe.AI agent names the project's own provider (OPENVIBE_AI_SECRET → x_openvibe.provider) (#72) ([`08359ed`](https://github.com/OpenVibers/OpenVibe.Codes/commit/08359ed28b08001369fd4906f5cb843eec724022))\n\n## OpenVibe.Play\n\n[play.openvibe.network](https://play.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Play)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#4) ([`4ff7055`](https://github.com/OpenVibers/OpenVibe.Play/commit/4ff7055acc6ba31a7f20e6c30d009cb4f5a067dc))\n- Play: the README has the standard sections (purpose, owns, depends on, capabilities, acceptance, security, deploy) (#5) ([`b40ddf0`](https://github.com/OpenVibers/OpenVibe.Play/commit/b40ddf00f8c75b47d6acce89e9f394f522fc1cf7))\n- openvibe-shared v4.1.8 (was v4.1.7) (#6) ([`4f65624`](https://github.com/OpenVibers/OpenVibe.Play/commit/4f656242355ecdd129b642b2ac42aae5c85598b7))\n\n## OpenVibe.Billing\n\n[billing.openvibe.network](https://billing.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Billing)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#55) ([`1361425`](https://github.com/OpenVibers/OpenVibe.Billing/commit/13614251bcdb3212cf16eb34164b6b65b3875b7b))\n- openvibe-shared v4.1.8 (was v4.1.7) (#56) ([`e31fefa`](https://github.com/OpenVibers/OpenVibe.Billing/commit/e31fefa194739af246ef7ff34f8170b59a76dae2))\n\n## OpenVibe.Blog\n\n[openvibe.blog](https://openvibe.blog) · [repository](https://github.com/OpenVibers/OpenVibe.Blog)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#45) ([`21cfe45`](https://github.com/OpenVibers/OpenVibe.Blog/commit/21cfe45996520d24fd172d21d45f012c6c28f45d))\n- openvibe-shared v4.1.8 (was v4.1.7) (#46) ([`14e7cc0`](https://github.com/OpenVibers/OpenVibe.Blog/commit/14e7cc020209574d7645a580f6e0024de15a5007))\n\n## OpenVibe.Chat\n\n[openvibe.chat](https://openvibe.chat) · [repository](https://github.com/OpenVibers/OpenVibe.Chat)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#90) ([`eb3e38e`](https://github.com/OpenVibers/OpenVibe.Chat/commit/eb3e38e88aa15398927e6d9e8d8c1b9602aa671c))\n- openvibe-shared v4.1.8 (was v4.1.7) (#91) ([`fdc3060`](https://github.com/OpenVibers/OpenVibe.Chat/commit/fdc30607ffe4819bf77b1d57fcac55877cf2a128))\n\n## OpenVibe.Community\n\n[openvibe.community](https://openvibe.community) · [repository](https://github.com/OpenVibers/OpenVibe.Community)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#76) ([`daf0c23`](https://github.com/OpenVibers/OpenVibe.Community/commit/daf0c23bd89838cca777cc10ac29e2f9e7e8ce34))\n- openvibe-shared v4.1.8 (was v4.1.7) (#77) ([`8539b8e`](https://github.com/OpenVibers/OpenVibe.Community/commit/8539b8e2078e0505a4acd8a4d95a43a1b01c169e))\n\n## OpenVibe.Coupons\n\n[openvibe.coupons](https://openvibe.coupons) · [repository](https://github.com/OpenVibers/OpenVibe.Coupons)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#51) ([`bc71f73`](https://github.com/OpenVibers/OpenVibe.Coupons/commit/bc71f73d9cef39f7e4d6a26928e142ead74d0d04))\n- openvibe-shared v4.1.8 (was v4.1.7) (#52) ([`c4436d5`](https://github.com/OpenVibers/OpenVibe.Coupons/commit/c4436d5ca7095558644bb2506a2a8d24232d94c3))\n\n## OpenVibe.Deals\n\n[openvibe.deals](https://openvibe.deals) · [repository](https://github.com/OpenVibers/OpenVibe.Deals)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#50) ([`51d0232`](https://github.com/OpenVibers/OpenVibe.Deals/commit/51d0232255598bc339ba9b5431130fbd30e16d98))\n- openvibe-shared v4.1.8 (was v4.1.7) (#51) ([`62e54bd`](https://github.com/OpenVibers/OpenVibe.Deals/commit/62e54bd7964f9c1a8f16301d84fdcc3fb976c449))\n\n## OpenVibe.Events\n\n[openvibe.events](https://openvibe.events) · [repository](https://github.com/OpenVibers/OpenVibe.Events)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#77) ([`0c352c0`](https://github.com/OpenVibers/OpenVibe.Events/commit/0c352c0bb73eaf0ca2706dddf1f95d278eb07dc9))\n- openvibe-shared v4.1.8 (was v4.1.7) (#78) ([`22c11a3`](https://github.com/OpenVibers/OpenVibe.Events/commit/22c11a38fee091f34baff8983343668ed09d252d))\n\n## OpenVibe.Food\n\n[openvibe.food](https://openvibe.food) · [repository](https://github.com/OpenVibers/OpenVibe.Food)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#35) ([`36b781e`](https://github.com/OpenVibers/OpenVibe.Food/commit/36b781efbc244ca2fa17094a80be3db5e3de8e19))\n- openvibe-shared v4.1.8 (was v4.1.7) (#36) ([`4dd78f2`](https://github.com/OpenVibers/OpenVibe.Food/commit/4dd78f27cb05e20bb8ee82700551cf5980ce1455))\n\n## OpenVibe.Games\n\n[openvibe.games](https://openvibe.games) · [repository](https://github.com/OpenVibers/OpenVibe.Games)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#73) ([`10b4dfb`](https://github.com/OpenVibers/OpenVibe.Games/commit/10b4dfb8e021b251e2d4ffe31e139dd6f17fccc1))\n- openvibe-shared v4.1.8 (was v4.1.7) (#74) ([`d7313c1`](https://github.com/OpenVibers/OpenVibe.Games/commit/d7313c1881bbf5f8b40761b606523f4b35ad8814))\n\n## OpenVibe.Help\n\n[openvibe.help](https://openvibe.help) · [repository](https://github.com/OpenVibers/OpenVibe.Help)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#37) ([`82097da`](https://github.com/OpenVibers/OpenVibe.Help/commit/82097da3321e48befcd0c5c94692577a832166dd))\n- openvibe-shared v4.1.8 (was v4.1.7) (#38) ([`6826faa`](https://github.com/OpenVibers/OpenVibe.Help/commit/6826faa9b19099de368c57c2ab1aa0cac8c6a5e8))\n\n## OpenVibe.Inventory\n\n[inventory.openvibe.network](https://inventory.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Inventory)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#41) ([`3b6230f`](https://github.com/OpenVibers/OpenVibe.Inventory/commit/3b6230fe8f756d37dbbdaaaf7b653c8b94b64a33))\n- openvibe-shared v4.1.8 (was v4.1.7) (#42) ([`7595953`](https://github.com/OpenVibers/OpenVibe.Inventory/commit/7595953bb9481337b20d847c8fbec43ae676ae0f))\n\n## OpenVibe.Media\n\n[openvibe.media](https://openvibe.media) · [repository](https://github.com/OpenVibers/OpenVibe.Media)\n\n- openvibe-shared v4.1.5 (was v4.1.3) (#115) ([`b6adf0c`](https://github.com/OpenVibers/OpenVibe.Media/commit/b6adf0ce9fef0e2f74acff3795defcdf919facd5))\n- openvibe-shared v4.1.7 (was v4.1.5) (#116) ([`0b13867`](https://github.com/OpenVibers/OpenVibe.Media/commit/0b138677d7641c397dd330072170b0932c0f0336))\n\n## OpenVibe.MediaHub\n\n[openvibe.video](https://openvibe.video) · [repository](https://github.com/OpenVibers/OpenVibe.MediaHub)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#45) ([`7b6dd1e`](https://github.com/OpenVibers/OpenVibe.MediaHub/commit/7b6dd1e279c2c2586764f6e01b02fc5d3a8aa347))\n- MediaHub: openvibe.download's heading is one sentence, the tagline said once (#46) ([`0faed25`](https://github.com/OpenVibers/OpenVibe.MediaHub/commit/0faed25b132eab113a19d016cabdca8733e71b11))\n\n## OpenVibe.News\n\n[openvibe.news](https://openvibe.news) · [repository](https://github.com/OpenVibers/OpenVibe.News)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#55) ([`83265b8`](https://github.com/OpenVibers/OpenVibe.News/commit/83265b8d87907dbe7d6053513721ba6bfbd05893))\n- openvibe-shared v4.1.8 (was v4.1.7) (#56) ([`49fb518`](https://github.com/OpenVibers/OpenVibe.News/commit/49fb5185b5c3d85ddc93d9152954cc7180721662))\n\n## OpenRestream\n\n[openre.stream](https://openre.stream) · [repository](https://github.com/OpenVibers/OpenRestream)\n\n- OpenRestream: the front page lines up in one column (the showcase drops its second gutter) (#73) ([`cb5b9b5`](https://github.com/OpenVibers/OpenRestream/commit/cb5b9b5ca15881076fc8aa8febef7be774c69305))\n- openvibe-shared v4.1.7 (was v4.1.5) (#72) ([`9581c0b`](https://github.com/OpenVibers/OpenRestream/commit/9581c0beb928ccc87c588619b172b41d14fe7097))\n\n## OpenVibe.Quest\n\n[openvibe.quest](https://openvibe.quest) · [repository](https://github.com/OpenVibers/OpenVibe.Quest)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#37) ([`5d33202`](https://github.com/OpenVibers/OpenVibe.Quest/commit/5d33202061aa4c3c9a453eaaac01b572cae3432b))\n- openvibe-shared v4.1.8 (was v4.1.7) (#38) ([`7ca8e89`](https://github.com/OpenVibers/OpenVibe.Quest/commit/7ca8e89b95d1aaefaf42dc9207a56dbaadbeed05))\n\n## OpenVibe.Rent\n\n[openvibe.rent](https://openvibe.rent) · [repository](https://github.com/OpenVibers/OpenVibe.Rent)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#37) ([`5b12433`](https://github.com/OpenVibers/OpenVibe.Rent/commit/5b12433308409e51d78d1d5b1e5be287cccb04f8))\n- openvibe-shared v4.1.8 (was v4.1.7) (#38) ([`2cafe82`](https://github.com/OpenVibers/OpenVibe.Rent/commit/2cafe8272585746bceff79c90872dfe1cbaedc92))\n\n## OpenVibe.Reviews\n\n[openvibe.reviews](https://openvibe.reviews) · [repository](https://github.com/OpenVibers/OpenVibe.Reviews)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#52) ([`8035c71`](https://github.com/OpenVibers/OpenVibe.Reviews/commit/8035c71c256f6bf5b0a887b2b324b42493cec4d2))\n- openvibe-shared v4.1.8 (was v4.1.7) (#53) ([`35b943a`](https://github.com/OpenVibers/OpenVibe.Reviews/commit/35b943a8eeabac30684a983bcdff22eb0d4cc25e))\n\n## OpenVibe.Services\n\n[openvibe.services](https://openvibe.services) · [repository](https://github.com/OpenVibers/OpenVibe.Services)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#64) ([`7901e6e`](https://github.com/OpenVibers/OpenVibe.Services/commit/7901e6eabc5fd3e43cb847c7c9cbe4fb3d0aad52))\n- Services: the console manages project secrets — set once, grant to a service, never shown again (ADR-056) (#65) ([`f8c8d73`](https://github.com/OpenVibers/OpenVibe.Services/commit/f8c8d73a4180c8173e32d86fe9551c094aa4e18f))\n\n## OpenVibe.Sources\n\n[sources.openvibe.network](https://sources.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Sources)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#50) ([`291a129`](https://github.com/OpenVibers/OpenVibe.Sources/commit/291a129f08afe172120cfe4fa5a827a78d7d6c1b))\n- Sources: OVHcloud's VPS catalog (ovhcloud-vps), with api selectors, where patterns and max_bytes (contracts 0.180.0) (#51) ([`9314938`](https://github.com/OpenVibers/OpenVibe.Sources/commit/931493873f7fd5e695198a0aa10a3e8a09398e2c))\n\n## OpenVibe.Trade\n\n[openvibe.trade](https://openvibe.trade) · [repository](https://github.com/OpenVibers/OpenVibe.Trade)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#52) ([`34fbfbc`](https://github.com/OpenVibers/OpenVibe.Trade/commit/34fbfbcceaf80734bab0088cf4a1fcb1a0349efa))\n- Trade: the front page shows each instrument's latest number, and the exchange column only when one is recorded (#53) ([`59e6a76`](https://github.com/OpenVibers/OpenVibe.Trade/commit/59e6a761f1daf6732bb4eb4b7147ae55a52c8054))\n\n## OpenVibe.Watch\n\n[openvibe.watch](https://openvibe.watch) · [repository](https://github.com/OpenVibers/OpenVibe.Watch)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#62) ([`72e8afd`](https://github.com/OpenVibers/OpenVibe.Watch/commit/72e8afd30000089d9ba9b2981b37133f2c3b62cc))\n- Watch: a watch can use its project's own secrets (credential revealed for its origin, webhook signed by Network) (#63) ([`3564de3`](https://github.com/OpenVibers/OpenVibe.Watch/commit/3564de35568ee178de392ec985d97aebbbc18373))\n\n## OpenVibe.Zone\n\n[openvibe.zone](https://openvibe.zone) · [repository](https://github.com/OpenVibers/OpenVibe.Zone)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#5) ([`a613a13`](https://github.com/OpenVibers/OpenVibe.Zone/commit/a613a13500b63794eb5f3ef28354740b7d8de1fc))\n- Zone: the home heading reads as one sentence (#6) ([`9803dce`](https://github.com/OpenVibers/OpenVibe.Zone/commit/9803dce4d51976da23e40336e265e94bd081b343))\n\n## OpenVibe.Live\n\n[openvibe.live](https://openvibe.live) · [repository](https://github.com/OpenVibers/OpenVibe.Live)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#125) ([`254b4ba`](https://github.com/OpenVibers/OpenVibe.Live/commit/254b4bab051a43c8e65ca2de1511920738e70392))\n\n## OpenVibe.Search\n\n[search.openvibe.network](https://search.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Search)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#54) ([`16924d0`](https://github.com/OpenVibers/OpenVibe.Search/commit/16924d0d2a08039cc762a161109c58024bc6a2e4))\n\n## OpenVibe.Space\n\n[openvibe.space](https://openvibe.space) · [repository](https://github.com/OpenVibers/OpenVibe.Space)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#48) ([`f252a63`](https://github.com/OpenVibers/OpenVibe.Space/commit/f252a631b9b814c1040f805715a68f0e8f38718c))\n\n## OpenVibe.Tips\n\n[openvibe.tips](https://openvibe.tips) · [repository](https://github.com/OpenVibers/OpenVibe.Tips)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#51) ([`b394562`](https://github.com/OpenVibers/OpenVibe.Tips/commit/b394562d5b54f3f6692053dd0cae7f03d80354fa))\n\n## OpenVibe.Tools\n\n[openvibe.tools](https://openvibe.tools) · [repository](https://github.com/OpenVibers/OpenVibe.Tools)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#58) ([`2d34ec4`](https://github.com/OpenVibers/OpenVibe.Tools/commit/2d34ec4b187d9a2715c890aec11e29f6c9da1ba7))\n\n## OpenVibe.VIP\n\n[openvibe.vip](https://openvibe.vip) · [repository](https://github.com/OpenVibers/OpenVibe.VIP)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#51) ([`5b14a85`](https://github.com/OpenVibers/OpenVibe.VIP/commit/5b14a85ad9d89b1fda5af543fc4d34d4ef643b73))\n\n## OpenVibe.Wiki\n\n[openvibe.wiki](https://openvibe.wiki) · [repository](https://github.com/OpenVibers/OpenVibe.Wiki)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#53) ([`e8acb59`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/e8acb5978d51989fce244883fb7927ef5883e6cd))\n\n## OpenVibe.Work\n\n[openvibe.work](https://openvibe.work) · [repository](https://github.com/OpenVibers/OpenVibe.Work)\n\n- openvibe-shared v4.1.7 (was v4.1.5) (#35) ([`f605362`](https://github.com/OpenVibers/OpenVibe.Work/commit/f605362f9a1b7461764e41f4befe12777459110e))\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-15T07:00:40.136Z","revised_at":"2026-10-15T07:00:40.119Z","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","ai","network","host","actor","bot","codes","play","billing","blog","chat"],"categories":[],"series":{"title":"Patch notes","url":"https://openvibe.blog/@openvibe/series/patch-notes","position":null},"media":[],"citations":[],"indexability":{"indexable":true,"robots":"index, follow","reasons":[]}}