Commit Graph

268 Commits

Author SHA1 Message Date
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
Ocheretovich
54b4b34b75
fix: validate chat message input (#4811)
* fix: validate chat message input

* fix: align message validation for thread stream-chat endpoint

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2026-01-08 17:00:15 -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
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
Marcello Fitton
dbb79b6748
Migrate to bcryptjs (#4767)
* Replace bcrypt with bcryptjs across multiple files

* dev build

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-12-11 15:19:04 -08:00
Timothy Carambat
25a72f7175 Revert commit 8e0186f9ac - broken auth 2025-12-11 14:22:16 -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
方程
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
Neha Prasad
340709504c
feat: add base64 document attachment support to API chat endpoints (#4672)
* feat: add base64 document attachment support to API chat endpoints

* remove parsed documents from api chat process
linting for simplicity
fix logic issues with flow of data through the pipeline
documentiation

* change var scope

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-11-24 15:48:44 -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
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
Sean Hatfield
05df4ac72b
Paperless ngx data connector (#4121)
* paperless ngx data connector

* wip resync paperless ngx

* fix generateChunkSource for resyncing paperless ngx

* lint

* Refactor Paperless-NGX connector
Fix issue with date rendering in tooltip + extended width
Move tooltip details to be column for more space

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-20 11:27:38 -08:00
Neha Prasad
b86aca765b
fix: unhelpful error message for invite link user creation (#4621)
* remove the hardcoded generic message instead of the actual validation error

* lint

---------

Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-11-19 13:37:37 -08:00
Marcello Fitton
50d4a198a4
Add User-Agent header on the requests sent by Generic OpenAI providers. (#4393)
* Add User-Agent header on the requests sent by Generic OpenAI providers.

* Moved getAnythingLLMUserAgent helper fn to server/endpoints/utils.js and changed fallback version string to "unknown"

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-09-17 13:08:18 -07:00
Timothy Carambat
e81bd471dd
patch folder name GET request response (#4395)
* patch folder name GET request response

* fix response cb
2025-09-17 13:05:11 -07:00
Jonas Stawski
b8d4cc3454
Added metadata parameter to document/upload, document/upload/{folderName}, and document/upload-link (#4342)
* Added the ability to pass in metadata to the /document/upload/{folderName} endpoint

* Added the ability to pass in metadata to the /document/upload-link endpoint

* feat: added metadata to document/upload api endpoint

* simplify optional metadata in document dev api endpoints

* lint

* patch handling of metadata in dev api

* Linting, small comments

---------

Co-authored-by: jstawskigmi <jstawski@getmyinterns.org>
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-09-17 11:17:29 -07:00
timothycarambat
6358d087c2 Fix /openai/models compat endpoint to return correct response schema
resolves #4295
2025-08-15 14:46:51 -07:00
Timothy Carambat
0fb33736da
Workspace Chat with documents overhaul (#4261)
* Create parse endpoint in collector (#4212)

* create parse endpoint in collector

* revert cleanup temp util call

* lint

* remove unused cleanupTempDocuments function

* revert slug change
minor change for destinations

---------

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

* Add parsed files table and parse server endpoints (#4222)

* add workspace_parsed_files table + parse endpoints/models

* remove dev api parse endpoint

* remove unneeded imports

* iterate over all files + remove unneeded update function + update telemetry debounce

* Upload UI/UX context window check + frontend alert (#4230)

* prompt user to embed if exceeds prompt window + handle embed + handle cancel

* add tokenCountEstimate to workspace_parsed_files + optimizations

* use util for path locations + use safeJsonParse

* add modal for user decision on overflow of context window

* lint

* dynamic fetching of provider/model combo + inject parsed documents

* remove unneeded comments

* popup ui for attaching/removing files + warning to embed + wip fetching states on update

* remove prop drilling, fetch files/limits directly in attach files popup

* rework ux of FE + BE optimizations

* fix ux of FE + BE optimizations

* Implement bidirectional sync for parsed file states
linting
small changes and comments

* move parse support to another endpoint file
simplify calls and loading of records

* button borders

* enable default users to upload parsed files but NOT embed

* delete cascade on user/workspace/thread deletion to remove parsedFileRecord

* enable bgworker with "always" jobs and optional document sync jobs
orphan document job: Will find any broken reference files to prevent overpollution of the storage folder. This will run 10s after boot and every 12hr after

* change run timeout for orphan job to 1m to allow settling before spawning a worker

* linting and cleanup pr

---------

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

* dev build

* fix tooltip hiding during embedding overflow files

* prevent crash log from ERRNO on parse files

* unused import

* update docs link

* Migrate parsed-files to GET endpoint
patch logic for grabbing models names from utils
better handling for undetermined context windows (null instead of Pos_INIFI)
UI placeholder for null context windows

* patch URL

---------

Co-authored-by: Sean Hatfield <seanhatfield5@gmail.com>
2025-08-11 09:26:19 -07:00
Timothy Carambat
a9d9f9cdfd
Add custom JWT TTL (#4234)
resolves #4224
2025-08-01 10:39:38 -07:00
Timothy Carambat
c218a0dfe3
Mobile sync support (#4173)
* WIP on mobile connections
todo: register devices
todo: data sync or connection

* improve connection flow and registration
add streaming from service
TODO: user scoping

* dev build mobile support

* fix path

* handle relative URLs

* handle localhost access in product

* add device de-register

* sync styles

* move UI to be out of the normal path since beta only

* Add user scoping to mobile connection requests
Remigrate DB for user associations
Implement temp token registration to prevent unauthorized device registration requests
cleanup middlewares
2025-07-31 12:28:03 -07:00
Neha Prasad
ea5f66978b
fix: API export-chats endpoint function import error (#4220)
fix: resolve prepareWorkspaceChatsForExport function not found error in API export-chats endpoint
2025-07-30 12:19:27 -07:00
Sean Hatfield
8c7923a283
Fix app version metrics endpoint (#4209)
fix app version metrics endpoint
2025-07-28 15:37:06 -07:00
Sean Hatfield
31a8ead823
Fix multimodal chats via openai compat api (#4135)
* fix multimodal chats via openai compat api

* lint

* add tests for multi-modal content in openai compat endpoint

* refactor to normalize how openai attachments are handled

* uncheck file

* rewrite tests, autodetect mime from dataurl, and spread attachments from prompt

* lint

* revert and fix tests

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-07-22 09:57:32 -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
49ea545d7f
SQL preflight connection validation (#4150)
* wip sql connection string validation

* handle failed sql connections in frontend

* sql preflight connection validation on modal save

* revert unneeded be/fe changes

* linting, form updates

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-07-16 09:02:39 -07:00
Timothy Carambat
ea956f4d77
Add ability to search workspace and threads (#4120)
* Add ability to search workspace and threads

* fix height

* styling

* update placeholder

* Translations PR (#4122)
2025-07-10 16:42:10 -07:00
Sean Hatfield
62d3803bf0
Fix prompt, model, and temperature overrides in embed chat widget (#4036)
fix data-prompt attribute in embed chat widget

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-06-24 14:23:02 -07:00
Timothy Carambat
64d9fbc8f0
Show app version in system settings sidebar (#4044)
* Add version tagging
resolves #4038
closes #4034
closes #4028

* add hook

* add build

* patch
2025-06-24 13:56:12 -07:00
Sean Hatfield
96b532a0f4
Publish system prompts to hub (#3976)
* implement ui for publish system prompt to hub

* rework ui + add backend to upload to hub

* add success modal view + publish menu item + translations

* normalize translations

* refactor PublishEntityModal + add hook
for hub auth

* normalize translations

* fix ui for success screen

* refactor, auth checks, UI/UX, and naming conventions to be more clear

* move components to CommunityHub folder + small ui tweak

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-06-16 09:59:38 -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
Sean Hatfield
ef0928993e
Implement importing of agent flows from community hub (#3867)
* implement importing of agent flows from community hub

* auto enable flow on import

* remove unused blocks for docker
prevent importing or saving of agent flows that have unsupported blocks for version or platform

* dev build

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-06-05 15:08:58 -07:00
Sean Hatfield
2b274c62b7
Obsidian data connector (#3798)
* add obsidian vault data connector

* lint

* add english translations

* normalize translations

* improve file parser and reader

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-05-12 13:45:27 -07:00
Sean Hatfield
10e65fc021
Chat prompt history menu (#3770)
* wip system prompt history sidebar ui

* lint

* backend/frontend implementation for prompt history wip

* lint

* rework ui

* add delete menu and delete chat history by id

* lint

* ref for menu button

* reorganize components + light mode styles

* lint

* UI refactor

* backend refactor

* remove unused import

* add border-none to all buttons

* fix spacing on dots 3 icon button

* add window to confirm

* add english translations

* normalize translations

* lin

* patch store logic

* sticky header

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-05-08 08:29:46 -07:00
timothycarambat
dacd67124a Prune telemetry events
Update telemetry for model tagging
Update readme on telemetry
2025-04-29 13:54:00 -07:00
Sean Hatfield
610bdd4673
Allow custom headers in upload-link endpoint (#3695)
* allow custom headers in upload-link endpoint

* override loader.scrape to allow for passing of headers in langchain puppeteer

* lint

* Rename some variables
move positional args to named args
update documentation to reflect arg changes and funciton sigs
validate header object before attempting to end to forward to request

* update header validation for custom headers

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-04-22 12:47:12 -07:00
Timothy Carambat
fd4929b4d2
Feature/drupalwiki collector (#3693)
* Implement DrupalWiki collector

* Add attachment downloading and processing functionality (#3)

* linting

* Linting
Add citation image
small refactors
add URL for citation identifier

---------

Co-authored-by: em <eugen.mayer@kontextwork.de>
Co-authored-by: rexjohannes <53578137+rexjohannes@users.noreply.github.com>
Co-authored-by: Eugen Mayer <136934+EugenMayer@users.noreply.github.com>
2025-04-21 09:17:24 -07:00
Timothy Carambat
05ced11650
Add support for /v1/document/upload* endpoints to support auto-add to workspace (#3692) 2025-04-21 08:28:33 -07:00
Sean Hatfield
15f524ca37
Fix customize logo bug (#3628)
fix customize logo bug on first setup

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-04-14 11:51:04 -07:00
Timothy Carambat
7a01298a8e
ModelContextProtocol (MCP) Full Compatibility (#3547)
* WIP MCP full compatibility layer

* implement MCP agent function wrapping and invocation methods

* Add `uvx` to docker bin for MCP executions

* dev build

* prune removed data

* Wrap MCP servers to lazy load items to not block the UI
Mobile bug fixes

* arm64 test build

* reset dev builder

* remove unused prop
2025-03-31 16:15:19 -05:00
Sean Hatfield
f3ea21bcd1
Prompt variables (#3359)
* wip prompt variables

* refactor backend + add popup suggestions menu to frontend

* use processString to replace all variables in system prompts

* update translations

* fix translations

* wip highlight variables

* revert accidental name change

* rename everything, remove translations

* Update prompt var UI and backend logic

* Update form handler
linting

* linting

* normalize all translation files for prompt variables

* prompt vars dev image

---------

Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
2025-03-25 12:44:19 -07:00
Sean Hatfield
f0b7919a8f
Protected slash command check (#3524)
* protected slash command check

* fix error handling on frontend

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-03-24 17:09:36 -07:00
Sean Hatfield
19ba6bcc15
Enable slash commands in dev API chat/stream-chat (#3514)
* enable slash commands in dev api

* lint

* Remove ability to use default slash commands in API request
Add `reset` param to body that can reset chats according to the api chat execution parameters
Allow null `message` if `reset` is set in request.
Added early return for if message is null and reset is true
Enable chat to reset chat history and continue `message` execution
Added generic WorkspaceChat history reset function. Deprecated others

* update grep function comment
remove debug

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-03-24 11:29:36 -07:00
Timothy Carambat
b54ab7be05
CHORE: debounce telems to prevent spamming (#3505)
debounce telems to prevent spamming
2025-03-20 08:40:28 -07:00
Sean Hatfield
e01c0dff04
Fix embedding endpoint for OpenAI compatible API (#3467)
* fix embedding endpoint for openai compatible api

* remove unused imports

* add backwards compat for embedding

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-03-17 18:10:24 -07:00
Sean Hatfield
5658aac25c
Add remove folder developer API endpoint (#3489)
* add remove folder api endpoint

* update purgeFolder function comment

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-03-17 17:05:21 -07:00
Sean Hatfield
6dd1fdc546
Add bio field to user (#3346)
* add bio to users table

* lint

* add bio field to edit user admin page

* fix bio saving on new user

* simplify updating localstorage user

* linting

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
2025-02-26 15:23:24 -08:00
timothycarambat
fa454aa6ca patch openapi swagger docs 2025-02-26 12:30:26 -08:00
Shanmukeshwar
d005107e24
feat: Add endpoint to upload documents to a specified folder (#3276)
* feat: Add endpoint to retrieve documents by folder name

* isWithin Check on path to prevent path traversal

* feat: Add endpoint to upload documents to a specified folder

* refactor upload to folder endpoint + update jsdoc for swagger

* linting

---------

Co-authored-by: timothycarambat <rambat1010@gmail.com>
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
2025-02-26 12:26:24 -08:00
Timothy Carambat
2f5ed6c705
fix: bug where in single user mode deletion of an api key deletes all (#3358)
* fix: bug where in single user mode deletion of an api key deletes all
resolves #3352

* linting
2025-02-26 12:17:00 -08:00
Sean Hatfield
c36df2c364
Fix garbled non English chars on document upload (#3301)
update handleAPIFileUpload middleware to handle non english chars + update jsdoc
2025-02-20 23:09:34 -08:00