Commit Graph

147 Commits

Author SHA1 Message Date
Timothy Carambat
bde72505ff Remove default models to show empty until real models are retreieved (#5524)
resolves #5505
Fix placeholder
resolves #5503
resolves #5522
2026-04-24 15:13:57 -07:00
jimmyzhuu
680d38a3ce [FEAT] Add native Baidu Search provider for Agent web browsing (#5388)
* feat: add native baidu search provider for agent web browsing

* chore: address baidu search review feedback

* refactor baiduSearch internal util to be locally scoped

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-04-22 17:53:20 -07:00
Timothy Carambat
1cea4df8e6 Google calendar skill (#5442)
* Google Calendar Agent

* forgot files

* Translations (#5443)
2026-04-14 16:39:36 -07:00
Timothy Carambat
5aae72a5e5 Refactor Gmail Agent (#5439) 2026-04-14 14:46:54 -07:00
Timothy Carambat
1c0d0301b0 Outlook agent via Entra Application (#5427)
* Outlook agent via Entra Application

* translations (#5437)
2026-04-14 14:05:19 -07:00
Timothy Carambat
b7b380ac51 Revert "5427 translations (#5429)"
This reverts commit 4172751858.
2026-04-14 13:40:03 -07:00
Timothy Carambat
4172751858 5427 translations (#5429)
* Outlook agent via Entra Application

* translations
2026-04-14 13:38:03 -07:00
Timothy Carambat
cec67d77f2 GMail Agent Skill (#5400)
* wip

* remove label tech

* ask to read attachments

* update skills

* Skill ready and tested

* report dynamic citations and generic get mailbox util

* norm translations

* translations

* remove dead code, remove connector in multiUser

* simple refactor - dont ask for drafts

* refactor filesize helper

* norm translations, remove read_messages skill
2026-04-10 14:14:12 -07:00
Timothy Carambat
7aaea7f514 File creation agent skills (#5280)
* Powerpoint File Creation (#5278)

* wip

* download card

* UI for downloading

* move to fs system with endpoint to pull files

* refactor UI

* final-pass

* remove save-file-browser skill and refactor

* remove fileDownload event

* reset

* reset file

* reset timeout

* persist toggle

* Txt creation (#5279)

* wip

* download card

* UI for downloading

* move to fs system with endpoint to pull files

* refactor UI

* final-pass

* remove save-file-browser skill and refactor

* remove fileDownload event

* reset

* reset file

* reset timeout

* wip

* persist toggle

* add arbitrary text creation file

* Add PDF document generation with markdown formatting (#5283)

add support for branding in bottom right corner
refactor core utils and frontend rendering

* Xlsx document creation (#5284)

add Excel doc & sheet creation

* Basic docx creation (#5285)

* Basic docx creation

* add test theme support + styling and title pages

* simplify skill selection

* handle TG attachments

* send documents over tg

* lazy import

* pin deps

* fix lock

* i18n for file creation (#5286)

i18n for file-creation
connect #5280

* theme overhaul

* Add PPTX subagent for better results

* forgot files

* Add PPTX subagent for better results (#5287)

* Add PPTX subagent for better results

* forgot files

* make sub-agent use proper tool calling if it can and better UI hints
2026-03-30 15:13:39 -07:00
Marcello Fitton
0bfd27c6df feat: add optional API key support for Lemonade provider (#5281)
* add API key param to Lemonade LLM Provider and Embedding Provider

* add LEMONADE_LLM_API_KEY to .env.example

* add api key to aibitat provider

* fix api key from being sent to frontend

* fix tooltip id

* add null fallback for `apiKey`

* remove console log

* add missing api keys

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-03-30 14:44:12 -07:00
Timothy Carambat
3dedcede34 Filesystem Agent Skill overhaul (#5260)
* wip

* collector parse fixes

* refactor for class and also operation for reading

* add skill management panel

* management panel + lint

* management panel + lint

* Hide skill in non-docker context

* add ask-prompt for edit tool calls

* fix dep

* fix execa pkg (unused in codebase)

* simplify search with ripgrep only and build deps

* Fs skill i18n (#5264)

i18n

* add copy file support

* fix translations
2026-03-26 14:07:46 -07:00
Timothy Carambat
96965b3f30 Intelligent Skill Selection (#5236)
* Beta Intelligent Tooling
todo: Agent Skill banner warning when tool # is high or % of content window?

* forgot files

* add UI controls and maxToolCallStack setting

* update docs link

* ISS i18n (#5237)

i18n
2026-03-19 10:06:37 -07:00
Kesku
409ac543bd feat(agents): Add Perplexity Search API as web search provider (#5210)
* feat(agents): Add Perplexity Search API as web search provider

Adds Perplexity as a search provider for the agent web-browsing plugin,
using the Perplexity Search API (POST /search) which returns raw ranked
web results — distinct from the existing Perplexity LLM integration.

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

* chore: replace docs.perplexity.ai with console.perplexity.ai

* chore: replace docs.perplexity.ai with console.perplexity.ai

---------

Co-authored-by: kesku <kesku@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-03-17 14:16:20 -07:00
Timothy Carambat
6713c80f31 fix schema not persisting in DB connector 2026-03-11 11:43:38 -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
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
1c91d369c3 set embedder output dimensions for LocalAI and Gemini (gemini-embedding-001) (#4980) 2026-02-10 08:28:34 -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
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
fe78e1c667 Refactor Ollama context window setting (#4909) 2026-01-27 10:50:40 -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
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
方程
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
Sean Hatfield
66e44f65b4 Add batch embedding support for Ollama embedding provider (#4553)
* add batch embedding support for ollama embedding provider

* lint

* simplify ollama embedder input
2025-11-25 13:03:47 -08:00
Marcello Fitton
5716ac5ed5 Custom Default System Prompt (#4487)
* Add Default System Prompt Management

- Introduced a new route for fetching and updating the default system prompt in the backend.
- Added a new Admin page for managing the default system prompt, including a form for editing and saving changes.
- Updated the SettingsSidebar to include a link to the new Default System Prompt page.
- Implemented fetching of available system prompt variables for use in the prompt editor.
- Enhanced the ChatSettings and ChatPromptSettings components to support the new default system prompt functionality.

This commit lays the groundwork for improved management of system prompts across workspaces.

* Remove validation for system prompt in ChatSettings component

* Add comment for system prompt in workspaces model

* linting, simplify logic for default assumption

* dev build

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-11-24 13:24:10 -08:00
Sean Hatfield
c913a2d68c Prompt caching for Anthropic LLM and Agent providers (#4488)
* prompt caching for anthropic llm and agent providers

* add UI for control of ENV
simplify implementation

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-20 17:17:03 -08:00
Sean Hatfield
49c29fb968 Z.ai LLM & agent provider (#4573)
* wip zai llm provider

* cleanup + add zai agent provider

* lint

* change how caching works for failed models

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-20 15:57:03 -08:00
Chetan Sarva
c169193fc4 feature: Support for AWS Bedrock API Keys (#4651)
* feat: add AWS Bedrock API Key option to settings panel

* feat: Bedrock API key auth method

* fix: hide IAM note when using bedrock api key

* move to camcelCase identifier for bedrock api key use
linting

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-11-20 15:38:45 -08:00
Alex Barron
2eb5384e27 Add SerpApi web search (#4623)
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-20 15:12:15 -08:00
Sean Hatfield
0b18ac6577 Model context limit auto-detection for LM Studio and Ollama LLM Providers (#4468)
* auto model context limit detection for ollama llm provider

* auto model context limit detection for lmstudio llm provider

* Patch Ollama to function and sync context windows like Foundry

* normalize how model context windows are cached from endpoint service
todo: move this into global utility class with MODEL_MAP
eager load models on boot to pre-cache them
add performance model improvements into ollama agent as well as apply n_ctx

* remove debug log

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-10-02 11:54:19 -07:00
Sean Hatfield
599a3fd8b8 Microsoft Foundry Local LLM provider & agent provider (#4435)
* add microsoft foundry local llm and agent providers

* minor change to fix early stop token + overloading of context window
always use user defined window _unless_ it is larger than the models real contenxt window
cache the context windows when we can from the API (0.7.*)+
Unload model forcefully on model change to prevent resource hogging

* add back token preference since some models have very large windows and can crash a machine
normalize cases

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-10-01 20:04:13 -07:00
Timothy Carambat
cd063af4d1 Add support for SIMPLE_SSO_NO_LOGIN_REDIRECT config setting (#4394)
* Add support for `SIMPLE_SSO_NO_LOGIN_REDIRECT` config setting

* reset changes on simple page

* redirect at root

* remove paths change
2025-09-17 12:51:00 -07:00
TensorNull
5922349bb7 feat: Implement CometAPI integration for chat completions and model m… (#4379)
* feat: Implement CometAPI integration for chat completions and model management

- Added CometApiLLM class for handling chat completions using CometAPI.
- Implemented model synchronization and caching mechanisms.
- Introduced streaming support for chat responses with timeout handling.
- Created CometApiProvider class for agent interactions with CometAPI.
- Enhanced error handling and logging throughout the integration.
- Established a structure for managing function calls and completions.

* linting

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-09-16 14:38:49 -07:00
Sean Hatfield
c6e1b9c3e2 Chroma Cloud vector db provider (#4273)
* add chroma cloud as new vector db provider

* update docker example env

* extend chroma class to chroma cloud

* update readme

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-08-12 16:21:14 -07:00
Neha Prasad
a230a44f5c feat: Add Exa as a Search Provider (#4258)
* Added exa-search case to the search provider switch in web-browsing.js

* Added ExaSearchOptions component for API key input

* update

* Patch missing image crashing UI
Fix issue where ENV key did not exist or was saved on click
Update copy for provider
Add Docs for ENV keys for manual placements
update systemssettings for returning key saved to UI

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-08-11 09:46:50 -07:00
Timothy Carambat
2c19dd09ed Native Embedder model selection (incl: Multilingual support) (#3835)
* WIP on embedder selection
TODO: apply splitting and query prefixes (if applicable)

* wip on upsert

* Support base model
support nomic-text-embed-v1
support multilingual-e5-small
Add prefixing for both embedding and query for RAG tasks
Add chunking prefix to all vector dbs to apply prefix when possible
Show dropdown and auto-pull on new selection

* norm translations

* move supported models to constants
handle null seelction or invalid selection on dropdown
update comments

* dev

* patch text splitter maximums for now

* normalize translations

* add tests for splitter functionality

* normalize

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
2025-07-22 10:07:20 -07:00
Sean Hatfield
6d6bd14622 Moonshot AI LLM & agent provider (#4178)
* add moonshot ai LLM & agent provider

* fix moonshot agent calling

* handle attachments/fix moonshot llm provider

* update docs/example env

* add moonshot to onboarding privacy

* add moonshot to onboarding llm preference

* update privacy for moonshot ai

* update logo higher res

* remove caching and use modelmap
2025-07-22 09:56:51 -07:00
Sean Hatfield
ea8ba2f7f2 Clear cached docs on text splitter changes (#4163)
* clear cached docs on text splitter changes

* update warning message and title

* remove unsused translation keys

* wrap trycatch

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-07-17 11:03:18 -07:00
Timothy Carambat
043cb1d085 Add model field parameter for generic OpenAI TTS (#4171)
resolves #4165
2025-07-17 10:28:51 -07:00
Timothy Carambat
2055c8accd Flag to disable login UI and endpoints for credentialed auth (#3984)
* Flag to disable login UI and endpoints for credentialed auth

* dev build

* fix translation key
2025-06-11 12:46:40 -07:00
Timothy Carambat
c0d66e6c19 Enable UI/UX for model swapping in chat window (#3969)
* Enable UI/UX for model swapping in chat window

* forgot component

* patch useGetProviders hook to set loading on change of provider

* dev build

* normalize translations

* patch how model default is provided

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
2025-06-09 09:59:17 -07:00
Timothy Carambat
378ceaecec Support Dell Pro AI Studio provider (#3829) 2025-05-14 15:10:48 -07:00
Timothy Carambat
e1b7f5820c PGvector vector database support (#3788)
* PGVector support for vector db storage

* forgot files

* comments

* dev build

* Add ENV connection and table schema validations for vector table
add .reset call to drop embedding table when changing the AnythingLLM embedder
update instrutions
Add preCheck error reporting in UpdateENV
add timeout to pg connection

* update setup

* update README

* update doc
2025-05-09 12:27:11 -07:00
Timothy Carambat
f0104fe1a9 Merge commit from fork 2025-05-07 09:37:31 -07:00