Commit Graph

865 Commits

Author SHA1 Message Date
Timothy Carambat
fc9bd712fe fix rerender for loading promptReply
resolves #4938
2026-01-29 16:43:21 -08:00
Timothy Carambat
b8dd7bc97e
Support PrivateModeAI Integration (#4937)
* Support PrivateModeAI Integration

* tooltip for proxy
2026-01-29 12:01:11 -08:00
Timothy Carambat
9fa455c10a fix tooltip generic name 2026-01-29 11:15:28 -08:00
Neha Prasad
3fc2432684
fix: prevent Citations UI glitching during streaming chats (#4897)
* fix: prevent Citations UI glitching during streaming chats

* replaced random keys with stable keys

* simplify citation glitch fix

* Remove unneeded memo()

* Simplify key logic

* Replace Boolean(source) with !!source

* change cohere to behave with citations like other models

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
Co-authored-by: Marcello Fitton <macfittondev@gmail.com>
2026-01-29 10:44:34 -08:00
Sean Hatfield
49a2b8f6f3
Toggle switch component (#4890)
* replace all toggle switches with toggle component

* add variant, label, and description support for toggle component

* refactor Toggle with subcomponents and JSDoc

* use checked value from Toggle onChange callback

* replace missed inline toggles with Toggle component

* fix jsdoc to use optional props

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-28 16:58:45 -08:00
Colin Perry
fdeb7b9acf
Fix sidebar thread layer (#4881)
* fixed sidebar overlay + overflow behavior

* ran yarn lint

* fixed footer vertical reserved space

* linting

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-28 16:36:52 -08:00
Timothy Carambat
54e0cde56f
Manage Onboarding decision via DB flag (#4926)
* WIP add onboarding flag to db

* dev build

* fix onboarding telem call
2026-01-28 16:32:26 -08:00
Timothy Carambat
88459ce2d2
Thinking block persist toggle state (#4916)
* Thinking block persist toggle state

* dev build
2026-01-28 13:27:00 -08:00
Timothy Carambat
246969eede resolves #4913, remove non-const vars 2026-01-27 17:05:44 -08:00
Timothy Carambat
fe78e1c667
Refactor Ollama context window setting (#4909) 2026-01-27 10:50:40 -08:00
Timothy Carambat
cd5530de39
[Chore] Autotranslation tool using DMR (#4907)
* update translations + DMR loading

* updates to misspellings
2026-01-27 09:29:37 -08:00
Sean Hatfield
8f5929712c
New login page UI (#4862)
* wip new home page multiuser auth

* implement new login page designs for single and multiuser auth

* fix scroll overflow on mobile

* rounded custom logos

* fix up translation entry to use var

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-26 16:36:05 -08:00
Marcello Fitton
afa3073893
Refine and Standardize Username Constraints (#4828)
* Implement Unix username standard validations on username creation and updating.

* Remove leading underscore permissibility | Replace hardcoded username rules with a centralized USERNAME_REQUIREMENTS_TEXT for better maintainability.

* Add username requirements translations for invite and admin user creation | Replace hardcoded username requirements with localized strings in user modals

* Refactor username requirements localization

* Remove unneeded comment | Move Regex comment to validator fn

* Remove username validation utility function to keep validation responsibilities on the server | Allow onboarding flow multi-user mode username creation step to send pre-validated credentials to server.

* Enhance error handling in system endpoints by returning a JSON response with error details instead of a plain status for internal server errors.

* Update username requirement localization in AccountModal and UserSetup components to use centralized translation key.

* test enforcements
allow users to keep existing usernames without collision

* Normalize Translations (#4861)

* normalize translations

* add translations

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-26 16:18:11 -08:00
Marcello Fitton
39e6ccdaa3
Add keyboard shortcuts to scroll to top and bottom of chat history (#4870)
* Add keybindings to scroll to top and bottom of chat history

* fix isUserScrolling flag and set scrollToBottom to be instant instead of smoothe

* fix stream scroll

* fix default export by removing unneeded constant

* Replace file-defined `isMac` variable with global util

* extract funcitonality to hooks for clarity

* patch import

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-26 14:20:08 -08:00
j0rDy
f52e2866ac
Update common.js (#4894)
* Update common.js

Added missing translations in Dutch.

* linting

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-23 17:12:17 -08:00
Timothy Carambat
3af21aea04
Merge commit from fork 2026-01-23 16:03:16 -08:00
Timothy Carambat
b90bbc8363 add fallback key to mono model provider 2026-01-20 23:04:09 -08:00
Timothy Carambat
af998ee0a7
Docker model runner download from UI (#4884)
* Enable downloads of DMR models from UI

* add utils + dev build

* linting
2026-01-19 15:08:07 -08:00
Vladimir Vlach
b0672036f2
feat(i18n): add Czech (cs) language translation to AnythingLLM (#4874)
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-18 13:48:38 -08:00
Timothy Carambat
607b5faf74
Extract Model Table to component (#4871)
* Extract Model Table to component
Add provider icons to header rows and installed models
Light mode supported
Mapping for model name id hints to provider
Update DMR to filter chat models by ability since not available via hub API

* linting + dev

* fix incorrect import
2026-01-16 16:34:58 -08:00
Timothy Carambat
7bdcb9a757 minor DMR UI changes + dynamic tooltip for context management 2026-01-15 14:13:36 -08:00
Timothy Carambat
3169ec54cc Merge branch 'master' of github.com:Mintplex-Labs/anything-llm 2026-01-14 16:11:47 -08:00
Timothy Carambat
983ab51bb9 remove new labels on landing 2026-01-14 16:11:41 -08:00
Timothy Carambat
97abab3a67
AnythingLLM Mobile live (#4864) 2026-01-14 16:08:58 -08:00
Timothy Carambat
ff7cb17e34
Improved DMR support (#4863)
* Improve DMR support
- Autodetect models installed
- Grab all models from hub.docker to show available
- UI to handle render,search, install, and management of models
- Support functionality for chat, stream, and agentic calls

* forgot files

* fix loader circle being too large
fix tooltip width command
adjust location of docker installer open for web platform

* adjust imports
2026-01-14 15:55:26 -08:00
Sean Hatfield
34a96ad30f
Remove Workspace Creation Onboarding Page (#4823)
* remove create workspace step for onboarding

* remove unused image

* workspace creation into dedicated useEffect + use translated workspace name

* dev tag

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-13 16:03:39 -08:00
Marcello Fitton
4300639087
Refactor Managed Services in "Data Handling & Privacy" Onboarding Step to Use Their Privacy Policy URL (#4790)
* Refactor non-local LLM Provider, Vector Database, and Embedding Engine privacy information to use their policy URLs instead of descriptions

* Update LLM Provider, Embedding Engine, and Vector Database sections to include privacy policy links

* fix broken links, lint

* Update AstraDB privacy policy URL in onboarding flow

* Refactor AnythingLLM Privacy & Data page to show managed provider privacy policy URLs

* Update Mistral privacy policy URLs in onboarding flow for consistency

* Abstract privacy policies of providers into a reusable component | Refactor Privacy & Data Handling Step of onboarding flow to focus on solely rendering that step | Move provider privacy policy maps into constants.js

* Remove commented-out code for third-party provider privacy policies in Privacy and Data Handling component

* Update privacy policy descriptions for consistency by adding periods at the end of sentences in ProviderPrivacy component and constants.js

* rescope constants for providers

* extract default to external function, add loading state

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-18 15:09:34 -08:00
Marcello Fitton
6b54bc4c57
Add Eslint Config in /frontend (#4785)
* Add local ESLint configuration and disable rules to allow for errorless state

* Remove unnecessary ESLint disable comments in AuthContext and usePromptInputStorage for cleaner code.

* Update eslint-plugin-react-hooks

* Configure prettier to work with eslint

* Removed trailing commas from eslint config

* Prettier to source code

* add a v2 lint script

* put back eslint-disable comments

* fix eslinter and prettier application
always apply --fix since we --write prettier, otherwise it fails

* precaution dev build

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-16 20:14:24 -08:00
Colin Perry
a1e8763e94
fix unnecessary scrollbar in workspace general appearance settings tab (#4791)
* fixed SuggestedChatMessages width styling

* ran yarn lint

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-16 19:39:15 -08:00
Timothy Carambat
bacd279e56 hanging lint 2025-12-16 19:38:06 -08:00
Marcello Fitton
556a750071
Update Google Search Option Description To Reference Documentation For Rate Limits (#4789)
* Update Google Search description to reference documentation for rate limits

* remove

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-16 13:05:18 -08:00
Timothy Carambat
664f466e3f
4601 log model on response (#4781)
* add model tag to chatCompletion

* add modelTag `model` to async streaming
keeps default arguments for prompt token calculation where applied via explict arg

* fix HF default arg

* render all performance metrics as available for backward compatibility
add `timestamp` to both sync/async chat methods

* extract metrics string to function
2025-12-14 14:46:55 -08:00
Colin Perry
a8bdc00aba
Feat/cohere agent implementation (#4703)
* implement cohere agent support

* run yarn lint

* moderize Cohere
add supported langchain method
redo streaming since it was not working
looping of agent calls was not functioning

* change default model to real model tag
add case statement for model tag

* remove debug

* update default

* only whitelist known labels

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-12 16:25:58 -08:00
Marcello Fitton
62b45a76dc
Implement Global Error Boundary (#4765)
* Implement global error boundary

* add 404 page for generic path catching

* devbuild

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-12 15:08:12 -08:00
Marcello Fitton
7faee90ecc
Add Auth Token to Ollama Embedding Client (#4766)
* Enhance OllamaEmbedder to support authentication by adding an authorization token in headers for client initialization.

* Add optional Auth Token input for Ollama embedding options

* move info elements

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-12 14:30:22 -08:00
Marcello Fitton
8aa78c2b75
Fix Stale User Session with Proper fetch Error Handling (#4770)
* add refresh user functionality

* prettier

* add eslint disable comment for exhaustive-deps warning in AuthContext to stop nagging about navigate func

* remove unused imports and fix typo

* handle unsafe parse of undefined for in-session user deleted

* Refactor refreshUser function to handle errors and return structured response. Update AuthProvider to manage user data based on success status.

* Remove console error logging from promise catch in System model for cleaner error handling.

* change status from 404 to 400 and valid to success

* Refactor error handling in AuthProvider's refreshUser logic to remove redundant catch block and streamline user session management on failure.

* prettier

* reorder clauses - return errors

* refactor
account for all user modes
dev build

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-12 11:43:20 -08:00
Sean Hatfield
c0c3ee6cfd
Refactor frontend legacy JSON.parse with safeJsonParse (#4759)
* replace all frontend legacy JSON.parse with safeJsonParse

* default collapsed sidebar menu on failed parse

* remove extra check on conditional render

* undo singular json parse

* add guard clause and return null for `userFromStorage`

* patch domainList

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-11 16:11:38 -08:00
Timothy Carambat
25a72f7175 Revert commit 8e0186f9ac - broken auth 2025-12-11 14:22:16 -08:00
Marcello Fitton
a7da757c84
Migrate Azure OpenAI Integration To v1 API | Enable Streaming for Reasoning Models in Azure OpenAI Basic Inference Provider (#4744)
* Refactor Azure OpenAI integration to use OpenAI SDK and the v1 API | Enable streaming for Azure Open AI basic inference provider

* Add info tooltip to inform user about 'Model Type' form field

* Add 'model_type_tooltip' key to multiple language translations

* Validate AZURE_OPENAI_ENDPOINT in provider construction

* remove unused import, update error handler, rescope URL utils

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-10 18:56:55 -08:00
Marcello Fitton
8e0186f9ac
Fix stale user permissions in UI by refreshing user data on app load (#4751)
* add refresh user functionality

* prettier

* add eslint disable comment for exhaustive-deps warning in AuthContext to stop nagging about navigate func

* remove unused imports and fix typo

* handle unsafe parse of undefined for in-session user deleted

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-10 12:40:34 -08:00
Sean Hatfield
f8c6bbdd97
Refactor WorkspaceFileRow component (#4740)
* remove event listeners + useState on WorkspaceFileRow

* reduce complexity for render

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-09 16:57:58 -08:00
Timothy Carambat
ae2e3509f0 fix small typo on onboarding workspace page
fix .hash nav for mobile connection
2025-12-02 15:33:23 -08:00
Colin Perry
00e18887a8
fixed empty scroll track in citations dropdown (#4685)
* fixed empty scroll track

* use overflow-x-none instead of overflow-x-auto for citation list

* keep behaviour of x scroll, but hide scrollbar since it can be overflowing for no reason

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-02 15:29:16 -08:00
Sean Hatfield
99942159f6
Migrate to react router createBrowserRouter (#4693)
* migrate to react router createBrowserRouter

* dev build

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-02 15:26:55 -08:00
Marcello Fitton
8ffb7eb6e9
Store Chat Prompt Input Value in Local Storage (#4680)
* Add logic to save prompt input state to local storage and use as initial state on mount

* Synchronize prompt input state with parent component on mount

* lint

* Clear USER_PROMPT_INPUT_VALUE local storage value in all instances of auth clearing

* Remove USER_PROMPT_INPUT_VALUE local storage `removeItem` logic from excessive sources

* Refactor logic to cache prompt input value state by thread | abstract into a custom hook | rename localStorage key variables for clarity.

* Remove console log statement from usePromptInputStorage hook to clean up code.

* Update comments in usePromptInputStorage hook for clarity on localStorage handling

* Implement debounced localStorage updates in usePromptInputStorage hook to improve performance and prevent writing on every keystroke.

* Refactor localStorage handling in usePromptInputStorage hook to utilize safeJsonParse | Remove uneeeded comments

* Remove useEffect cleanup comment

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-02 13:45:26 -08:00
bynome
df493d5413
docs(i18n): Complete French translations (#4697)
* docs(i18n): Complete French translations

Complete all missing French translations for AnythingLLM UI

* linting

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-02 13:41:00 -08:00
Leo Wang
d7487e217d
docs(zh-TW): correct traditional Chinese translations in home section (#4702) 2025-12-02 08:51:38 -08:00
Timothy Carambat
155900eae7
dev build with new epub2 build target and remove patch work (#4694) 2025-11-26 17:36:34 -08:00
Neha Prasad
3ecf218eea
feat: Add SSL certificate bypass support for self-hosted Confluence instances (#4219)
* Added bypassSSL parameter to constructor and implemented SSL bypass logic in fetchConfluenceData method

* Updated generateChunkSource function to include bypassSSL in the encrypted payload

* Updated the request body to include bypassSSL in the JSON payload sent to the backend

* Updated form submission to include bypassSSL parameter from the checkbox

* Added bypass_ssl: "Bypass SSL Certificate Validation" translation

* passed these parameters to fetchconfluencepage function for proper resync functionality

* allow ignore of SSL cert for Confluence

* add translations

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-25 14:32:10 -08:00
方程
90e474abcb
Support Gitee AI(LLM Provider) (#3361)
* Support Gitee AI(LLM Provider)

* refactor(server): 重构 GiteeAI 模型窗口限制功能,暂时将窗口限制硬编码,计划使用外部 API 数据和缓存

* updates for Gitee AI

* use legacy lookup since gitee does not enable getting token context windows

* add more missing records

* reorder imports

---------

Co-authored-by: 方程 <fangcheng@oschina.cn>
Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-11-25 14:19:32 -08:00