From ffa479ab97ce4ce254bcd9f50b2f38721de0cf86 Mon Sep 17 00:00:00 2001 From: Danny Avila Date: Sun, 20 Sep 2026 21:35:55 -0400 Subject: [PATCH 1/2] =?UTF-8?q?=F0=9F=9A=80=20v0.8.8-rc4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 2 +- Dockerfile.multi | 2 +- README.md | 26 +++++++++++--------------- api/package.json | 2 +- bun.lock | 12 ++++++------ client/jest.config.cjs | 2 +- client/package.json | 2 +- e2e/jestSetup.js | 2 +- helm/librechat/Chart.yaml | 2 +- librechat.example.yaml | 2 +- package-lock.json | 16 ++++++++-------- package.json | 2 +- packages/api/package.json | 2 +- packages/client/package.json | 2 +- packages/data-provider/package.json | 2 +- packages/data-provider/src/config.ts | 2 +- packages/data-schemas/package.json | 2 +- 17 files changed, 39 insertions(+), 43 deletions(-) diff --git a/Dockerfile b/Dockerfile index 1206678628b..9dc166e9439 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -# v0.8.8-rc3 +# v0.8.8-rc4 # Base node image FROM node:24.16.0-alpine AS node diff --git a/Dockerfile.multi b/Dockerfile.multi index 75234fb3745..976fab71dcc 100644 --- a/Dockerfile.multi +++ b/Dockerfile.multi @@ -1,5 +1,5 @@ # Dockerfile.multi -# v0.8.8-rc3 +# v0.8.8-rc4 # Set configurable max-old-space-size with default ARG NODE_MAX_OLD_SPACE_SIZE=6144 diff --git a/README.md b/README.md index 4a6b43c6c60..9aabda45e46 100644 --- a/README.md +++ b/README.md @@ -51,21 +51,17 @@

-## 🚀 What's New in v0.8.8-rc3 - -- **Agent Management API (beta):** Create, discover, update, and delete Agents; manage Agent files and Skills; and authenticate machine clients through deployment-bound OIDC identities while preserving existing role and Agent access controls. -- **Attached workspaces (highly experimental):** Select or save a per-Agent default workspace for each managed or personal code worker, then let Agents inspect trees, read and search files, author changes, and run Bash with bounded timeouts. Personal workers support bounded self-service enrollment, readiness status, and per-Agent Git identity. -- **Background tool controls:** Optionally cancel ordinary background tools, including attached Bash, while keeping detached Subagent execution independent. -- **Code approval controls:** Choose **Ask**, **Allow**, or **Deny** for file writes and command execution where administrators permit it, including a **Full access** mode for trusted attached environments. File Search and Run Code also honor role grants. -- **Manual context compaction:** Start a summarize-only turn before the context window fills while preserving recent conversation content according to the deployment's summarization policy. -- **Context Usage:** Inspect dialogue, retained tool traffic, Agent instructions, cache, cost, and runway pressure without double-counting category subsets. -- **Unified attachments:** Upload once and let LibreChat route content to the model or extracted text, then provision File Search and Code tools only when needed. -- **Models:** Added GPT-6 Astra for the OpenAI and Agents endpoints, with Responses API routing and tool-call support. -- **Agent and chat UI:** Unified tool activity, reasoning, search, and Agent workflows; added one draggable Pinned section for chats and favorites, morphing state icons, high-contrast themes, rich-text message copying, clearer sidebar titles, and refined live phase layouts. -- **Observability:** Export correlated application logs through OpenTelemetry, configure allowlisted Langfuse trace identity and metadata, tag browser diagnostics with client build IDs, and scope Insights to authorized Agents. -- **Reliability and security:** Strengthened Agent continuation and checkpoint recovery, Redis liveness detection, DocumentDB coordination, OpenID and MCP OAuth sessions, shared-link throttling, tenant isolation, attachment bounds, and upload error handling. - -Read the [full v0.8.8-rc3 changelog](https://www.librechat.ai/changelog/v0.8.8-rc3). +## 🚀 What's New in v0.8.8-rc4 + +- **Public Agents API docs:** Serve an OpenAPI specification and interactive Swagger UI for inference, events, Agent management, and Skill management. +- **Attached workspaces (highly experimental):** Isolate workspaces by conversation, load repository instructions, and use bounded queue waits and command timeouts. +- **Trace Viewer:** Inspect model conversations as ordered steps with roles, Agent identity, tool rounds, previews, and cost. +- **Skills:** Author or import a Skill and invoke it in the same Agent run, with safer rollback for failed imports. +- **Agent activity:** Render system events as distinct turns and hold live activity to one stable row. +- **MCP reliability:** Send per-request headers without hiding tools, coordinate OAuth refresh across replicas, and preserve credentials through provider outages. +- **Performance:** Stream Markdown incrementally, virtualize model search, and reduce completed Agent message rendering work. + +Read the [full v0.8.8-rc4 changelog](https://www.librechat.ai/changelog/v0.8.8-rc4). # ✨ Features diff --git a/api/package.json b/api/package.json index 86df81eb0e6..38c80834c4d 100644 --- a/api/package.json +++ b/api/package.json @@ -1,6 +1,6 @@ { "name": "@librechat/backend", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "description": "", "scripts": { "start": "echo 'please run this from the root directory'", diff --git a/bun.lock b/bun.lock index 56f5d7c8a43..58dba1b83b3 100644 --- a/bun.lock +++ b/bun.lock @@ -39,7 +39,7 @@ }, "api": { "name": "@librechat/backend", - "version": "0.8.8-rc3", + "version": "0.8.8-rc4", "dependencies": { "@anthropic-ai/vertex-sdk": "^0.16.0", "@aws-sdk/client-bedrock-runtime": "^3.1013.0", @@ -151,7 +151,7 @@ }, "client": { "name": "@librechat/frontend", - "version": "0.8.8-rc3", + "version": "0.8.8-rc4", "dependencies": { "@ariakit/react": "^0.4.29", "@ariakit/react-components": "^0.1.2", @@ -294,7 +294,7 @@ }, "packages/api": { "name": "@librechat/api", - "version": "1.7.48", + "version": "1.7.49", "dependencies": { "@langchain/langgraph-checkpoint": "^1.1.2", "@langchain/langgraph-checkpoint-mongodb": "^1.4.0", @@ -407,7 +407,7 @@ }, "packages/client": { "name": "@librechat/client", - "version": "0.4.78", + "version": "0.4.79", "devDependencies": { "@babel/core": "^7.28.5", "@babel/preset-env": "^7.29.5", @@ -490,7 +490,7 @@ }, "packages/data-provider": { "name": "librechat-data-provider", - "version": "0.8.523", + "version": "0.8.524", "dependencies": { "axios": "^1.16.0", "dayjs": "^1.11.13", @@ -525,7 +525,7 @@ }, "packages/data-schemas": { "name": "@librechat/data-schemas", - "version": "0.0.70", + "version": "0.0.71", "dependencies": { "mdast-util-directive": "^3.0.0", "mdast-util-from-markdown": "^2.0.1", diff --git a/client/jest.config.cjs b/client/jest.config.cjs index 21a86c42557..b8adccb1875 100644 --- a/client/jest.config.cjs +++ b/client/jest.config.cjs @@ -1,4 +1,4 @@ -/** v0.8.8-rc3 */ +/** v0.8.8-rc4 */ const { maxWorkers } = require('../config/jest.workers.cjs'); module.exports = { diff --git a/client/package.json b/client/package.json index 0072b1971cf..445ead02d19 100644 --- a/client/package.json +++ b/client/package.json @@ -1,6 +1,6 @@ { "name": "@librechat/frontend", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "description": "", "type": "module", "scripts": { diff --git a/e2e/jestSetup.js b/e2e/jestSetup.js index 820c63de3b4..7084323e8e7 100644 --- a/e2e/jestSetup.js +++ b/e2e/jestSetup.js @@ -1,3 +1,3 @@ -// v0.8.8-rc3 +// v0.8.8-rc4 // See .env.test.example for an example of the '.env.test' file. require('dotenv').config({ path: './e2e/.env.test' }); diff --git a/helm/librechat/Chart.yaml b/helm/librechat/Chart.yaml index 33e033be432..38a27db1eed 100755 --- a/helm/librechat/Chart.yaml +++ b/helm/librechat/Chart.yaml @@ -23,7 +23,7 @@ version: 2.0.13 # It is recommended to use it with quotes. # renovate: image=registry.librechat.ai/danny-avila/librechat -appVersion: "v0.8.8-rc3" +appVersion: "v0.8.8-rc4" home: https://www.librechat.ai diff --git a/librechat.example.yaml b/librechat.example.yaml index 260912aa780..5603a63c890 100644 --- a/librechat.example.yaml +++ b/librechat.example.yaml @@ -2,7 +2,7 @@ # https://www.librechat.ai/docs/configuration/librechat_yaml # Configuration version (required) -version: 1.3.16 +version: 1.3.17 # Cache settings: Set to true to enable caching cache: true diff --git a/package-lock.json b/package-lock.json index 76145fb1d1f..47dfea63c27 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "LibreChat", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "LibreChat", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "license": "ISC", "workspaces": [ "api", @@ -49,7 +49,7 @@ }, "api": { "name": "@librechat/backend", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "license": "ISC", "dependencies": { "@anthropic-ai/vertex-sdk": "^0.16.0", @@ -886,7 +886,7 @@ }, "client": { "name": "@librechat/frontend", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "license": "ISC", "dependencies": { "@ariakit/react": "^0.4.29", @@ -42384,7 +42384,7 @@ }, "packages/api": { "name": "@librechat/api", - "version": "1.7.48", + "version": "1.7.49", "license": "ISC", "dependencies": { "@langchain/langgraph-checkpoint": "^1.1.2", @@ -43080,7 +43080,7 @@ }, "packages/client": { "name": "@librechat/client", - "version": "0.4.78", + "version": "0.4.79", "devDependencies": { "@babel/core": "^7.28.5", "@babel/preset-env": "^7.29.5", @@ -44222,7 +44222,7 @@ }, "packages/data-provider": { "name": "librechat-data-provider", - "version": "0.8.523", + "version": "0.8.524", "license": "ISC", "dependencies": { "axios": "^1.20.0", @@ -44832,7 +44832,7 @@ }, "packages/data-schemas": { "name": "@librechat/data-schemas", - "version": "0.0.70", + "version": "0.0.71", "license": "MIT", "dependencies": { "mdast-util-directive": "^3.0.0", diff --git a/package.json b/package.json index 3e60ccc90b2..94ffebba3df 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "LibreChat", - "version": "v0.8.8-rc3", + "version": "v0.8.8-rc4", "description": "", "packageManager": "npm@11.13.0", "scarfSettings": { diff --git a/packages/api/package.json b/packages/api/package.json index f9efdf859e1..bd68e2fbfb4 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -1,6 +1,6 @@ { "name": "@librechat/api", - "version": "1.7.48", + "version": "1.7.49", "type": "commonjs", "description": "MCP services for LibreChat", "main": "dist/index.cjs", diff --git a/packages/client/package.json b/packages/client/package.json index 11df0fbe014..4274e3da671 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@librechat/client", - "version": "0.4.78", + "version": "0.4.79", "description": "React components for LibreChat", "repository": { "type": "git", diff --git a/packages/data-provider/package.json b/packages/data-provider/package.json index 38900db746f..5db381cf7ac 100644 --- a/packages/data-provider/package.json +++ b/packages/data-provider/package.json @@ -1,6 +1,6 @@ { "name": "librechat-data-provider", - "version": "0.8.523", + "version": "0.8.524", "description": "data services for librechat apps", "main": "dist/index.js", "module": "dist/index.mjs", diff --git a/packages/data-provider/src/config.ts b/packages/data-provider/src/config.ts index 969b3305134..1131b02a66c 100644 --- a/packages/data-provider/src/config.ts +++ b/packages/data-provider/src/config.ts @@ -3929,7 +3929,7 @@ export enum Constants { */ VERSION = '__LIBRECHAT_VERSION__', /** Key for the Custom Config's version (librechat.yaml). */ - CONFIG_VERSION = '1.3.16', + CONFIG_VERSION = '1.3.17', /** Standard value for the first message's `parentMessageId` value, to indicate no parent exists. */ NO_PARENT = '00000000-0000-0000-0000-000000000000', /** Standard value to use whatever the submission prelim. `responseMessageId` is */ diff --git a/packages/data-schemas/package.json b/packages/data-schemas/package.json index 0c8e5a83ffc..dbf2967f91d 100644 --- a/packages/data-schemas/package.json +++ b/packages/data-schemas/package.json @@ -1,6 +1,6 @@ { "name": "@librechat/data-schemas", - "version": "0.0.70", + "version": "0.0.71", "description": "Mongoose schemas and models for LibreChat", "type": "module", "main": "dist/index.cjs", From 638a618913545eee7a9d65af709e0fc57d92bc78 Mon Sep 17 00:00:00 2001 From: Danny Avila Date: Tue, 22 Sep 2026 05:12:09 -0400 Subject: [PATCH 2/2] chore: bump LibreChat chart to 2.0.14 --- helm/librechat/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helm/librechat/Chart.yaml b/helm/librechat/Chart.yaml index 38a27db1eed..9874e13970e 100755 --- a/helm/librechat/Chart.yaml +++ b/helm/librechat/Chart.yaml @@ -15,7 +15,7 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 2.0.13 +version: 2.0.14 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to