Commit Graph

899 Commits

Author SHA1 Message Date
Marcello Fitton
456738bbda
chore: add ESLint CI workflow (#5160)
add lint CI GitHub Action
2026-03-09 14:27:08 -07:00
Timothy Carambat
4e3bcfc616
Add custom fetch to embedder for Ollama (#5180)
Refactor ollama timeout to be shared. Add custom fetch to embedder for ollama as well
2026-03-09 11:47:00 -07:00
Timothy Carambat
dc0bdf112b linting & show descriptive error for bad addtoWorkspace request body
resolves #5172
2026-03-09 11:30:53 -07:00
Ryan
179a823ab1
Fix: Azure OpenAI model key collision (#5092)
* fix: Migrate AzureOpenAI model key from OPEN_MODEL_PREF to prevent the naming collision. No effort necessary from current users.

* test: add backwards compat tests for AzureOpenAI model key migration

* patch missing env example file

* linting

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-03-05 17:12:08 -08:00
Marcello Fitton
4a4378ed99
chore: add ESLint to /server (#5126)
* add eslint config to server

* add break statements to switch case

* add support for browser globals and turn off empty catch blocks

* disable lines with useless try/catch wrappers

* format

* fix no-undef errors

* disbale lines violating no-unsafe-finally

* ignore syncStaticLists.mjs

* use proper null check for creatorId instead of unreachable nullish coalescing

* remove unneeded typescript eslint comment

* make no-unused-private-class-members a warning

* disable line for no-empty-objects

* add new lint script

* fix no-unused-vars violations

* make no-unsued-vars an error

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-03-05 16:32:45 -08:00
Timothy Carambat
1d8c488e97
Remove Google web-search Programmable SERP (#5156) 2026-03-05 14:49:32 -08:00
Timothy Carambat
ee4b208f95 native tool calling detection for novita 2026-03-05 10:19:03 -08:00
Timothy Carambat
b3944eb50e Revert "Add automatic chat mode with native tool calling support (#5140)"
- Need to support documents in agents
- Need to support images in agent mode

This reverts commit 4c69960dca.
2026-03-04 15:29:41 -08:00
Timothy Carambat
4c69960dca
Add automatic chat mode with native tool calling support (#5140)
Introduces a new automatic chat mode (now the default) that automatically invokes tools when the provider supports native tool calling. Conditionally shows/hides the @agent command based on whether native tooling is available.

    - Add supportsNativeToolCalling() to AI providers (OpenAI, Anthropic, Azure always support; others opt-in via ENV)
    - Update all locale translations with new mode descriptions
    - Enhance translator to preserve Trans component tags
    - Remove deprecated ability tags UI
2026-03-04 14:34:30 -08:00
Timothy Carambat
86431c6833
5112 or stream metrics and finish reason (#5117)
* update metric tracking for OR + fix finish_reason missing from transitive chunks

* linting + comments
closes #5113
resolves #5112
2026-03-02 18:53:29 -08:00
Timothy Carambat
e145c391e9
v1.11.1 Release tags (#5107)
bump tag
2026-03-02 09:25:06 -08:00
Timothy Carambat
1eae02e60f fix max tool call stack abort flow 2026-02-27 15:57:58 -08:00
Timothy Carambat
a6ba5a4034
Lemonade integration (#5077)
* lemonade integration

* lemonade embedder

* log

* load model

* readme updates

* update embedder privacy entry
2026-02-27 11:02:38 -08:00
Timothy Carambat
fc29461718 resolve Ollama string strict num_ctx
resolves #5081
2026-02-27 09:20:48 -08:00
Timothy Carambat
70ee112522 lint 2026-02-26 20:37:36 -08:00
Marcello Fitton
b13dd820cc
fix: resolve Gemini agent 400 error on tool call responses (#5054)
* add gtc__ prefix to tool call names in Gemini agent message formatting

* resolve Gemini agent 400 error on tool call responses

* add comments explaining geminis thought signatures

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-02-26 13:42:02 -08:00
Timothy Carambat
ac0b1d401d
Native Tool calling (#5071)
* checkpoint

* test MCP and flows

* add native tool call detection back to LMStudio

* add native tool call loops for Ollama

* Add ablity detection to DMR (regex parse)

* bedrock and generic openai with ENV flag

* deepseek native tool calling

* localAI native function

* groq support

* linting, add litellm and OR native tool calling via flag
2026-02-26 13:37:56 -08:00
Timothy Carambat
40853e4e43
1.11.0 release tag (#5014) 2026-02-18 08:47:47 -08:00
Timothy Carambat
d46c032787 Merge branch 'master' of github.com:Mintplex-Labs/anything-llm 2026-02-16 16:05:20 -08:00
Timothy Carambat
35af646a53 patch out no finish reason from https://github.com/microsoft/Foundry-Local/issues/423 2026-02-16 16:05:14 -08:00
Timothy Carambat
dba1be0600
add support for custom headers for LLM Generic OpenAI (#4999)
* add support for custom headers for LLM Generic OpenAI

* add env
2026-02-13 09:19:36 -08:00
Marcello Fitton
1ccf468158
fix: correct TPS calculation for Generic OpenAI provider with llama.cpp (#4981)
* add check for timings field on final chunk to override usage data

* refactor: extract llama.cpp timings into reusable private method

Move timings extraction into #extractTimings so it can be shared
by both streaming (handleStream) and non-streaming (getChatCompletion)
code paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* lint and cleanup

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-02-12 14:40:35 -08:00
Timothy Carambat
5fb1281891 patch out max_tokens from block output amount
resolves #3421
2026-02-12 14:20:08 -08:00
Timothy Carambat
cd6217fd6f normalize logo wordmark 2026-02-11 08:53:44 -08:00
Timothy Carambat
1c91d369c3
set embedder output dimensions for LocalAI and Gemini (gemini-embedding-001) (#4980) 2026-02-10 08:28:34 -08:00
Marcello Fitton
1f93753058
chore: bump ollama SDK from 0.5.10 to 0.6.3 (#4977)
upgrade ollama in server to latest (0.6.3)
2026-02-09 15:34:31 -08:00
Marcello Fitton
0da728fc50
refactor: Migrate system preferences to field-based endpoint and remove deprecated endpoint (#4958)
* Migrate all existing deprecated system preferences endpoint services to new service by field | delete old endpoint and service

* format

* destructure settings from response

* nitpick

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-02-09 12:48:48 -08:00
Timothy Carambat
bb77326659 linting + tolerate folder deletion for bad ParsedFile inserts 2026-02-08 14:35:50 -08:00
Timothy Carambat
152ac93e27 remove deprecated value for Google embedding 2026-02-08 14:05:34 -08:00
Timothy Carambat
fef5bf06ec
add provider field to chats (#4959) 2026-02-02 20:11:18 -08:00
Sean Hatfield
866e9efbf8
Fix agent workspace settings loading forever (#4956)
remove .brief from SystemSettings.agent_sql_connections
2026-02-02 12:26:53 -08:00
Timothy Carambat
2c513ae396
Web push notifications (#4942)
* WIP push notifications

* testing push

* cleanup for web-push bootstrapping
2026-02-02 10:56:58 -08:00
Timothy Carambat
97b140b4b4
Update LMStudio LLM & Embedder for API token (#4948)
- Updates Option panels to be consistent for other providers
adds API key to all LMStudio API calls
2026-01-30 11:13:32 -08:00
Timothy Carambat
0032c4da22
SambaNova Integration (#4943)
* SambaNova Integration

* lint
2026-01-29 18:48:22 -08:00
Marcello Fitton
3dae8db7ae
feat: Add ability to edit existing SQL agent connections (#4848)
* Add the ability to edit existing SQL connections

* Enhance SQL connection management by adding connections prop to DBConnection and SQLConnectionModal components for improved duplicate detection and handling.

* format

* fix: prevent input defocus in SQL connection edit modal

Fixed an issue where typing in input fields would cause the field to lose
focus during editing. The useEffect dependency array was using the entire
existingConnection object, which could change reference on parent re-renders,
triggering unnecessary re-fetches and unmounting form inputs.

Changed the dependency to use the primitive database_id value instead of the
object reference, ensuring the effect only runs when the actual connection
being edited changes.

* fix: prevent duplicate SQL connections from being created

Fixed an issue where saving SQL connections multiple times would create
duplicate entries with auto-generated hash suffixes (e.g., my-db-abc7).
This occurred because the frontend maintained stale action properties on
connections after saves, causing the backend to treat already-saved
connections as new additions.

Backend changes (server/models/systemSettings.js):
- Modified mergeConnections to skip action:add items that already exist
- Reject duplicate updates instead of auto-renaming with UUID suffixes
- Check if original connection exists before applying updates

Frontend changes:
- Added hasChanges prop to SQL connector component
- Automatically refresh connections from backend after successful save
- Ensures local state has clean data without stale action properties

This prevents the creation of confusing duplicate entries and ensures
only the connections the user explicitly created are stored.

* Refactor to use existing system settings endpoint for getting agent SQL connections | Add better documentation

* Simplify handleUpdateConnection handler

* refactor mergeConnections to use map

* remove console log

* fix bug where edit SQL connection modal values werent recomputed after re-opening

* Add loading state for fetching agent SQL connections

* tooltip

* remove unused import

* Put skip conditions in switch statement

* throw error if default switch case is triggered

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-29 16:37:46 -08:00
Timothy Carambat
b8dd7bc97e
Support PrivateModeAI Integration (#4937)
* Support PrivateModeAI Integration

* tooltip for proxy
2026-01-29 12:01:11 -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
Marcello Fitton
b96f38486d
Fix: Clean username already exists error (#4914)
* Add Prisma unique constraint error messaging.

* Create `_identifyErrorAndFormatMessage` private method for identifying the error type and returning the approprioate error message string
2026-01-29 09:51:03 -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
9584ebcd2c
Patch AzureOpenAI tool calling from function to tool (#4922) 2026-01-28 13:21:27 -08:00
Timothy Carambat
d36dc0f8a5 fix log line 2026-01-27 10:51:16 -08:00
Timothy Carambat
fe78e1c667
Refactor Ollama context window setting (#4909) 2026-01-27 10:50:40 -08:00
Timothy Carambat
64bff91998
Persist Ollama context preferences in LC tools (#4908)
* Persist Ollama context preferences in LC tools

* remove comment
2026-01-27 10:08:11 -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
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
Timothy Carambat
20efe35ae6 patch more syssettings 2026-01-23 16:11:21 -08:00
Timothy Carambat
3af21aea04
Merge commit from fork 2026-01-23 16:03:16 -08:00
Timothy Carambat
ac8248e08d bump versions to 1.10.0 2026-01-21 16:10:07 -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
Timothy Carambat
f616fc9185 remove duplicated steam method on cohere handler 2026-01-16 16:54:29 -08:00