Releases
26.05
Compare
Sorry, something went wrong.
No results found
jelveh
released this
05 May 23:43
What's Changed
fix Uncaught TypeError: Cannot read properties of undefined (reading β¦ by @ProgrammerIn-wonderland in #1116
Update fr.js by @Zac0511 in #1119
Fix : the issue with the success message not displaying after deployment by @mariatouil in #1072
Revert "Fix : the issue with the success message not displaying after deployment" by @jelveh in #1121
#1123 : add temperature and max_tokens to completion requests by @brauliopf in #1155
Enhanced ai command to perfom other commands by @ntwari-bruce in #1156
Fix the color of the UI on dark mode (e.g. windows control, active sidebar) by @acordero4852 in #1161
fix: made protocol dynamic in the publishURL displayed on 'Publish As Website' dialogbox by @sashpawar11 in #1170
Update README.md by @Gautam7352 in #1168
dev: moved current datetime to toolbar as a widget by @sashpawar11 in #1172
tweak : moved clock to right between profile and search by @sashpawar11 in #1181
UIAlert with dynamic icon types and default button configurations by @purohitamann in #1175
GUI Permission Dialog by @tanveer-brar in #1177
upgrade node version to 23.9 by @arunabhcode in #1184
feat: create and export UsageLimitedChatService by @Awnder in #1182
add API to get a list of all available models by @arunabhcode in #1160
Update events docs by @ajaykrishnaswamy in #1164
[BUG] : fixed-sidebar-headings-contrast by @Hetsavani in #1191
Polish Translation fix by @FCzajkowski in #1193
Standardized OpenAI config format and updated documentation issue #1180 by @anuja12mishra in #1195
Fix generic.secrets.security.detected-aws-account-id.detected-aws-account-id by @kira-offgrid in #1200
feat: hide icons/show icons feature added to the right-click/secondary click menu on the desktop by @hisham-maarraoui in #1190
Make it easier to add file extensions to an app in bulk by @KernelDeimos in #1205
fix: update check_usage_ to only consider past month usage by @KernelDeimos in #1209
feat: add costly model to FakeChatService by @KernelDeimos in #1211
fix: clarify variable names in puter.ai.chat method by @KernelDeimos in #1213
Improve PuterAI module documentation structure by @KernelDeimos in #1216
tweak: Documentation for Email Testing by @gautamkapoor1709 in #1204
Fix npm install error on Windows (spawn EINVAL) (#1203 ) by @kristavlastou in #1214
Ai command tool function by @ntwari-bruce in #1194
feat: add public endpoint for models list by @KernelDeimos in #1228
Split middleware into two different components by @Jomaguy in #1174
Refactor: Migrate interfaces.js to new registration mechanism by @KernelDeimos in #1239
Add Remove profile picture button #1245 by @EvaNtziou in #1246
tweak: reorder and fix Farsi translation of i18n keys by @shushannap in #1169
fix/bug#1233-iframe-overlap-issue by @Niveditarani in #1250
Add reauthentication for unauthenticated web clients when Socket api is called by @ProgrammerIn-wonderland in #1267
change initialization order to make wisp socket on first use of network by @ProgrammerIn-wonderland in #1268
Puter.net.fetch -- cors exempt wisp based fetch by @ProgrammerIn-wonderland in #1269
fix accidental checking of requestHead when responseHead should be checked by @ProgrammerIn-wonderland in #1270
Add support for chunked encoding in puter.net.fetch by @ProgrammerIn-wonderland in #1271
fix TLS stream premature close issue by @ProgrammerIn-wonderland in #1272
Housekeeping: Get rid of puter.http/puter.https by @ProgrammerIn-wonderland in #1273
docs: sync extension events documentation with backendChanges by @TanCodeX in #1281
make auth UI not required for now by @ProgrammerIn-wonderland in #1283
Networking: dont sent authentication header if puter.authToken is undefined by @ProgrammerIn-wonderland in #1284
support for request bodies by @ProgrammerIn-wonderland in #1286
[docs]: clarify CostService usage and improve metered services discoverability by @TanCodeX in #1287
fix: enable and fix date command tests (#796 ) by @krikera in #1295
Update first-run-issues.md by @atagtm in #1261
docs(i18n): update Hindi translation of README by @Rohanpawar9921 in #1311
fix(i18n): Complete Norwegian Nynorsk translation by @bilalkhantanoli in #1314
feat: add desktop link shortcuts (refs #682 ) by @rodrick-mpofu in #1219
dev: extension prefix update, doc helper & docs update by @XiaochenCui in #1318
fix: arrow key navigation in Explorer (#1089 ) by @Krisss46 in #1319
Dynamic toolbar by @jelveh in #1324
Don't hide the toolbar on mobile and tablet by @jelveh in #1328
Dynamic toolbar: allow users to customize toolbar sticky by @jelveh in #1330
Add preliminary support for different voices to puter.ai.txt2speech() by @jelveh in #1325
fix: return proper error message when the model is not found by @XiaochenCui in #1331
Remove captcha from frontend by @jelveh in #1335
Puter Worker support in backend and nodejs support + service worker support + web worker support in puterjs by @ProgrammerIn-wonderland in #1316
Add a basic Firebase Studio config file by @Zac0511 in #1338
Puter.js workers api by @ProgrammerIn-wonderland in #1339
aws/polly: add new apis to puter-js, add new args to txt2speech by @XiaochenCui in #1337
mkdir: return 403 error for mkdir action in the root dir by @XiaochenCui in #1351
event.puter//user puter and automatic cors exemption handling in puter workers by @ProgrammerIn-wonderland in #1342
Update Portuguese and Spanish translation README by @IgorJFS in #1363
Fixed issue: #1033 (Added app category display in Dev Center in main app list) by @JoshJoseph1234 in #1350
Support streaming drivers in XMLHTTPRequest-less platforms (nodejs, serviceworker) by @ProgrammerIn-wonderland in #1364
feat(gui): Add animation effects to the taskbar by @GitHubliuzhijie in #1365
Revert "feat(gui): Add animation effects to the taskbar" by @jelveh in #1366
Allow multipage apps in puterjs by @ProgrammerIn-wonderland in #1368
fs: adapt to different mkdir api, block write to root dir, add tests by @XiaochenCui in #1369
Configurable taskbar position by @jelveh in #1372
chore: apply Prettier formatting and add formatting config by @Yasir-Rafique in #1347
fix failed tests in apitest (move_cart and stat) by @XiaochenCui in #1376
fix: issue #542 , add missing Norwegian BokmΓ₯l translations based on English file by @GlennDmello17 in #1381
Puter workers FS based backend by @ProgrammerIn-wonderland in #1383
Puter workers exec by @ProgrammerIn-wonderland in #1384
fs: ll_mkdir/write -> provider.mkdir/write by @XiaochenCui in #1362
Puter workers fix URL by @ProgrammerIn-wonderland in #1385
Fix issue in invalid social media url by @emmanuel-ferdman in #1378
dev: Replaced human-readable text with i18n keys by @karan1205 in #1382
worker global s2w -> router by @ProgrammerIn-wonderland in #1386
Allow - in worker name by @ProgrammerIn-wonderland in #1388
Puter workers ask for auth if no token by @ProgrammerIn-wonderland in #1389
hotfix: emit the missing event, fix check condition by @XiaochenCui in #1390
Make worker names global && return improve error handling for APIError by @ProgrammerIn-wonderland in #1393
Add coersion to JSON response in workers by @ProgrammerIn-wonderland in #1394
improve error handling, user specific worker limit by @ProgrammerIn-wonderland in #1396
Support a few more incoming and global objects in workers by @ProgrammerIn-wonderland in #1401
docs: added utils.js build script documentation by @rohanrawat09 in #1402
Update worker limit by @ProgrammerIn-wonderland in #1405
Update nb.js by @Prathameshw4 in #1404
remove sessionStorage params by @ProgrammerIn-wonderland in #1408
Gui deploy workers by @jelveh in #1409
Worker api change by @ProgrammerIn-wonderland in #1411
dev: query backend for workers.list() and workers.get() now to get path too by @ProgrammerIn-wonderland in #1412
dev: expose file_uid in worker calls by @ProgrammerIn-wonderland in #1413
dev: workers, return iso timestamp instead by @ProgrammerIn-wonderland in #1414
fix: return "null" for file_path and file_uid if backing file is none⦠by @ProgrammerIn-wonderland in #1418
dev: migrate away from puter.drivers.call() by @ProgrammerIn-wonderland in #1419
Workers and websites in dev center by @jelveh in #1417
remove driver lsmod check by @ProgrammerIn-wonderland in #1421
Worker app sandboxing by @ProgrammerIn-wonderland in #1422
filter workers from hosting list by @ProgrammerIn-wonderland in #1426
fs/event: consolidate fs.written to fs.write by @XiaochenCui in #1392
Feat/custom domains by @ProgrammerIn-wonderland in #1440
send source app data to opened app by @jelveh in #1441
puter.js & gui changes required for cool app by @KernelDeimos in #1425
Update sl.js by @anderlli0053 in #1445
fix(desktop): prevent horizontal scrolling by constraining window drag (#710 ) by @pranav200408 in #1443
Revert "fix(desktop): prevent horizontal scrolling by constraining window drag (#710 )" by @jelveh in #1446
Added Norwegian BokmΓ₯l translations for missing keys by @Shahidpathan22 in #1447
Dav by @ProgrammerIn-wonderland in #1450
Reference documention by @onel in #1432
Reference docs - putility by @onel in #1433
feat: add 'path' option to showOpenFileDialog by @KernelDeimos in #1453
fix wrong return value on file cache service by @XiaochenCui in #1455
Fix: Microsoft office Bearer issue & Allow cors webdav by @ProgrammerIn-wonderland in #1461
Fix tamil language selection text by @ParkourKarthik in #1460
macOS webdav pollution fix by @ProgrammerIn-wonderland in #1462
feat: update Norwegian Nynorsk (nn.js) translations by @Nikhil-Gautam-dev in #1463
feat: improve 404 error handling in Puter sites with custom page support by @jelveh in #1466
fix: remove unnecessary scrollbar from Account page (#1307 )fix: remove unnecessary scrollbar from Account page (#1307 )Fix account scrollbar issue by changing overflow:hidden to overflow:v⦠by @DHANUSHRAJA22 in #1465
test: fix apitest, add new unit tests and benchmarks, normalize output by @XiaochenCui in #1467
fs/memory-provider by @XiaochenCui in #1400
captcha: add captcha widget to the signup window by @XiaochenCui in #1468
fs: improve get/set_storage api by @XiaochenCui in #1471
captcha: imporve condition checks for cloudflare turnstile by @XiaochenCui in #1469
docs: Add documentation for Entity Storage internals by @tarunsaini04 in #1478
Revert "docs: Add documentation for Entity Storage internals" by @jelveh in #1479
fix: puter workers url π by @ProgrammerIn-wonderland in #1480
Fix buggy arrow key navigation in start menu by @bomberfish in #1477
Reduce bottom bound on dragging UIItems by @bomberfish in #1485
fix(gui): prevent background apps from stealing focus by @rajanarahul93 in #1491
Fix mac setup bug by @pranav200408 in #1449
Revert "Fix mac setup bug" by @jelveh in #1492
Update fr.js by @Zac0511 in #1493
Create BUG-BOUNTY.md by @jelveh in #1483
captcha: complete the docs by @XiaochenCui in #1494
Refactor GeminiService for modularity, error handling, and readability by @imrozkhan205 in #1438
Revert "Refactor GeminiService for modularity, error handling, and readability" by @jelveh in #1496
feat(UI): Differentiate tablet UI based on pointer capabilities by @tarunsaini04 in #1482
feat(i18n): add missing Hindi translations (#1525 ) by @Deepam02 in #1534
feat: add expiry support to DBKV, and eslint config by @Salazareo in #1497
Adding missing Spanish translations by @RicJDev in #1536
the Arabic (Ψ§ΩΨΉΨ±Ψ¨ΩΨ©) translation of Puter is Completed by @shadow-taw in #1538
Complete the Bengali translation of Puter by @Sabbir256 in #1537
i18n(ta): complete missing Tamil translations in ta.js by @sidshas03 in #1541
New image models by @ProgrammerIn-wonderland in #1542
feat: support Gemini imagegen service by @ProgrammerIn-wonderland in #1544
Updating the Arabic (Ψ§ΩΨΉΨ±Ψ¨ΩΨ©) translation by @shadow-taw in #1543
build(deps): bump form-data from 4.0.0 to 4.0.4 in /tools/api-tester by @dependabot [bot] in #1547
build(deps): bump axios from 1.4.0 to 1.12.0 in /tools/api-tester by @dependabot [bot] in #1548
build(deps): bump get-func-name from 2.0.0 to 2.0.2 in /tools/api-tester by @dependabot [bot] in #1549
build(deps): bump serialize-javascript and mocha in /src/phoenix by @dependabot [bot] in #1550
build(deps): bump braces from 3.0.2 to 3.0.3 in /src/phoenix by @dependabot [bot] in #1551
build(deps): bump path-to-regexp from 6.2.1 to 6.3.0 in /src/phoenix by @dependabot [bot] in #1552
build(deps-dev): bump rollup from 3.23.0 to 3.29.5 in /src/terminal by @dependabot [bot] in #1553
Adding missing translations for Brazilian Portuguese. by @AlfreThiago in #1554
feat: logging for queries in puter js by @Salazareo in #1484
fix: br.js transaltions by @Salazareo in #1555
fix: add Chinese transaltions by @Webb321 in #1559
Update ko.js with full Korean translations by @tanso0126 in #1558
Translate and improve emojis by @Aryan01b in #1557
refactor: make theme service non-blocking and fix captcha issues by @jelveh in #1564
Romanian Translation Done by @RudareanuLeonard in #1565
fix: expiry time for dbkv by @Salazareo in #1560
Updating ru.js by @union-galactic in #1566
fix: improve PT-BR translation in br.js by @TeetOBeard in #1568
fix: add Japanese translations (#1519 ) by @dtakahashi333 in #1570
Complete Missing Hungarian Translations in hu.js by @iamJ3 in #1572
Make templates non blocking by @jelveh in #1573
dev: preflightless stat/readdir/drivercalls by @ProgrammerIn-wonderland in #1561
doc: added missing Dutch translations by @meezumi in #1575
added missing values by @Amritpandey5 in #1577
Cache is king baby! Let's go π by @jelveh in #1574
fix: get rid of preflight for non-apifs readdir/stat by @ProgrammerIn-wonderland in #1578
build(deps): bump form-data from 4.0.2 to 4.0.4 in /test/integration by @dependabot [bot] in #1580
build(deps): bump braces from 3.0.2 to 3.0.3 in /src/terminal by @dependabot [bot] in #1581
build(deps): bump multer from 1.4.5-lts.2 to 2.0.2 by @dependabot [bot] in #1582
build(deps-dev): bump rollup from 3.21.4 to 3.29.5 in /src/phoenix by @dependabot [bot] in #1583
build(deps): bump serialize-javascript and mocha in /src/terminal by @dependabot [bot] in #1585
Add missing polish translation by @kamilkulczyk in #1584
Refactor file system operations in GUI and puter.js to use eventual consistency by @jelveh in #1579
ci: drop support and testing for node 18 by @Salazareo in #1587
tweak: update and complete translation of it.js by @coluccifrancesco in #1588
add apitest to github actions by @XiaochenCui in #1591
test: add puterjs test to apiteste by @XiaochenCui in #1590
npm: release to npm by @Salazareo in #1592
fix: package name by @Salazareo in #1593
build(deps): bump serialize-javascript from 6.0.1 to 6.0.2 in /src/puter-js by @dependabot [bot] in #1594
npm: fix publish by @Salazareo in #1595
Add context menu to apps in the start menu by @bomberfish in #1487
build(deps): bump requests from 2.32.3 to 2.32.4 in /tools/api-tester/ci by @dependabot [bot] in #1598
Enhance login GUI: improve layout and add show/hide password by @SaifAttar003 in #1599
Revert "Enhance login GUI: improve layout and add show/hide password" by @jelveh in #1600
build(deps): bump webpack from 5.89.0 to 5.101.3 in /src/puter-js by @dependabot [bot] in #1601
Don't raise window to the foreground if close or minimize button is clicked by @bomberfish in #1589
feat: allow setting puter origin via globalThis variables by @Salazareo in #1606
chore: add jsdoc typings for KV interface by @Salazareo in #1607
Add Bahasa Malaysia (Malay) i18n Support by @infienite in #1609
client-cache: update cache-invalidation policy to ts-based comparison by @XiaochenCui in #1611
feat: Add missing Urdu translations by @Azazel7Kuro in #1618
fix puterjs throwing errors after consuming message events not meant for it by @velzie in #1612
feat: Add missing Portuguese translations by @Onitsag in #1615
dep: updating node dep version to one that supports modules by @Salazareo in #1621
client-cache: remove pulling by @XiaochenCui in #1620
feat: DAV Locks support + refactor of DAV method handler by @Salazareo in #1486
revert: eslint config rules by @Salazareo in #1625
chore: update @heyputer/kv.js dependency to version 0.2.0 and initial⦠by @jelveh in #1623
update client-cache logic by @XiaochenCui in #1626
feat: add missing Persian and Finnish translations by @mrtbgau in #1614
feat: Complete missing Ukrainian, Turkish and Thai translations by @Haitam6 in #1616
fix a typo by @XiaochenCui in #1627
Added more reference docs to backend by @onel in #1540
perf: flatten permissions checks for user_to_user perms by @Salazareo in #1562
Add 'Set as Desktop Background' context menu item to images by @bomberfish in #1635
Fix bug with context menu positioning on page load by @bomberfish in #1636
added missing hebrew translations + fixed some existing translation + changed he.js export variable from en to he by @biranzegelman97 in #1634
fix: permission batch get dedup by @Salazareo in #1637
Update Indonesian (Bahasa Indonesia) translation of Puter by @skeith in #1638
feat: metering service by @Salazareo in #1630
feat: Add missing Vietnamese translations by @hungdannt in #1641
fix: increment for non-existent keys by @Salazareo in #1649
Disable browser context menu on launcher popover by @bomberfish in #1648
Puter types streaming ai by @ProgrammerIn-wonderland in #1667
puter.ui.getLanguage() should always return a promise by @jelveh in #1668
Replace "Save As..." with i18n('Save Asβ¦') by @jelveh in #1670
Closes #1669 by @jelveh in #1671
Remove package-lock.json, then update it on x64 and arm64. by @KernelDeimos in #1672
empty: testing pull on deploy server by @KernelDeimos in #1674
style: small change to test deploy by @KernelDeimos in #1675
Update ku.js by @gulizar-elhalil in #1677
add option to automatically set window title to opened file's name by @jelveh in #1678
I18n for sys dirs by @jelveh in #1679
Update UIDesktop.js by @jelveh in #1682
Safari fix for TLS connections in puter by @ProgrammerIn-wonderland in #1683
feat(Translation): added support for Armenian and also added Bulgarian (Closes #1523 ) by @Raj4478 in #1676
fix: preflight issue with protected endpoints by @KernelDeimos in #1688
fix: options.no_options_auth should be optional chained by @ProgrammerIn-wonderland in #1689
feat: extract and centralize cost maps for metering service by @Salazareo in #1691
test: vitest tests for puter js by @Salazareo in #1693
Sidepanel by @jelveh in #1694
fix: remove verbose parameters log by @KernelDeimos in #1695
fix: backward compatibility for puter kv incr/decr by @Salazareo in #1697
chore: publish npm by @Salazareo in #1698
feat: manage permission for user to user and dev to app file sharing by @Salazareo in #1567
Update helpers.js by @jelveh in #1701
Update globals.js by @jelveh in #1702
feat: meter open ai by @Salazareo in #1703
fix: undefined alias array by @Salazareo in #1709
Added refence documentation by @onel in #1690
feat: immprove UIPopover and UIWindow behavior for sidepanel visibility by @jelveh in #1711
First steps towards init log reduction by @KernelDeimos in #1699
fix: broken open ai moderation by @Salazareo in #1714
ci: fix failure by upgrading library by @XiaochenCui in #1713
feat: meter claude ai by @Salazareo in #1716
fix: metering service global write and open ai default model by @Salazareo in #1717
chore: add http-server as a dev dependency and update package scripts by @jelveh in #1718
Npm run test puterjs by @jelveh in #1719
Update UIWindow.js by @jelveh in #1720
fix: bad boolean check by @Salazareo in #1721
Add in events for thumbnails by @ProgrammerIn-wonderland in #1700
feat: add openrouter metering by @Salazareo in #1724
Logs Update by @KernelDeimos in #1723
fix: openrouter usage calculator by @Salazareo in #1725
revert: revert devex changes by @Salazareo in #1728
Revert "revert: revert devex changes " by @Salazareo in #1729
cleanup: remove auxilary return for now by @Salazareo in #1727
Revert "Logs Update" by @ProgrammerIn-wonderland in #1730
fix: adjust toolbar positioning for sidepanel based on taskbar location by @jelveh in #1731
Fix missing check for dev-console service (which is disabled in prod) by @KernelDeimos in #1734
Taskbar pos by @jelveh in #1735
metering: rest of ai by @Salazareo in #1736
Update UITaskbar.js by @jelveh in #1737
Improve puterjs caching by @jelveh in #1739
fix npm package not importing init.cjs by @ProgrammerIn-wonderland in #1743
add guard around sending thumbnail event if thumbnail url is blank or falsey by @ProgrammerIn-wonderland in #1744
improve caching mechanism by deleting specific caches on item addition in FileSystem module by @jelveh in #1745
metering: new usage endpoint + puter-js changes for it by @Salazareo in #1738
feat: metering service allowence checks and subscription integration π by @Salazareo in #1749
fix: typos by @Salazareo in #1754
feat: add alarms to meteringService if cost for service is unexpectedly 0 by @Salazareo in #1755
fix: alowance typo by @Salazareo in #1756
Detailed usage report by @jelveh in #1752
adjust usage table styling by @jelveh in #1759
Add refresh button for updating usage data in Settings by @jelveh in #1760
fix: app monthly usage details error by @Salazareo in #1761
feat: enforce new metering + get rid of old methods by @Salazareo in #1762
feat: purchase addons logic in metering by @Salazareo in #1765
Improve usage report UI by @jelveh in #1766
fix: NaN value for consumedPurchaseCredits accounting by @Salazareo in #1767
fix: bad math check for max consumed credits by @Salazareo in #1769
fix: bad null check for subs by @Salazareo in #1770
cleanup usage reporting by @jelveh in #1771
further devex/log changes by @KernelDeimos in #1758
cleanup usage reporting by @jelveh in #1772
devex: remove verbose logging on copy and paste by @KernelDeimos in #1773
fix: permission writeback to flat kv perissions by @Salazareo in #1774
implement an extension event for IPC messages coming in by @jelveh in #1776
devex: use 'stars' style for webserver notice by @KernelDeimos in #1775
ci: add timeout for api-test by @XiaochenCui in #1768
Remove fixed width in publish website input by @reynaldichernando in #1747
implement stat request dedupe to improve performance by @jelveh in #1753
ci: avoid potential hanging via hard limit by @XiaochenCui in #1778
add puter.workers.getLoggingHandle by @ProgrammerIn-wonderland in #1779
feat: introduce PANEL_WIDTH constant and refactor UIWindow for pa⦠by @jelveh in #1780
feat: alert when going over usage limits significantly + egress metering by @Salazareo in #1782
Revert "feat: alert when going over usage limits significantly + egress metering" by @Salazareo in #1785
Revert "Revert "feat: alert when going over usage limits significantly + egress metering"" by @Salazareo in #1786
Revert "Revert "Revert "feat: alert when going over usage limits significantly + egress metering""" by @Salazareo in #1787
4x revert "feat: alert when going over usage limits significantly + egress metering" by @Salazareo in #1788
fix: bad acl check returning early by @Salazareo in #1789
Revert: fs metering by @Salazareo in #1790
revert: fs metering revertion + fix what was broken by @Salazareo in #1795
feat: limit alerting to only once per multiple of allowed usage by @Salazareo in #1798
feat: shard apps as well to avoid hot partitions by @Salazareo in #1799
feat: rename meteringAndBilling to metering by @Salazareo in #1800
docs: metering and examples by @Salazareo in #1803
Update putility to MIT by @KernelDeimos in #1805
putility license headers update by @KernelDeimos in #1807
chore: putility patch version 1.1.1 by @KernelDeimos in #1808
chore: puter.js version 2.1.1 by @KernelDeimos in #1809
doc: dependencies when moving PuterFS to extension by @KernelDeimos in #1801
Throw error on moderation, fix OpenAI config by @KernelDeimos in #1802
fix: usage limited issue whens treaming by @Salazareo in #1806
feat: route for global usage aggregate by @Salazareo in #1810
remove progwin for desktop mkdir by @jelveh in #1814
ci: capture the error during setup by @XiaochenCui in #1811
feat: allow for unlimitedAllowList + typedefs snuck in by accident by @Salazareo in #1813
dev: add event to mutate app origin by @KernelDeimos in #1823
fix: simplify export import typedef by @Salazareo in #1818
optimization: change moderation time from O(n) to O(1) by @ProgrammerIn-wonderland in #1825
fix: Switch to new OpenAI Moderation model by @ProgrammerIn-wonderland in #1826
i18n(ig): translate missing entries in src/gui/src/i18n/translations/β¦ by @harsha08-2k6 in #1820
Add dedupeName to CreateAppOptions by @reynaldichernando in #1783
chore: update phrasing based on review by @Savithru7142 in #1821
more reliable suspended by @KernelDeimos in #1696
Add sora 2 support by @jelveh in #1834
fix: lessen alert triggering for metering by @Salazareo in #1837
Improved public folder file links by @bomberfish in #1687
Expose MemoryFS from extension as testfs by @KernelDeimos in #1817
chore: update typedefs and fix dbkv issue by @Salazareo in #1840
Add UploadOptions for Puter.js types by @reynaldichernando in #1832
fix: dbkv raw import by @Salazareo in #1848
Fix testMode for txt2vid by @jelveh in #1849
feat: devCenter open ui message by @Salazareo in #1850
simple thumbnail update endpoint by @KernelDeimos in #1794
ci: init e2e test for browser env, tidy other tests by @XiaochenCui in #1796
feat: meter ll_read for the person reading by @Salazareo in #1854
add OpenAI support to txt2speech by @jelveh in #1853
Complete Traditional Chinese translations (#1501 ) by @Arun24-8 in #1822
Revert "Complete Traditional Chinese translations (#1501 )" by @jelveh in #1856
feat: add speech2text by @jelveh in #1855
ai: return reasoning tokens in the streaming mode by @XiaochenCui in #1356
Update files.js and deleteUser to use ll_read by @KernelDeimos in #1839
fix: do not animate non-existing captcha modal by @KernelDeimos in #1869
Small cleanup for recent fix in createTempUser by @KernelDeimos in #1870
Update Norwegian Nynorsk translations in nn.js by @Gnanasaikiran in #1859
Revert "Update Norwegian Nynorsk translations in nn.js" by @jelveh in #1874
better path resolve errors by @KernelDeimos in #1710
feat: ui for dev account + util decorators for controllers in extension by @Salazareo in #1864
ci: disable job "puterjs (browser env, playwright)" by @XiaochenCui in #1871
ci: expose server logs by @XiaochenCui in #1860
fix: allow stripe header and commit db migration by @Salazareo in #1877
fix: bad naming by @Salazareo in #1878
fix: bad amount of sql params by @Salazareo in #1879
fix: stringify metadata object by @Salazareo in #1880
fix: don't set metadata until migration by @Salazareo in #1886
Revert: commits for user metadata changes by @Salazareo in #1887
fix: add back non-functional changes by @Salazareo in #1888
cleanup: more benign changes by @Salazareo in #1889
fix: ts issue when building for deploy by @Salazareo in #1890
fix: adding more benign changes by @Salazareo in #1891
Add monthly and detailed app usage types by @reynaldichernando in #1843
fix(i18n): complete and clean up German translation by @Aravind30648 in #1893
Revert "fix(i18n): complete and clean up German translation" by @jelveh in #1898
Add cache_control support and haiku 4.5 by @ProgrammerIn-wonderland in #1897
make together.ai image and video models work! by @jelveh in #1881
filesystem refactoring efforts toward eventually moving to extension (1/unknown) by @KernelDeimos in #1868
fix: access internal ID without assuming fetch by @KernelDeimos in #1872
fix: also check this.entry.id when checking mysql_id by @KernelDeimos in #1906
feat: rawBody parser, user metadata column + other misc fixes by @Salazareo in #1904
PuterFS extension proxy by @KernelDeimos in #1875
fix: check if system_prompts is an empty array by @KernelDeimos in #1907
fix: bad wrapper wrap by @Salazareo in #1908
Move rmdir to extension and remove #rmnode from PuterFSProvider by @KernelDeimos in #1916
fix: error calling .startsWith on null mime_type by @KernelDeimos in #1917
fix: allow mysql json object response by @Salazareo in #1918
Move operations (quick_check, mkdir, read) to extension by @KernelDeimos in #1919
chore: type fixes by @Salazareo in #1920
Move ACL to ll_mkdir, and move operations (stat, copy_tree) to puterfs extension by @KernelDeimos in #1921
Add hindi readme by @parth-117 in #1927
Revert "Add hindi readme" by @jelveh in #1928
Revert "Add hindi readme (#1927 )" by @jelveh in #1929
Add missing puter env enums by @reynaldichernando in #1926
Fix formatting: Add space after slash in German translation by @2400032286 in #1925
feat: Settings and modal UI/UX improvements by @utkubakir in #1828
Revert "feat: Settings and modal UI/UX improvements" by @jelveh in #1931
performance: batch metering service usage increments when relevant by @Salazareo in #1930
Move readdir and move to puterfs extension by @KernelDeimos in #1932
Use standard color picker in theme dialog by @KernelDeimos in #1933
chore: ts lint stuff by @Salazareo in #1934
added complete French translation of README by @vipul264og in #1936
docs: prefix together ai model by @Salazareo in #1939
chore: remove rollup, always use webpack by @KernelDeimos in #1942
Revert "docs: add complete French translation of README (#1936 )" by @KernelDeimos in #1943
Re-add direct download via URL parameter by @bomberfish in #1914
tweak(apitest): reduce benchmark size by @KernelDeimos in #1949
Add Punjabi (ΰ¨ͺΰ©°ΰ¨ΰ¨Ύΰ¨¬ΰ©) translation README by @vipul264og in #1944
Openrouter reasoning fixes by @ProgrammerIn-wonderland in #1951
Autodiscover ollama support by @ProgrammerIn-wonderland in #1953
Max token failsafe by @ProgrammerIn-wonderland in #1954
Fix: missing published/attached website icon for folder on different views (#1764 ) by @Hetsavani in #1945
[puterfs] move write operations to extension by @KernelDeimos in #1940
fix: references to global_config in puterfs by @KernelDeimos in #1958
Add Mistral OCR support and imrpove img2txt API by @jelveh in #1957
PuterFSProvider cleanup and removal of core copy by @KernelDeimos in #1956
fix: explicit actor not passed to fs provider by @KernelDeimos in #1960
change claude service max_tokens calculation by @ProgrammerIn-wonderland in #1962
fix: x86 not booting locally by @r58Playz in #1959
Add support for GPT-5.1 model and reasoning controls by @jelveh in #1967
add puter.tools by @ProgrammerIn-wonderland in #1973
Move thumbnail mutation to getSafeEntry by @ProgrammerIn-wonderland in #1980
PuterFSProvider decoupling by @KernelDeimos in #1961
new gemini models by @ProgrammerIn-wonderland in #1986
puterfs decoupling continued by @KernelDeimos in #1963
PuterFS - Move storage into filesystem provider by @KernelDeimos in #1982
disable memoryfs test (for now) and fix package issue for LocalDiskStorage by @KernelDeimos in #1987
doc: update documentation for TestKernel by @KernelDeimos in #1990
Fix gemini when tools are null by @ProgrammerIn-wonderland in #1992
id2path fix by @KernelDeimos in #1994
fix: open router cache token metering by @Salazareo in #1988
Fix undefined variables and make it impossible to have them by @KernelDeimos in #1995
fix: Add debounce to toolbar reveal when dragging windows to prevent accidental activation by @JohnBoulanger in #1989
fix: only fallback to models that are the same by @Salazareo in #2001
fix: eslint autofixable errors by @Salazareo in #2002
Add ElevenLabs TTS provider integration by @jelveh in #2004
Add missing together image model prefixes by @reynaldichernando in #1972
fix: fallback models by @Salazareo in #2005
Add 11labs speech-to-speech voice changer integration by @jelveh in #2006
i18n(nn): finalize Norwegian Nynorsk translation fixes (Fixes #1514 ) by @eswarseeram in #2007
fix: openrouter missing usage by @Salazareo in #2008
Docs: improve clarity in README introduction by @bangarumahesh22 in #2010
Add missing Traditional Chinese translations to zhtw.js by @SuryaGanesh284 in #2013
2025 11 gemini OpenAI refactor by @ProgrammerIn-wonderland in #2014
Gemini nano banana pro updated by @ProgrammerIn-wonderland in #2015
docs: add Punjabi translation link to README by @krishna3324 in #2020
fix(puterfs): use node crypto instead of Web API by @KernelDeimos in #2022
test: add test infra to run vitest on all of backend wip by @Salazareo in #2023
Use aliases when calculating max_tokens in ClaudeService by @ProgrammerIn-wonderland in #2046
fix: oss boot error fixes by @Salazareo in #2039
dev(test): enable use of TestKernel in unit tests by @KernelDeimos in #2024
fix: tsconfig to ignore vite config files by @Salazareo in #2048
test: migrate _test tests to vitest tests by @KernelDeimos in #2047
Update tsconfig.json by @2400060033 in #2035
Add Traditional Chinese (ηΉι«δΈζ) Translation for Issue #1501 by @parth-117 in #2032
Create README.tel.md by @rajucreate in #2045
Revert "Create README.tel.md" by @jelveh in #2049
feat: MeteringService test fixes for now by @Salazareo in #2050
Worker + NodeJS support for puter.ai.txt2img and puter.ai.txt2vid by @ProgrammerIn-wonderland in #2051
feat: meteringService test suite by @Salazareo in #2052
refactor: introduce TestCoreModule for test kernel by @KernelDeimos in #2053
fix: metering service alerts + missing claude costs by @Salazareo in #2058
test: add tests for services in CoreModule by @KernelDeimos in #2059
feat: KV testing by @Salazareo in #2061
Email read permission for whoami by @ProgrammerIn-wonderland in #2064
chore: some type and eslint fixes for tests by @Salazareo in #2065
fix: typo in dbkvStore by @Salazareo in #2066
fix: backend tests breaking with permision + together ai missing costs for non-streamed requests by @Salazareo in #2067
Working main 2025 11 29 by @ProgrammerIn-wonderland in #2068
chore: various test related changes by @Salazareo in #2069
ci: cleanup docker build by @Salazareo in https://github.com/HeyPuter/puter/pull/2070
ci: fix docker again by @Salazareo in https://github.com/HeyPuter/puter/pull/2071
ci: package and docker fixes by @Salazareo in https://github.com/HeyPuter/puter/pull/2072
ci: add test coverage by @Salazareo in https://github.com/HeyPuter/puter/pull/2073
test: claudeService by @Salazareo in https://github.com/HeyPuter/puter/pull/2074
Add permission so apps can manage apps or subdomains of a user by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2075
fix: TelemetryService by @Salazareo in https://github.com/HeyPuter/puter/pull/2077
fix: wrong order for telemetery init by @Salazareo in https://github.com/HeyPuter/puter/pull/2078
fix: stricten undef checks by @Salazareo in https://github.com/HeyPuter/puter/pull/2082
chore: add typedefs for puter.js by @Salazareo in https://github.com/HeyPuter/puter/pull/2086
Fix turnstile auth by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2087
Improve error handling for puter.perms by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2088
dev: add import_identity to config for debug use by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2089
types: fix puter-js type exports by @Salazareo in https://github.com/HeyPuter/puter/pull/2090
Add flux.2 costmaps by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2092
Add puter.perms.requestEmail by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2093
Update Node.js section header in README.md by @jelveh in https://github.com/HeyPuter/puter/pull/2095
Add methods for apps to request access to standard directories by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2096
apps/subdomains permissions by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2097
npm: publish new readme by @Salazareo in https://github.com/HeyPuter/puter/pull/2098
rename: requestPermission -> request by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2101
Dashboard by @jelveh in https://github.com/HeyPuter/puter/pull/2104
chore: associate googlemail with gmail rules by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2106
fix: eleven labs metering costs by @Salazareo in https://github.com/HeyPuter/puter/pull/2112
Fix AI types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2100
fix: pass exporter to NodeSDK constructor by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2113
Performance sprint preparations by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2108
fix: add simple 30s cache to /healthcheck by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2115
fix: downgrade opentelemetry so it works again by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2118
dev: extension.span by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2119
feat: refactor ai to have single entry point and follow defined model structure by @Salazareo in https://github.com/HeyPuter/puter/pull/2114
Add type for extension.span by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2120
feat: rename ai models to match norm by @Salazareo in https://github.com/HeyPuter/puter/pull/2121
fix: prevent loop if failing ai models? by @Salazareo in https://github.com/HeyPuter/puter/pull/2122
Revert: change to ai model names by @Salazareo in https://github.com/HeyPuter/puter/pull/2123
Add auth types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2117
Fix ratio in TogetherImage by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2127
fix: bad method name for together ai by @Salazareo in https://github.com/HeyPuter/puter/pull/2128
feat: single image ai endpoint by @Salazareo in https://github.com/HeyPuter/puter/pull/2129
fix: together ai image prices by @Salazareo in https://github.com/HeyPuter/puter/pull/2130
Revert: single ai image entry point by @Salazareo in https://github.com/HeyPuter/puter/pull/2131
Remove backend-core-0 and inline validation helpers by @jelveh in https://github.com/HeyPuter/puter/pull/2138
chore: remove deprecated threads by @Salazareo in https://github.com/HeyPuter/puter/pull/2139
Delete backend README links from README.md by @jelveh in https://github.com/HeyPuter/puter/pull/2140
Remove terminal phoenix emulator by @jelveh in https://github.com/HeyPuter/puter/pull/2141
cleanup: remove Library + bloated utils where possible by @Salazareo in https://github.com/HeyPuter/puter/pull/2142
Revert "Revert: single ai image entry point (#2131)" by @Salazareo in https://github.com/HeyPuter/puter/pull/2143
fix: bad ai calls by @Salazareo in https://github.com/HeyPuter/puter/pull/2144
fix: batch app info referral by @Salazareo in https://github.com/HeyPuter/puter/pull/2146
Add alias for gpt-5.2-chat by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2148
Fix KV types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2152
Add missing AI types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2151
Fix FS types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2134
Fix speech2txt options type by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2150
Fix hosting types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2153
several scattered performance fixes by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2154
cleanup: remove dead cloudwatch logic by @Salazareo in https://github.com/HeyPuter/puter/pull/2155
fix: bad usageType by @Salazareo in https://github.com/HeyPuter/puter/pull/2157
chore: decrease uninmportant logs by @Salazareo in https://github.com/HeyPuter/puter/pull/2158
Remove fat from puterjs by @jelveh in https://github.com/HeyPuter/puter/pull/2156
Remove Bootstrap 5.1.3 assets from public directory by @jelveh in https://github.com/HeyPuter/puter/pull/2161
Remove CommentService and related tests by @jelveh in https://github.com/HeyPuter/puter/pull/2160
Remove dev-console-ui-utils and update related services by @jelveh in https://github.com/HeyPuter/puter/pull/2163
Remove tag cache refresh logic from AppInformationService by @jelveh in https://github.com/HeyPuter/puter/pull/2166
Remove DevConsoleService and related dev console widgets by @jelveh in https://github.com/HeyPuter/puter/pull/2167
chore: continue removing extra logs by @Salazareo in https://github.com/HeyPuter/puter/pull/2159
chore: add better logging to broadcast connections by @Salazareo in https://github.com/HeyPuter/puter/pull/2169
cd: make our deploy reliably wait for server to be ready by @Salazareo in https://github.com/HeyPuter/puter/pull/2170
Ds/main by @Salazareo in https://github.com/HeyPuter/puter/pull/2171
fix: bad caching query crashing our db by @Salazareo in https://github.com/HeyPuter/puter/pull/2172
fix: make cache calls async on boot by @Salazareo in https://github.com/HeyPuter/puter/pull/2173
Remove unused putility features by @jelveh in https://github.com/HeyPuter/puter/pull/2168
fix: missing video gen ai services in ai module by @Salazareo in https://github.com/HeyPuter/puter/pull/2180
fix: add missing 'tel' runtime module by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2182
Fix speech2speech options by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2133
Fix more puter.js typescript types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2181
perf: [+] readdirstat_uuid optimized implementation by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2183
telemetry: config telemetry to run by default by @Salazareo in https://github.com/HeyPuter/puter/pull/2184
Add usage limit dialog and integrate with driverCall_ by @jelveh in https://github.com/HeyPuter/puter/pull/2185
App telemetry user iteration by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2188
Add flux.2 max for together provider by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2189
add typescript transpilation for legacy node support βΉοΈ by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2190
fix: types and tests? by @Salazareo in https://github.com/HeyPuter/puter/pull/2193
Performance Updates by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2192
Add gemini 3 flash to models by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2191
Improve EntityStorage Performance by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2194
add user iteration to all methods which return an App object by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2203
feat: dynamo in oss by @Salazareo in https://github.com/HeyPuter/puter/pull/2195
Unit Benchmarks by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2202
More Benchmarks by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2206
chore: update our required node version by @Salazareo in https://github.com/HeyPuter/puter/pull/2204
Revert 2206 eric/25 cj0 more benchmarks by @Salazareo in https://github.com/HeyPuter/puter/pull/2208
Undo revert of benchmarks and fix imports by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2210
Entity Refactor (part 0) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2211
Add DataAccessModule > AppService > select() (future replacement for EntityStorage+ObjectMapping) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2212
fix: don't load bench.js files by @Salazareo in https://github.com/HeyPuter/puter/pull/2207
Add optional requestCallbacks options to getUser by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2186
Fix apps types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2197
Fix workers types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2198
feat: support extension divs headers and tags being inserted to puter homepage load by @Salazareo in https://github.com/HeyPuter/puter/pull/2221
fix: cache get_app result with expiry to lessen load on db by @Salazareo in https://github.com/HeyPuter/puter/pull/2229
fix: don't cache nor fetch raw b64 url for app icons by @Salazareo in https://github.com/HeyPuter/puter/pull/2230
perf: make app entries more scalable, avoid writing global entries since its just puter itself and isn't relevant by @Salazareo in https://github.com/HeyPuter/puter/pull/2233
Responses API support for OpenAI by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2226
Update first-run-issues.md with dnf5 instructions by @soumyabrata23130 in https://github.com/HeyPuter/puter/pull/2239
Remove debug logs and improve query coalescing timeout by @jelveh in https://github.com/HeyPuter/puter/pull/2241
Fix FS types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2201
Implement redirect from puter.site or www.puter.site to informational page by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2244
Fix shortcutTo in puter.fs.mkdir by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2246
fix: Enable godmode for dev-center to open worker files in editor by @Omcodes23 in https://github.com/HeyPuter/puter/pull/2224
lint: hook for precommit by @Salazareo in https://github.com/HeyPuter/puter/pull/2245
fix: ts extensions by @Salazareo in https://github.com/HeyPuter/puter/pull/2247
Remove flux schnell-free by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2243
fix: add catch all for minimum usage amounts by @Salazareo in https://github.com/HeyPuter/puter/pull/2248
fix: more strict metering limits, disable ambigious openrouter one by @Salazareo in https://github.com/HeyPuter/puter/pull/2249
fix: broken openrouter costs by @Salazareo in https://github.com/HeyPuter/puter/pull/2250
Fix/explorer cursor grab on click by @Hetsavani in https://github.com/HeyPuter/puter/pull/2176
feat: method for updating users metering directly by @Salazareo in https://github.com/HeyPuter/puter/pull/2252
chore(deps): bump jws from 4.0.0 to 4.0.1 by @dependabot [bot] in https://github.com/HeyPuter/puter/pull/2232
i18n(de): polish German translations & fix typos (Fixes #1532) by @eswarseeram in https://github.com/HeyPuter/puter/pull/2009
Remove ComplainAboutVersionsService and related code by @jelveh in https://github.com/HeyPuter/puter/pull/2179
Add 'Open in AI' option to item context menus by @jelveh in https://github.com/HeyPuter/puter/pull/1974
doc: add README.md for GUI directory by @SuryaGanesh284 in https://github.com/HeyPuter/puter/pull/2021
Revert "doc: add README.md for GUI directory" by @jelveh in https://github.com/HeyPuter/puter/pull/2253
chore(deps): bump qs and express by @dependabot [bot] in https://github.com/HeyPuter/puter/pull/2256
feat: new kvstore operatios for more granular updates π by @Salazareo in https://github.com/HeyPuter/puter/pull/2254
Thumbnail parameter by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2257
chore(backend): upgrade nodemailer by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2259
feat: kv.remove feature to remove nested elements or list indices by @Salazareo in https://github.com/HeyPuter/puter/pull/2258
fix: husky too strict, allow failed eslint through for now by @Salazareo in https://github.com/HeyPuter/puter/pull/2260
Model singularity by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2255
feat: give referrals some credit too by @Salazareo in https://github.com/HeyPuter/puter/pull/2262
fix(backend): race condition in hashing_stream by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2263
Add automatic thumbnail generation to file uploads in GUI by @jelveh in https://github.com/HeyPuter/puter/pull/2261
Add README for Puter localization and setup by @Talasudeepk in https://github.com/HeyPuter/puter/pull/2043
provide safety_identifier in addition to user by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2268
Make puter boot on windows by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2269
Support getDeveloperProfile with no arguments by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2270
chore(deps): bump qs and body-parser by @dependabot [bot] in https://github.com/HeyPuter/puter/pull/2271
Retry for openrouter on max_tokens overage by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2274
no_extra_params in together service to prevent defaults from being sp⦠by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2275
prevent signout from workers by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2276
feat: more extension controller decorators by @Salazareo in https://github.com/HeyPuter/puter/pull/2272
Improve UI for App Deployment Options in Dev Center by @rowin-C in https://github.com/HeyPuter/puter/pull/2266
fix: shard app usages properly by user by @Salazareo in https://github.com/HeyPuter/puter/pull/2279
Revise README.ro.md for updates and corrections by @sn-o-w in https://github.com/HeyPuter/puter/pull/2280
fix: attempt coercion to fix vscode corruption by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2281
Normalize file object in /writeFile by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2282
Prevent puter.fs.write from failing on concurrent writes by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2287
feat(gui): add keyboard shortcuts guide dialog by @RahulAswal01 in https://github.com/HeyPuter/puter/pull/2278
Revert "feat(gui): add keyboard shortcuts guide dialog" by @jelveh in https://github.com/HeyPuter/puter/pull/2288
Add GPT 5.2 Codex by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2293
feat: paginated listing for kv items by @Salazareo in https://github.com/HeyPuter/puter/pull/2296
OpenAI web_search support by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2299
feat(puter.js): make home directory default cwd by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2302
[PUT-301] feat: usage endpoints, allow appName by @Salazareo in https://github.com/HeyPuter/puter/pull/2303
fix(puter.js): check for uuid before relative path by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2304
gemini 2.5/3 no preview by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2306
Fixes related to apps driver (replacement for es:apps) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2308
Data access simplifications (part 1: apps driver) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2219
perf: improve tel + decrease logs by @Salazareo in https://github.com/HeyPuter/puter/pull/2309
[PUT-456] fix: delete apps from marketplace when deleting anywhere else by @Salazareo in https://github.com/HeyPuter/puter/pull/2310
feat(data-access): move puter.js read to app driver by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2312
Revert "feat(data-access): move puter.js read to app driver" by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2313
fix: batch fetch get apps for launch apps and recommended apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2315
Migrate puter.apps.read from app:es to app (fixed) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2316
Revert "feat(data-access): move puter.js read to app driver" by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2318
fix: add back test for launch apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2317
perf: dedup and cache get_apps in puter gui, also add more app batching in backend by @Salazareo in https://github.com/HeyPuter/puter/pull/2319
add safety checks for worker updates by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2321
fix: dedup get_apps app requests by @Salazareo in https://github.com/HeyPuter/puter/pull/2325
fix: disable bad token checks? by @Salazareo in https://github.com/HeyPuter/puter/pull/2326
Video model details by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2327
fix gemini cost key by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2328
fix: disable requests from server in two services by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2329
perf: batch readdir suggested apps into single big query by @Salazareo in https://github.com/HeyPuter/puter/pull/2332
fix: log format by @Salazareo in https://github.com/HeyPuter/puter/pull/2333
Add info about usage data scope for docs by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2334
perf: don't fetch b64 icon for apps always, and lru suggestedApps by @Salazareo in https://github.com/HeyPuter/puter/pull/2336
fix: skip CI tests when only docs are changed (#2335) by @serilevanjalines in https://github.com/HeyPuter/puter/pull/2338
fix: suggested apps breaking by @Salazareo in https://github.com/HeyPuter/puter/pull/2343
Fix issues with URL fetch by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2345
Move webdav to dav.puter.com by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2330
Feat: Add system info (Client + Server metrics) by @llpingll in https://github.com/HeyPuter/puter/pull/2311
fix: header resend issue by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2353
fix: only rate limit login when failed by @Salazareo in https://github.com/HeyPuter/puter/pull/2355
[PUT-466] fix: count request costs in openrouter models with request cost present by @Salazareo in https://github.com/HeyPuter/puter/pull/2356
otel: add spans to all kv methods by @Salazareo in https://github.com/HeyPuter/puter/pull/2358
docs: add example for streaming with function calling by @AryaXDG in https://github.com/HeyPuter/puter/pull/2365
fix: app-under-user access token ACL by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2367
fix: remove rate limit await on writes by @Salazareo in https://github.com/HeyPuter/puter/pull/2368
[PUT-475] fix togetherai chat being broken + deprioritize them π by @Salazareo in https://github.com/HeyPuter/puter/pull/2369
fix: cost mapping for together ai from openai sdk by @Salazareo in https://github.com/HeyPuter/puter/pull/2371
fix: map again by @Salazareo in https://github.com/HeyPuter/puter/pull/2372
fix(resume-analyzer): add preprocessing for DOCX and TXT files by @Devansh-18 in https://github.com/HeyPuter/puter/pull/2359
fix: match override properly by @Salazareo in https://github.com/HeyPuter/puter/pull/2373
Add canonical puterId to image provider models by @velzie in https://github.com/HeyPuter/puter/pull/2322
cleanup: remove informationService in favour of existing helper methods and logic by @Salazareo in https://github.com/HeyPuter/puter/pull/2374
puter x-expected-entity-length for site by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2379
video model costs by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2383
[PUT-487] fix: set max-min on app-user-count queries π by @Salazareo in https://github.com/HeyPuter/puter/pull/2384
fix: expose getUserService in extension typings by @Salazareo in https://github.com/HeyPuter/puter/pull/2385
getAuthToken on node package by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2388
fix typo gemini service by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2389
OpenAI chat interface API concept by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2390
Fix tests for ChatAPIService and add Anthropic tool call coersions by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2391
More Anthropic tool calling coercions by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2392
fix: ai metering by @Salazareo in https://github.com/HeyPuter/puter/pull/2393
Add back worker redeploy notification by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2394
Add more coersions to responses toolcalling support by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2395
Add X-EXPECTED-ENTITY-LENGTH for HTTP/2 connections on webdav for predictive file length by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2396
WebDAV post migration fixes by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2398
fix: alerting for metering by @Salazareo in https://github.com/HeyPuter/puter/pull/2399
fix: range headers in file.js by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2400
feat: replace serializible caches with redis instead of kvjs π by @Salazareo in https://github.com/HeyPuter/puter/pull/2381
fix: missing redis changes by @Salazareo in https://github.com/HeyPuter/puter/pull/2401
Revert "feat: replace serializible caches with redis instead of kvjs π by @Salazareo in https://github.com/HeyPuter/puter/pull/2402
Reapply: reverted redis migration changes by @Salazareo in https://github.com/HeyPuter/puter/pull/2403
Ability to revoke access tokens by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2404
dav.puter.com CORS headers by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2406
fix: limit open router expensive models for now by @Salazareo in https://github.com/HeyPuter/puter/pull/2407
dev(backend): add broadcast webhook endpoint by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2380
fix: redis cache for user by @Salazareo in https://github.com/HeyPuter/puter/pull/2409
Separate subdomains from readir by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2346
feat: add alerting for usage abuse by @Salazareo in https://github.com/HeyPuter/puter/pull/2413
web-cdn-test by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2414
Ns/opus 4.6 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2420
opus 4.6 fix billing by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2422
Document getAuthToken for web based login by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2418
fix: usage limited error handling by @Salazareo in https://github.com/HeyPuter/puter/pull/2423
fix: don't use ai aggregators if we have the model ourselves by @Salazareo in https://github.com/HeyPuter/puter/pull/2424
Update puter-js readme for getAuthToken by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2417
fix: auto-collapse playground menu on mobile (#2430) by @sanjeevafk in https://github.com/HeyPuter/puter/pull/2431
chat_completions tool call fixes by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2434
Restrict apps from using /puterai/openai/v1 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2435
fix: ensure cache invalidation when verifying OTP by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2437
Increase opus 4.6 max tokens by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2439
Ns/service guard by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2440
ai email verification by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2441
email confirmation error api error update by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2442
fix: gemini via openrouter models by @Salazareo in https://github.com/HeyPuter/puter/pull/2438
Update french translations by @Zac0511 in https://github.com/HeyPuter/puter/pull/2445
chore: fix eslint issues by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2436
added install.md by @stuffbymax in https://github.com/HeyPuter/puter/pull/2405
fix: dev center emails by @Salazareo in https://github.com/HeyPuter/puter/pull/2447
Add shell reload instructions for nvm setup by @stuffbymax in https://github.com/HeyPuter/puter/pull/2446
fix: axiosRequest log dumping b64 urls by @Salazareo in https://github.com/HeyPuter/puter/pull/2448
fix: decrease log usage by @Salazareo in https://github.com/HeyPuter/puter/pull/2449
Fix gemini 3 pro image model name by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2450
fix: add explicit handling for access token in ACL by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2451
add configurable backend by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2452
Fix auth type typo by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2454
[PUT-471] feat: estimate and bill input for gemini imgaes :dev: by @Salazareo in https://github.com/HeyPuter/puter/pull/2453
allow empty message by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2455
fix: decrease large error log from wrong model by @Salazareo in https://github.com/HeyPuter/puter/pull/2456
Revert "allow empty message" by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2457
fix tool call blank content by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2458
Ns/web dav range fixes by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2459
feat: app icons in subdomain by @Salazareo in https://github.com/HeyPuter/puter/pull/2461
Worker badge and info by @miikakuisma in https://github.com/HeyPuter/puter/pull/2462
feat: remove file cache service by @Salazareo in https://github.com/HeyPuter/puter/pull/2464
add extra model details, update grok models by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2465
fix: metering alerts for missing costs by @Salazareo in https://github.com/HeyPuter/puter/pull/2466
Add cache tokens for grok 3 mini fast by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2469
fix: false alarm from openrouter by @Salazareo in https://github.com/HeyPuter/puter/pull/2470
cleanup: remove thumbnail service for client side thumbnails by @Salazareo in https://github.com/HeyPuter/puter/pull/2468
feat(start-menu): add "Add to Desktop" option for all apps by @Hetsavani in https://github.com/HeyPuter/puter/pull/2386
dedup image models by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2475
Ns/workers in stat attempt 2 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2476
fix: app icons saving by @Salazareo in https://github.com/HeyPuter/puter/pull/2477
fix: app icon again by @Salazareo in https://github.com/HeyPuter/puter/pull/2478
fix: app-icons protocol by @Salazareo in https://github.com/HeyPuter/puter/pull/2480
feat: subdomain error redirect by @Salazareo in https://github.com/HeyPuter/puter/pull/2483
add sandboxing by default in god mode created workers by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2481
fix: do not await for puter icon write in db by @Salazareo in https://github.com/HeyPuter/puter/pull/2485
fix: don't stream back bytes for icons by @Salazareo in https://github.com/HeyPuter/puter/pull/2486
Bundle docs CDN assets locally for full offline support by @iamJ3 in https://github.com/HeyPuter/puter/pull/2473
Add workers AI image model support by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2489
add more aliases for cloudflare image provider by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2491
fix stat options when stat(path, options) by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2492
workers ai realias - to dot by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2493
patch(puterfs): limit directory depth to 35 by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2494
perf: improve app open time by @Salazareo in https://github.com/HeyPuter/puter/pull/2490
fix: app icon origin by @Salazareo in https://github.com/HeyPuter/puter/pull/2500
fix: allow b64 srings without mime type for app icons by @Salazareo in https://github.com/HeyPuter/puter/pull/2502
add extra permission check for granted apps by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2503
WebDAV don't fetch subdomains by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2504
also don't fetch thumbs or associated apps by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2505
Files tab for dashboard view by @miikakuisma in https://github.com/HeyPuter/puter/pull/2331
feat: sonnet-4.6 support by @Salazareo in https://github.com/HeyPuter/puter/pull/2506
Add permission requests for directories of subdomains associated with apps owned by the user by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2507
Dashboard: Files tab fixes by @miikakuisma in https://github.com/HeyPuter/puter/pull/2508
make image models case insensitive for backwards compatibility reasons by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2512
feat: cleanup cache invalidation and pull out keys to be easily used in other places that need the same cache by @Salazareo in https://github.com/HeyPuter/puter/pull/2515
fix: redis cache deletions by @Salazareo in https://github.com/HeyPuter/puter/pull/2518
Login/Signup with OIDC by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2460
Dashboard dark mode fixes by @miikakuisma in https://github.com/HeyPuter/puter/pull/2516
fix: don't await for cache writes by @Salazareo in https://github.com/HeyPuter/puter/pull/2519
lint: fix eslint indentation for switch cases by @Salazareo in https://github.com/HeyPuter/puter/pull/2520
perf: batching get_apps cache look ups by @Salazareo in https://github.com/HeyPuter/puter/pull/2521
fix: don't call stat on each file in dir by @Salazareo in https://github.com/HeyPuter/puter/pull/2522
fix: wrong icon for workers by @Salazareo in https://github.com/HeyPuter/puter/pull/2524
fix: cleanup some app es and app service validation by @Salazareo in https://github.com/HeyPuter/puter/pull/2523
Clarify expiration time unit in getReadURL.md by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2525
fix: bad copy with reference in UIItem by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2526
implement keyboard shortcuts guide UI (#2037) by @samarthmishra46 in https://github.com/HeyPuter/puter/pull/2484
fix nano banana pro pricing and resolutions by @P3il4 in https://github.com/HeyPuter/puter/pull/2501
fix: stricter invalidation for 2fa and confirm email codes by @Salazareo in https://github.com/HeyPuter/puter/pull/2528
fix: default timeout on user caches of 15 min by @Salazareo in https://github.com/HeyPuter/puter/pull/2530
dev(oidc): redirect to login/signup on error by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2531
WIP: use cors proxy for outbound requests by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2533
cache: extend cache invalidation to emit events out too by @Salazareo in https://github.com/HeyPuter/puter/pull/2532
dont forward data urls through cors proxy and fix core.validation by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2537
fix desktop gui error handling for workers by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2538
Fix OIDC in popups by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2539
cleanup: remove debugger calls in our code by @Salazareo in https://github.com/HeyPuter/puter/pull/2535
fix: make invalidations more robust by @Salazareo in https://github.com/HeyPuter/puter/pull/2529
fix(backend): invalidate app permission debounce by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2541
fix: remove broadcast for cache updates by @Salazareo in https://github.com/HeyPuter/puter/pull/2542
fix: app icons via subdomain on localhost by @Salazareo in https://github.com/HeyPuter/puter/pull/2544
fix(gui): defer login event until listener registered by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2547
feat: add is_private to apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2546
feat: type extension cache update events by @Salazareo in https://github.com/HeyPuter/puter/pull/2548
fix: don't await cache invalidation for grant app permission by @Salazareo in https://github.com/HeyPuter/puter/pull/2551
perf: delete keys in parallel from redis by @Salazareo in https://github.com/HeyPuter/puter/pull/2552
feat: add private app asset token auth helpers by @Salazareo in https://github.com/HeyPuter/puter/pull/2555
feat: add private app access extension event contract by @Salazareo in https://github.com/HeyPuter/puter/pull/2556
perf:remove recents cache by @Salazareo in https://github.com/HeyPuter/puter/pull/2558
feat: enforce private app hosting access gate by @Salazareo in https://github.com/HeyPuter/puter/pull/2557
Add nano banana 2 by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2562
fix: corrected service reference by @4nshuman in https://github.com/HeyPuter/puter/pull/2559
fix(backend): default rate-limit scope instead of error by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2564
feat: add private access rollout gate and auditing by @Salazareo in https://github.com/HeyPuter/puter/pull/2560
dev(oidc): switch login/signup flows where applicable by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2550
[OIDC] allow user deletion for accounts without a password by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2567
chore: switch private hosting domain to puter.dev by @Salazareo in https://github.com/HeyPuter/puter/pull/2565
feat: add private app direct-login bootstrap page by @Salazareo in https://github.com/HeyPuter/puter/pull/2566
fix: hardcode default perm by @Salazareo in https://github.com/HeyPuter/puter/pull/2570
fix: redis startup by @Salazareo in https://github.com/HeyPuter/puter/pull/2571
fix(oidc): bring "Add Existing User" to working state by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2572
Permission Request Modal Update by @miikakuisma in https://github.com/HeyPuter/puter/pull/2499
Fix: When a maximized window gets resized, Puter apps should be resized as well by @miikakuisma in https://github.com/HeyPuter/puter/pull/2498
fix(auth): add explicit check for access token suspension by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2576
fix(ai): additional auth guard by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2577
Eric/26323 revert 26322 by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2578
Revert "fix(auth): add explicit check for access token suspension (#2β¦ by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2579
Revert "fix(ai): additional auth guard (#2577)" by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2580
Reapply "fix(auth): add explicit check for access token suspension (#β¦ by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2581
fix(ai): additional auth guard (corrected 676b6c3 ) by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2582
feat: resolve private app hosts by index_url fallback by @Salazareo in https://github.com/HeyPuter/puter/pull/2583
fix: private app config to use app urls by @Salazareo in https://github.com/HeyPuter/puter/pull/2586
fix(oidc): login flow with puter.ui.authenticateWithPuter by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2588
feat: private app config to use app urls + app routing by @Salazareo in https://github.com/HeyPuter/puter/pull/2587
docs : udpdate current year #2584 by @Babali42 in https://github.com/HeyPuter/puter/pull/2585
fix: remove redis cache scan in favour of direct key invalidation by @Salazareo in https://github.com/HeyPuter/puter/pull/2589
dev(oidc): hide unnecessary div by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2592
feat: add subdomain to private asset tokens by @Salazareo in https://github.com/HeyPuter/puter/pull/2591
fix: reset subdomain if empty by @Salazareo in https://github.com/HeyPuter/puter/pull/2593
fix: puter app middleware host in token by @Salazareo in https://github.com/HeyPuter/puter/pull/2594
fix: bad token generation for private apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2596
fix: origin canonization by @Salazareo in https://github.com/HeyPuter/puter/pull/2597
fix(oidc): request object reference in oidc signup by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2598
fix: prioritize new token thant anything outdated stored in localstorage for private apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2600
dev(apps): add configuration to not use app icon subdomain by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2603
fix: add logs to debug on prod by @Salazareo in https://github.com/HeyPuter/puter/pull/2604
feat: more robust error logs by @Salazareo in https://github.com/HeyPuter/puter/pull/2605
fix: fetching user from session token by @Salazareo in https://github.com/HeyPuter/puter/pull/2607
Make credentialless false by default by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2608
feat: redirect away cookie for private apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2609
clean: remove a log by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2610
Fix border colors in Settings panel by @miikakuisma in https://github.com/HeyPuter/puter/pull/2595
chore: typeFixes by @Salazareo in https://github.com/HeyPuter/puter/pull/2615
add gpt 5.3 codex and gpt 5.4 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2618
fix(puterfs): await queue items for fsentry action by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2616
clean(apps): merge fns only called by get_app_icon_url by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2617
use openrouter provided USD cost when present by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2619
fix gemini image provider implementation by @P3il4 in https://github.com/HeyPuter/puter/pull/2569
Add Networking examples to docs index page by @theluckystrike in https://github.com/HeyPuter/puter/pull/2613
Update Hosting API description #2612 by @eshwar-artyz in https://github.com/HeyPuter/puter/pull/2620
fix: private app token by @Salazareo in https://github.com/HeyPuter/puter/pull/2623
feat: phase 1 canonical app origin resolution by @Salazareo in https://github.com/HeyPuter/puter/pull/2624
Ns/configurable gui bundle by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2629
perf(core): LRU cache PuterHomepageService by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2627
revert puterjs gui ordering by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2631
Fix missing password entry by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2632
devex(core): avoid email verification on dev by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2634
add support for building with custom icons by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2635
s/icons/assets/ for building GUI by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2636
s/mv/cp/ for gui buildstep by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2637
fix assets_url bug in GUI buildstep by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2638
feat: limit concurrent request for ai chat by @Salazareo in https://github.com/HeyPuter/puter/pull/2640
feat: phase 2 enforce index url ownership and uniqueness by @Salazareo in https://github.com/HeyPuter/puter/pull/2625
perf(core): very simplistic minifier for homepage by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2630
Revert "perf(core): very simplistic minifier for homepage (#2630)" by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2641
fix(core): handling of refer code storage add by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2642
feat: checkName api for puter apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2643
dev(fs): add move command to batch executor by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2646
dev: get system user from SUService in AppIconService by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2601
dev(extension): [+] test-actions by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2575
fix: keep bootstrap in url for app to do whatever by @Salazareo in https://github.com/HeyPuter/puter/pull/2648
feat: phase 3 public hosted actor cookie bootstrap by @Salazareo in https://github.com/HeyPuter/puter/pull/2626
dev(fs): fetch subdomains using join in readdir by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2647
fix(fs) optimize stat operation. by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2649
feat: scope index_url uniqueness to hosted domains by @Salazareo in https://github.com/HeyPuter/puter/pull/2644
Ns/worker global public fetch by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2652
feat(puter-js): add Batch builder class by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2651
fix: app merging by @Salazareo in https://github.com/HeyPuter/puter/pull/2654
mute puterjs error by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2657
fix: tests oom breaking by @Salazareo in https://github.com/HeyPuter/puter/pull/2661
fix(security): shell escape paths in HostDiskUsageService; null-prototype objects in batch parser by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2659
Use ClickHouse for app open stats by @jelveh in https://github.com/HeyPuter/puter/pull/2662
fix coercion service not selecting correct rule by @P3il4 in https://github.com/HeyPuter/puter/pull/2660
fix flash image quality level by @P3il4 in https://github.com/HeyPuter/puter/pull/2665
Interpret mpga as mp3 for OpenAI transcriptions by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2666
chore: update package-lock.json by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2667
add x-puter-no-auth option to puter.workers.exec by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2668
fix: limit referralCodeService by @Salazareo in https://github.com/HeyPuter/puter/pull/2670
feat: add hook on merge for deployments by @Salazareo in https://github.com/HeyPuter/puter/pull/2673
darkmode fix by @miikakuisma in https://github.com/HeyPuter/puter/pull/2675
add reasoning to claude models by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2676
Manual package updates, npm audit --force, etc by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2669
fix: add console log to webhook for debugging by @Salazareo in https://github.com/HeyPuter/puter/pull/2677
fix: log webhook message to peer for now by @Salazareo in https://github.com/HeyPuter/puter/pull/2678
feat: notify prod by @Salazareo in https://github.com/HeyPuter/puter/pull/2679
fix: change_email and user-protected endpoints by @KernelDeimos in https://github.com/HeyPuter/puter/pull/2680
feat: redis pubsub for multiple connected clients in broadcast service and webhook fixes by @Salazareo in https://github.com/HeyPuter/puter/pull/2681
feat: add puter.peer to sdk, create PeerService in backend by @velzie in https://github.com/HeyPuter/puter/pull/2664
change capitalization of inviteCode by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2683
change turn customIdentifier seperator by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2684
Change turn customIdentifier fully by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2685
fix: websocket credentials by @Salazareo in https://github.com/HeyPuter/puter/pull/2687
turn metering support by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2689
fix: tighten cors logic for socket io by @Salazareo in https://github.com/HeyPuter/puter/pull/2688
Revert "fix: tighten cors logic for socket io" by @Salazareo in https://github.com/HeyPuter/puter/pull/2694
fix: broadcast pubsub + cleanup old code by @Salazareo in https://github.com/HeyPuter/puter/pull/2695
fix: socket io sockets by @Salazareo in https://github.com/HeyPuter/puter/pull/2696
chore: decrease uneeded logging by @Salazareo in https://github.com/HeyPuter/puter/pull/2697
fix(gui): account for iOS safe area inset on taskbar/dock in https://github.com/HeyPuter/puter/pull/2682
Peer docs by @jelveh in https://github.com/HeyPuter/puter/pull/2699
fix: ws double messages by @Salazareo in https://github.com/HeyPuter/puter/pull/2700
Fix double slash in canonical URL #2672 by @nandinikashyap1902 in https://github.com/HeyPuter/puter/pull/2690
docs: fix 404 in CreateAppResult documentation due to case sensitivity by @huseynovvusal in https://github.com/HeyPuter/puter/pull/2702
docs: add ai-voice-changer playground example by @Dailin521 in https://github.com/HeyPuter/puter/pull/2708
chore: remove dead code and docs by @Salazareo in https://github.com/HeyPuter/puter/pull/2705
fix: issue with tokens not being received by puter app by @Salazareo in https://github.com/HeyPuter/puter/pull/2713
refactor ai video gen by @P3il4 in https://github.com/HeyPuter/puter/pull/2711
feat: Add Anthropic Messages API compatibility layer by @iamsrishanth in https://github.com/HeyPuter/puter/pull/2704
WIP openai responses support by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2715
feat: root level kv accesses, and installed app listing + server health check fix by @Salazareo in https://github.com/HeyPuter/puter/pull/2719
fix: bad esm issue by @Salazareo in https://github.com/HeyPuter/puter/pull/2720
fix: letter case issue by @Salazareo in https://github.com/HeyPuter/puter/pull/2721
fix: init installed apps controller by @Salazareo in https://github.com/HeyPuter/puter/pull/2722
fix: extension type import by @Salazareo in https://github.com/HeyPuter/puter/pull/2723
fix: installed apps api by @Salazareo in https://github.com/HeyPuter/puter/pull/2725
fix: healtcheck improvements by @Salazareo in https://github.com/HeyPuter/puter/pull/2726
fix: remove flaky event loop check by @Salazareo in https://github.com/HeyPuter/puter/pull/2727
fix case sensitive together video model ids by @P3il4 in https://github.com/HeyPuter/puter/pull/2728
fix: remove last opened by @Salazareo in https://github.com/HeyPuter/puter/pull/2729
fix: syntax issue with sql by @Salazareo in https://github.com/HeyPuter/puter/pull/2730
fix: return fallback icons if no icon present for installed apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2731
Small tweaks to puter.peer by @velzie in https://github.com/HeyPuter/puter/pull/2734
Add claude cache control docs by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2737
fix: handle closing server nicer on shutdown signal by @Salazareo in https://github.com/HeyPuter/puter/pull/2741
fix: health checks by @Salazareo in https://github.com/HeyPuter/puter/pull/2743
Display logged-in banner on homepage by @jelveh in https://github.com/HeyPuter/puter/pull/2742
fix: incrememnt ddb sharding to 10k by @Salazareo in https://github.com/HeyPuter/puter/pull/2744
fix: remove recommended app caching in favour of stronger caching at app fetch layer by @Salazareo in https://github.com/HeyPuter/puter/pull/2748
docs: update code examples from gpt-5-nano to gpt-5.4-nano by @LeC-D in https://github.com/HeyPuter/puter/pull/2738
Fix prompt caching example broken character by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2750
support video inputs in .chat by @P3il4 in https://github.com/HeyPuter/puter/pull/2740
Getting rid of Endpoint by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2732
Add context field to OpenRouter, MistralAI, and OpenAI models by @costajohnt in https://github.com/HeyPuter/puter/pull/2653
feat: signed upload urls by @Salazareo in https://github.com/HeyPuter/puter/pull/2753
feat: thumbnail event for gui by @Salazareo in https://github.com/HeyPuter/puter/pull/2754
docs(kv): add sorting section with examples to list() API reference by @RaffyLeong in https://github.com/HeyPuter/puter/pull/2739
Update prompt caching example by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2758
feat: s3 fs in oss by @Salazareo in https://github.com/HeyPuter/puter/pull/2761
fix: no shutdown outside of puter servers by @Salazareo in https://github.com/HeyPuter/puter/pull/2762
add google video native provider, imagen models by @P3il4 in https://github.com/HeyPuter/puter/pull/2759
Add kv.list() pagination playground example by @tmchow in https://github.com/HeyPuter/puter/pull/2760
feat: enable singed uploads on oss and fix broken migration by @Salazareo in https://github.com/HeyPuter/puter/pull/2765
fix: app id shortcut when creating apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2768
Ns/simplify 1 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2764
fix: missing subdomains and worker flags in readdir by @Salazareo in https://github.com/HeyPuter/puter/pull/2772
Fix openrouter enumeration by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2780
chore: delete remaining "command" service by @Salazareo in https://github.com/HeyPuter/puter/pull/2781
fix: delete command service files? by @Salazareo in https://github.com/HeyPuter/puter/pull/2782
derive aliases from puterid for video models by @P3il4 in https://github.com/HeyPuter/puter/pull/2777
fix: add showSpinner() and hideSpinner() to docs sidebar by @subhp03 in https://github.com/HeyPuter/puter/pull/2779
Close #2718 : added querying with prefix patterns example and documentation by @hemant838 in https://github.com/HeyPuter/puter/pull/2778
better error reports for chat fallbacks by @P3il4 in https://github.com/HeyPuter/puter/pull/2783
fix: dynamodb health checks and client recreation by @Salazareo in https://github.com/HeyPuter/puter/pull/2789
Minor fix docs and update puter resource unit by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2792
fix: redis max retries and fail fast timeouts by @Salazareo in https://github.com/HeyPuter/puter/pull/2793
cleanup: batcher to batch more appropriately by @Salazareo in https://github.com/HeyPuter/puter/pull/2794
fix veo video with proxy link by @P3il4 in https://github.com/HeyPuter/puter/pull/2799
fix: app canonization for puter.com apps by @Salazareo in https://github.com/HeyPuter/puter/pull/2800
fix: origin app Ids by @Salazareo in https://github.com/HeyPuter/puter/pull/2801
add gemini image models in .chat by @P3il4 in https://github.com/HeyPuter/puter/pull/2771
Ns/simplify 2 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2790
Add WSL support for signed uploads by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2809
add replicate image provider by @P3il4 in https://github.com/HeyPuter/puter/pull/2806
remove glitched submodule by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2810
Dashboard Update by @miikakuisma in https://github.com/HeyPuter/puter/pull/2788
add opus 4.7, adjust thinking by @P3il4 in https://github.com/HeyPuter/puter/pull/2813
fix: close start menu popover on repeated click by @tmchow in https://github.com/HeyPuter/puter/pull/2784
fix: update knowledge date for Claude Opus 4.7 model by @subhp03 in https://github.com/HeyPuter/puter/pull/2816
adjust and refactor together models costs by @P3il4 in https://github.com/HeyPuter/puter/pull/2811
fix: cdn cache invalidation by @Salazareo in https://github.com/HeyPuter/puter/pull/2826
add gpt image 2 by @P3il4 in https://github.com/HeyPuter/puter/pull/2829
shrink redis failure by @Salazareo in https://github.com/HeyPuter/puter/pull/2831
fix: anticsrf to store tokens in redis by @Salazareo in https://github.com/HeyPuter/puter/pull/2834
Revert "fix: anticsrf to store tokens in redis (#2834)" by @Salazareo in https://github.com/HeyPuter/puter/pull/2835
fix: AIChatService.ts by @Salazareo in https://github.com/HeyPuter/puter/pull/2836
add gpt 5.5 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2841
add gpt 5.5-pro by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2843
GUI cleanup by @jelveh in https://github.com/HeyPuter/puter/pull/2842
Improve validation error messages for better UX by @shubthenub in https://github.com/HeyPuter/puter/pull/2833
Puter JS - Web Components for UI API by @miikakuisma in https://github.com/HeyPuter/puter/pull/2808
Update docs setMenubar by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2845
Fixing issues with mobile contextMenu by @miikakuisma in https://github.com/HeyPuter/puter/pull/2848
Remove file sharing UI and related code by @jelveh in https://github.com/HeyPuter/puter/pull/2817
fix: oidc errors by @Salazareo in https://github.com/HeyPuter/puter/pull/2852
fix: oidc errors again by @Salazareo in https://github.com/HeyPuter/puter/pull/2853
rework: change backend and backend extensions to use simpler code structure and patterns by @Salazareo in https://github.com/HeyPuter/puter/pull/2815
fix: bad ai endpoint by @Salazareo in https://github.com/HeyPuter/puter/pull/2856
fix: ai driver errors by @Salazareo in https://github.com/HeyPuter/puter/pull/2857
fix: no default gemini image quality by @Salazareo in https://github.com/HeyPuter/puter/pull/2858
fix: harden some gemini image errors by @Salazareo in https://github.com/HeyPuter/puter/pull/2859
fix: fail unauthed sessions nicely by @Salazareo in https://github.com/HeyPuter/puter/pull/2860
backport devwatcher by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2861
fix: auth checks by @Salazareo in https://github.com/HeyPuter/puter/pull/2862
fix: signup event by @Salazareo in https://github.com/HeyPuter/puter/pull/2863
fix: more clean ip for signup validation by @Salazareo in https://github.com/HeyPuter/puter/pull/2864
fix: sync ips for validation by @Salazareo in https://github.com/HeyPuter/puter/pull/2865
fix: oidc and chat validation events by @Salazareo in https://github.com/HeyPuter/puter/pull/2866
fix: send right error codes by @Salazareo in https://github.com/HeyPuter/puter/pull/2867
fix: dbConfigs and ai routes by @Salazareo in https://github.com/HeyPuter/puter/pull/2868
puter models list fix by @Salazareo in https://github.com/HeyPuter/puter/pull/2869
fix: app autocreation by @Salazareo in https://github.com/HeyPuter/puter/pull/2872
Add z.ai chat completions by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2874
Remove gross retarded legacy tools and docs by @jelveh in https://github.com/HeyPuter/puter/pull/2873
Add grok 4.3 by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2875
Ns/return better together video error by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2876
zai --> z-ai by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2878
Add AGPL license headers to source files by @jelveh in https://github.com/HeyPuter/puter/pull/2877
Delete license_header.txt by @jelveh in https://github.com/HeyPuter/puter/pull/2879
fix: better error codes + unlimited local credit by @Salazareo in https://github.com/HeyPuter/puter/pull/2880
fix: extensions by @Salazareo in https://github.com/HeyPuter/puter/pull/2881
invalidate subdomains on delete by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2882
fix: misc fs issues by @Salazareo in https://github.com/HeyPuter/puter/pull/2883
errors for fs by @Salazareo in https://github.com/HeyPuter/puter/pull/2884
remove exports by @Salazareo in https://github.com/HeyPuter/puter/pull/2885
Revert "remove exports" by @Salazareo in https://github.com/HeyPuter/puter/pull/2887
Revert "Revert "remove exports"" by @Salazareo in https://github.com/HeyPuter/puter/pull/2888
Add Gemini TTS provider and integrate client/docs by @jelveh in https://github.com/HeyPuter/puter/pull/2889
Add xAI (Grok) TTS and STT providers and integrate client/docs by @jelveh in https://github.com/HeyPuter/puter/pull/2890
Add Moonshot AI (Kimi) chat completion provider by @jelveh in https://github.com/HeyPuter/puter/pull/2893
Update UI docs and types by @reynaldichernando in https://github.com/HeyPuter/puter/pull/2854
Remove settings UI & service; redirect to dashboard by @jelveh in https://github.com/HeyPuter/puter/pull/2900
fix: subdomain cache invalidaton by @Salazareo in https://github.com/HeyPuter/puter/pull/2901
selfhost: fullstack self host p1 by @Salazareo in https://github.com/HeyPuter/puter/pull/2902
selfhosting: p2 fixed default configs and guide + some other errors by @Salazareo in https://github.com/HeyPuter/puter/pull/2903
selfhosting: p3 cleanup docs + small fixes again by @Salazareo in https://github.com/HeyPuter/puter/pull/2904
fix: selfhosted thumbnails extensions by @Salazareo in https://github.com/HeyPuter/puter/pull/2905
cleanup selfhost config by @Salazareo in https://github.com/HeyPuter/puter/pull/2908
docker-compose from git by @Salazareo in https://github.com/HeyPuter/puter/pull/2909
fix: handle fs duplicates on write by @Salazareo in https://github.com/HeyPuter/puter/pull/2910
fix: nginx missing in self host script by @Salazareo in https://github.com/HeyPuter/puter/pull/2911
Block unconfirmed users from API endpoints server-side by @jelveh in https://github.com/HeyPuter/puter/pull/2916
add email into metering alert by @Salazareo in https://github.com/HeyPuter/puter/pull/2917
fix: fs issues [PUT-846] by @Salazareo in https://github.com/HeyPuter/puter/pull/2918
add back web input into OCR by @ProgrammerIn-wonderland in https://github.com/HeyPuter/puter/pull/2919
fix: broken apps in self hosted by @Salazareo in https://github.com/HeyPuter/puter/pull/2920
fix: email by @Salazareo in https://github.com/HeyPuter/puter/pull/2922
fix: fsEntry and tscofnig by @Salazareo in https://github.com/HeyPuter/puter/pull/2923
New README.md by @jelveh in https://github.com/HeyPuter/puter/pull/2915
New Contributors
You canβt perform that action at this time.