Commit Graph
1233 Commits
Author SHA1 Message Date
jelveh 014b5ac713 Enforce ownership of puter.site subdomains for apps 2025-11-25 15:43:14 -08:00
Daniel Salazar e2f1200ad5 test: add test infra to run vitest on all of backend wip (#2023)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-24 19:20:09 -08:00
jelveh 613f6379e7 Add Claude Opus 4.5 2025-11-24 11:33:24 -08:00
48d8762ccf Gemini nano banana pro updated (#2012)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
* Update AI.js

* Update GeminiImageGenerationService.js

* Update cost map

* Gemini to OpenAI SDK refactor (#2014)

* WIP Gemini OpenAI refactor

* refactor: gemini open ai service + geminiCostMap

* Gemini Service fixes

* Cleaning up old Gemini cruft

---------

Co-authored-by: Daniel Salazar <daniel.salazar@puter.com>

---------

Co-authored-by: Nihhaar0002 <msnrk2006@gmail.com>
Co-authored-by: Daniel Salazar <daniel.salazar@puter.com>
2025-11-24 10:36:00 +04:00
Neal ShahandDaniel Salazar ed2d1368ca Gemini to OpenAI SDK refactor (#2014)
* WIP Gemini OpenAI refactor

* refactor: gemini open ai service + geminiCostMap

* Gemini Service fixes

* Cleaning up old Gemini cruft

---------

Co-authored-by: Daniel Salazar <daniel.salazar@puter.com>
2025-11-24 09:55:19 +04:00
Daniel Salazar 85d13a9d4b fix: openrouter missing usage (#2008)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-22 15:54:53 -08:00
Nariman Jelveh 133e3dc77c Add 11labs speech-to-speech voice changer integration (#2006)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-21 23:24:43 -08:00
Daniel Salazar 262b359633 fix: fallback models (#2005) 2025-11-21 20:09:19 -08:00
Nariman Jelveh bb752a5bb5 Add ElevenLabs TTS provider integration (#2004)
* Add ElevenLabs TTS provider integration

Adds ElevenLabs text-to-speech support in the backend and frontend. Adds `ElevenLabsTTSService`, updates `PuterAIModule` to register the service, documents configuration, and integrates cost tracking with zero cost in `MeteringService` for now (todo). updates `AI.js` to support 11labs as a provider and adds related tests for `txt2speech` functionality.

* Update 11labs cost map values
2025-11-21 17:31:21 -08:00
Daniel Salazar 11e057557d fix: eslint autofixable errors (#2002)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-21 13:22:19 -08:00
Daniel Salazar f1773974c0 fix: only fallback to models that are immediately the same (#2001) 2025-11-21 10:46:43 -08:00
KernelDeimos 12559f7d28 lint: use this.services instead of global here
This is the last error for the mandatory eslint rules. Now we can put a
rule into place so that CI always fails when there's an undefined
variable, which I think is pretty cool.
2025-11-20 21:34:21 -05:00
KernelDeimos c4b5b48904 doc: add notes to AppInformationService
I was having issues getting to a branch that calls a non-existing
function so I wrote some comments about the issue here.
2025-11-20 21:34:21 -05:00
KernelDeimos 92d03e5501 fix: size_measure_stream in streamutils 2025-11-20 21:34:21 -05:00
KernelDeimos f11d0f0c8b clean: remove unused method in DriverService 2025-11-20 21:34:21 -05:00
KernelDeimos 909f9afb9b link: format DriverService 2025-11-20 21:34:21 -05:00
KernelDeimos 2ae2d3c9af lint: format eggspress.js
It's about time to do this now. This file will for the first time (in...
ever?) be indented with 4 spaces instead of 2.
2025-11-20 21:34:21 -05:00
KernelDeimos 71a26156bd fix: add missing Context import to IconResult 2025-11-20 21:34:21 -05:00
KernelDeimos 5062e3c5ed fix: add missing ref to next()
We might get rid of this later, or re-write it, so this isn't really a
concern right now but this cleans up eslint error output.
2025-11-20 21:34:21 -05:00
KernelDeimos d429d2f5bc fix: incorrect variable ref in hl_move for shared 2025-11-20 21:34:21 -05:00
KernelDeimos e55bd4a796 lint: format hl_move.js 2025-11-20 21:34:21 -05:00
Daniel Salazar 02d95db7ed fix: open router cache token metering (#1988) 2025-11-20 17:49:05 -08:00
Neal Shah b035fda778 Fix gemini when tools are null (#1992) 2025-11-21 01:57:39 +04:00
KernelDeimos 452e0b7001 doc: update documentation for TestKernel 2025-11-20 14:29:55 -05:00
KernelDeimos d7538cf3c0 refactor: merge FSEntryFetcher with FSEntryController 2025-11-19 16:13:26 -05:00
KernelDeimos d3881f2440 dev: decouple FSEntryFetcher by adding hasChild
Adding the hasChild method of FSNodeContext as well as a corresponding
method to filesystem providers is prerequisite to moving
FSEntryFetcher's logic into the new puterfs extension.
2025-11-19 14:30:42 -05:00
KernelDeimos cdcce31d03 rm: remove DatabaseFSEntryService from core 2025-11-19 14:30:42 -05:00
KernelDeimos 35d32f7fc8 dev(puterfs): move mkshortcut, make ll_rmdir...
...use readdir from the provider instead of calling
fast_get_direct_descendants directly on fsEntryService.

This change is prerequisite to removing FSEntryService from core.
2025-11-19 14:30:42 -05:00
Neal Shah 33a8814feb new gemini models (#1986)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-18 20:00:34 -05:00
KernelDeimos a50866ec76 dev(puterfs): move get_recursive_size to extension
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-18 15:34:49 -05:00
KernelDeimos c9c745740d dev(puterfs): remove dependency on FSEntryService
This commit was ammended to fix a missing import of Context from 'core'.
2025-11-18 15:34:49 -05:00
Neal Shah 3fec2ed351 Move thumbnail mutation to getSafeEntry (#1980)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-16 21:38:48 -05:00
jelveh 064a5e6c67 Update OpenAI model max_tokens and cost map values
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-14 23:31:53 -08:00
jelveh 968150db7e Update openrouterCostMap.ts 2025-11-14 23:24:17 -08:00
jelveh 0957dd29e7 add all gpt-5.1 models 2025-11-14 23:10:25 -08:00
Nariman Jelveh 545b5a071e Add support for GPT-5.1 model and reasoning controls (#1967)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
closes #1966
2025-11-13 19:23:04 -08:00
Neal Shah 5cad75e85a change claude service max_tokens calculation (#1962)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-13 13:29:22 -05:00
KernelDeimos 3aadaf8420 fix: explicit actor not passed to fs provider
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-12 15:13:42 -05:00
KernelDeimos ba994f8d88 refactor(backend): remove PuterFSProvider from core 2025-11-12 14:51:21 -05:00
KernelDeimos 8d4f788888 dev(puterfs): move misc methods to extension
The get_capabilities and update_thumbnail methods in PuterFSProvider are
moved to the extension by this commit. This is prerequisite to the
removal of PuterFSProvider in the core.
2025-11-12 14:51:21 -05:00
KernelDeimos 2285f8b553 clean: remove unused from old PuterFSProvider
Now that most of the functionality from PuterFSProvider in core has been
moved to PuterFSProvider in the `puterfs` extension, there are a lot of
unused symbols which need to be cleaned up.

This cleanup reveals that `update_thumbnail` and `get_capabilities` are
the only remaining functions left before PuterFSProvider in core can be
fully removed.
2025-11-12 14:51:21 -05:00
jelveh 6d5f1efce4 Add support for condition image models in Together AI
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-11 20:30:24 -08:00
Nariman Jelveh 7b93d7c15b Add Mistral OCR support and imrpove img2txt API (#1957)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
Introduces Mistral OCR integration in backend and updates the `AIInterfaceService` and `MistralAIService` to support new OCR options and response normalization. Updates metering cost map for OCR and annotation usage. Refactors `DriverService` to support interface-specific service aliases. Expands the puter.js `AI.img2txt` API to support flexible options and provider selection, including Mistral OCR.
2025-11-11 17:06:44 -08:00
KernelDeimos ea3dbcd411 dev(puterfs): move write_overwrite to extension 2025-11-11 15:32:03 -05:00
KernelDeimos a2cebf8c5b refactor(backend): migrate FileCacheService
FileCacheService was still a legacy service extending AdvancedBase. This
commit changes it to extend BaseService and implement the lifecycle
methods consistent with other services. This is a prerequisite for
moving write_overwrite which needs to import the service via
`extension.import` (not possible for legacy services) so that it may
invalidate file cache when a file is written to.
2025-11-11 15:32:03 -05:00
KernelDeimos bd81c533bc dev(puterfs): move write_new to extension 2025-11-11 15:32:03 -05:00
KernelDeimos 689fb91a0e dev(extensions): expose extension.errors API 2025-11-11 15:32:03 -05:00
Neal Shah bb2c78ae2d Add failsafe incase max_tokens is 0 or negative for a model (#1954)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
test / backend (node env, api-test) (22.x) (push) Has been cancelled
test / puterjs (browser env, playwright) (22.x) (push) Has been cancelled
test / puterjs (node env, vitest) (22.x) (push) Has been cancelled
2025-11-09 19:22:34 -05:00
Neal Shah 3c3367ca52 Autodiscover ollama support (#1953) 2025-11-09 18:51:07 -05:00
Neal Shah 0077944bd4 Openrouter reasoning fixes (#1951)
* Fix for OpenRouter reasoning models
2025-11-09 15:33:36 -05:00