Repository navigation
🤖 docs: Rewrite the Agentic Feature Pages and Move Setup to Configuration - #883
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f46c30abf7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ## Setup | ||
|
|
||
| AI Agents in LibreChat provide a powerful way to create specialized assistants without coding knowledge while maintaining the flexibility to work with your preferred AI models and providers. | ||
| Agents are on by default. Admins choose which capabilities are offered, the step limits, and the allowed providers in the [agents endpoint configuration](/docs/configuration/librechat_yaml/object_structure/agents), and which domains Actions may reach in [Actions configuration](/docs/configuration/librechat_yaml/object_structure/actions). Instances upgraded from before v0.8.0-rc3 need the [permissions migration](/docs/configuration/access_control#migrating-from-pre-acl-versions). |
There was a problem hiding this comment.
Retarget incoming links to the relocated migration guide
Moving the migration instructions to Configuration leaves existing links pointing to the removed #migration-required-v080-rc3 anchor. In particular, content/docs/features/access_control.mdx:246 still directs users there for Docker migration commands, and content/docs/configuration/librechat_yaml/object_structure/model_specs.mdx:1226 uses it for ACL guidance. Those links now land on the Agents page without reaching the requested instructions. Update the incoming references to /docs/configuration/access_control#migrating-from-pre-acl-versions, or preserve a compatibility anchor that points readers to the relocated guide.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in f43b217. Both incoming links now point at /docs/configuration/access_control#migrating-from-pre-acl-versions (model_specs.mdx and access_control.mdx), and the Administrator Controls link in access_control.mdx goes to #promote-another-admin. The internal link checker reports no links to the removed anchor on this head.
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f43b217f6c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
f43b217 to
d056338
Compare
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
d056338 to
da6acdd
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: da6acdd697
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ## Setup | ||
|
|
||
| In the schedule editor you can: | ||
|
|
||
| - Set the **Authorization lifetime (hours)**. | ||
| - Choose **Confirm authorization** to record it; the card then shows **Authorized** and an absolute expiry time. | ||
| - Choose **Revoke authorization** to withdraw it. | ||
|
|
||
| The status reads **Authorization required** until you confirm, **Authorization expired** once the deadline passes, and **Authorization revoked** after a revoke. Changing the Agent, the schedule, or a resource binding invalidates the authorization, and you must review and confirm again. | ||
|
|
||
| Administrators configure this under [`interface.schedules`](/docs/configuration/librechat_yaml/object_structure/interface#schedules): | ||
|
|
||
| - `mcpConsent.enabled` turns the feature on. | ||
| - `mcpConsent.maxLifetimeHours` caps the authorization lifetime (1 to 8760 hours). | ||
| - `mcpConsent.resources` binds MCP resources that may be authorized. | ||
| - `mcpConsent.readOnlyPolicy` lists trusted read-only tool declarations, keyed by server and upstream tool name. | ||
| - `mcpReceiptRetry.baseMs` and `mcpReceiptRetry.maxMs` set the bounded exponential retry interval for consent receipts, with jitter. | ||
|
|
||
| Schedules can disable themselves after repeated failures, or when their Agent is deleted, its configuration is invalid, access is revoked, the account lacks sufficient balance, a required project is missing, or the effective project was deleted or is not owned by the schedule owner. Project policy is rechecked at every run so tightening `requireProject` or changing a pin also applies to existing schedules. Fix the underlying issue before enabling the schedule again. | ||
|
|
||
| An operator-level `projectId` overrides the project stored on each schedule and implies `requireProject`. Because Chat Projects are user-owned, a global pin normally works for only that project's owner; use role or user configuration overrides when different owners need different pinned destinations. | ||
|
|
||
| ## Permissions | ||
|
|
||
| `SCHEDULES: USE` controls whether a user can list and view their schedules. `SCHEDULES: CREATE` additionally gates creating, editing, enabling, running, and deleting them. Scheduled execution also rechecks the user's Agent feature permission and view access to the selected Agent at run time; losing either access disables the affected schedule. | ||
|
|
||
| See [Access Control](/docs/features/access_control) for role permissions and resource ACLs. | ||
|
|
||
| ## Deployment Safety | ||
|
|
||
| Scheduled Chats use MongoDB leases, idempotent trigger delivery, and overlap prevention so eligible replicas can coordinate durable occurrences. Multi-replica deployments must also enable Redis-backed resumable streams with `USE_REDIS_STREAMS=true`. Without shared streams, schedule writes fail closed instead of admitting work that another replica may be unable to resume or stop. | ||
|
|
||
| A scheduled Agent that can pause for Ask User or tool approval requires `USE_REDIS_STREAMS=true` for shared action state and a durable shared checkpointer for graph continuation, even in an otherwise single-process deployment. The built-in default MongoDB checkpointer satisfies this requirement; `type: memory` does not. LibreChat rejects the run before model work begins when either shared store is unavailable. | ||
|
|
||
| A deployment that truly runs one LibreChat process without Redis can opt in with: | ||
|
|
||
| ```bash filename=".env" | ||
| SCHEDULES_SINGLE_PROCESS=true | ||
| ``` | ||
|
|
||
| Do not set this in a multi-process or multi-replica deployment. The legacy experimental clustered server entrypoint does not arm the schedule engine; use LibreChat's standard server entrypoint with Redis-backed streams for horizontal scaling. | ||
|
|
||
| For an immediate deployment-wide stop, set `SCHEDULES_DISABLED=true`. This blocks automatic occurrences and **Run now** without deleting schedule definitions. See [Scheduled Chats environment variables](/docs/configuration/dotenv#scheduled-chats). | ||
|
|
||
| Use [`admissionConcurrency`, `mcpPreflightConcurrency`, and `mcpPreflightTimeoutMs`](/docs/configuration/librechat_yaml/object_structure/interface#schedules) to bound schedule admission and MCP readiness work independently from generation concurrency. | ||
| Scheduled Chats are off by default. An admin enables them, sets limits such as schedules per user and the minimum interval, and meets the Redis requirements for multi-replica deployments; see [Scheduled Chats configuration](/docs/configuration/scheduled_chats). |
There was a problem hiding this comment.
Retarget the incoming deployment-safety link
Moving the deployment requirements leaves content/docs/configuration/librechat_yaml/object_structure/interface.mdx:974 pointing to /docs/features/scheduled_chats#deployment-safety, whose anchor no longer exists. That link appears in the warning asking administrators to review the requirements before enabling unattended runs, but now lands on the user-facing guide without reaching the Redis and durable-checkpointer requirements. Update it to /docs/configuration/scheduled_chats#deployment-requirements, or preserve a compatibility anchor.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in 049c6f8. interface.mdx now points at /docs/configuration/scheduled_chats#deployment-requirements. The same commit retargets the other four links on this head that pointed at anchors this PR moved (agents#agent-capabilities in interface.mdx and web_search.mdx, mcp#mcp-server-management in redis.mdx, code_interpreter#attached-environment-tool-permissions in import_convos.mdx). Verified by @Scenario:moved-anchors-retargeted and @Scenario:agentic-internal-links-resolve on 334ba5f; the link checker reports no new broken anchors against main.
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
334ba5f to
80e912b
Compare
📦 Next.js Bundle Analysis for librechat.aiThis analysis was generated by the Next.js Bundle Analysis action. 🤖 This PR introduced no changes to the JavaScript bundle! 🙌 |
Summary
Second of five stacked PRs. The features hub (#882) is merged, so this one is based on
main.Rewrites the Agentic AI feature pages: MCP, Agents, Scheduled Chats, Skills, Agent Plugins, Subagents, Agents API, Artifacts, Code Interpreter, Conversation Pull Requests and Image Generation. Each page now explains what the feature does, what you see in the app and how it behaves, with the UI labels taken from the dev locale file, and ends with a short Setup section that links to configuration.
Setup that lived on these pages moved to Configuration: new pages for Artifacts, Pull Requests, Scheduled Chats, Agent Plugins, Access Control, Admin Panel, the Code Interpreter tool and OpenAI Image Tools, plus additions to the agents, MCP and skill sync references and the
.envreference. Every claim was checked against LibreChat dev; several were wrong (default step limit is 50, DALL-E 3 is gone, Agent Chain is deprecated, MCP timeout defaults). Old GitHub-hosted screenshots are replaced with current light and dark captures.Change Type
Testing
pnpm buildpasses on the tip of the stackChecklist
Stack
Merge from the bottom up. Each PR is based on the one before it, so its diff shows only its own changes.