turbollm 1.9.6 → 1.9.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/README.md +16 -14
  2. package/dist/cli.js +457 -154
  3. package/dist/webdist/assets/{AgentEditPage-DtVYUbnL.js → AgentEditPage-D2MKlhC4.js} +1 -1
  4. package/dist/webdist/assets/{ChatScreen-CFqvsPyx.js → ChatScreen-BT8jCGTN.js} +1 -1
  5. package/dist/webdist/assets/{CodeComposer-CEjCtZkU.js → CodeComposer-BCwZMgGI.js} +1 -1
  6. package/dist/webdist/assets/{CodeHomeScreen-DMVcD76o.js → CodeHomeScreen-Wcb_8M4g.js} +1 -1
  7. package/dist/webdist/assets/{CodeSessionScreen-DAtsPyto.js → CodeSessionScreen-CgANva49.js} +1 -1
  8. package/dist/webdist/assets/{CustomizeScreen-Cbki-6V9.js → CustomizeScreen-DV9OIXsG.js} +1 -1
  9. package/dist/webdist/assets/{DeveloperScreen-WD9BR3c2.js → DeveloperScreen-vndr1xLZ.js} +1 -1
  10. package/dist/webdist/assets/{EnginesScreen-Dn2h0ZJu.js → EnginesScreen-DZ20QyGt.js} +1 -1
  11. package/dist/webdist/assets/{FsBrowser-B3FpjXmq.js → FsBrowser-BVRCuSAt.js} +1 -1
  12. package/dist/webdist/assets/{ModelLoadMenu-gr5_lfaC.js → ModelLoadMenu-DHeG2IT7.js} +1 -1
  13. package/dist/webdist/assets/{ModelsScreen-CB62SK43.js → ModelsScreen-BxpUJPoo.js} +1 -1
  14. package/dist/webdist/assets/{SettingsScreen-YEjZw2_s.js → SettingsScreen-DxbU7U2g.js} +1 -1
  15. package/dist/webdist/assets/{SkillEditPage-CwUXP2-z.js → SkillEditPage-C8z0asiI.js} +1 -1
  16. package/dist/webdist/assets/{TokensScreen-Dr8A9OL9.js → TokensScreen-27qcX_mG.js} +1 -1
  17. package/dist/webdist/assets/{ToolApprovalBar-bXZAEk7U.js → ToolApprovalBar-qM2wqtNL.js} +3 -3
  18. package/dist/webdist/assets/WorkspaceScreen-BVZ7QWkL.js +1 -0
  19. package/dist/webdist/assets/{agent-api-DZH-y2xg.js → agent-api-B8x62EvQ.js} +1 -1
  20. package/dist/webdist/assets/{arc-D5l_g5is.js → arc-BW8F_BQA.js} +1 -1
  21. package/dist/webdist/assets/{architectureDiagram-3BPJPVTR-CguxoWho.js → architectureDiagram-3BPJPVTR-zfH49ZGf.js} +1 -1
  22. package/dist/webdist/assets/{arrow-left-wlX0VpDE.js → arrow-left-A509Fetv.js} +1 -1
  23. package/dist/webdist/assets/{badge-BRepTaJr.js → badge-BEGHN2Gs.js} +1 -1
  24. package/dist/webdist/assets/{blockDiagram-GPEHLZMM-B9xsnW_4.js → blockDiagram-GPEHLZMM-B36qo5WU.js} +1 -1
  25. package/dist/webdist/assets/{bot-D2tkiUsh.js → bot-DmS4yJ_3.js} +1 -1
  26. package/dist/webdist/assets/{c4Diagram-AAUBKEIU-CYTOwpJg.js → c4Diagram-AAUBKEIU-DAnyJ1zY.js} +1 -1
  27. package/dist/webdist/assets/channel-6n-J43t-.js +1 -0
  28. package/dist/webdist/assets/{chat-api-FD0R9dNF.js → chat-api-D8Zk6kRh.js} +1 -1
  29. package/dist/webdist/assets/{chat-queries-BKXFq3YC.js → chat-queries-M23Lkm4X.js} +1 -1
  30. package/dist/webdist/assets/{chevron-left-BKw66_4_.js → chevron-left-BwGlXiTi.js} +1 -1
  31. package/dist/webdist/assets/{chevron-right-CFMIMfHC.js → chevron-right-B8nbhuzl.js} +1 -1
  32. package/dist/webdist/assets/{chunk-2J33WTMH-DpsCpZbI.js → chunk-2J33WTMH-CKSa-SWg.js} +1 -1
  33. package/dist/webdist/assets/{chunk-4BX2VUAB-C0i72mr2.js → chunk-4BX2VUAB-BJ5ORVQz.js} +1 -1
  34. package/dist/webdist/assets/{chunk-55IACEB6-DmbNCy4Z.js → chunk-55IACEB6-Cg3bYYac.js} +1 -1
  35. package/dist/webdist/assets/{chunk-727SXJPM-CiKdPdL2.js → chunk-727SXJPM-uerTg8Pr.js} +1 -1
  36. package/dist/webdist/assets/{chunk-AQP2D5EJ-Bc6RXr7f.js → chunk-AQP2D5EJ-DqdFefiE.js} +1 -1
  37. package/dist/webdist/assets/{chunk-FMBD7UC4-CVnhYSu6.js → chunk-FMBD7UC4-DHVbvOSl.js} +1 -1
  38. package/dist/webdist/assets/{chunk-ND2GUHAM-CW8vQLlh.js → chunk-ND2GUHAM-Bd_Jx54f.js} +1 -1
  39. package/dist/webdist/assets/{chunk-QZHKN3VN-x4JaoE5f.js → chunk-QZHKN3VN-iIS0rOO4.js} +1 -1
  40. package/dist/webdist/assets/{circle-check-8hmejhyG.js → circle-check-CxTKIoUQ.js} +1 -1
  41. package/dist/webdist/assets/{circle-x-C9EQG8zH.js → circle-x-DtTsKVOs.js} +1 -1
  42. package/dist/webdist/assets/classDiagram-4FO5ZUOK-aMec4COx.js +1 -0
  43. package/dist/webdist/assets/classDiagram-v2-Q7XG4LA2-aMec4COx.js +1 -0
  44. package/dist/webdist/assets/{common-CqVKpWIL.js → common-BLhKAx-E.js} +1 -1
  45. package/dist/webdist/assets/{cose-bilkent-S5V4N54A-Cv-MBe40.js → cose-bilkent-S5V4N54A-Q0XTfDW4.js} +1 -1
  46. package/dist/webdist/assets/{dagre-BM42HDAG-CZWDfsjb.js → dagre-BM42HDAG-BpEjp0Mo.js} +1 -1
  47. package/dist/webdist/assets/{diagram-2AECGRRQ-CsDxXM77.js → diagram-2AECGRRQ-CQgcaxwM.js} +1 -1
  48. package/dist/webdist/assets/{diagram-5GNKFQAL-t3BVl_nH.js → diagram-5GNKFQAL-BAXLYnn8.js} +1 -1
  49. package/dist/webdist/assets/{diagram-KO2AKTUF-Ck_gIw7B.js → diagram-KO2AKTUF-hS4UiX21.js} +1 -1
  50. package/dist/webdist/assets/{diagram-LMA3HP47-w5BRZa6G.js → diagram-LMA3HP47-BSH8Svf2.js} +1 -1
  51. package/dist/webdist/assets/{diagram-OG6HWLK6-DLKPbcMA.js → diagram-OG6HWLK6-ChkrDAcn.js} +1 -1
  52. package/dist/webdist/assets/{dialog-6Wb-Xczv.js → dialog-Cif52qlh.js} +1 -1
  53. package/dist/webdist/assets/{dropdown-menu-BAw7TO38.js → dropdown-menu-CEXJQu9r.js} +1 -1
  54. package/dist/webdist/assets/{erDiagram-TEJ5UH35-3L9k9gBp.js → erDiagram-TEJ5UH35-CoSbJaoh.js} +1 -1
  55. package/dist/webdist/assets/{flowDiagram-I6XJVG4X-l8IUdo3a.js → flowDiagram-I6XJVG4X-CxmlDLjH.js} +1 -1
  56. package/dist/webdist/assets/{ganttDiagram-6RSMTGT7-Dj69Fodg.js → ganttDiagram-6RSMTGT7-D9DcHOHi.js} +1 -1
  57. package/dist/webdist/assets/{git-branch-BQTTe9uX.js → git-branch-wVIAC1y2.js} +1 -1
  58. package/dist/webdist/assets/{gitGraphDiagram-PVQCEYII-Du_5XKj1.js → gitGraphDiagram-PVQCEYII-PZXq-NT0.js} +1 -1
  59. package/dist/webdist/assets/{index-HEbqFffw.js → index-BQecSQnE.js} +9 -9
  60. package/dist/webdist/assets/index-DsKBTDFr.css +1 -0
  61. package/dist/webdist/assets/{infoDiagram-5YYISTIA-Cna43URi.js → infoDiagram-5YYISTIA-OdiZto4C.js} +1 -1
  62. package/dist/webdist/assets/{ishikawaDiagram-YF4QCWOH-hNRD3nFQ.js → ishikawaDiagram-YF4QCWOH-ByqCES2J.js} +1 -1
  63. package/dist/webdist/assets/{journeyDiagram-JHISSGLW-DDZl1KbG.js → journeyDiagram-JHISSGLW-iAvir64R.js} +1 -1
  64. package/dist/webdist/assets/{kanban-definition-UN3LZRKU-Dj3MHmQh.js → kanban-definition-UN3LZRKU-Coq1b_4K.js} +1 -1
  65. package/dist/webdist/assets/{linear-BIBN6AEG.js → linear-CFHN7GNP.js} +1 -1
  66. package/dist/webdist/assets/{lock-D9JNrPro.js → lock-C-qBN6Je.js} +1 -1
  67. package/dist/webdist/assets/{mermaid.core-Cx_BdpgL.js → mermaid.core-BbE5ZQQb.js} +4 -4
  68. package/dist/webdist/assets/{mindmap-definition-RKZ34NQL-AghKUeZq.js → mindmap-definition-RKZ34NQL-BJI67qBG.js} +1 -1
  69. package/dist/webdist/assets/{pencil-BKwhK8ii.js → pencil-CLrsEWvO.js} +1 -1
  70. package/dist/webdist/assets/{personas-DpoGW3xD.js → personas-DjECKK03.js} +3 -2
  71. package/dist/webdist/assets/{pieDiagram-4H26LBE5-BNVbKhn5.js → pieDiagram-4H26LBE5-ClFRQd-P.js} +1 -1
  72. package/dist/webdist/assets/{plus-BwuuyzoK.js → plus-CnpqRmY0.js} +1 -1
  73. package/dist/webdist/assets/{quadrantDiagram-W4KKPZXB-Br5J-7iq.js → quadrantDiagram-W4KKPZXB-C6h_Xp8y.js} +1 -1
  74. package/dist/webdist/assets/{refresh-cw-WDCjpgA4.js → refresh-cw-C92HxozQ.js} +1 -1
  75. package/dist/webdist/assets/{requirementDiagram-4Y6WPE33-BRepNBqi.js → requirementDiagram-4Y6WPE33-otwWbKYv.js} +1 -1
  76. package/dist/webdist/assets/{rotate-ccw-CsT9aYGg.js → rotate-ccw-CTVQYcfd.js} +1 -1
  77. package/dist/webdist/assets/{sankeyDiagram-5OEKKPKP-CT1B03d0.js → sankeyDiagram-5OEKKPKP-DbXQbMGj.js} +1 -1
  78. package/dist/webdist/assets/{sequenceDiagram-3UESZ5HK-B0h8Ocb4.js → sequenceDiagram-3UESZ5HK-DVeUokYb.js} +1 -1
  79. package/dist/webdist/assets/{skeleton-C_8cUA8S.js → skeleton-Bgx_ejYi.js} +1 -1
  80. package/dist/webdist/assets/{sliders-horizontal-DnZxStk1.js → sliders-horizontal-kCZOXks3.js} +1 -1
  81. package/dist/webdist/assets/{sparkles-CgOPZTJx.js → sparkles-CK3xY-de.js} +1 -1
  82. package/dist/webdist/assets/{star-DRDhG9iP.js → star-Bl6Mcr3J.js} +1 -1
  83. package/dist/webdist/assets/{stateDiagram-AJRCARHV-C6W3BUAK.js → stateDiagram-AJRCARHV-BTTdXeL2.js} +1 -1
  84. package/dist/webdist/assets/stateDiagram-v2-BHNVJYJU-PhwvulL3.js +1 -0
  85. package/dist/webdist/assets/{switch-Qya-6vsg.js → switch-_1we_sIC.js} +1 -1
  86. package/dist/webdist/assets/{terminal-CR5oCvI7.js → terminal-BITU7jD3.js} +1 -1
  87. package/dist/webdist/assets/{timeline-definition-PNZ67QCA-Dtggo9rb.js → timeline-definition-PNZ67QCA-DloHmMh_.js} +1 -1
  88. package/dist/webdist/assets/{trash-2-Ejk7so01.js → trash-2-D0azs_Tt.js} +1 -1
  89. package/dist/webdist/assets/{useIsDesktop-CmQXgI2O.js → useIsDesktop-DaHDDrDA.js} +1 -1
  90. package/dist/webdist/assets/{vennDiagram-CIIHVFJN-mYXtI-Zx.js → vennDiagram-CIIHVFJN-Ccv3ZcVV.js} +1 -1
  91. package/dist/webdist/assets/{wardley-L42UT6IY-D4Qq_cbT.js → wardley-L42UT6IY-DpBTXmML.js} +1 -1
  92. package/dist/webdist/assets/{wardleyDiagram-YWT4CUSO-dGqgsAhD.js → wardleyDiagram-YWT4CUSO-CNQLbvwQ.js} +1 -1
  93. package/dist/webdist/assets/{wrench-C42l7xRT.js → wrench-B_ypp0gU.js} +1 -1
  94. package/dist/webdist/assets/{xychartDiagram-2RQKCTM6-brgk11Hq.js → xychartDiagram-2RQKCTM6-Dkv0G4Ag.js} +1 -1
  95. package/dist/webdist/index.html +2 -2
  96. package/package.json +1 -1
  97. package/dist/webdist/assets/WorkspaceScreen-DoG03BQz.js +0 -1
  98. package/dist/webdist/assets/channel-BCf5gRqW.js +0 -1
  99. package/dist/webdist/assets/classDiagram-4FO5ZUOK-Bg74ry_y.js +0 -1
  100. package/dist/webdist/assets/classDiagram-v2-Q7XG4LA2-Bg74ry_y.js +0 -1
  101. package/dist/webdist/assets/index-DKAl71q8.css +0 -1
  102. package/dist/webdist/assets/stateDiagram-v2-BHNVJYJU-CdjOVW2f.js +0 -1
package/README.md CHANGED
@@ -99,9 +99,10 @@ TurboLLM does the opposite:
99
99
  - **🔀 A gateway that loads models for you.** Name any model in your API request and TurboLLM
100
100
  loads it on demand, keeping your favorites hot in a small pool — so an agent that hops between
101
101
  models just works, with nothing to pre-wire.
102
- - **🔒 Offline-first & private.** No account, no backend, no internet required. Telemetry is
103
- **fully opt-in and off by default** choose Off and nothing but that one-time choice is ever
104
- sent, or opt in and see exactly what leaves your machine, verified in [Privacy](#privacy).
102
+ - **🔒 Offline-first & private.** No account, no backend, no internet required. Telemetry
103
+ **defaults to on** (usage + benchmarks + crash reports) so setup issues and real-hardware speed
104
+ get found change your level any time in Settings, and see exactly what leaves your machine,
105
+ verified in [Privacy](#privacy).
105
106
 
106
107
  ---
107
108
 
@@ -402,8 +403,8 @@ connected); **Remove** undoes it.
402
403
  <br/>
403
404
 
404
405
  - A **~7 MB npm package** on Node — no Electron, no bundled Chromium, no Python.
405
- - **Offline-first** — no account, no backend, no internet required. Telemetry is opt-in and off
406
- by default; see [Privacy](#privacy).
406
+ - **Offline-first** — no account, no backend, no internet required. Telemetry defaults to on,
407
+ changeable any time; see [Privacy](#privacy).
407
408
  - **Windows · macOS · Linux**, with a CPU fallback when there's no GPU.
408
409
 
409
410
  </details>
@@ -589,18 +590,19 @@ TurboLLM is **offline-first**: core local use needs no account, no backend, and
589
590
  choice.** That's not a promise you have to take on faith: the client is source-available, so the
590
591
  claim is checkable against the actual code that ships.
591
592
 
592
- **Telemetry is opt-in, and off by default.** On first run you choose one of three levels, with no
593
- pre-selected option:
593
+ **Telemetry defaults to on** (Usage + benchmarks + crash reports), so setup problems and
594
+ real-hardware speed get found and fixed — verifiable telemetry only helps if enough people are
595
+ actually sending it. Change your level any time from **Settings → Privacy & telemetry**:
594
596
 
595
597
  - **Off** — sends only that one-time choice, nothing else, ever.
596
598
  - **Anonymous usage + benchmarks** — which features you use, your hardware, model names, and
597
599
  measured speed. Never prompts, files, paths, or keys.
598
- - **+ Crash reports** — adds error fingerprints (never your content).
600
+ - **Usage + benchmarks + crash reports** (default) — adds error fingerprints (never your content).
599
601
 
600
602
  You can preview the exact payload before anything is sent, and inspect a running log of every
601
- event this machine has *actually* transmitted, from **Settings Privacy & telemetry**. For
602
- scripted or unattended use, `--no-telemetry` (or `TURBOLLM_TELEMETRY=off`) is a hard, one-way kill
603
- switch, independent of the saved level.
603
+ event this machine has *actually* transmitted, from the same Settings section. For scripted or
604
+ unattended use, `--no-telemetry` (or `TURBOLLM_TELEMETRY=off`) is a hard, one-way kill switch,
605
+ independent of the saved level.
604
606
 
605
607
  ---
606
608
 
@@ -621,13 +623,13 @@ Marks reflect mid-2026; verify the moving rows against each tool's current docs.
621
623
  | Speculative decoding (draft / MTP) | ✅ | ✅ | ◐ env flag | ❌ |
622
624
  | Web UI from any LAN device | ✅ | ❌ | ❌ | ✅ |
623
625
  | **Lightweight** (no Electron / no Python) | ✅ npm | ❌ Electron | ✅ Go | ❌ Python |
624
- | Offline-first · **opt-in, verifiable telemetry** | ✅ verifiable (source-available) | ◐ closed app — not verifiable | ✅ | ✅ |
626
+ | Offline-first · **verifiable telemetry** (on by default) | ✅ verifiable (source-available) | ◐ closed app — not verifiable | ✅ | ✅ |
625
627
 
626
628
  LM Studio and Ollama both added Anthropic `/v1/messages` endpoints in 2026, so the API rows are
627
629
  now parity — Claude Code works against any of them. TurboLLM's durable edges are **any engine
628
630
  including community forks**, **benchmark-based auto-tuning with a VRAM-fit verdict + measured t/s
629
- before you commit**, and **telemetry you can actually verify** — opt-in, off by default, and
630
- checkable against source-available code rather than taken on trust.
631
+ before you commit**, and **telemetry you can actually verify** — on by default, changeable any
632
+ time, and checkable against source-available code rather than taken on trust.
631
633
 
632
634
  Prefer Open WebUI's chat breadth? It works great pointed at TurboLLM's OpenAI endpoint.
633
635