Dinh Long Nguyen
a30eb7f968
feat: Jan Web (reusing Jan Desktop UI) ( #6298 )
...
* add platform guards
* add service management
* fix types
* move to zustand for servicehub
* update App Updater
* update tauri missing move
* update app updater
* refactor: move PlatformFeatures to separate const file
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
* change tauri fetch name
* update implementation
* update extension fetch
* make web version run properly
* disabled unused web settings
* fix all tests
* fix lint
* fix tests
* add mock for extension
* fix build
* update make and mise
* fix tsconfig for web-extensions
* fix loader type
* cleanup
* fix test
* update error handling + mcp should be working
* Update mcp init
* use separate is_web_app build property
* Remove fixed model catalog url
* fix additional tests
* fix download issue (event emitter not implemented correctly)
* Update Title html
* fix app logs
* update root tsx render timing
---------
Co-authored-by: Claude <noreply@anthropic.com>
2025-09-05 01:47:46 +07:00
Louis
c018713676
feat: allow user to set max_attempt for MCP to avoid looping
2025-08-20 12:42:54 +07:00
Louis
bfe671d7b4
feat: #5917 - model tool use capability should be auto detected
2025-08-19 09:51:36 +07:00
Louis
c8d9592ab8
chore: mcp group server, action and import json
2025-08-15 11:37:21 +07:00
Louis
25a0c14be8
chore: whitelist jan model with tool use support by default
2025-08-12 10:33:41 +07:00
Akarshan Biswas
0cfc745954
feat: Introduce structured error handling for llamacpp extension ( #6087 )
...
* feat: Introduce structured error handling for llamacpp extension
This commit introduces a structured error handling system for the `llamacpp` extension. Instead of returning simple string errors, we now use a custom `LlamacppError` struct with a specific `ErrorCode` enum. This allows the frontend to display more user-friendly and actionable error messages based on the code, rather than raw debug logs.
The changes include:
- A new `ErrorCode` enum to categorize errors (e.g., `OutOfMemory`, `ModelArchNotSupported`, `BinaryNotFound`).
- A `LlamacppError` struct to encapsulate the code, a user-facing message, and optional detailed logs.
- A static method `from_stderr` that intelligently parses llama.cpp's standard error output to identify and map common issues like Out of Memory errors to a specific error code.
- Refactored `ServerError` enum to wrap the new `LlamacppError` and provide a consistent serialization format for the Tauri frontend.
- Updated all relevant functions (`load_llama_model`, `get_devices`) to return the new structured error type, ensuring a more robust and predictable error flow.
- A reduced timeout for model loading from 300 to 180 seconds.
This work lays the groundwork for a more intuitive and helpful user experience, as the application can now provide clear guidance to users when a model fails to load.
* Update src-tauri/src/core/utils/extensions/inference_llamacpp_extension/server.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update src-tauri/src/core/utils/extensions/inference_llamacpp_extension/server.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* chore: update FE handle error object from extension
* chore: fix property type
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Faisal Amir <urmauur@gmail.com>
2025-08-07 23:28:25 +05:30
Faisal Amir
4d67418b0d
fix: update ux recemmend backend label into desc setting ( #6088 )
2025-08-07 22:14:23 +07:00
Louis
b8070f1871
chore: able to disable updater via env flag
2025-08-05 13:44:40 +07:00
Faisal Amir
7dec980630
fix: persist model capabilities refresh app ( #5918 )
2025-07-25 20:27:51 +07:00
Louis
c6ac9f1d2a
feat: sync hub with model catalog
2025-07-02 12:29:01 +07:00
Louis
8bd4a3389f
refactor: frontend uses new engine extension
...
# Conflicts:
# extensions/model-extension/resources/default.json
# web-app/src/containers/dialogs/DeleteProvider.tsx
# web-app/src/routes/hub.tsx
2025-07-02 12:28:24 +07:00
Faisal Amir
7b59aa32f9
chore: onboarding local model ( #5234 )
...
* chore: simple onboarding local model
* chore: update new model and improve flow e2e onboarding local model
* fix: default tool support models
---------
Co-authored-by: Louis <louis@jan.ai>
2025-06-11 18:38:07 +07:00
Faisal Amir
808fdb02a7
chore: streaming tool output ( #5237 )
...
* enhancement: tool streaming output
* chore: update memo
* fix: streaming
* chore: update stream tools arguments
* chore: update condition
* fix: style
* fix: style
* chore: fix stop button
* chore: update color accent and hide arrow button
---------
Co-authored-by: Louis <louis@jan.ai>
2025-06-11 14:35:41 +07:00
Louis
919b6671a1
enahancement: mcp server activation response and error handling ( #5220 )
...
* fix: mcp server error handling
* fix: custom installation path of MCP package managers
* chore: clean up
* chore: clean up
* chore: append mcp server errors to app logs
* fix: logs reading
* chore: typo
2025-06-09 19:43:16 +07:00
Louis
fb7dc21135
chore: update MCP servers list ( #5195 )
...
* chore: update MCP servers list
* chore: rename
* chore: attempt to stop models before updating
* chore: clean up logs
* chore: fix bug refresh
2025-06-04 21:47:27 +07:00
Louis
6faca3e732
refactor: remove JS server package ( #5192 )
...
* refactor: remove js server package
* chore: migrate HF token data
2025-06-04 15:33:35 +07:00
Faisal Amir
b29e579042
feat: product analytic ( #5099 )
...
* feat: product analytic
* chore: remove comment
2025-05-25 17:25:03 +07:00
Louis
570bb8290f
chore: add model information in System Monitoring ( #5062 )
...
* chore: add model information in System Monitoring
* chore: handle empty models case
* chore: fix type
2025-05-22 16:07:08 +07:00
Louis
6676e0ced8
chore: add relocate jan data folder function to new FE ( #5043 )
...
* chore: typo
* fix: linter issues
* chore: fix linter
* chore: fix linter
* chore: add relocate data folder
2025-05-21 10:48:10 +07:00
Louis
81c4dc516b
chore: handle hardware settings ( #5041 )
...
* chore: handle hardware settings
* chore: activate GPUs
* Update web-app/src/services/hardware.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-20 20:05:47 +07:00
Louis
46943a1cf7
chore: token speed and edit message ( #5031 )
...
* chore: add token speed measurement
* chore: add edit message handler
* chore: add DialogClose wrapper around save button
2025-05-20 14:09:25 +07:00
Louis
2dac53e9ca
feat: Jan supports multiple assistants ( #5024 )
...
* feat: Jan supports multiple assistants
* chore: persists current assistant to threads.json
* chore: update assistant persistence
* chore: simplify persistence objects
2025-05-20 00:57:26 +07:00
Louis
2bc8fccaf0
chore: allow users to enable/disable MCP servers ( #5015 )
2025-05-19 13:15:37 +07:00
Faisal Amir
05ce85d9b1
chore: styling tool call funtion render UI
2025-05-16 22:10:27 +07:00
Faisal Amir
852ea84cd8
epic: Jan with new UI/UX ( #4964 )
...
* chore: initial new FE setup
* chore: update namespace text-left-panel foreground variable
* chore: enable dynamic mainview color
* chore: remove greetings new chat
* chore: fix chat input style
* chore: simplify hook useAppearance
* chore: enable internationalization
* chore: prepare vn locale
* chore: keyboardshortcut layout
* chore: update keyboard shortcut exclude pathname
* chore: update state active setting route
* chore: fix update theme by system
* chore: handle dynamic primary color
* chore: fix left panel navigation active state and styled item privacy analytic
* chore: reorder general setting being a first
* chore: add function reset appearance
* chore: update scrollbar
* chore: update delete thread with dialog confirmation
* chore: update state dialog inside dropdown menu
* chore: wip thread detail or chat page
* chore: wip model dropdown
* chore: prepare model dropdown select
* chore: update model providers setting
* chore: show provider on model dropdown based isActive toogle
* chore: update layout model provider
* chore: update state active on storage
* chore: update gap of item dropdown model
* chore: update select model base on id
* chore: update edit model capabilities
* chore: add dialog to add model
* chore: update sheet for model setting
* chore: add sheet setting each model
* chore: make dynamic syntax highlight
* chore: fix menu setting appearance theme
* chore: markdown render support emoji
* chore: markdown support latex
* chore: change codeblock default theme
* chore: update ui codeblock
* chore: custom render link taget new window
* chore: fix copy button codeblock
* chore: update accent and desctructive color
* chore: setup user chat message
* chore: prepare some page settings
* chore: simple list extension and prepare mcp, local api, and hardware
* chore: mcp-serve
* chore: MCP server UI
* chore: update local api server config
* chore: adjust chat input
* chore: update local api server log
* chore: prepare hub page
* chore: remove help page
* chore: update mock
* chore: prepare http proxy setting UI
* chore: adjust local api server and title every action
* fix: chore FE package (#4962 )
* fix: update command which referred to non-existent web app
* fix: added commented out macos platform for now
* fix: remove the platform name as macos
* fix: remove unnecessary line for platform name in HeaderPage component
* fix: update dev script to specify port 3000 for Vite
* feat: model providers and chat completion
* enhancement: threads performance
* fix: thread content update
* chore: clean up threads
* fix: performance issue with streaming and state loop
* fix: streaming
* fix: react markdow
* feat: extension manager
* chore: add nodePolyfills include path
* chore: improve performance avoid unhandle rejection
* chore: update pre margin bottom
* chore: swith thread should be deafult scroll to bottom
* chore: wip scroll to bottom
* chore: add model loader
* chore: add platform utils
* feat: threads functionality
* chore: setup toaster
* chore: persist threads deletion
* fix: create thread with new message
* chore: create new thread should change route path
* chore: navigate after delet dialog thread
* chore: thread favorites and orders
* chore: dismiss deleting modal on delete
* chore: remove undefined properties
* chore: remove deprecated run step
* chore: fix delete thread
* chore: create empty thread content on started streaming
* chore: correct messages store key
* chore: stuck at generating state
* chore: preapre chat toolbar
* chore: introduce in-memory app state
* chore: update extensions migration logic
* chore: remove redundant extensions migration gate
* chore: message toolbar user and assistant
* chore: add logo gemini
* feat: remote providers with model capabilities
* chore: maintain provider settings
* chore: move speed token into chat input
* chore: temp harcoded model loader
* chore: make chat text selectable and truncate model list
* chore: update shortcut UI
* Feat/implement threads (#4977 )
* chore: add fuse.js library for enhanced search functionality
* feat: implement thread filtering with Fuse.js for improved search capabilities
* fix: update the fuseOptions
* feat: add search functionality to LeftPanel and refactor thread retrieval logic
* refactor: optimize thread filtering and improve search functionality in LeftPanel
* fix: more edits
* refactor: remove duplicate import of useAppState in StreamingContent component
* chore: update navigate after delete all thread
* chore: pass prop speedToken from new chat input
* chore: persist provider general settings
* chore: styling search left panel
* chore: cleanup margin
* chore: update size icon
* chore: improve chat input
* chore: imprve list markdown
* chore: animate border
* feat: local model provider work
* chore: persist manually added model
* chore: prepare download management ui and show version on general setting
* chore: improve pre tag
* chore: remove buton install extension and improve light theme download
* chore: add missing hardware information handler
* chore: cleanup small ui
* chore: update default provider settings
* fix: missing fs commands
* chore: correct provider models
* chore: prepare delete model
* chore: handle thinking block
* chore: fix conditional message toolbar
* chore: pophover download select none
* enhancement: add prune mode
* chore: model settings
* chore: bump engine version tauri
* chore: update style thinking
* chore: add indicator and toogle mcp server
* chore: wip hub
* chore: update model settings
* chore: mvp hub
* chore: add function rename title
* chore: update function delete message
* chore: update rename title
* chore: update model settings
* chore: persist MCP configs
* refactor: clean up utils
* chore: add tools to completion request
* chore: clean up
* chore: ignore assets
---------
Co-authored-by: Ivan Leo <ivanleomk@gmail.com>
Co-authored-by: Louis <louis@jan.ai>
2025-05-15 19:38:59 +07:00