ompchamber 2.0.2 → 3.0.0
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.
- package/README.md +7 -6
- package/bunfig.toml +11 -0
- package/dist/client/index.html +16 -5
- package/dist/client/index.js +1393 -0
- package/dist/client/static/js/index-prbmx3yj.js +5123 -0
- package/dist/client/static/js/index-ranztes9.css +1 -0
- package/index.html +54 -0
- package/package.json +9 -10
- package/public/apple-touch-icon.png +0 -0
- package/public/icon-192x192.png +0 -0
- package/public/icon.svg +60 -0
- package/public/manifest.webmanifest +38 -0
- package/src/cli/lib/commands/serve.js +9 -5
- package/src/cli/lib/runtime.js +18 -7
- package/src/client/components/common/provider-icon/glyphs.ts +118 -0
- package/src/client/components/common/provider-icon/index.tsx +85 -0
- package/src/client/components/layout/desktop-layout/WorkspacePanels.tsx +4 -0
- package/src/client/components/layout/desktop-layout/index.tsx +2 -0
- package/src/client/components/mobile/LayoutWrapper.tsx +16 -0
- package/src/client/components/mobile/SessionSidebar.tsx +10 -0
- package/src/client/components/mobile/mobile-right-sidebar/FullEditor.tsx +0 -1
- package/src/client/components/mobile/mobile-session-sidebar/Item.tsx +16 -1
- package/src/client/components/mobile/mobile-session-sidebar/List.tsx +3 -0
- package/src/client/components/settings/categories/ProviderSettings.tsx +45 -4
- package/src/client/components/settings/categories/UsageSettings.tsx +22 -7
- package/src/client/components/settings/categories/provider-settings/AddModelModal.tsx +322 -0
- package/src/client/components/settings/categories/provider-settings/AddProviderModal.tsx +152 -56
- package/src/client/components/settings/categories/provider-settings/AuthSection.tsx +52 -1
- package/src/client/components/settings/categories/provider-settings/DeleteProviderModal.tsx +133 -0
- package/src/client/components/settings/categories/provider-settings/DialectFields.tsx +136 -0
- package/src/client/components/settings/categories/provider-settings/EffortLadder.tsx +89 -0
- package/src/client/components/settings/categories/provider-settings/Header.tsx +2 -2
- package/src/client/components/settings/categories/provider-settings/LoginModal.tsx +2 -2
- package/src/client/components/settings/categories/provider-settings/ModelsList.tsx +22 -2
- package/src/client/components/settings/categories/provider-settings/PresetPicker.tsx +82 -0
- package/src/client/components/settings/categories/provider-settings/PriceFields.tsx +107 -0
- package/src/client/components/settings/categories/provider-settings/ReconnectModal.tsx +43 -22
- package/src/client/components/settings/categories/provider-settings/SidebarList.tsx +2 -2
- package/src/client/components/settings/categories/usage-settings/LimitsSection.tsx +115 -0
- package/src/client/components/settings/categories/usage-settings/ProviderCard.tsx +19 -26
- package/src/client/components/settings/categories/usage-settings/ProviderDetail.tsx +29 -22
- package/src/client/components/settings/categories/usage-settings/SidebarList.tsx +60 -48
- package/src/client/components/settings/categories/usage-settings/format.ts +36 -0
- package/src/client/components/settings/categories/usage-settings/providers.ts +52 -28
- package/src/client/components/workspace/chat-timeline/AiMessageFooter.tsx +1 -1
- package/src/client/components/workspace/chat-timeline/GeneratingIndicator.tsx +1 -1
- package/src/client/components/workspace/diff-panel/Toolbar.tsx +71 -38
- package/src/client/components/workspace/diff-panel/index.tsx +139 -53
- package/src/client/components/workspace/editor/Tabs.tsx +2 -2
- package/src/client/components/workspace/editor/Toolbar.tsx +111 -26
- package/src/client/components/workspace/editor/index.tsx +27 -9
- package/src/client/components/workspace/model-dropdown/Item.tsx +13 -23
- package/src/client/components/workspace/model-dropdown/Panel.tsx +1 -1
- package/src/client/components/workspace/model-dropdown/Section.tsx +13 -4
- package/src/client/components/workspace/model-dropdown/index.tsx +7 -3
- package/src/client/components/workspace/usage-panel/ProviderSelect.tsx +10 -5
- package/src/client/components/workspace/usage-panel/index.tsx +36 -18
- package/src/client/data/samples/dialogue-session.ts +1 -1
- package/src/client/data/samples/sample-tools/other.ts +1 -1
- package/src/client/data/settings/provider.ts +141 -9
- package/src/client/hooks/editor/use-file-editor.ts +24 -27
- package/src/client/hooks/models/use-provider-names.ts +1 -1
- package/src/client/hooks/settings/providers/actions.ts +337 -0
- package/src/client/hooks/settings/providers/api.ts +69 -0
- package/src/client/hooks/settings/providers/index.ts +138 -0
- package/src/client/hooks/settings/providers/messages.ts +77 -0
- package/src/client/hooks/settings/useUsageReport.ts +8 -3
- package/src/client/hooks/ui/theme.ts +3 -3
- package/src/client/hooks/workspace/file-tabs.ts +62 -11
- package/src/client/stubs/elkjs.ts +6 -1
- package/src/server/index.ts +20 -2
- package/src/server/lib/assets/font-css.server.ts +86 -0
- package/src/server/lib/assets/fonts.server.ts +117 -0
- package/src/server/lib/bundler/css.ts +116 -0
- package/src/server/lib/lifecycle/shell-route.ts +17 -0
- package/src/server/lib/models/provider-listing.server.ts +257 -0
- package/src/server/lib/models/provider-registry.server.test.ts +122 -0
- package/src/server/lib/models/provider-registry.server.ts +76 -25
- package/src/server/lib/omp/config/models-config.ts +11 -0
- package/src/server/lib/omp/config/models-validation.test.ts +137 -0
- package/src/server/lib/omp/config/models-validation.ts +111 -2
- package/src/server/lib/omp/config/provider-seeds.test.ts +167 -0
- package/src/server/lib/omp/config/provider-seeds.ts +176 -0
- package/src/server/lib/omp/config/providers.ts +94 -100
- package/src/server/lib/omp/core/auth-credentials.ts +45 -0
- package/src/server/lib/omp/session/{usage.ts → usage/aggregate.ts} +1 -118
- package/src/server/lib/omp/session/usage/shaping.ts +130 -0
- package/src/server/lib/usage/deepseek.ts +4 -5
- package/src/server/lib/usage/kenari.ts +7 -6
- package/src/server/lib/usage/omp-usage.server.test.ts +126 -0
- package/src/server/lib/usage/omp-usage.server.ts +194 -0
- package/src/server/lib/usage/provider-key.ts +81 -3
- package/src/server/lib/usage/providers.server.test.ts +47 -0
- package/src/server/lib/usage/providers.server.ts +208 -0
- package/src/server/lib/usage/vendor-balance.server.test.ts +104 -0
- package/src/server/lib/usage/vendor-balance.server.ts +284 -0
- package/src/server/plugins/shell.server.ts +56 -0
- package/src/server/plugins/ssr.ts +24 -36
- package/src/server/plugins/static.test.ts +26 -29
- package/src/server/plugins/static.ts +40 -19
- package/src/server/routes/settings/index.ts +2 -0
- package/src/server/routes/settings/provider-model.ts +107 -0
- package/src/server/routes/settings/provider-models.ts +65 -202
- package/src/server/routes/settings/providers.ts +22 -7
- package/src/server/routes/settings/usage.ts +125 -45
- package/src/server/routes/telemetry/tokens.ts +2 -1
- package/src/shared/lib/fs/diff-parser.test.ts +116 -0
- package/src/shared/lib/fs/diff-parser.ts +86 -33
- package/src/shared/lib/models/{provider-connection.ts → provider/connection.ts} +37 -0
- package/src/shared/lib/models/provider/dialect.ts +179 -0
- package/src/shared/lib/models/provider/glyph.test.ts +116 -0
- package/src/shared/lib/models/provider/glyph.ts +200 -0
- package/src/shared/lib/models/{provider-models.ts → provider/models.ts} +91 -6
- package/src/shared/lib/models/provider/presets.test.ts +172 -0
- package/src/shared/lib/models/provider/presets.ts +83 -0
- package/src/shared/lib/workspace/file-tab-id.ts +29 -0
- package/src/shared/types/settings/provider.ts +81 -0
- package/src/shared/types/settings/usage.ts +88 -14
- package/tsconfig.json +3 -1
- package/dist/client/static/css/index.5f630421b7.css +0 -2
- package/dist/client/static/font/KaTeX_AMS-Regular.a79f1c3119.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Caligraphic-Bold.ec17d13264.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Caligraphic-Regular.55fac25845.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Fraktur-Bold.d42a5579b0.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Fraktur-Regular.d3c882a649.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Main-Bold.c3fb5ac22f.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Main-BoldItalic.6f2bb1dff2.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Main-Italic.8916142bec.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Main-Regular.0462f03bdf.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Math-BoldItalic.572d331f69.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Math-Italic.f28c23acad.woff2 +0 -0
- package/dist/client/static/font/KaTeX_SansSerif-Bold.8c5b5494b6.woff2 +0 -0
- package/dist/client/static/font/KaTeX_SansSerif-Italic.3b1e59b3ba.woff2 +0 -0
- package/dist/client/static/font/KaTeX_SansSerif-Regular.ba21ed5f84.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Script-Regular.03e9641d6f.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Size1-Regular.eae34984b3.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Size2-Regular.5916a24fa3.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Size4-Regular.10d95fd3a2.woff2 +0 -0
- package/dist/client/static/font/KaTeX_Typewriter-Regular.a8709e3622.woff2 +0 -0
- package/dist/client/static/font/fira-code-latin-400-normal.2655b10c55.woff2 +0 -0
- package/dist/client/static/font/fira-code-latin-500-normal.92a991f204.woff2 +0 -0
- package/dist/client/static/font/fira-code-latin-600-normal.43788eb7f1.woff2 +0 -0
- package/dist/client/static/font/fira-code-latin-700-normal.2667215d33.woff2 +0 -0
- package/dist/client/static/js/77.0d81c74cf0.js +0 -139
- package/dist/client/static/js/77.0d81c74cf0.js.LICENSE.txt +0 -8
- package/dist/client/static/js/async/0.8e59f2eb5b.js +0 -1
- package/dist/client/static/js/async/0k.5852e6b4fa.js +0 -1
- package/dist/client/static/js/async/0w.9ed36d5860.js +0 -1
- package/dist/client/static/js/async/1.f387c12b63.js +0 -1
- package/dist/client/static/js/async/12.d091f91c99.js +0 -1
- package/dist/client/static/js/async/13.8f810a8a6c.js +0 -1
- package/dist/client/static/js/async/19.6fe909d55a.js +0 -160
- package/dist/client/static/js/async/1b.23f1141a38.js +0 -1
- package/dist/client/static/js/async/1k.973e8e21fc.js +0 -2
- package/dist/client/static/js/async/1k.973e8e21fc.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/1p.0d5cddda96.js +0 -1
- package/dist/client/static/js/async/2.b589f1733b.js +0 -1
- package/dist/client/static/js/async/2v.96165101de.js +0 -1
- package/dist/client/static/js/async/3.0cacc08423.js +0 -1
- package/dist/client/static/js/async/37.b28b2f61cd.js +0 -1
- package/dist/client/static/js/async/3d.5085fb913f.js +0 -1
- package/dist/client/static/js/async/3j.357c80ff38.js +0 -2
- package/dist/client/static/js/async/3j.357c80ff38.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/3p.bcf32a0983.js +0 -1
- package/dist/client/static/js/async/3r.3a69e98ee0.js +0 -64
- package/dist/client/static/js/async/3u.1228460e2a.js +0 -1
- package/dist/client/static/js/async/3y.3530b824ad.js +0 -198
- package/dist/client/static/js/async/3y.3530b824ad.js.LICENSE.txt +0 -5
- package/dist/client/static/js/async/4.9442eeb472.js +0 -1
- package/dist/client/static/js/async/4e.678285ca55.js +0 -1
- package/dist/client/static/js/async/4k.33a0c7eeb4.js +0 -1
- package/dist/client/static/js/async/4m.928a1dde85.js +0 -31
- package/dist/client/static/js/async/4m.928a1dde85.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/4q.aad20dab25.js +0 -1
- package/dist/client/static/js/async/5.ebaf8b89cc.js +0 -36
- package/dist/client/static/js/async/51.95bcae98af.js +0 -2
- package/dist/client/static/js/async/51.95bcae98af.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/5b.d88304bc13.js +0 -1
- package/dist/client/static/js/async/5j.d6407c4248.js +0 -287
- package/dist/client/static/js/async/5o.88316d4460.js +0 -62
- package/dist/client/static/js/async/6.f034c9b528.js +0 -1
- package/dist/client/static/js/async/66.5dfa29f957.js +0 -93
- package/dist/client/static/js/async/6o.5b1a06a382.js +0 -1
- package/dist/client/static/js/async/7.e4a9288dd0.js +0 -1
- package/dist/client/static/js/async/73.308dff4da8.js +0 -1
- package/dist/client/static/js/async/7e.a1cc9bfd88.js +0 -1
- package/dist/client/static/js/async/7g.a7814350c3.js +0 -1
- package/dist/client/static/js/async/7l.fadbbc0583.js +0 -1
- package/dist/client/static/js/async/8.5067439d8c.js +0 -1
- package/dist/client/static/js/async/8j.ea110663fb.js +0 -1
- package/dist/client/static/js/async/a.bce4542392.js +0 -1
- package/dist/client/static/js/async/aa.65d3852576.js +0 -1
- package/dist/client/static/js/async/ar.9303e5f2e8.js +0 -2
- package/dist/client/static/js/async/ar.9303e5f2e8.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/az.d656062b0f.js +0 -1
- package/dist/client/static/js/async/b.b4f6f06515.js +0 -1
- package/dist/client/static/js/async/bi.09688ba75c.js +0 -1
- package/dist/client/static/js/async/bq.586bc738d1.js +0 -1
- package/dist/client/static/js/async/c.797d933882.js +0 -1
- package/dist/client/static/js/async/c0.0af1e640d3.js +0 -24
- package/dist/client/static/js/async/ca.8a52cfd447.js +0 -1
- package/dist/client/static/js/async/cf.d34fff5d67.js +0 -1
- package/dist/client/static/js/async/ct.b74928f7a3.js +0 -1
- package/dist/client/static/js/async/cx.3cb0242a3a.js +0 -226
- package/dist/client/static/js/async/d.a5fc8fe1b3.js +0 -1
- package/dist/client/static/js/async/da.f62c70f6c8.js +0 -1
- package/dist/client/static/js/async/dp.1725d6432c.js +0 -1
- package/dist/client/static/js/async/e.93214d622b.js +0 -79
- package/dist/client/static/js/async/f.ab50467719.js +0 -19
- package/dist/client/static/js/async/f.ab50467719.js.LICENSE.txt +0 -12
- package/dist/client/static/js/async/f7.46971e9d6d.js +0 -2
- package/dist/client/static/js/async/f7.46971e9d6d.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/f8.bbf0dbae70.js +0 -1
- package/dist/client/static/js/async/g.cb81980498.js +0 -2
- package/dist/client/static/js/async/g.cb81980498.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/h.4e790471e4.js +0 -27
- package/dist/client/static/js/async/h1.393f066d09.js +0 -1
- package/dist/client/static/js/async/h3.216e9798ab.js +0 -148
- package/dist/client/static/js/async/hd.0da931b622.js +0 -1
- package/dist/client/static/js/async/hk.ba7fb04d41.js +0 -1
- package/dist/client/static/js/async/hn.b645041e00.js +0 -1
- package/dist/client/static/js/async/ho.475a5e1ae4.js +0 -1
- package/dist/client/static/js/async/hp.e9fe2e395a.js +0 -2
- package/dist/client/static/js/async/hp.e9fe2e395a.js.LICENSE.txt +0 -17
- package/dist/client/static/js/async/hs.e7c59d8090.js +0 -41
- package/dist/client/static/js/async/i.7c148e8440.js +0 -1
- package/dist/client/static/js/async/id.573df20f29.js +0 -1
- package/dist/client/static/js/async/j.ab925882d8.js +0 -1
- package/dist/client/static/js/async/jd.63886a1f09.js +0 -1
- package/dist/client/static/js/async/jg.d86ebd4013.js +0 -86
- package/dist/client/static/js/async/jl.874d352278.js +0 -1
- package/dist/client/static/js/async/jll.11313b455a.js +0 -1
- package/dist/client/static/js/async/js.67182759ef.js +0 -1
- package/dist/client/static/js/async/jsc.23b70d6f40.js +0 -1
- package/dist/client/static/js/async/jse.334588ff5d.js +0 -1
- package/dist/client/static/js/async/jz.72eb929106.js +0 -77
- package/dist/client/static/js/async/k.3210286401.js +0 -217
- package/dist/client/static/js/async/ka.c1990ecaa3.js +0 -115
- package/dist/client/static/js/async/katex-vendor.de6a87c308.js +0 -1
- package/dist/client/static/js/async/ku.29c8a59d0c.js +0 -1
- package/dist/client/static/js/async/ky.8dab1dade0.js +0 -1
- package/dist/client/static/js/async/l.12dd34e1be.js +0 -1
- package/dist/client/static/js/async/l9.949710adaf.js +0 -83
- package/dist/client/static/js/async/l9.949710adaf.js.LICENSE.txt +0 -13
- package/dist/client/static/js/async/ls.9d9a01026c.js +0 -104
- package/dist/client/static/js/async/m.eb2e6752e2.js +0 -28
- package/dist/client/static/js/async/m.eb2e6752e2.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/m3.d2b05f9604.js +0 -2
- package/dist/client/static/js/async/m3.d2b05f9604.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/ma.2c261b04dd.js +0 -2
- package/dist/client/static/js/async/ma.2c261b04dd.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/me.8ace414f80.js +0 -23
- package/dist/client/static/js/async/ms.98960af4eb.js +0 -67
- package/dist/client/static/js/async/ms.98960af4eb.js.LICENSE.txt +0 -12
- package/dist/client/static/js/async/mt.0352e976d8.js +0 -1
- package/dist/client/static/js/async/n.a9f1c51701.js +0 -1
- package/dist/client/static/js/async/na.a36cd532d6.js +0 -1
- package/dist/client/static/js/async/nk.fc7e58325e.js +0 -1
- package/dist/client/static/js/async/o.36353dfb88.js +0 -1
- package/dist/client/static/js/async/oc.b73042e8bd.js +0 -8
- package/dist/client/static/js/async/og.8eb577893a.js +0 -193
- package/dist/client/static/js/async/p.48ecfcd14e.js +0 -1
- package/dist/client/static/js/async/px.fc6877924b.js +0 -1
- package/dist/client/static/js/async/q.22588845a9.js +0 -21
- package/dist/client/static/js/async/q.22588845a9.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/q5.97dc1481b6.js +0 -286
- package/dist/client/static/js/async/qs.2a9ddb3c72.js +0 -1
- package/dist/client/static/js/async/r.51010ad87c.js +0 -1
- package/dist/client/static/js/async/rd.cb6bf495bb.js +0 -2
- package/dist/client/static/js/async/rd.cb6bf495bb.js.LICENSE.txt +0 -4
- package/dist/client/static/js/async/s.0f395cdda5.js +0 -94
- package/dist/client/static/js/async/t.4dca0e2ba8.js +0 -1
- package/dist/client/static/js/async/t9.d44f57d518.js +0 -1
- package/dist/client/static/js/async/ta.973534bbec.js +0 -1
- package/dist/client/static/js/async/tr.e878658140.js +0 -309
- package/dist/client/static/js/async/u.0871ac5b22.js +0 -1
- package/dist/client/static/js/async/ud.3065bfee31.js +0 -2
- package/dist/client/static/js/async/ud.3065bfee31.js.LICENSE.txt +0 -4
- package/dist/client/static/js/async/up.ea990da0ff.js +0 -32
- package/dist/client/static/js/async/uw.8890abbabc.js +0 -1
- package/dist/client/static/js/async/v.7d28d3c241.js +0 -34
- package/dist/client/static/js/async/vp.9b13bf8610.js +0 -1
- package/dist/client/static/js/async/vt.42416b707d.js +0 -1
- package/dist/client/static/js/async/w.08ac210f60.js +0 -1
- package/dist/client/static/js/async/wt.ad92393a90.js +0 -1
- package/dist/client/static/js/async/x.563f72ca6b.js +0 -1
- package/dist/client/static/js/async/x0.475516418f.js +0 -1
- package/dist/client/static/js/async/x1.da8687159b.js +0 -90
- package/dist/client/static/js/async/xe.da8dcc2015.js +0 -2
- package/dist/client/static/js/async/xe.da8dcc2015.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/xl.a3c562a58c.js +0 -1
- package/dist/client/static/js/async/xn.6510c0abe2.js +0 -2
- package/dist/client/static/js/async/xn.6510c0abe2.js.LICENSE.txt +0 -6
- package/dist/client/static/js/async/xn1.83a7784fe1.js +0 -10
- package/dist/client/static/js/async/xn1.83a7784fe1.js.LICENSE.txt +0 -11
- package/dist/client/static/js/async/xnl.feb0021e50.js +0 -2
- package/dist/client/static/js/async/xnl.feb0021e50.js.LICENSE.txt +0 -12
- package/dist/client/static/js/async/y.1a9ed7a5d8.js +0 -1
- package/dist/client/static/js/async/y6.43c57defe4.js +0 -1
- package/dist/client/static/js/async/yb.8c1342401d.js +0 -1
- package/dist/client/static/js/async/ybq.4491f2f2dc.js +0 -1
- package/dist/client/static/js/async/yg.35bebd6d0c.js +0 -149
- package/dist/client/static/js/async/yq.917ddd7ba2.js +0 -1
- package/dist/client/static/js/async/ys.00687cf82d.js +0 -38
- package/dist/client/static/js/async/yv.d99d829136.js +0 -1
- package/dist/client/static/js/async/z.56f61a4374.js +0 -1
- package/dist/client/static/js/async/zi.5fdb07b86a.js +0 -24
- package/dist/client/static/js/async/zj.654f37e8ff.js +0 -1
- package/dist/client/static/js/async/zn.966d6f1cc6.js +0 -1
- package/dist/client/static/js/async/zo.26213b40c0.js +0 -1
- package/dist/client/static/js/async/zx.e9f4105e00.js +0 -1
- package/dist/client/static/js/index.e6a257402a.js +0 -38
- package/dist/client/static/js/index.e6a257402a.js.LICENSE.txt +0 -4
- package/dist/client/static/js/markdown-vendor.71e43278b3.js +0 -144
- package/dist/client/static/js/shiki-vendor.cb8452ddcd.js +0 -1
- package/src/client/components/settings/categories/provider-settings/Icons.tsx +0 -35
- package/src/client/hooks/settings/providers.ts +0 -326
- package/src/server/plugins/dev-assets.ts +0 -49
- package/src/shared/lib/code/editor-utils.ts +0 -16
- package/src/shared/lib/models/provider-presets.ts +0 -29
- /package/dist/client/{apple-touch-icon.png → static/apple-touch-icon-dskx5sr3.png} +0 -0
- /package/dist/client/{icon-192x192.png → static/icon-192x192-6gn5cr2f.png} +0 -0
- /package/dist/client/{icon.svg → static/icon-d07z9dtz.svg} +0 -0
- /package/dist/client/{manifest.webmanifest → static/manifest-bnyy75kt.webmanifest} +0 -0
- /package/{dist/client → public}/icon-512x512.png +0 -0
- /package/{dist/client → public}/icon-maskable-512x512.png +0 -0
- /package/{dist/client → public}/sw.js +0 -0
- /package/src/shared/lib/models/{provider-cleanup.ts → provider/cleanup.ts} +0 -0
- /package/src/shared/lib/models/{provider-label.ts → provider/label.ts} +0 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Brand art for every provider the chamber can show, one glyph per brand.
|
|
8
|
+
*
|
|
9
|
+
* GENERATED DATA — do not hand-edit a path. Each entry is the inner markup of a
|
|
10
|
+
* brand mark, resolved to `currentColor`, with its own `viewBox` because the
|
|
11
|
+
* sources do not share one.
|
|
12
|
+
*
|
|
13
|
+
* Sources, in the order a glyph was taken:
|
|
14
|
+
*
|
|
15
|
+
* 1. `@lobehub/icons-static-svg` (MIT) — official monochrome marks, 24x24.
|
|
16
|
+
* 2. `simple-icons` (CC0) — used where lobehub has no entry (GitLab, Xiaomi).
|
|
17
|
+
* 3. `selfh.st/icons` (CC BY 4.0) — LiteLLM, llama.cpp.
|
|
18
|
+
* 4. The vendor's own SVG (favicon or logo), with any background plate dropped.
|
|
19
|
+
* 5. A potrace outline of the vendor's own raster logo, refitted to fill a
|
|
20
|
+
* 24x24 box — the last resort for a brand publishing no vector mark.
|
|
21
|
+
*
|
|
22
|
+
* Every traced glyph is refitted so its ink fills its viewBox (88% of the
|
|
23
|
+
* shorter axis): a mark whose art sits small inside its own box renders smaller
|
|
24
|
+
* than its neighbours at the same `size` prop, which is what made the initials
|
|
25
|
+
* fallback look undersized next to them.
|
|
26
|
+
*
|
|
27
|
+
* `body` is inner markup only: the caller owns the `<svg>` element, so a glyph
|
|
28
|
+
* inherits the surrounding ink through `currentColor` and never carries a
|
|
29
|
+
* hardcoded colour. Per-element `fill-opacity`/`fill-rule`/`stroke-width`
|
|
30
|
+
* survive because they are the mark's own structure (Azure's overlapping panes,
|
|
31
|
+
* Cerebras' ring, Synthetic's stroked outline), not a palette choice.
|
|
32
|
+
*
|
|
33
|
+
* These are third-party trademarks, used here to identify the provider each one
|
|
34
|
+
* belongs to. They are not covered by this project's licence.
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
export interface ProviderGlyph {
|
|
38
|
+
/** The glyph's own coordinate system — do not assume 24x24. */
|
|
39
|
+
viewBox: string;
|
|
40
|
+
/** Inner SVG markup, painted in `currentColor`. */
|
|
41
|
+
body: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export const PROVIDER_GLYPHS: Readonly<Record<string, ProviderGlyph>> = {
|
|
45
|
+
abliteration: { viewBox: '0 0 24 24', body: '<g transform="translate(0.427,17.100) scale(0.3750)"><path d="M4.60 0L1.44 0L12.56-28.80L15.44-28.80L4.60 0ZM27.68 0L24.32 0L13.48-28.80L16.56-28.80L27.68 0ZM6.96-8.76L6.96-11.64L22-11.64L22-8.76L6.96-8.76Z"/></g><g transform="translate(12.098,17.100) scale(0.3750)"><path d="M5.10 0.17L5.10 0.17Q4.45 0.17 4.07-0.20Q3.69-0.58 3.69-1.21L3.69-1.21Q3.69-1.87 4.07-2.26Q4.45-2.65 5.10-2.65L5.10-2.65Q5.75-2.65 6.13-2.26Q6.51-1.87 6.51-1.21L6.51-1.21Q6.51-0.58 6.13-0.20Q5.75 0.17 5.10 0.17Z" fill-opacity="0.6"/></g><g transform="translate(15.922,17.100) scale(0.3750)"><path d="M4.28 0.17L4.28 0.17Q2.81 0.17 1.96-0.59Q1.10-1.34 1.10-2.64L1.10-2.64Q1.10-3.94 1.96-4.69Q2.81-5.44 4.25-5.44L4.25-5.44L7.14-5.44L7.14-6.38Q7.14-7.24 6.62-7.71Q6.10-8.18 5.15-8.18L5.15-8.18Q4.32-8.18 3.76-7.83Q3.20-7.48 3.11-6.89L3.11-6.89L1.58-6.89Q1.73-8.09 2.72-8.81Q3.71-9.52 5.19-9.52L5.19-9.52Q6.80-9.52 7.74-8.69Q8.67-7.85 8.67-6.43L8.67-6.43L8.67 0L7.17 0L7.17-1.79L6.92-1.79L7.17-2.04Q7.17-1.02 6.38-0.43Q5.59 0.17 4.28 0.17ZM4.66-1.04L4.66-1.04Q5.75-1.04 6.44-1.58Q7.14-2.13 7.14-2.98L7.14-2.98L7.14-4.30L4.28-4.30Q3.52-4.30 3.08-3.88Q2.64-3.45 2.64-2.72L2.64-2.72Q2.64-1.94 3.17-1.49Q3.71-1.04 4.66-1.04ZM19.64 0L11.65 0L11.65-1.39L14.96-1.39L14.96-7.96L12.07-7.96L12.07-9.35L16.49-9.35L16.49-1.39L19.64-1.39L19.64 0ZM15.56-11.03L15.56-11.03Q14.99-11.03 14.67-11.32Q14.35-11.61 14.35-12.10L14.35-12.10Q14.35-12.61 14.67-12.91Q14.99-13.21 15.56-13.21L15.56-13.21Q16.12-13.21 16.44-12.91Q16.76-12.61 16.76-12.10L16.76-12.10Q16.76-11.61 16.44-11.32Q16.12-11.03 15.56-11.03Z" fill-opacity="0.6"/></g>' },
|
|
46
|
+
aiand: { viewBox: '0 0 296 320', body: '<path fill="currentColor" d="M272.733 111.221c9.149-6.932 22.288-.413 22.288 11.059v183.521c0 7.665-6.22 13.879-13.893 13.879h-8.531a3.27 3.27 0 0 1-2.346-.993l-54.45-56.103a13.09 13.09 0 0 0-16.965-1.552l-81.708 58.044a3.3 3.3 0 0 1-1.895.604H38.88c-13.313-.001-19.002-16.902-8.394-24.938z"/><path fill="currentColor" d="M0 264.263v-52.101c0-4.123 1.949-8.005 5.258-10.47L272.402 2.622c8.927-6.653 21.56.177 20.868 11.281l-3.413 54.804a13.06 13.06 0 0 1-5.237 9.663L20.89 274.737C12.265 281.159 0 275.009 0 264.263"/>' },
|
|
47
|
+
aimlapi: { viewBox: '0 0 36 32', body: '<path d="M35.053 14.3536C35.7203 15.5094 35.7203 16.9334 35.053 18.0893L28.1325 30.0759C27.4651 31.2318 26.2319 31.9438 24.8972 31.9438L11.0562 31.9438C9.72158 31.9438 8.48832 31.2318 7.821 30.0759L0.900492 18.0893C0.233169 16.9334 0.233174 15.5094 0.900496 14.3536L7.821 2.36688C8.48832 1.21105 9.72158 0.499022 11.0562 0.499022L24.8972 0.499023C26.2319 0.499023 27.4651 1.21105 28.1325 2.36688L35.053 14.3536Z"/>' },
|
|
48
|
+
alibaba: { viewBox: '0 0 24 24', body: '<path d="M24 14.014c-2.8 1.512-5.62 2.896-8.759 3.524-.7.139-1.476.139-2.187.043-.678-.085-1.017-.682-.776-1.31.23-.585.536-1.181.93-1.671.852-1.065 1.814-2.034 2.678-3.088a15.75 15.75 0 001.422-2.054c.306-.511.164-1.129-.372-1.384-.897-.437-1.859-.745-2.81-1.075-.11-.043-.274.074-.492.149.273.244.47.425.743.67-2.821.48-5.49 1.16-8.08 2.098-.012.053-.033.095-.023.117.383.585.208 1.032-.35 1.394a2.365 2.365 0 00-.568.522c1.706.5 3.226.213 4.68-.735-.087-.127-.175-.244-.262-.372.546.096.874.394.918.862.011.107-.054.213-.087.32-.077-.086-.175-.17-.24-.267-.045-.064-.056-.138-.088-.245-1.728 1.15-3.587 1.438-5.632.842 0 .404-.022.745.011 1.075.022.287-.098.415-.36.564-.591.362-1.204.735-1.696 1.214-.59.585-.371 1.299.427 1.597.907.34 1.859.35 2.81.234 1.126-.139 2.23-.32 3.456-.49-1.433.67-2.844 1.14-4.33 1.33-1.04.14-2.078.214-3.106-.084-1.476-.415-2.133-1.501-1.75-2.96.361-1.363 1.236-2.449 2.176-3.45 3.139-3.332 7.108-5.024 11.7-5.365 1.072-.074 2.155.064 3.16.511 1.411.639 2.002 1.99 1.313 3.354-.448.905-1.072 1.735-1.695 2.555-.612.809-1.301 1.554-1.946 2.331-.186.234-.361.48-.503.745-.274.5-.088.83.492.778 1.213-.118 2.45-.213 3.62-.511 1.716-.437 3.389-1.054 5.084-1.597.175-.043.339-.107.492-.17z"></path>' },
|
|
49
|
+
amazon: { viewBox: '0 0 24 24', body: '<path d="M13.05 15.513h3.08c.214 0 .389.177.389.394v1.82a1.704 1.704 0 011.296 1.661c0 .943-.755 1.708-1.685 1.708-.931 0-1.686-.765-1.686-1.708 0-.807.554-1.484 1.297-1.662v-1.425h-2.69v4.663a.395.395 0 01-.188.338l-2.69 1.641a.385.385 0 01-.405-.002l-4.926-3.086a.395.395 0 01-.185-.336V16.3L2.196 14.87A.395.395 0 012 14.555L2 14.528V9.406c0-.14.073-.27.192-.34l2.465-1.462V4.448c0-.129.062-.249.165-.322l.021-.014L9.77 1.058a.385.385 0 01.407 0l2.69 1.675a.395.395 0 01.185.336V7.6h3.856V5.683a1.704 1.704 0 01-1.296-1.662c0-.943.755-1.708 1.685-1.708.931 0 1.685.765 1.685 1.708 0 .807-.553 1.484-1.296 1.662v2.311a.391.391 0 01-.389.394h-4.245v1.806h6.624a1.69 1.69 0 011.64-1.313c.93 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708a1.69 1.69 0 01-1.64-1.314H13.05v1.937h4.953l.915 1.18a1.66 1.66 0 01.84-.227c.931 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708-.93 0-1.685-.765-1.685-1.708 0-.346.102-.668.276-.937l-.724-.935H13.05v1.806zM9.973 1.856L7.93 3.122V6.09h-.778V3.604L5.435 4.669v2.945l2.11 1.36L9.712 7.61V5.334h.778V7.83c0 .136-.07.263-.184.335L7.963 9.638v2.081l1.422 1.009-.446.646-1.406-.998-1.53 1.005-.423-.66 1.605-1.055v-1.99L5.038 8.29l-2.26 1.34v1.676l1.972-1.189.398.677-2.37 1.429V14.3l2.166 1.258 2.27-1.368.397.677-2.176 1.311V19.3l1.876 1.175 2.365-1.426.398.678-2.017 1.216 1.918 1.201 2.298-1.403v-5.78l-4.758 2.893-.4-.675 5.158-3.136V3.289L9.972 1.856zM16.13 18.47a.913.913 0 00-.908.92c0 .507.406.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zm3.63-3.81a.913.913 0 00-.908.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92zm1.555-4.99a.913.913 0 00-.908.92c0 .507.407.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zM17.296 3.1a.913.913 0 00-.907.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92z"></path>' },
|
|
50
|
+
anthropic: { viewBox: '0 0 24 24', body: '<path d="M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48zm-7.258 0h3.767L16.906 20h-3.674l-1.343-3.461H5.017l-1.344 3.46H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z"></path>' },
|
|
51
|
+
antigravity: { viewBox: '0 0 24 24', body: '<path d="M21.751 22.607c1.34 1.005 3.35.335 1.508-1.508C17.73 15.74 18.904 1 12.037 1 5.17 1 6.342 15.74.815 21.1c-2.01 2.009.167 2.511 1.507 1.506 5.192-3.517 4.857-9.714 9.715-9.714 4.857 0 4.522 6.197 9.714 9.715z"></path>' },
|
|
52
|
+
apple: { viewBox: '0 0 24 24', body: '<path d="M11.932 6.908c.95 0 2.727-1.291 4.595-1.1.782.032 2.976.316 4.388 2.38-.113.069-2.622 1.528-2.593 4.565.034 3.617 3.166 4.828 3.221 4.85-.029.086-.506 1.723-1.658 3.416-1.002 1.463-2.039 2.919-3.675 2.95-1.606.03-2.125-.955-3.96-.955s-2.409.923-3.931.984c-1.581.06-2.78-1.58-3.79-3.037-2.065-2.98-3.64-8.422-1.527-12.087 1.051-1.824 2.93-2.98 4.969-3.009 1.549-.032 3.011 1.043 3.96 1.043zM16.552 0c.153 1.407-.411 2.817-1.251 3.833-.837 1.013-2.214 1.804-3.555 1.7-.185-1.378.495-2.814 1.27-3.712C13.883.805 15.346.05 16.553 0z"></path>' },
|
|
53
|
+
azure: { viewBox: '0 0 24 24', body: '<path d="M18.397 15.296H7.4a.51.51 0 00-.347.882l7.066 6.595c.206.192.477.298.758.298h6.226l-2.706-7.775z" fill-opacity=".75"></path><path d="M8.295.857c-.477 0-.9.304-1.053.756L.495 21.605a1.11 1.11 0 001.052 1.466h5.43c.477 0 .9-.304 1.053-.755l1.341-3.975-2.318-2.163a.51.51 0 01.347-.882h3L15.271.857H8.295z" fill-opacity=".5"></path><path d="M17.193 1.613a1.11 1.11 0 00-1.052-.756h-7.81.035c.477 0 .9.304 1.052.756l6.748 19.992a1.11 1.11 0 01-1.052 1.466h-.12 7.895a1.11 1.11 0 001.052-1.466L17.193 1.613z"></path>' },
|
|
54
|
+
baidu: { viewBox: '0 0 24 24', body: '<path d="M8.859 11.735c1.017-1.71 4.059-3.083 6.202.286 1.579 2.284 4.284 4.397 4.284 4.397s2.027 1.601.73 4.684c-1.24 2.956-5.64 1.607-6.005 1.49l-.024-.009s-1.746-.568-3.776-.112c-2.026.458-3.773.286-3.773.286l-.045-.001c-.328-.01-2.38-.187-3.001-2.968-.675-3.028 2.365-4.687 2.592-4.968.226-.288 1.802-1.37 2.816-3.085zm.986 1.738v2.032h-1.64s-1.64.138-2.213 2.014c-.2 1.252.177 1.99.242 2.148.067.157.596 1.073 1.927 1.342h3.078v-7.514l-1.394-.022zm3.588 2.191l-1.44.024v3.956s.064.985 1.44 1.344h3.541v-5.3h-1.528v3.979h-1.46s-.466-.068-.553-.447v-3.556zM9.82 16.715v3.06H8.58s-.863-.045-1.126-1.049c-.136-.445.02-.959.088-1.16.063-.203.353-.671.951-.85H9.82zm9.525-9.036c2.086 0 2.646 2.06 2.646 2.742 0 .688.284 3.597-2.309 3.655-2.595.057-2.704-1.77-2.704-3.08 0-1.374.277-3.317 2.367-3.317zM4.24 6.08c1.523-.135 2.645 1.55 2.762 2.513.07.625.393 3.486-1.975 4-2.364.515-3.244-2.249-2.984-3.544 0 0 .28-2.797 2.197-2.969zm8.847-1.483c.14-1.31 1.69-3.316 2.931-3.028 1.236.285 2.367 1.944 2.137 3.37-.224 1.428-1.345 3.313-3.095 3.082-1.748-.226-2.143-1.823-1.973-3.424zM9.425 1c1.307 0 2.364 1.519 2.364 3.398 0 1.879-1.057 3.4-2.364 3.4s-2.367-1.521-2.367-3.4C7.058 2.518 8.118 1 9.425 1z"></path>' },
|
|
55
|
+
baseten: { viewBox: '0 0 24 24', body: '<path d="M2.316 4.8h14.682v4.8H7.31a.302.302 0 00-.308.3v4.2c0 .171.14.3.308.3h9.688v4.8h-4.686a.302.302 0 00-.308.3v4.2c0 .171.141.3.308.3h4.378a.297.297 0 00.308-.3v-4.5h4.694a.302.302 0 00.308-.3v-4.2c0-.171-.14-.3-.308-.3h-4.694V9.6h4.694A.302.302 0 0022 9.3V5.1c0-.171-.14-.3-.308-.3h-4.694V.3c0-.171-.14-.3-.308-.3H2.316A.31.31 0 002 .3v4.2c0 .171.14.3.316.3z"></path>' },
|
|
56
|
+
cerebras: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M14.121 2.701a9.299 9.299 0 000 18.598V22.7c-5.91 0-10.7-4.791-10.7-10.701S8.21 1.299 14.12 1.299V2.7zm4.752 3.677A7.353 7.353 0 109.42 17.643l-.901 1.074a8.754 8.754 0 01-1.08-12.334 8.755 8.755 0 0112.335-1.08l-.901 1.075zm-2.255.844a5.407 5.407 0 00-5.048 9.563l-.656 1.24a6.81 6.81 0 016.358-12.043l-.654 1.24zM14.12 8.539a3.46 3.46 0 100 6.922v1.402a4.863 4.863 0 010-9.726v1.402z"></path><path d="M15.407 10.836a2.24 2.24 0 00-.51-.409 1.084 1.084 0 00-.544-.152c-.255 0-.483.047-.684.14a1.58 1.58 0 00-.84.912c-.074.203-.11.416-.11.631 0 .218.036.43.11.631a1.594 1.594 0 00.84.913c.2.093.43.14.684.14.216 0 .417-.046.602-.135.188-.09.35-.225.475-.392l.928 1.006c-.14.14-.3.261-.482.363a3.367 3.367 0 01-1.083.38c-.17.026-.317.04-.44.04a3.315 3.315 0 01-1.182-.21 2.825 2.825 0 01-.961-.597 2.816 2.816 0 01-.644-.929 2.987 2.987 0 01-.238-1.21c0-.444.08-.847.238-1.21.15-.35.368-.666.643-.929.278-.261.605-.464.962-.596a3.315 3.315 0 011.182-.21c.355 0 .712.068 1.072.204.361.138.685.36.944.649l-.962.97z"></path>' },
|
|
57
|
+
charm: { viewBox: '0 0 24 24', body: '<g transform="translate(1.440,1.414) scale(0.05280) translate(0.0,400.0) scale(0.1,-0.1)"><path d="M985 3989 c-44 -5 -120 -13 -170 -19 -482 -52 -748 -344 -798 -875 -10 -110 -22 -1855 -12 -1855 6 0 61 60 156 171 268 311 314 365 320 369 65 56 405 479 426 530 34 81 79 111 289 191 206 78 280 118 362 194 63 59 96 98 236 287 212 285 335 273 590 -61 189 -246 229 -284 401 -376 406 -216 424 -260 243 -580 -127 -225 -156 -328 -177 -635 -17 -238 -60 -358 -141 -400 -47 -24 -143 -126 -463 -493 -144 -165 -288 -330 -320 -366 l-58 -66 493 -3 c968 -7 1205 51 1433 348 186 243 196 325 202 1590 4 902 3 965 -27 1245 -51 481 -344 748 -875 798 -136 12 -1997 18 -2110 6z m1951 -871 c33 -66 144 -177 207 -207 54 -26 59 -44 19 -60 -49 -21 -135 -99 -174 -158 -89 -136 -83 -132 -125 -91 -19 18 -48 52 -64 75 -16 23 -67 75 -112 115 -103 90 -103 84 -8 146 84 56 146 118 188 190 32 54 37 53 69 -10z m516 -958 c9 -16 35 -42 57 -57 46 -32 51 -50 18 -62 -25 -10 -87 -75 -87 -91 0 -6 -9 -10 -20 -10 -11 0 -20 6 -20 13 0 15 -68 82 -92 90 -18 6 -25 37 -9 37 15 0 101 81 101 96 0 25 35 15 52 -16z m-261 -761 c19 -36 91 -110 132 -136 46 -29 46 -34 1 -58 -41 -22 -134 -120 -134 -141 0 -8 -9 -14 -20 -14 -11 0 -20 6 -20 13 0 22 -57 82 -114 122 -66 45 -68 54 -18 88 50 34 105 86 127 120 21 33 31 34 46 6z M2080 2231 c-33 -63 -8 -231 35 -231 38 0 45 19 45 118 0 105 -9 132 -45 132 -14 0 -29 -8 -35 -19z M2547 2232 c-21 -23 -25 -200 -5 -220 46 -46 78 -1 78 112 0 109 -31 154 -73 108z"/></g>' },
|
|
58
|
+
claude: { viewBox: '0 0 24 24', body: '<path d="M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z"></path>' },
|
|
59
|
+
cline: { viewBox: '0 0 24 24', body: '<path d="M17.035 3.991c2.75 0 4.98 2.24 4.98 5.003v1.667l1.45 2.896a1.01 1.01 0 01-.002.909l-1.448 2.864v1.668c0 2.762-2.23 5.002-4.98 5.002H7.074c-2.751 0-4.98-2.24-4.98-5.002V17.33l-1.48-2.855a1.01 1.01 0 01-.003-.927l1.482-2.887V8.994c0-2.763 2.23-5.003 4.98-5.003h9.962zM8.265 9.6a2.274 2.274 0 00-2.274 2.274v4.042a2.274 2.274 0 004.547 0v-4.042A2.274 2.274 0 008.265 9.6zm7.326 0a2.274 2.274 0 00-2.274 2.274v4.042a2.274 2.274 0 104.548 0v-4.042A2.274 2.274 0 0015.59 9.6z"></path><path d="M12.054 5.558a2.779 2.779 0 100-5.558 2.779 2.779 0 000 5.558z"></path>' },
|
|
60
|
+
cloudflare: { viewBox: '0 0 24 24', body: '<path d="M16.493 17.4c.135-.52.08-.983-.161-1.338-.215-.328-.592-.519-1.05-.519l-8.663-.109a.148.148 0 01-.135-.082c-.027-.054-.027-.109-.027-.163.027-.082.108-.164.189-.164l8.744-.11c1.05-.054 2.153-.9 2.556-1.937l.511-1.31c.027-.055.027-.11.027-.164C17.92 8.91 15.66 7 12.942 7c-2.503 0-4.628 1.638-5.381 3.903a2.432 2.432 0 00-1.803-.491c-1.21.109-2.153 1.092-2.287 2.32-.027.328 0 .628.054.9C1.56 13.688 0 15.326 0 17.319c0 .19.027.355.027.545 0 .082.08.137.161.137h15.983c.08 0 .188-.055.215-.164l.107-.437"></path><path d="M19.238 11.75h-.242c-.054 0-.108.054-.135.109l-.35 1.2c-.134.52-.08.983.162 1.338.215.328.592.518 1.05.518l1.855.11c.054 0 .108.027.135.082.027.054.027.109.027.163-.027.082-.108.164-.188.164l-1.91.11c-1.05.054-2.153.9-2.557 1.937l-.134.355c-.027.055.026.137.107.137h6.592c.081 0 .162-.055.162-.137.107-.41.188-.846.188-1.31-.027-2.62-2.153-4.777-4.762-4.777"></path>' },
|
|
61
|
+
codex: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M8.086.457a6.105 6.105 0 013.046-.415c1.333.153 2.521.72 3.564 1.7a.117.117 0 00.107.029c1.408-.346 2.762-.224 4.061.366l.063.03.154.076c1.357.703 2.33 1.77 2.918 3.198.278.679.418 1.388.421 2.126a5.655 5.655 0 01-.18 1.631.167.167 0 00.04.155 5.982 5.982 0 011.578 2.891c.385 1.901-.01 3.615-1.183 5.14l-.182.22a6.063 6.063 0 01-2.934 1.851.162.162 0 00-.108.102c-.255.736-.511 1.364-.987 1.992-1.199 1.582-2.962 2.462-4.948 2.451-1.583-.008-2.986-.587-4.21-1.736a.145.145 0 00-.14-.032c-.518.167-1.04.191-1.604.185a5.924 5.924 0 01-2.595-.622 6.058 6.058 0 01-2.146-1.781c-.203-.269-.404-.522-.551-.821a7.74 7.74 0 01-.495-1.283 6.11 6.11 0 01-.017-3.064.166.166 0 00.008-.074.115.115 0 00-.037-.064 5.958 5.958 0 01-1.38-2.202 5.196 5.196 0 01-.333-1.589 6.915 6.915 0 01.188-2.132c.45-1.484 1.309-2.648 2.577-3.493.282-.188.55-.334.802-.438.286-.12.573-.22.861-.304a.129.129 0 00.087-.087A6.016 6.016 0 015.635 2.31C6.315 1.464 7.132.846 8.086.457zm-.804 7.85a.848.848 0 00-1.473.842l1.694 2.965-1.688 2.848a.849.849 0 001.46.864l1.94-3.272a.849.849 0 00.007-.854l-1.94-3.393zm5.446 6.24a.849.849 0 000 1.695h4.848a.849.849 0 000-1.696h-4.848z"></path>' },
|
|
62
|
+
commandcode: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M19.334 0a4.67 4.67 0 0 0-4.666 4.668v2H9.334v-2A4.67 4.67 0 0 0 4.668 0 4.67 4.67 0 0 0 0 4.668a4.67 4.67 0 0 0 4.668 4.665h2v5.334h-2A4.67 4.67 0 0 0 0 19.334 4.67 4.67 0 0 0 4.668 24a4.67 4.67 0 0 0 4.666-4.666v-2h5.334v2A4.67 4.67 0 0 0 19.334 24 4.67 4.67 0 0 0 24 19.334a4.67 4.67 0 0 0-4.666-4.667h-2V9.333h2A4.67 4.67 0 0 0 24 4.668 4.673 4.673 0 0 0 19.334 0m-2 6.666v-2c0-1.107.893-2 2-2s2 .893 2 2-.893 2-2 2zm-12.668 0c-1.107 0-2-.893-2-2s.893-2 2-2 2 .893 2 2v2zm4.666 8V9.334h5.334v5.334zm10.002 6.667c-1.107 0-2-.893-2-2v-2h2c1.107 0 2 .892 2 2 0 1.107-.893 2-2 2m-14.668 0c-1.107 0-2-.893-2-2 0-1.108.893-2 2-2h2v2c0 1.107-.893 2-2 2"></path>' },
|
|
63
|
+
coreweave: { viewBox: '0 0 24 24', body: '<g transform="translate(1.058,1.085) scale(0.05457) translate(0.0,400.0) scale(0.1,-0.1)"><path d="M695 3091 c-46 -21 -84 -59 -115 -116 -13 -22 -53 -94 -90 -160 -37 -66 -100 -178 -140 -250 -356 -637 -339 -535 -145 -875 45 -80 153 -270 239 -423 186 -331 178 -320 240 -352 l50 -25 581 0 c716 0 657 -32 488 268 -64 114 -123 219 -130 234 -23 44 -54 48 -378 48 l-301 0 -26 28 c-14 15 -49 70 -78 122 -29 52 -66 116 -82 143 -15 26 -28 49 -28 51 0 1 -22 43 -50 92 -69 123 -68 134 38 319 16 28 52 91 79 140 139 248 95 219 334 225 239 6 228 0 317 161 35 63 90 161 123 219 102 182 132 170 -432 170 -421 0 -457 -2 -494 -19z M1862 3083 c-11 -15 -53 -89 -94 -163 -42 -74 -99 -175 -127 -225 -79 -136 -85 -116 148 -525 17 -30 50 -90 73 -134 80 -147 99 -142 208 52 46 81 110 194 144 252 89 154 88 157 -44 380 -57 96 -131 222 -165 280 -71 121 -103 139 -143 83z M2813 3095 c-12 -8 -28 -28 -36 -43 -15 -29 -25 -47 -247 -442 -79 -140 -162 -289 -185 -330 -23 -41 -53 -93 -65 -115 -83 -146 -349 -621 -377 -671 -54 -99 -51 -108 88 -360 184 -333 151 -335 354 26 76 135 146 259 155 275 162 287 207 367 228 405 14 25 28 50 32 55 4 6 22 37 40 70 17 33 60 110 94 170 298 524 287 449 105 757 -125 212 -144 233 -186 203z M3622 3097 c-13 -6 -37 -37 -54 -67 -26 -48 -87 -156 -151 -270 -11 -19 -41 -73 -67 -120 -26 -47 -58 -103 -70 -125 -12 -22 -44 -78 -70 -125 -26 -47 -56 -101 -67 -120 -11 -19 -62 -109 -113 -200 -51 -91 -102 -181 -113 -200 -11 -19 -39 -69 -62 -110 -23 -41 -74 -132 -113 -202 -88 -156 -89 -171 -28 -277 24 -42 55 -96 69 -121 190 -338 186 -336 297 -135 18 33 52 94 75 135 24 41 51 91 62 110 11 19 62 109 113 200 52 91 121 215 155 275 34 61 104 184 155 275 349 615 335 575 254 715 -216 373 -226 387 -272 362z"/></g>' },
|
|
64
|
+
cursor: { viewBox: '0 0 24 24', body: '<path d="M22.106 5.68L12.5.135a.998.998 0 00-.998 0L1.893 5.68a.84.84 0 00-.419.726v11.186c0 .3.16.577.42.727l9.607 5.547a.999.999 0 00.998 0l9.608-5.547a.84.84 0 00.42-.727V6.407a.84.84 0 00-.42-.726zm-.603 1.176L12.228 22.92c-.063.108-.228.064-.228-.061V12.34a.59.59 0 00-.295-.51l-9.11-5.26c-.107-.062-.063-.228.062-.228h18.55c.264 0 .428.286.296.514z"></path>' },
|
|
65
|
+
deepinfra: { viewBox: '0 0 24 24', body: '<path d="M3.294 7.821A2.297 2.297 0 011 5.527a2.297 2.297 0 012.294-2.295A2.297 2.297 0 015.59 5.527 2.297 2.297 0 013.294 7.82zm0-3.688a1.396 1.396 0 000 2.79 1.396 1.396 0 000-2.79zM3.294 14.293A2.297 2.297 0 011 11.998a2.297 2.297 0 012.294-2.294 2.297 2.297 0 012.295 2.294 2.297 2.297 0 01-2.295 2.295zm0-3.688a1.395 1.395 0 000 2.788 1.395 1.395 0 100-2.788zM3.294 20.761A2.297 2.297 0 011 18.467a2.297 2.297 0 012.294-2.295 2.297 2.297 0 012.295 2.295 2.297 2.297 0 01-2.295 2.294zm0-3.688a1.396 1.396 0 000 2.79 1.396 1.396 0 000-2.79zM20.738 7.821a2.297 2.297 0 01-2.295-2.294 2.297 2.297 0 012.294-2.295 2.297 2.297 0 012.295 2.295 2.297 2.297 0 01-2.294 2.294zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.626-1.395-1.395-1.395zM20.738 14.293a2.297 2.297 0 01-2.295-2.295 2.297 2.297 0 012.294-2.294 2.297 2.297 0 012.295 2.294 2.297 2.297 0 01-2.294 2.295zm0-3.688c-.769 0-1.395.625-1.395 1.393a1.396 1.396 0 002.79 0c0-.77-.626-1.393-1.395-1.393zM20.738 20.761a2.297 2.297 0 01-2.295-2.294 2.297 2.297 0 012.294-2.295 2.297 2.297 0 012.295 2.295 2.297 2.297 0 01-2.294 2.294zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.626-1.395-1.395-1.395zM12.016 11.057a2.297 2.297 0 01-2.294-2.294 2.297 2.297 0 012.294-2.295 2.297 2.297 0 012.295 2.295 2.297 2.297 0 01-2.295 2.294zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.625-1.395-1.395-1.395zM12.017 4.589a2.297 2.297 0 01-2.295-2.295A2.297 2.297 0 0112.017 0a2.297 2.297 0 012.294 2.294 2.297 2.297 0 01-2.294 2.295zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.626-1.395-1.395-1.395zM12.017 17.529a2.297 2.297 0 01-2.295-2.295 2.297 2.297 0 012.295-2.294 2.297 2.297 0 012.294 2.294 2.297 2.297 0 01-2.294 2.295zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.626-1.395-1.395-1.395zM12.016 24a2.297 2.297 0 01-2.294-2.295 2.297 2.297 0 012.294-2.294 2.297 2.297 0 012.295 2.294A2.297 2.297 0 0112.016 24zm0-3.688a1.396 1.396 0 101.395 1.395c0-.77-.625-1.395-1.395-1.395z"></path><path d="M8.363 8.222a.742.742 0 01-.277-.053l-1.494-.596a.75.75 0 11.557-1.392l1.493.595a.75.75 0 01-.278 1.446h-.001zM8.363 14.566a.743.743 0 01-.277-.053l-1.494-.595a.75.75 0 11.557-1.393l1.493.596a.75.75 0 01-.278 1.445h-.001zM17.124 11.397a.741.741 0 01-.277-.054l-1.493-.595a.75.75 0 11.555-1.392l1.493.595a.75.75 0 01-.278 1.446zM17.124 5.05a.744.744 0 01-.277-.054L15.354 4.4a.75.75 0 01.555-1.392l1.493.596a.75.75 0 01-.278 1.445zM17.124 17.739a.743.743 0 01-.277-.053l-1.494-.596a.75.75 0 11.556-1.392l1.493.596a.75.75 0 01-.278 1.445zM6.91 17.966a.75.75 0 01-.279-1.445l1.494-.595a.749.749 0 11.556 1.392l-1.493.595a.743.743 0 01-.277.053H6.91zM6.91 11.66a.75.75 0 01-.279-1.446l1.494-.595a.75.75 0 01.556 1.392l-1.493.595a.743.743 0 01-.277.053H6.91zM6.91 5.033a.75.75 0 01-.279-1.446l1.494-.595a.75.75 0 01.556 1.392l-1.493.596a.744.744 0 01-.277.053H6.91zM8.363 21.364a.743.743 0 01-.277-.053l-1.494-.596a.75.75 0 01.555-1.392l1.494.595a.75.75 0 01-.278 1.446zM15.63 8.223a.75.75 0 01-.278-1.447l1.494-.595a.75.75 0 01.556 1.393l-1.494.595a.744.744 0 01-.276.054h-.002zM15.63 14.567a.75.75 0 01-.278-1.446l1.494-.596a.75.75 0 01.556 1.394l-1.494.595a.743.743 0 01-.276.053h-.002zM15.63 21.363a.749.749 0 01-.278-1.445l1.494-.595a.75.75 0 11.555 1.392l-1.494.595a.741.741 0 01-.277.053z"></path>' },
|
|
66
|
+
deepseek: { viewBox: '0 0 24 24', body: '<path d="M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z"></path>' },
|
|
67
|
+
devin: { viewBox: '0 0 24 24', body: '<path d="M2.033 9.867l2.554 1.483a.589.589 0 00.592 0l2.554-1.483.01-.008a.608.608 0 00.11-.084l.013-.015a.631.631 0 00.076-.1c.003-.005.008-.01.01-.016a.558.558 0 00.052-.125l.007-.028a.611.611 0 00.019-.14V7.868c0-.572.307-1.105.8-1.392a1.595 1.595 0 011.598 0l1.277.742a.54.54 0 00.129.053l.028.01c.044.01.088.015.133.016h.006l.013-.002a.587.587 0 00.27-.074l.011-.004 2.554-1.483a.596.596 0 00.297-.516V2.253a.595.595 0 00-.297-.516L12.293.257a.587.587 0 00-.591 0L9.148 1.737l-.01.01a.609.609 0 00-.109.083l-.014.015a.632.632 0 00-.076.1c-.003.005-.008.01-.01.016a.57.57 0 00-.052.124l-.007.028a.612.612 0 00-.018.14v1.483c0 .572-.307 1.105-.8 1.393a1.597 1.597 0 01-1.599 0l-1.276-.742a.603.603 0 00-.13-.053l-.028-.008a.658.658 0 00-.133-.018h-.02a.57.57 0 00-.269.074c-.003.002-.008.002-.012.005L2.033 5.872a.596.596 0 00-.297.515v2.966c0 .213.113.41.297.515z"></path><path d="M15.943 10.607a1.596 1.596 0 011.599 0l1.276.74c.041.025.085.04.13.055l.028.008c.043.01.088.016.133.018h.005c.005 0 .01-.002.014-.003a.474.474 0 00.122-.016l.021-.005a.616.616 0 00.126-.052c.004-.002.009-.002.013-.005l2.554-1.482a.597.597 0 00.297-.516V6.383a.596.596 0 00-.297-.515l-2.552-1.483a.587.587 0 00-.592 0l-2.553 1.482-.011.008a.61.61 0 00-.108.084l-.014.016a.637.637 0 00-.076.1c-.003.005-.008.01-.01.016a.57.57 0 00-.052.124l-.007.029a.612.612 0 00-.018.14v1.482c0 .572-.307 1.105-.8 1.393a1.597 1.597 0 01-1.599 0l-1.276-.742a.584.584 0 00-.13-.053l-.028-.008a.62.62 0 00-.133-.018h-.02a.587.587 0 00-.269.074l-.012.004L9.15 10a.596.596 0 00-.296.516v2.966c0 .212.112.409.296.515l2.554 1.483s.008.002.012.005c.04.022.082.04.126.052l.02.004a.57.57 0 00.123.017l.014.002h.006c.054 0 .108-.01.16-.025a.587.587 0 00.13-.054l1.277-.741a1.597 1.597 0 012.398 1.392v1.482c0 .049.007.095.019.14l.007.028a.619.619 0 00.051.125c.004.006.008.01.01.016a.6.6 0 00.076.1l.014.015c.033.032.069.06.108.084.004.002.006.006.011.008l2.554 1.483a.59.59 0 00.593 0l2.554-1.483a.597.597 0 00.296-.516v-2.965a.595.595 0 00-.296-.516l-2.554-1.483s-.008-.002-.012-.005a.54.54 0 00-.126-.051c-.007-.003-.013-.003-.02-.005a.635.635 0 00-.125-.017h-.018a.557.557 0 00-.16.026.588.588 0 00-.13.053l-1.276.742a1.595 1.595 0 01-1.598 0 1.615 1.615 0 010-2.785l-.005-.001z"></path><path d="M14.848 18.265l-2.554-1.482-.012-.005a.526.526 0 00-.126-.052c-.007-.002-.014-.002-.02-.005a.64.64 0 00-.124-.017h-.02a.56.56 0 00-.16.026.588.588 0 00-.13.053l-1.276.742a1.594 1.594 0 01-1.598 0c-.493-.286-.8-.82-.8-1.393V14.65a.563.563 0 00-.018-.14l-.008-.028a.604.604 0 00-.051-.124l-.01-.017a.603.603 0 00-.076-.1l-.014-.015a.596.596 0 00-.109-.084c-.003-.002-.005-.006-.01-.008L5.178 12.65a.587.587 0 00-.591 0l-2.554 1.483a.596.596 0 00-.297.516v2.965c0 .213.113.41.297.516l2.554 1.483.012.004a.618.618 0 00.267.074l.016.002h.007a.55.55 0 00.16-.026.584.584 0 00.129-.053l1.277-.742a1.597 1.597 0 012.398 1.393v1.482c0 .05.007.095.019.14l.007.028c.013.044.03.085.051.125l.01.016c.022.036.047.07.076.1l.014.015c.032.032.069.06.109.084l.01.008 2.554 1.483a.587.587 0 00.593 0l2.554-1.483a.596.596 0 00.296-.515v-2.966a.596.596 0 00-.296-.516h-.002z"></path>' },
|
|
68
|
+
exa: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M3 0h19v1.791L13.892 12 22 22.209V24H3V0zm9.62 10.348l6.589-8.557H6.03l6.59 8.557zM5.138 3.935v7.17h5.52l-5.52-7.17zm5.52 8.96h-5.52v7.17l5.52-7.17zM6.03 22.21l6.59-8.557 6.589 8.557H6.03z"></path>' },
|
|
69
|
+
fireworks: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M14.8 5l-2.801 6.795L9.195 5H7.397l3.072 7.428a1.64 1.64 0 003.038.002L16.598 5H14.8zm1.196 10.352l5.124-5.244-.699-1.669-5.596 5.739a1.664 1.664 0 00-.343 1.807 1.642 1.642 0 001.516 1.012L16 17l8-.02-.699-1.669-7.303.041h-.002zM2.88 10.104l.699-1.669 5.596 5.739c.468.479.603 1.189.343 1.807a1.643 1.643 0 01-1.516 1.012l-8-.018-.002.002.699-1.669 7.303.042-5.122-5.246z"></path>' },
|
|
70
|
+
gemini: { viewBox: '0 0 24 24', body: '<path d="M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z"></path>' },
|
|
71
|
+
geminicli: { viewBox: '0 0 24 24', body: '<path d="M16.793 10.358v3.867L7.236 18.82v-2.8l7.751-3.728-7.75-3.728V5.763l9.556 4.595z"></path><path clip-rule="evenodd" d="M19.608 0A4.392 4.392 0 0124 4.392v15.216A4.392 4.392 0 0119.608 24H4.392A4.392 4.392 0 010 19.608V4.392A4.392 4.392 0 014.392 0h15.216zM4.26 1.444A2.816 2.816 0 001.444 4.26v15.48a2.816 2.816 0 002.816 2.816h15.48a2.816 2.816 0 002.816-2.816V4.26a2.816 2.816 0 00-2.816-2.816H4.26z"></path>' },
|
|
72
|
+
githubcopilot: { viewBox: '0 0 24 24', body: '<path d="M19.245 5.364c1.322 1.36 1.877 3.216 2.11 5.817.622 0 1.2.135 1.592.654l.73.964c.21.278.323.61.323.955v2.62c0 .339-.173.669-.453.868C20.239 19.602 16.157 21.5 12 21.5c-4.6 0-9.205-2.583-11.547-4.258-.28-.2-.452-.53-.453-.868v-2.62c0-.345.113-.679.321-.956l.73-.963c.392-.517.974-.654 1.593-.654l.029-.297c.25-2.446.81-4.213 2.082-5.52 2.461-2.54 5.71-2.851 7.146-2.864h.198c1.436.013 4.685.323 7.146 2.864zm-7.244 4.328c-.284 0-.613.016-.962.05-.123.447-.305.85-.57 1.108-1.05 1.023-2.316 1.18-2.994 1.18-.638 0-1.306-.13-1.851-.464-.516.165-1.012.403-1.044.996a65.882 65.882 0 00-.063 2.884l-.002.48c-.002.563-.005 1.126-.013 1.69.002.326.204.63.51.765 2.482 1.102 4.83 1.657 6.99 1.657 2.156 0 4.504-.555 6.985-1.657a.854.854 0 00.51-.766c.03-1.682.006-3.372-.076-5.053-.031-.596-.528-.83-1.046-.996-.546.333-1.212.464-1.85.464-.677 0-1.942-.157-2.993-1.18-.266-.258-.447-.661-.57-1.108-.32-.032-.64-.049-.96-.05zm-2.525 4.013c.539 0 .976.426.976.95v1.753c0 .525-.437.95-.976.95a.964.964 0 01-.976-.95v-1.752c0-.525.437-.951.976-.951zm5 0c.539 0 .976.426.976.95v1.753c0 .525-.437.95-.976.95a.964.964 0 01-.976-.95v-1.752c0-.525.437-.951.976-.951zM7.635 5.087c-1.05.102-1.935.438-2.385.906-.975 1.037-.765 3.668-.21 4.224.405.394 1.17.657 1.995.657h.09c.649-.013 1.785-.176 2.73-1.11.435-.41.705-1.433.675-2.47-.03-.834-.27-1.52-.63-1.813-.39-.336-1.275-.482-2.265-.394zm6.465.394c-.36.292-.6.98-.63 1.813-.03 1.037.24 2.06.675 2.47.968.957 2.136 1.104 2.776 1.11h.044c.825 0 1.59-.263 1.995-.657.555-.556.765-3.187-.21-4.224-.45-.468-1.335-.804-2.385-.906-.99-.088-1.875.058-2.265.394zM12 7.615c-.24 0-.525.015-.84.044.03.16.045.336.06.526l-.001.159a2.94 2.94 0 01-.014.25c.225-.022.425-.027.612-.028h.366c.187 0 .387.006.612.028-.015-.146-.015-.277-.015-.409.015-.19.03-.365.06-.526a9.29 9.29 0 00-.84-.044z"></path>' },
|
|
73
|
+
gitlab: { viewBox: '0 0 24 24', body: '<path d="m23.6004 9.5927-.0337-.0862L20.3.9814a.851.851 0 0 0-.3362-.405.8748.8748 0 0 0-.9997.0539.8748.8748 0 0 0-.29.4399l-2.2055 6.748H7.5375l-2.2057-6.748a.8573.8573 0 0 0-.29-.4412.8748.8748 0 0 0-.9997-.0537.8585.8585 0 0 0-.3362.4049L.4332 9.5015l-.0325.0862a6.0657 6.0657 0 0 0 2.0119 7.0105l.0113.0087.03.0213 4.976 3.7264 2.462 1.8633 1.4995 1.1321a1.0085 1.0085 0 0 0 1.2197 0l1.4995-1.1321 2.4619-1.8633 5.006-3.7489.0125-.01a6.0682 6.0682 0 0 0 2.0094-7.003z"/>' },
|
|
74
|
+
gmicloud: { viewBox: '0 0 24 24', body: '<path d="M15.55 5c.249 0 .45.225.45.5v2c0 .276-.202.5-.45.5h-3.1c-.25 0-.451.226-.451.5v2c0 .277-.203.5-.45.5h-3.1c-.25 0-.451.225-.451.5v2c0 .276.203.5.45.5h3.104c.25 0 .45.225.45.5v2c0 .277.203.5.45.5h3.1c.25 0 .451.225.451.5v2c0 .277-.203.5-.45.5h-7.1c-.25 0-.45-.225-.45-.5v-2c0-.276-.203-.5-.45-.5H4.451c-.25 0-.45-.225-.45-.5v-2c0-.277-.203-.5-.451-.5H.45C.2 14 0 13.775 0 13.5v-2c0-.277.203-.5.45-.5h3.098c.25 0 .45-.225.45-.5v-2c0-.276.203-.5.45-.5H7.55C7.8 8 8 7.775 8 7.5v-2c0-.277.203-.5.451-.5z"></path><path d="M23.55 11.002c.247 0 .45.223.45.5v2c0 .274-.201.5-.45.5h-3.1c-.249 0-.451.223-.451.5v2c0 .274-.202.5-.45.5h-3.101c-.248 0-.45-.224-.45-.5v-4.999c0-.275.2-.5.45-.5h7.1z"></path>' },
|
|
75
|
+
google: { viewBox: '0 0 24 24', body: '<path d="M23 12.245c0-.905-.075-1.565-.236-2.25h-10.54v4.083h6.186c-.124 1.014-.797 2.542-2.294 3.569l-.021.136 3.332 2.53.23.022C21.779 18.417 23 15.593 23 12.245z"></path><path d="M12.225 23c3.03 0 5.574-.978 7.433-2.665l-3.542-2.688c-.948.648-2.22 1.1-3.891 1.1a6.745 6.745 0 01-6.386-4.572l-.132.011-3.465 2.628-.045.124C4.043 20.531 7.835 23 12.225 23z"></path><path d="M5.84 14.175A6.65 6.65 0 015.463 12c0-.758.138-1.491.361-2.175l-.006-.147-3.508-2.67-.115.054A10.831 10.831 0 001 12c0 1.772.436 3.447 1.197 4.938l3.642-2.763z"></path><path d="M12.225 5.253c2.108 0 3.529.892 4.34 1.638l3.167-3.031C17.787 2.088 15.255 1 12.225 1 7.834 1 4.043 3.469 2.197 7.062l3.63 2.763a6.77 6.77 0 016.398-4.572z"></path>' },
|
|
76
|
+
groq: { viewBox: '0 0 24 24', body: '<path d="M12.036 2c-3.853-.035-7 3-7.036 6.781-.035 3.782 3.055 6.872 6.908 6.907h2.42v-2.566h-2.292c-2.407.028-4.38-1.866-4.408-4.23-.029-2.362 1.901-4.298 4.308-4.326h.1c2.407 0 4.358 1.915 4.365 4.278v6.305c0 2.342-1.944 4.25-4.323 4.279a4.375 4.375 0 01-3.033-1.252l-1.851 1.818A7 7 0 0012.029 22h.092c3.803-.056 6.858-3.083 6.879-6.816v-6.5C18.907 4.963 15.817 2 12.036 2z"></path>' },
|
|
77
|
+
huggingface: { viewBox: '0 0 24 24', body: '<path d="M16.781 3.277c2.997 1.704 4.844 4.851 4.844 8.258 0 .995-.155 1.955-.443 2.857a1.332 1.332 0 011.125.4 1.41 1.41 0 01.2 1.723c.204.165.352.385.428.632l.017.062c.06.222.12.69-.2 1.166.244.37.279.836.093 1.236-.255.57-.893 1.018-2.128 1.5l-.202.078-.131.048c-.478.173-.89.295-1.061.345l-.086.024c-.89.243-1.808.375-2.732.394-1.32 0-2.3-.36-2.923-1.067a9.852 9.852 0 01-3.18.018C9.778 21.647 8.802 22 7.494 22a11.249 11.249 0 01-2.541-.343l-.221-.06-.273-.08a16.574 16.574 0 01-1.175-.405c-1.237-.483-1.875-.93-2.13-1.501-.186-.4-.151-.867.093-1.236a1.42 1.42 0 01-.2-1.166c.069-.273.226-.516.447-.694a1.41 1.41 0 01.2-1.722c.233-.248.557-.391.917-.407l.078-.001a9.385 9.385 0 01-.44-2.85c0-3.407 1.847-6.554 4.844-8.258a9.822 9.822 0 019.687 0zM4.188 14.758c.125.687 2.357 2.35 2.14 2.707-.19.315-.796-.239-.948-.386l-.041-.04-.168-.147c-.561-.479-2.304-1.9-2.74-1.432-.43.46.119.859 1.055 1.42l.784.467.136.083c1.045.643 1.12.84.95 1.113-.188.295-3.07-2.1-3.34-1.083-.27 1.011 2.942 1.304 2.744 2.006-.2.7-2.265-1.324-2.685-.537-.425.79 2.913 1.718 2.94 1.725l.16.04.175.042c1.227.284 3.565.65 4.435-.604.673-.973.64-1.709-.248-2.61l-.057-.057c-.945-.928-1.495-2.288-1.495-2.288l-.017-.058-.025-.072c-.082-.22-.284-.639-.63-.584-.46.073-.798 1.21.12 1.933l.05.038c.977.721-.195 1.21-.573.534l-.058-.104-.143-.25c-.463-.799-1.282-2.111-1.739-2.397-.532-.332-.907-.148-.782.541zm14.842-.541c-.533.335-1.563 2.074-1.94 2.751a.613.613 0 01-.687.302.436.436 0 01-.176-.098.303.303 0 01-.049-.06l-.014-.028-.008-.02-.007-.019-.003-.013-.003-.017a.289.289 0 01-.004-.048c0-.12.071-.266.25-.427.026-.024.054-.047.084-.07l.047-.036c.022-.016.043-.032.063-.049.883-.71.573-1.81.131-1.917l-.031-.006-.056-.004a.368.368 0 00-.062.006l-.028.005-.042.014-.039.017-.028.015-.028.019-.036.027-.023.02c-.173.158-.273.428-.31.542l-.016.054s-.53 1.309-1.439 2.234l-.054.054c-.365.358-.596.69-.702 1.018-.143.437-.066.868.21 1.353.055.097.117.195.187.296.882 1.275 3.282.876 4.494.59l.286-.07.25-.074c.276-.084.736-.233 1.2-.42l.188-.077.065-.028.064-.028.124-.056.081-.038c.529-.252.964-.543.994-.827l.001-.036a.299.299 0 00-.037-.139c-.094-.176-.271-.212-.491-.168l-.045.01c-.044.01-.09.024-.136.04l-.097.035-.054.022c-.559.23-1.238.705-1.607.745h.006a.452.452 0 01-.05.003h-.024l-.024-.003-.023-.005c-.068-.016-.116-.06-.14-.142a.22.22 0 01-.005-.1c.062-.345.958-.595 1.713-.91l.066-.028c.528-.224.97-.483.985-.832v-.04a.47.47 0 00-.016-.098c-.048-.18-.175-.251-.36-.251-.785 0-2.55 1.36-2.92 1.36-.025 0-.048-.007-.058-.024a.6.6 0 01-.046-.088c-.1-.238.068-.462 1.06-1.066l.209-.126c.538-.32 1.01-.588 1.341-.831.29-.212.475-.406.503-.6l.003-.028c.008-.113-.038-.227-.147-.344a.266.266 0 00-.07-.054l-.034-.015-.013-.005a.403.403 0 00-.13-.02c-.162 0-.369.07-.595.18-.637.313-1.431.952-1.826 1.285l-.249.215-.033.033c-.08.078-.288.27-.493.386l-.071.037-.041.019a.535.535 0 01-.122.036h.005a.346.346 0 01-.031.003l.01-.001-.013.001c-.079.005-.145-.021-.19-.095a.113.113 0 01-.014-.065c.027-.465 2.034-1.991 2.152-2.642l.009-.048c.1-.65-.271-.817-.791-.493zM11.938 2.984c-4.798 0-8.688 3.829-8.688 8.55 0 .692.083 1.364.24 2.008l.008-.009c.252-.298.612-.46 1.017-.46.355.008.699.117.993.312.22.14.465.384.715.694.261-.372.69-.598 1.15-.605.852 0 1.367.728 1.562 1.383l.047.105.06.127c.192.396.595 1.139 1.143 1.68 1.06 1.04 1.324 2.115.8 3.266a8.865 8.865 0 002.024-.014c-.505-1.12-.26-2.17.74-3.186l.066-.066c.695-.684 1.157-1.69 1.252-1.912.195-.655.708-1.383 1.56-1.383.46.007.889.233 1.15.605.25-.31.495-.553.718-.694a1.87 1.87 0 01.99-.312c.357 0 .682.126.925.36.14-.61.215-1.245.215-1.898 0-4.722-3.89-8.55-8.687-8.55zm1.857 8.926l.439-.212c.553-.264.89-.383.89.152 0 1.093-.771 3.208-3.155 3.262h-.184c-2.325-.052-3.116-2.06-3.156-3.175l-.001-.087c0-1.107 1.452.586 3.25.586.716 0 1.379-.272 1.917-.526zm4.017-3.143c.45 0 .813.358.813.8 0 .441-.364.8-.813.8a.806.806 0 01-.812-.8c0-.442.364-.8.812-.8zm-11.624 0c.448 0 .812.358.812.8 0 .441-.364.8-.812.8a.806.806 0 01-.813-.8c0-.442.364-.8.813-.8zm7.79-.841c.32-.384.846-.54 1.33-.394.483.146.83.564.878 1.06.048.495-.212.97-.659 1.203-.322.168-.447-.477-.767-.585l.002-.003c-.287-.098-.772.362-.925.079a1.215 1.215 0 01.14-1.36zm-4.323 0c.322.384.377.92.14 1.36-.152.283-.64-.177-.925-.079l.003.003c-.108.036-.194.134-.273.24l-.118.165c-.11.15-.22.262-.377.18a1.226 1.226 0 01-.658-1.204c.048-.495.395-.913.878-1.059a1.262 1.262 0 011.33.394z"></path>' },
|
|
78
|
+
kagi: { viewBox: '0 0 24 24', body: '<path d="M14.498 18.392h-5.14c-1.39 0-1.632-1.508-1.39-2.11.12-.302.423-.724.664-1.026a6.81 6.81 0 003.326.845 6.945 6.945 0 006.954-6.935c0-2.05-.907-3.86-2.298-5.186l.181-.181c.363-.362.907-.603 1.451-.543l.847.06V0h-1.451c-1.693 0-3.084 1.025-3.689 2.472a6.83 6.83 0 00-1.934-.301 6.945 6.945 0 00-6.954 6.935c0 1.507.484 2.954 1.33 4.1a1.84 1.84 0 01-.423.302l-.181.18c-1.391 1.327-2.056 3.015-1.693 4.945.181 1.025 1.088 2.11 1.995 2.714.605.422 1.39.603 2.177.603l5.804-.242c.665 0 1.27.302 1.633.905L16.432 24 20 22.794l-.605-1.327a5.425 5.425 0 00-4.897-3.075zm-2.48-12.543c1.814 0 3.326 1.508 3.326 3.317 0 1.809-1.512 3.316-3.325 3.316-1.814 0-3.326-1.507-3.326-3.316 0-1.87 1.451-3.317 3.325-3.317z"></path>' },
|
|
79
|
+
kenari: { viewBox: '0 0 24 24', body: '<g transform="translate(-10.045,-10.100) scale(0.10887) translate(0.0,400.0) scale(0.1,-0.1)"><path d="M1120 1970 l0 -970 185 0 185 0 0 228 0 227 79 79 78 78 170 -304 170 -303 226 -3 c125 -1 227 -1 227 2 0 2 -117 200 -259 440 l-259 436 225 248 c124 136 237 259 251 275 l26 27 -235 0 -234 -1 -230 -267 -230 -267 -3 523 -2 522 -185 0 -185 0 0 -970z M2470 1240 l0 -230 230 0 230 0 0 230 0 230 -230 0 -230 0 0 -230z"/></g>' },
|
|
80
|
+
kilocode: { viewBox: '0 0 24 24', body: '<path d="M0 0v24h24V0H0zm22.222 22.222H1.778V1.778h20.444v20.444zm-7.555-4.964h2.222v1.778h-2.794L12.89 17.83v-2.794h1.778v2.222zm4 0h-1.778v-2.222h-2.222v-1.778h2.793l1.207 1.207v2.793zm-7.556-2.591H9.333v-1.778h1.778v1.778zm-5.778-1.778h1.778v4h4v1.778H6.54L5.333 17.46V12.89zm13.334-3.556v1.778h-5.778V9.333h1.987V7.111h-1.987V5.333h2.558l1.206 1.207v2.793h2.014zm-11.556-2h2.222l1.778 1.778v2H9.333v-2H7.111v2H5.333V5.333h1.778v2zm4 0H9.333v-2h1.778v2z"></path>' },
|
|
81
|
+
kimi: { viewBox: '0 0 24 24', body: '<path d="M21.846 0a1.923 1.923 0 110 3.846H20.15a.226.226 0 01-.227-.226V1.923C19.923.861 20.784 0 21.846 0z"></path><path d="M11.065 11.199l7.257-7.2c.137-.136.06-.41-.116-.41H14.3a.164.164 0 00-.117.051l-7.82 7.756c-.122.12-.302.013-.302-.179V3.82c0-.127-.083-.23-.185-.23H3.186c-.103 0-.186.103-.186.23V19.77c0 .128.083.23.186.23h2.69c.103 0 .186-.102.186-.23v-3.25c0-.069.025-.135.069-.178l2.424-2.406a.158.158 0 01.205-.023l6.484 4.772a7.677 7.677 0 003.453 1.283c.108.012.2-.095.2-.23v-3.06c0-.117-.07-.212-.164-.227a5.028 5.028 0 01-2.027-.807l-5.613-4.064c-.117-.078-.132-.279-.028-.381z"></path>' },
|
|
82
|
+
litellm: { viewBox: '0 0 512 512', body: '<path fill="currentColor" d="M511.9 82.5c-.8-.1-1.4-.1-1.9-.1c-81.6 0-163.2 0-244.8.1c-8.5 0-16.6 2-24.4 5.4c-15.7 6.9-27.4 18.8-39 30.7c10.8 0 21.6.1 32.4.1h126.3c1.5 0 2.9 0 4.9 1l-11.7 11.7c-18.7 18.6-37.5 37.1-56.1 55.8c-3.4 3.4-6.8 4.9-11.7 4.9c-50.7-.2-101.3-.1-152-.1c-1.8 0-3.6-.1-5.5-.1c-18.4 9.3-36.9 18.7-55.3 28c0 49.8 0 99.7-.1 149.5c0 1.8-.1 3.6-.2 5.5c36.8 0 73.5-.1 110.3-.1c12.5-12.5 24.9-25.1 37.4-37.6c10.7-10.7 21.5-21.4 32.1-32.2c2.3-2.4 4.7-3.4 8.1-3.4c81.6.1 163.2 0 244.7 0c2.1 0 4.2-.1 6.3-.1c.1-.8.1-1.7.1-2.5V85c.2-.8.1-1.6.1-2.5"/><path fill="currentColor" d="M183.2 374.8c12.5-12.5 24.9-25.1 37.4-37.6c10.7-10.7 21.5-21.4 32.1-32.2c2.3-2.4 4.7-3.4 8.1-3.4c81.6.1 163.2 0 244.7 0c2.1 0 4.2-.1 6.3-.1c0 24.4.1 48.8.1 73.2c-1.8 0-3.6.1-5.5.1H296.7c-19.8 0-39.6 0-59.4.1c-18 0-36.1-.1-54.1-.1M30.5 243.1C4.4 260.5-4 286.2 1.7 316.2c6.5 34.3 36.1 58 71.2 58.7c.1-1.8.2-3.6.2-5.5c0-49.8.1-99.7.1-149.5c-14.4 7.6-29.3 14.3-42.7 23.2m137.9-91.5c-13.4 13.4-26.6 26.8-40 40.2c1.8 0 3.6.1 5.5.1c50.7 0 101.3-.1 152 .1c4.9 0 8.3-1.4 11.7-4.9c17.2-17.4 34.7-34.6 52.1-51.9H184.8z"/><path fill="currentColor" d="M511.8 411.3c0 6.1 0 12.2.1 18.3H24c-1.7 0-3.4-.1-5-.1c18-18.2 35.9-36.4 53.9-54.6c36.8 0 73.6-.1 110.4-.1c18.1.1 36.1.1 54.2.2c19.8 0 39.6-.1 59.4-.1h209.7c1.8 0 3.6-.1 5.5-.1c-.2 12.1-.2 24.3-.3 36.5M365.4 119.6c-2-1-3.4-1-4.9-1H234.2c-10.8 0-21.6-.1-32.4-.1c-5.6 5.6-11.3 11.2-17 16.8h164.8c1.3-1.3 2.7-2.6 4-4c4-3.8 7.9-7.8 11.8-11.7"/>' },
|
|
83
|
+
llamacpp: { viewBox: '0 0 512 512', body: '<path fill="currentColor" d="m356.4 201.3l-32.8 58.3c-43.3-33.3-107.4-38.2-150.7-2.4c-69.8 57.6-64.9 190.8 43.7 191.6c30.4 0 56.2-14.3 83.9-23.8l14.6 58.1c-24.6 11.4-49.6 23.1-76.6 26.7c-246 33.5-231.9-321.6-9.5-340.1c46.7-3.9 87.8 8.3 127.6 31.6zm-169.9-55.9c-37.4 11.2-72.2 31.8-98.5 60.8c-4.9-58.8 8.3-177.7 73.7-201c9.7-3.4 43-11.9 42.1 5.3c-1 17.3-24.1 46.9-29.7 63c-9.7 28.2-.7 47.6 12.6 72.2zm92.4 252.8h-36.5v-41.3h-41.3v-34h37.7l3.6-3.6v-40.1h36.5V323h38.9v34h-38.9zm133.7-41.3v41.3h-36.5v-41.3h-38.9v-34h38.9v-43.8h36.5v40.1l3.6 3.6h37.7v34h-41.3zM305.4 31.4c4.9 7.3-22.6 38.7-27 46.7c-12.6 23.8-4.1 37.4 5.3 60c-27.5-4.1-53-.7-80.2 2.4C209.6 88.3 239 12.2 305.4 31.4"/>' },
|
|
84
|
+
lmstudio: { viewBox: '0 0 24 24', body: '<path d="M2.84 2a1.273 1.273 0 100 2.547h14.107a1.273 1.273 0 100-2.547H2.84zM7.935 5.33a1.273 1.273 0 000 2.548H22.04a1.274 1.274 0 000-2.547H7.935zM3.624 9.935c0-.704.57-1.274 1.274-1.274h14.106a1.274 1.274 0 010 2.547H4.898c-.703 0-1.274-.57-1.274-1.273zM1.273 12.188a1.273 1.273 0 100 2.547H15.38a1.274 1.274 0 000-2.547H1.273zM3.624 16.792c0-.704.57-1.274 1.274-1.274h14.106a1.273 1.273 0 110 2.547H4.898c-.703 0-1.274-.57-1.274-1.273zM13.029 18.849a1.273 1.273 0 100 2.547h9.698a1.273 1.273 0 100-2.547h-9.698z" fill-opacity=".3"></path><path d="M2.84 2a1.273 1.273 0 100 2.547h10.287a1.274 1.274 0 000-2.547H2.84zM7.935 5.33a1.273 1.273 0 000 2.548H18.22a1.274 1.274 0 000-2.547H7.935zM3.624 9.935c0-.704.57-1.274 1.274-1.274h10.286a1.273 1.273 0 010 2.547H4.898c-.703 0-1.274-.57-1.274-1.273zM1.273 12.188a1.273 1.273 0 100 2.547H11.56a1.274 1.274 0 000-2.547H1.273zM3.624 16.792c0-.704.57-1.274 1.274-1.274h10.286a1.273 1.273 0 110 2.547H4.898c-.703 0-1.274-.57-1.274-1.273zM13.029 18.849a1.273 1.273 0 100 2.547h5.78a1.273 1.273 0 100-2.547h-5.78z"></path>' },
|
|
85
|
+
meta: { viewBox: '0 0 24 24', body: '<path d="M6.897 4c1.915 0 3.516.932 5.43 3.376l.282-.373c.19-.246.383-.484.58-.71l.313-.35C14.588 4.788 15.792 4 17.225 4c1.273 0 2.469.557 3.491 1.516l.218.213c1.73 1.765 2.917 4.71 3.053 8.026l.011.392.002.25c0 1.501-.28 2.759-.818 3.7l-.14.23-.108.153c-.301.42-.664.758-1.086 1.009l-.265.142-.087.04a3.493 3.493 0 01-.302.118 4.117 4.117 0 01-1.33.208c-.524 0-.996-.067-1.438-.215-.614-.204-1.163-.56-1.726-1.116l-.227-.235c-.753-.812-1.534-1.976-2.493-3.586l-1.43-2.41-.544-.895-1.766 3.13-.343.592C7.597 19.156 6.227 20 4.356 20c-1.21 0-2.205-.42-2.936-1.182l-.168-.184c-.484-.573-.837-1.311-1.043-2.189l-.067-.32a8.69 8.69 0 01-.136-1.288L0 14.468c.002-.745.06-1.49.174-2.23l.1-.573c.298-1.53.828-2.958 1.536-4.157l.209-.34c1.177-1.83 2.789-3.053 4.615-3.16L6.897 4zm-.033 2.615l-.201.01c-.83.083-1.606.673-2.252 1.577l-.138.199-.01.018c-.67 1.017-1.185 2.378-1.456 3.845l-.004.022a12.591 12.591 0 00-.207 2.254l.002.188c.004.18.017.36.04.54l.043.291c.092.503.257.908.486 1.208l.117.137c.303.323.698.492 1.17.492 1.1 0 1.796-.676 3.696-3.641l2.175-3.4.454-.701-.139-.198C9.11 7.3 8.084 6.616 6.864 6.616zm10.196-.552l-.176.007c-.635.048-1.223.359-1.82.933l-.196.198c-.439.462-.887 1.064-1.367 1.807l.266.398c.18.274.362.56.55.858l.293.475 1.396 2.335.695 1.114c.583.926 1.03 1.6 1.408 2.082l.213.262c.282.326.529.54.777.673l.102.05c.227.1.457.138.718.138.176.002.35-.023.518-.073.338-.104.61-.32.813-.637l.095-.163.077-.162c.194-.459.29-1.06.29-1.785l-.006-.449c-.08-2.871-.938-5.372-2.2-6.798l-.176-.189c-.67-.683-1.444-1.074-2.27-1.074z"></path>' },
|
|
86
|
+
metaai: { viewBox: '0 0 24 24', body: '<path d="M10.547.232c.776-.086 1.543.244 2.152.712.784.598 1.375 1.434 1.757 2.347.19.444.3.92.345 1.402.01.384.024.781-.108 1.148-.126.406-.362.795-.728 1.017-.352.236-.786.3-1.199.288-.84-.073-1.613-.52-2.212-1.106-.15-.1-.236-.263-.368-.38-.801-.97-1.394-2.203-1.324-3.496.048-.698.38-1.44 1.03-1.75.206-.1.428-.164.655-.182zM18.595 3.077c.52-.045 1.032.186 1.4.551.402.434.625 1.006.736 1.584.096.605.09 1.233-.048 1.83a5.97 5.97 0 01-.907 2.19c-.198.25-.382.519-.633.719-.493.45-1.181.725-1.848.598-.42-.08-.819-.306-1.085-.646-.514-.591-.687-1.403-.714-2.17a6.11 6.11 0 011.03-3.285c.237-.314.49-.62.797-.867.375-.27.805-.486 1.272-.504zM5.038 4.172c.618-.045 1.238.067 1.832.235.871.28 1.741.78 2.182 1.624.177.383.256.826.152 1.242-.097.442-.375.816-.71 1.105-.724.59-1.664.84-2.577.887a5.356 5.356 0 01-2.881-.675c-.39-.248-.765-.539-1.025-.93a1.9 1.9 0 01-.327-1.283c.067-.507.357-.968.741-1.289.723-.62 1.684-.873 2.613-.916zM4.87 10.369c.69-.06 1.465.223 1.811.866.213.349.278.763.29 1.166.006.528-.136 1.046-.34 1.529-.34.793-.893 1.478-1.538 2.036-.64.538-1.42.951-2.26 1.015a2.031 2.031 0 01-1.467-.398c-.353-.281-.578-.707-.662-1.15-.156-.8.077-1.62.445-2.327.196-.377.444-.724.72-1.044.767-.886 1.814-1.608 3.001-1.693zM20.391 11.05c.881-.087 1.872.116 2.477.822.473.58.534 1.425.239 2.102-.118.317-.32.59-.527.852-.877.962-2.11 1.553-3.379 1.744-.818.123-1.723.036-2.406-.477-.2-.161-.386-.346-.514-.573-.277-.436-.321-.994-.216-1.492.224-.904.92-1.594 1.676-2.073a5.874 5.874 0 012.65-.905zM7.553 15.523c.381-.052.775.004 1.118.184.344.154.613.427.866.702.866 1.097 1.267 2.549 1.146 3.944a4.476 4.476 0 01-.497 1.61c-.273.469-.663.91-1.187 1.08-.35.103-.731.118-1.077-.005a2.53 2.53 0 01-.959-.612c-.798-.859-1.236-2.02-1.343-3.185-.055-.646-.006-1.31.21-1.923.146-.471.384-.92.738-1.265.261-.277.62-.452.985-.53zM13.637 16.5a4.237 4.237 0 011.82.219c.795.286 1.542.724 2.148 1.323.535.504.963 1.162 1.099 1.899.055.379.038.785-.122 1.138-.19.465-.599.807-1.051.996-.883.364-1.887.253-2.76-.082a5.568 5.568 0 01-2.343-1.685c-.347-.445-.616-.968-.697-1.534-.042-.382-.036-.788.13-1.142.194-.418.55-.76.978-.925.25-.119.525-.174.798-.207z"></path>' },
|
|
87
|
+
minimax: { viewBox: '0 0 24 24', body: '<path d="M16.278 2c1.156 0 2.093.927 2.093 2.07v12.501a.74.74 0 00.744.709.74.74 0 00.743-.709V9.099a2.06 2.06 0 012.071-2.049A2.06 2.06 0 0124 9.1v6.561a.649.649 0 01-.652.645.649.649 0 01-.653-.645V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v7.472a2.037 2.037 0 01-2.048 2.026 2.037 2.037 0 01-2.048-2.026v-12.5a.785.785 0 00-.788-.753.785.785 0 00-.789.752l-.001 15.904A2.037 2.037 0 0113.441 22a2.037 2.037 0 01-2.048-2.026V18.04c0-.356.292-.645.652-.645.36 0 .652.289.652.645v1.934c0 .263.142.506.372.638.23.131.514.131.744 0a.734.734 0 00.372-.638V4.07c0-1.143.937-2.07 2.093-2.07zm-5.674 0c1.156 0 2.093.927 2.093 2.07v11.523a.648.648 0 01-.652.645.648.648 0 01-.652-.645V4.07a.785.785 0 00-.789-.78.785.785 0 00-.789.78v14.013a2.06 2.06 0 01-2.07 2.048 2.06 2.06 0 01-2.071-2.048V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v3.8a2.06 2.06 0 01-2.071 2.049A2.06 2.06 0 010 12.9v-1.378c0-.357.292-.646.652-.646.36 0 .653.29.653.646V12.9c0 .418.343.757.766.757s.766-.339.766-.757V9.099a2.06 2.06 0 012.07-2.048 2.06 2.06 0 012.071 2.048v8.984c0 .419.343.758.767.758.423 0 .766-.339.766-.758V4.07c0-1.143.937-2.07 2.093-2.07z"></path>' },
|
|
88
|
+
mistral: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M3.428 3.4h3.429v3.428h3.429v3.429h-.002 3.431V6.828h3.427V3.4h3.43v13.714H24v3.429H13.714v-3.428h-3.428v-3.429h-3.43v3.428h3.43v3.429H0v-3.429h3.428V3.4zm10.286 13.715h3.428v-3.429h-3.427v3.429z"></path>' },
|
|
89
|
+
moonshot: { viewBox: '0 0 24 24', body: '<path d="M1.052 16.916l9.539 2.552a21.007 21.007 0 00.06 2.033l5.956 1.593a11.997 11.997 0 01-5.586.865l-.18-.016-.044-.004-.084-.009-.094-.01a11.605 11.605 0 01-.157-.02l-.107-.014-.11-.016a11.962 11.962 0 01-.32-.051l-.042-.008-.075-.013-.107-.02-.07-.015-.093-.019-.075-.016-.095-.02-.097-.023-.094-.022-.068-.017-.088-.022-.09-.024-.095-.025-.082-.023-.109-.03-.062-.02-.084-.025-.093-.028-.105-.034-.058-.019-.08-.026-.09-.031-.066-.024a6.293 6.293 0 01-.044-.015l-.068-.025-.101-.037-.057-.022-.08-.03-.087-.035-.088-.035-.079-.032-.095-.04-.063-.028-.063-.027a5.655 5.655 0 01-.041-.018l-.066-.03-.103-.047-.052-.024-.096-.046-.062-.03-.084-.04-.086-.044-.093-.047-.052-.027-.103-.055-.057-.03-.058-.032a6.49 6.49 0 01-.046-.026l-.094-.053-.06-.034-.051-.03-.072-.041-.082-.05-.093-.056-.052-.032-.084-.053-.061-.039-.079-.05-.07-.047-.053-.035a7.785 7.785 0 01-.054-.036l-.044-.03-.044-.03a6.066 6.066 0 01-.04-.028l-.057-.04-.076-.054-.069-.05-.074-.054-.056-.042-.076-.057-.076-.059-.086-.067-.045-.035-.064-.052-.074-.06-.089-.073-.046-.039-.046-.039a7.516 7.516 0 01-.043-.037l-.045-.04-.061-.053-.07-.062-.068-.06-.062-.058-.067-.062-.053-.05-.088-.084a13.28 13.28 0 01-.099-.097l-.029-.028-.041-.042-.069-.07-.05-.051-.05-.053a6.457 6.457 0 01-.168-.179l-.08-.088-.062-.07-.071-.08-.042-.049-.053-.062-.058-.068-.046-.056a7.175 7.175 0 01-.027-.033l-.045-.055-.066-.082-.041-.052-.05-.064-.02-.025a11.99 11.99 0 01-1.44-2.402zm-1.02-5.794l11.353 3.037a20.468 20.468 0 00-.469 2.011l10.817 2.894a12.076 12.076 0 01-1.845 2.005L.657 15.923l-.016-.046-.035-.104a11.965 11.965 0 01-.05-.153l-.007-.023a11.896 11.896 0 01-.207-.741l-.03-.126-.018-.08-.021-.097-.018-.081-.018-.09-.017-.084-.018-.094c-.026-.141-.05-.283-.071-.426l-.017-.118-.011-.083-.013-.102a12.01 12.01 0 01-.019-.161l-.005-.047a12.12 12.12 0 01-.034-2.145zm1.593-5.15l11.948 3.196c-.368.605-.705 1.231-1.01 1.875l11.295 3.022c-.142.82-.368 1.612-.668 2.365l-11.55-3.09L.124 10.26l.015-.1.008-.049.01-.067.015-.087.018-.098c.026-.148.056-.295.088-.442l.028-.124.02-.085.024-.097c.022-.09.045-.18.07-.268l.028-.102.023-.083.03-.1.025-.082.03-.096.026-.082.031-.095a11.896 11.896 0 011.01-2.232zm4.442-4.4L17.352 4.59a20.77 20.77 0 00-1.688 1.721l7.823 2.093c.267.852.442 1.744.513 2.665L2.106 5.213l.045-.065.027-.04.04-.055.046-.065.055-.076.054-.072.064-.086.05-.065.057-.073.055-.07.06-.074.055-.069.065-.077.054-.066.066-.077.053-.06.072-.082.053-.06.067-.074.054-.058.073-.078.058-.06.063-.067.168-.17.1-.098.059-.056.076-.071a12.084 12.084 0 012.272-1.677zM12.017 0h.097l.082.001.069.001.054.002.068.002.046.001.076.003.047.002.06.003.054.002.087.005.105.007.144.011.088.007.044.004.077.008.082.008.047.005.102.012.05.006.108.014.081.01.042.006.065.01.207.032.07.012.065.011.14.026.092.018.11.022.046.01.075.016.041.01L14.7.3l.042.01.065.015.049.012.071.017.096.024.112.03.113.03.113.032.05.015.07.02.078.024.073.023.05.016.05.016.076.025.099.033.102.036.048.017.064.023.093.034.11.041.116.045.1.04.047.02.06.024.041.018.063.026.04.018.057.025.11.048.1.046.074.035.075.036.06.028.092.046.091.045.102.052.053.028.049.026.046.024.06.033.041.022.052.029.088.05.106.06.087.051.057.034.053.032.096.059.088.055.098.062.036.024.064.041.084.056.04.027.062.042.062.043.023.017c.054.037.108.075.161.114l.083.06.065.048.056.043.086.065.082.064.04.03.05.041.086.069.079.065.085.071c.712.6 1.353 1.283 1.909 2.031L7.222.994l.062-.027.065-.028.081-.034.086-.035c.113-.045.227-.09.341-.131l.096-.035.093-.033.084-.03.096-.031c.087-.03.176-.058.264-.085l.091-.027.086-.025.102-.03.085-.023.1-.026L9.04.37l.09-.023.091-.022.095-.022.09-.02.098-.021.091-.02.095-.018.092-.018.1-.018.091-.016.098-.017.092-.014.097-.015.092-.013.102-.013.091-.012.105-.012.09-.01.105-.01c.093-.01.186-.018.28-.024l.106-.008.09-.005.11-.006.093-.004.1-.004.097-.002.099-.002.197-.002z"></path>' },
|
|
90
|
+
nanogpt: { viewBox: '0 0 24 24', body: '<g transform="translate(1.006,-3.019) scale(0.06194) translate(0.0,400.0) scale(0.1,-0.1)"><path d="M357 2707 c-158 -205 -288 -376 -289 -382 -2 -9 702 -399 708 -392 2 2 151 385 280 721 47 120 83 220 82 221 -3 3 -428 178 -474 195 -19 8 -52 -32 -307 -363z M1331 2919 c-6 -18 -9 -34 -7 -36 2 -2 9 10 15 28 6 18 9 34 7 36 -2 2 -9 -10 -15 -28z M1305 2850 c-3 -11 -3 -25 1 -31 4 -7 3 -9 -3 -6 -9 6 -359 -861 -351 -868 3 -3 1272 396 1298 408 8 4 3 5 -12 2 -18 -4 -39 2 -60 15 -243 155 -845 486 -857 472 -12 -15 -12 -15 -6 6 8 27 -1 30 -10 2z M2315 2380 c-13 -5 -14 -9 -5 -9 8 0 24 4 35 9 13 5 14 9 5 9 -8 0 -24 -4 -35 -9z M2425 2238 c-33 -11 -379 -118 -770 -238 -390 -120 -710 -220 -710 -222 0 -4 1010 -1655 1041 -1701 10 -15 70 109 407 840 535 1161 537 1166 534 1170 -2 1 -16 -24 -31 -56 l-28 -59 -215 124 c-118 68 -220 124 -226 125 -7 0 11 9 38 19 67 25 36 23 -40 -2z M431 1844 c85 -98 328 -379 538 -624 385 -446 431 -499 415 -469 -56 99 -622 1007 -633 1014 -21 14 -443 246 -461 253 -8 3 55 -75 141 -174z M3047 1945 c-24 -50 -20 -58 4 -12 11 22 19 41 17 43 -3 2 -12 -12 -21 -31z M3013 1868 c-88 -186 -652 -1412 -650 -1413 5 -5 952 1179 952 1190 0 7 7 20 14 29 9 10 10 20 5 26 -24 23 -289 170 -300 166 -8 -3 -11 1 -7 10 8 23 -3 16 -14 -8z M3414 1768 l-19 -23 23 19 c21 18 27 26 19 26 -2 0 -12 -10 -23 -22z M3374 1718 c-44 -51 -57 -68 -52 -68 3 0 22 20 42 45 38 46 45 63 10 23z"/></g>' },
|
|
91
|
+
novita: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M9.167 4.17v5.665L0 19.003h9.167v-5.666l5.666 5.666H24L9.167 4.17z"></path>' },
|
|
92
|
+
nvidia: { viewBox: '0 0 24 24', body: '<path d="M10.212 8.976V7.62c.127-.01.256-.017.388-.021 3.596-.117 5.957 3.184 5.957 3.184s-2.548 3.647-5.282 3.647a3.227 3.227 0 01-1.063-.175v-4.109c1.4.174 1.681.812 2.523 2.258l1.873-1.627a4.905 4.905 0 00-3.67-1.846 6.594 6.594 0 00-.729.044m0-4.476v2.025c.13-.01.259-.019.388-.024 5.002-.174 8.261 4.226 8.261 4.226s-3.743 4.69-7.643 4.69c-.338 0-.675-.031-1.007-.092v1.25c.278.038.558.057.838.057 3.629 0 6.253-1.91 8.794-4.169.421.347 2.146 1.193 2.501 1.564-2.416 2.083-8.048 3.763-11.24 3.763-.308 0-.603-.02-.894-.048V19.5H24v-15H10.21zm0 9.756v1.068c-3.356-.616-4.287-4.21-4.287-4.21a7.173 7.173 0 014.287-2.138v1.172h-.005a3.182 3.182 0 00-2.502 1.178s.615 2.276 2.507 2.931m-5.961-3.3c1.436-1.935 3.604-3.148 5.961-3.336V6.523C5.81 6.887 2 10.723 2 10.723s2.158 6.427 8.21 7.015v-1.166C5.77 16 4.25 10.958 4.25 10.958h-.002z"></path>' },
|
|
93
|
+
ollama: { viewBox: '0 0 24 24', body: '<path d="M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042zm4.116 9.09c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643zm.662 1.21l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051zm-5.04-1.919c.478 0 .867.39.867.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zm8.706 0c.48 0 .868.39.868.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zM7.44 2.3l-.003.002a.659.659 0 00-.285.238l-.005.006c-.138.189-.258.467-.348.832-.17.692-.216 1.631-.124 2.782.43-.128.899-.208 1.404-.237l.01-.001.019-.034c.046-.082.095-.161.148-.239.123-.771.022-1.692-.253-2.444-.134-.364-.297-.65-.453-.813a.628.628 0 00-.107-.09L7.44 2.3zm9.174.04l-.002.001a.628.628 0 00-.107.09c-.156.163-.32.45-.453.814-.29.794-.387 1.776-.23 2.572l.058.097.008.014h.03a5.184 5.184 0 011.466.212c.086-1.124.038-2.043-.128-2.722-.09-.365-.21-.643-.349-.832l-.004-.006a.659.659 0 00-.285-.239h-.004z"></path>' },
|
|
94
|
+
openai: { viewBox: '0 0 24 24', body: '<path d="M9.205 8.658v-2.26c0-.19.072-.333.238-.428l4.543-2.616c.619-.357 1.356-.523 2.117-.523 2.854 0 4.662 2.212 4.662 4.566 0 .167 0 .357-.024.547l-4.71-2.759a.797.797 0 00-.856 0l-5.97 3.473zm10.609 8.8V12.06c0-.333-.143-.57-.429-.737l-5.97-3.473 1.95-1.118a.433.433 0 01.476 0l4.543 2.617c1.309.76 2.189 2.378 2.189 3.948 0 1.808-1.07 3.473-2.76 4.163zM7.802 12.703l-1.95-1.142c-.167-.095-.239-.238-.239-.428V5.899c0-2.545 1.95-4.472 4.591-4.472 1 0 1.927.333 2.712.928L8.23 5.067c-.285.166-.428.404-.428.737v6.898zM12 15.128l-2.795-1.57v-3.33L12 8.658l2.795 1.57v3.33L12 15.128zm1.796 7.23c-1 0-1.927-.332-2.712-.927l4.686-2.712c.285-.166.428-.404.428-.737v-6.898l1.974 1.142c.167.095.238.238.238.428v5.233c0 2.545-1.974 4.472-4.614 4.472zm-5.637-5.303l-4.544-2.617c-1.308-.761-2.188-2.378-2.188-3.948A4.482 4.482 0 014.21 6.327v5.423c0 .333.143.571.428.738l5.947 3.449-1.95 1.118a.432.432 0 01-.476 0zm-.262 3.9c-2.688 0-4.662-2.021-4.662-4.519 0-.19.024-.38.047-.57l4.686 2.71c.286.167.571.167.856 0l5.97-3.448v2.26c0 .19-.07.333-.237.428l-4.543 2.616c-.619.357-1.356.523-2.117.523zm5.899 2.83a5.947 5.947 0 005.827-4.756C22.287 18.339 24 15.84 24 13.296c0-1.665-.713-3.282-1.998-4.448.119-.5.19-.999.19-1.498 0-3.401-2.759-5.947-5.946-5.947-.642 0-1.26.095-1.88.31A5.962 5.962 0 0010.205 0a5.947 5.947 0 00-5.827 4.757C1.713 5.447 0 7.945 0 10.49c0 1.666.713 3.283 1.998 4.448-.119.5-.19 1-.19 1.499 0 3.401 2.759 5.946 5.946 5.946.642 0 1.26-.095 1.88-.309a5.96 5.96 0 004.162 1.713z"></path>' },
|
|
95
|
+
opencode: { viewBox: '0 0 24 24', body: '<path d="M16 6H8v12h8V6zm4 16H4V2h16v20z"></path>' },
|
|
96
|
+
openrouter: { viewBox: '0 0 24 24', body: '<path d="M18.654 3.87a5.087 5.087 0 110 10.174L23.7 19.09c.64.641.187 1.737-.72 1.737H8.48a8.479 8.479 0 010-16.958h10.175zM8.479 7.26a5.087 5.087 0 100 10.176 5.087 5.087 0 000-10.175z"></path>' },
|
|
97
|
+
perplexity: { viewBox: '0 0 24 24', body: '<path d="M19.785 0v7.272H22.5V17.62h-2.935V24l-7.037-6.194v6.145h-1.091v-6.152L4.392 24v-6.465H1.5V7.188h2.884V0l7.053 6.494V.19h1.09v6.49L19.786 0zm-7.257 9.044v7.319l5.946 5.234V14.44l-5.946-5.397zm-1.099-.08l-5.946 5.398v7.235l5.946-5.234V8.965zm8.136 7.58h1.844V8.349H13.46l6.105 5.54v2.655zm-8.982-8.28H2.59v8.195h1.8v-2.576l6.192-5.62zM5.475 2.476v4.71h5.115l-5.115-4.71zm13.219 0l-5.115 4.71h5.115v-4.71z"></path>' },
|
|
98
|
+
qwen: { viewBox: '0 0 24 24', body: '<path d="M12.604 1.34c.393.69.784 1.382 1.174 2.075a.18.18 0 00.157.091h5.552c.174 0 .322.11.446.327l1.454 2.57c.19.337.24.478.024.837-.26.43-.513.864-.76 1.3l-.367.658c-.106.196-.223.28-.04.512l2.652 4.637c.172.301.111.494-.043.77-.437.785-.882 1.564-1.335 2.34-.159.272-.352.375-.68.37-.777-.016-1.552-.01-2.327.016a.099.099 0 00-.081.05 575.097 575.097 0 01-2.705 4.74c-.169.293-.38.363-.725.364-.997.003-2.002.004-3.017.002a.537.537 0 01-.465-.271l-1.335-2.323a.09.09 0 00-.083-.049H4.982c-.285.03-.553-.001-.805-.092l-1.603-2.77a.543.543 0 01-.002-.54l1.207-2.12a.198.198 0 000-.197 550.951 550.951 0 01-1.875-3.272l-.79-1.395c-.16-.31-.173-.496.095-.965.465-.813.927-1.625 1.387-2.436.132-.234.304-.334.584-.335a338.3 338.3 0 012.589-.001.124.124 0 00.107-.063l2.806-4.895a.488.488 0 01.422-.246c.524-.001 1.053 0 1.583-.006L11.704 1c.341-.003.724.032.9.34zm-3.432.403a.06.06 0 00-.052.03L6.254 6.788a.157.157 0 01-.135.078H3.253c-.056 0-.07.025-.041.074l5.81 10.156c.025.042.013.062-.034.063l-2.795.015a.218.218 0 00-.2.116l-1.32 2.31c-.044.078-.021.118.068.118l5.716.008c.046 0 .08.02.104.061l1.403 2.454c.046.081.092.082.139 0l5.006-8.76.783-1.382a.055.055 0 01.096 0l1.424 2.53a.122.122 0 00.107.062l2.763-.02a.04.04 0 00.035-.02.041.041 0 000-.04l-2.9-5.086a.108.108 0 010-.113l.293-.507 1.12-1.977c.024-.041.012-.062-.035-.062H9.2c-.059 0-.073-.026-.043-.077l1.434-2.505a.107.107 0 000-.114L9.225 1.774a.06.06 0 00-.053-.031zm6.29 8.02c.046 0 .058.02.034.06l-.832 1.465-2.613 4.585a.056.056 0 01-.05.029.058.058 0 01-.05-.029L8.498 9.841c-.02-.034-.01-.052.028-.054l.216-.012 6.722-.012z"></path>' },
|
|
99
|
+
sakana: { viewBox: '0 0 24 24', body: '<path d="M15.568 3.02c2.621-.149 5.368.572 7.88 1.323.455.136.642.493.511.962-.425 1.516-.763 3.077-1.34 4.545a17.1 17.1 0 0 1-6.447 7.982c-1.461.975-3.224 1.864-4.747 2.784-.774.431-1.528.91-2.313 1.32-.301.158-.741.006-.912-.278a.75.75 0 0 1-.082-.572c.126-.468 1.603-1.182 2.066-1.448l3.579-2.058c-1.09-1.631-2.457-2.584-4.184-3.438-.644 2.639-2.597 4.942-4.872 6.37q-.066.045-.135.084a.863.863 0 0 1-1.136-.295c-.141-.225.04-.672.253-.794 2.31-1.324 3.771-3.218 4.552-5.757-1.557-.467-3.522-.362-5.072.091-.833.244-1.463.574-2.23.953a.71.71 0 0 1-.8-.278c-.626-.937 1.02-1.5 1.699-1.763a10.94 10.94 0 0 1 6.684-.427c.16-1.959-.05-3.54-.89-5.333-.818.47-5.133 3.08-5.6 3.14A.73.73 0 0 1 1.5 9.98a.7.7 0 0 1-.263-.484.78.78 0 0 1 .181-.558c.297-.33 2.11-1.277 2.616-1.566 4.122-2.362 6.6-4.11 11.533-4.351M8.89 6.223c.921 1.992 1.411 4.3.989 6.484 2.027.813 3.96 2.242 5.13 4.107l.477-.309c2.955-2.1 4.873-4.56 6.052-8.024.332-.974.533-1.999.832-2.969-2.234-.589-4.6-1.284-6.955-1.063-2.413.164-4.356.675-6.525 1.774"></path>' },
|
|
100
|
+
siliconcloud: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M22.956 6.521H12.522c-.577 0-1.044.468-1.044 1.044v3.13c0 .577-.466 1.044-1.043 1.044H1.044c-.577 0-1.044.467-1.044 1.044v4.174C0 17.533.467 18 1.044 18h10.434c.577 0 1.044-.467 1.044-1.043v-3.13c0-.578.466-1.044 1.043-1.044h9.391c.577 0 1.044-.467 1.044-1.044V7.565c0-.576-.467-1.044-1.044-1.044z"></path>' },
|
|
101
|
+
singularity: { viewBox: '0 0 24 24', body: '<g transform="translate(1.440,1.440) scale(0.05280) translate(0.0,400.0) scale(0.1,-0.1)"><path d="M595 3980 c-9 -27 -39 -45 -102 -60 -28 -6 -60 -21 -70 -32 -10 -11 -34 -28 -53 -38 -106 -56 -261 -247 -295 -364 -13 -44 -24 -62 -46 -75 l-29 -16 0 -1397 c0 -1165 2 -1398 13 -1398 23 0 45 -33 65 -98 11 -34 30 -75 43 -91 13 -16 37 -50 52 -75 29 -47 151 -161 202 -190 17 -9 45 -28 63 -41 18 -13 50 -26 72 -30 44 -7 90 -39 90 -61 0 -12 194 -14 1400 -14 1207 0 1400 2 1400 14 0 25 27 43 98 65 38 11 75 28 83 37 7 8 29 24 50 35 48 24 194 170 218 218 11 21 27 43 35 50 9 8 26 45 37 83 22 71 40 98 65 98 12 0 14 193 14 1400 0 1207 -2 1400 -14 1400 -25 0 -45 29 -62 91 -9 33 -29 75 -43 94 -14 19 -39 55 -54 80 -61 97 -251 239 -355 265 -31 8 -48 19 -60 41 l-17 29 -1397 0 c-1394 0 -1397 0 -1403 -20z m2792 -126 c289 -104 450 -315 492 -644 6 -48 7 -509 2 -1260 l-8 -1185 -27 -105 c-66 -264 -232 -436 -485 -503 l-116 -31 -1175 -9 c-1269 -11 -1271 -11 -1456 41 -149 42 -275 131 -366 257 -18 26 -39 55 -46 65 -103 140 -106 198 -94 1670 l9 1115 36 120 c20 65 45 130 56 145 12 14 30 41 41 60 72 129 221 224 460 296 37 10 277 13 1305 11 l1260 -3 112 -40z M2110 3225 c0 -9 5 -15 10 -13 12 4 11 16 -1 24 -5 3 -9 -2 -9 -11z M2354 3216 c-11 -29 0 -51 26 -51 21 0 25 5 25 30 0 34 -40 50 -51 21z M2600 3071 c-12 -23 -5 -47 16 -55 21 -8 42 3 49 25 14 42 -44 68 -65 30z M1342 3071 c-23 -14 -10 -46 18 -46 16 0 26 6 28 19 3 16 -12 36 -28 36 -3 0 -11 -4 -18 -9z M1844 3015 c-17 -27 -12 -73 9 -87 46 -29 89 24 64 78 -20 41 -49 45 -73 9z M2070 3008 c-26 -43 -9 -73 41 -73 44 0 62 39 35 79 -23 35 -52 33 -76 -6z M2263 2974 c-36 -56 34 -109 83 -63 29 27 30 43 4 69 -28 28 -66 26 -87 -6z M1625 2970 c-23 -25 -13 -47 26 -64 58 -24 106 14 80 63 -16 28 -80 29 -106 1z M1095 2890 c-8 -27 12 -52 39 -48 35 5 30 62 -6 66 -19 2 -28 -2 -33 -18z M2825 2890 c-9 -28 12 -52 44 -48 43 5 38 62 -6 66 -25 2 -33 -1 -38 -18z M1432 2888 c-16 -16 -15 -69 1 -92 35 -48 101 16 75 72 -15 30 -55 41 -76 20z M2482 2884 c-30 -21 -28 -58 4 -83 46 -36 84 -16 84 43 0 54 -41 73 -88 40z M1834 2753 l-34 -37 -35 17 c-63 30 -105 7 -105 -58 0 -45 55 -51 105 -11 25 20 37 23 86 19 43 -4 62 -1 83 12 23 15 33 16 64 7 20 -6 69 -13 108 -16 39 -3 88 -13 107 -21 20 -8 49 -15 64 -15 37 0 51 -10 71 -51 43 -86 165 -62 132 26 -10 27 -18 29 -91 25 l-47 -2 -13 44 -14 43 -70 0 c-58 0 -75 4 -99 23 -36 28 -84 28 -137 2 -41 -21 -62 -18 -89 14 -21 26 -50 18 -86 -21z M1262 2738 c-42 -42 14 -106 64 -73 43 28 26 85 -26 85 -14 0 -31 -5 -38 -12z M2636 2737 c-47 -35 24 -104 80 -78 21 9 25 17 22 49 -3 42 -61 59 -102 29z M3007 2693 c-13 -12 -7 -61 9 -74 33 -27 72 33 44 67 -13 15 -42 19 -53 7z M935 2670 c-8 -26 1 -40 26 -40 14 0 19 7 19 30 0 36 -34 43 -45 10z M1522 2648 c-32 -32 -8 -108 33 -108 25 0 75 49 75 73 0 33 -83 60 -108 35z M2762 2578 c-30 -30 1 -98 46 -98 15 0 62 45 62 60 0 37 -81 65 -108 38z M1130 2565 c-32 -39 32 -90 79 -64 52 29 34 79 -29 79 -21 0 -43 -7 -50 -15z M1925 2545 c-5 -2 -49 -16 -97 -30 -154 -46 -293 -183 -334 -330 -34 -124 -147 -169 -171 -69 -18 79 -64 67 -87 -22 -12 -48 -19 -55 -92 -100 -104 -64 442 -96 1291 -76 519 12 483 17 493 -69 6 -45 10 -54 27 -54 27 0 44 143 19 160 -85 55 -120 74 -142 80 -40 10 -59 32 -77 86 -28 82 -64 86 -85 9 -13 -49 -23 -60 -58 -60 -58 0 -88 33 -111 125 -51 198 -404 413 -576 350z M2513 2503 c-24 -9 -15 -70 13 -92 35 -27 55 -26 84 4 46 49 -28 116 -97 88z M1363 2474 c-20 -31 -10 -54 30 -68 53 -19 112 31 93 79 -10 28 -102 20 -123 -11z M3102 2468 c-29 -29 -6 -98 33 -98 18 0 26 7 31 26 14 56 -30 106 -64 72z M842 2428 c2 -12 10 -23 18 -23 22 0 19 39 -3 43 -15 3 -18 -1 -15 -20z M2851 2388 c-15 -41 11 -97 46 -98 18 0 53 50 53 76 0 45 -84 63 -99 22z M1052 2388 c-30 -30 5 -76 48 -63 24 8 35 42 20 60 -15 18 -52 19 -68 3z M2607 2335 c-33 -33 -7 -87 55 -113 53 -22 93 62 49 102 -28 26 -84 32 -104 11z M1276 2324 c-19 -18 -21 -65 -4 -82 43 -43 146 37 108 83 -16 20 -84 19 -104 -1z M3172 2208 c-30 -30 3 -107 39 -88 25 14 27 85 3 94 -22 8 -28 8 -42 -6z M2932 2177 c-35 -41 -24 -107 17 -107 35 0 51 17 51 53 0 56 -40 88 -68 54z M1011 2152 c-6 -10 -7 -29 -4 -41 8 -31 57 -26 61 7 7 44 -38 70 -57 34z M3170 1835 c-24 -29 8 -75 44 -62 30 12 14 77 -20 77 -6 0 -17 -7 -24 -15z M1542 1823 c-113 -21 26 -244 222 -356 130 -74 351 -75 457 -3 28 20 58 36 66 36 30 0 172 161 199 226 42 100 13 110 -260 83 -214 -22 -490 -15 -646 15 -8 2 -25 1 -38 -1z M2634 1756 c-47 -21 -59 -69 -24 -101 42 -38 113 10 108 73 -3 43 -30 52 -84 28z M1274 1746 c-21 -55 30 -109 85 -90 41 15 42 68 2 88 -37 20 -80 21 -87 2z M2855 1676 c-34 -51 -4 -106 49 -92 42 10 53 47 25 85 -27 37 -53 40 -74 7z M1064 1656 c-26 -20 -7 -51 31 -51 35 0 54 27 36 49 -17 20 -41 20 -67 2z M3099 1596 c-17 -38 -4 -76 26 -76 34 0 53 39 37 75 -15 32 -49 33 -63 1z M2532 1588 c-24 -12 -36 -42 -30 -79 7 -53 128 -10 128 46 0 38 -51 55 -98 33z M1360 1575 c-22 -26 6 -68 54 -79 60 -15 96 23 63 68 -19 26 -98 34 -117 11z M2779 1507 c-28 -14 -40 -74 -17 -88 55 -35 129 32 81 73 -30 25 -38 27 -64 15z M1152 1484 c-28 -20 -28 -30 3 -50 34 -22 75 -12 75 19 0 45 -37 60 -78 31z M1510 1444 c-37 -43 -6 -107 49 -102 33 3 36 6 39 35 5 56 -58 104 -88 67z M2424 1450 c-25 -10 -64 -57 -64 -77 0 -40 107 -42 129 -1 31 54 -9 101 -65 78z M3000 1370 c-12 -23 2 -60 23 -60 34 0 52 62 21 74 -25 10 -33 7 -44 -14z M1665 1334 c-28 -29 0 -84 44 -84 52 0 70 55 29 84 -29 20 -52 20 -73 0z M2249 1335 c-38 -21 -45 -46 -19 -67 49 -40 117 -5 108 54 -4 28 -50 35 -89 13z M2670 1343 c-57 -21 -65 -68 -15 -88 50 -21 95 0 95 46 0 14 -38 49 -52 48 -7 0 -20 -3 -28 -6z M1260 1326 c-6 -8 -10 -25 -8 -37 7 -51 88 -52 88 -1 0 48 -51 72 -80 38z M1839 1286 c-21 -45 0 -91 41 -91 27 0 35 5 42 27 22 64 -56 123 -83 64z M2080 1293 c-58 -11 -70 -62 -20 -88 39 -20 47 -19 75 10 27 26 34 75 11 75 -8 0 -20 2 -28 4 -7 2 -24 1 -38 -1z M1426 1204 c-18 -46 0 -94 36 -94 33 0 52 72 26 98 -17 17 -55 15 -62 -4z M2492 1208 c-33 -33 -3 -102 43 -96 58 6 55 108 -3 108 -15 0 -33 -5 -40 -12z M2836 1154 c-33 -32 3 -75 48 -58 22 9 20 51 -3 64 -25 13 -27 13 -45 -6z M1113 1128 c2 -7 7 -13 12 -13 5 0 10 6 13 13 2 6 -4 12 -13 12 -9 0 -15 -6 -12 -12z M2280 1100 c-36 -36 -18 -90 30 -90 43 0 80 39 62 66 -28 40 -66 50 -92 24z M1618 1099 c-28 -16 -23 -67 7 -81 53 -24 100 43 53 76 -26 18 -36 19 -60 5z M1846 1064 c-30 -29 -10 -94 28 -94 19 0 46 34 46 58 0 23 -25 52 -45 52 -7 0 -21 -7 -29 -16z M2070 1055 c-17 -21 -5 -60 24 -73 45 -20 89 41 54 76 -17 17 -63 15 -78 -3z M2604 976 c-11 -28 4 -48 33 -44 22 2 28 8 28 28 0 30 -51 43 -61 16z M2377 864 c-8 -8 1 -24 14 -24 5 0 9 7 9 15 0 15 -12 20 -23 9z M2106 805 c-20 -20 -10 -45 19 -45 29 0 39 25 19 45 -9 8 -17 15 -19 15 -2 0 -10 -7 -19 -15z M1840 784 c0 -9 7 -14 17 -12 25 5 28 28 4 28 -12 0 -21 -6 -21 -16z"/></g>' },
|
|
102
|
+
stencil: { viewBox: '0 0 24 24', body: '<path d="M8.85 15.66h9.25l-5 5.34H3.9ZM24 9.328H4.997L0 14.672h19.003ZM10.884 3H20.1l-4.977 5.34H5.9Z"/>' },
|
|
103
|
+
stepfun: { viewBox: '0 0 24 24', body: '<path d="M12 0C5.372 0 0 5.372 0 12s5.372 12 12 12 12-5.372 12-12S18.628 0 12 0zM8.762 19.614H4.376v-4.386h4.386v4.386zm5.423 0H9.798v-4.386h4.387v4.386zm0-5.42H9.798V9.81h4.387v4.386zm0-5.418H9.798V4.39h4.387v4.386zm5.422-.004h-4.386V4.386h4.386v4.386z"></path>' },
|
|
104
|
+
synthetic: { viewBox: '0 0 54 54', body: '<path d="M27.8517 26.3314C27.8439 26.1451 27.8371 25.9303 27.8337 25.692C27.8203 24.7571 27.8545 23.4581 28.0457 22.0052C28.4322 19.0688 29.4394 15.6521 31.8222 13.2693C34.205 10.8867 37.6212 9.87992 40.5575 9.49344C42.0107 9.30219 43.3101 9.26734 44.245 9.28076C44.4829 9.28417 44.6968 9.29231 44.883 9.30009C44.8908 9.48595 44.8975 9.69933 44.901 9.93676C44.9144 10.8716 44.8795 12.171 44.6883 13.6242C44.3018 16.5605 43.2958 19.9773 40.9131 22.3602C38.5303 24.743 35.1129 25.7495 32.1765 26.136C30.7234 26.3272 29.4246 26.3614 28.4897 26.348C28.2518 26.3446 28.0378 26.3392 27.8517 26.3314Z" stroke="currentColor" stroke-width="2"></path> <path d="M27.8916 27.1592C28.0179 27.0219 28.165 26.8653 28.3311 26.6943C28.9826 26.0238 29.9253 25.1295 31.0879 24.2373C33.4375 22.4342 36.5658 20.7305 39.9355 20.7305C43.3051 20.7306 46.4327 22.4343 48.7822 24.2373C49.945 25.1296 50.8885 26.0238 51.54 26.6943C51.7059 26.865 51.8514 27.022 51.9775 27.1592C51.8516 27.2961 51.7055 27.4518 51.54 27.6221C50.8885 28.2926 49.945 29.1868 48.7822 30.0791C46.4327 31.8821 43.3052 33.5868 39.9355 33.5869C36.5657 33.5869 33.4375 31.8822 31.0879 30.0791C29.9252 29.1868 28.9826 28.2926 28.3311 27.6221C28.1652 27.4514 28.0177 27.2963 27.8916 27.1592Z" stroke="currentColor" stroke-width="2"></path> <path d="M27.4459 27.6915C27.6323 27.6837 27.8471 27.677 28.0854 27.6736C29.0202 27.6602 30.3192 27.6943 31.7721 27.8856C34.7085 28.272 38.1253 29.2793 40.5081 31.6621C42.8906 34.0448 43.8974 37.4611 44.2839 40.3973C44.4752 41.8505 44.51 43.1499 44.4966 44.0848C44.4932 44.3228 44.485 44.5367 44.4773 44.7229C44.2914 44.7306 44.078 44.7374 43.8406 44.7408C42.9057 44.7542 41.6063 44.7194 40.1531 44.5281C37.2168 44.1417 33.8 43.1356 31.4172 40.753C29.0343 38.3701 28.0278 34.9528 27.6413 32.0163C27.4501 30.5633 27.4159 29.2644 27.4294 28.3296C27.4328 28.0916 27.4381 27.8777 27.4459 27.6915Z" stroke="currentColor" stroke-width="2"></path> <path d="M26.916 28.1289C27.0533 28.2552 27.2099 28.4023 27.3809 28.5684C28.0514 29.2199 28.9457 30.1626 29.8379 31.3252C31.641 33.6748 33.3447 36.8031 33.3447 40.1728C33.3446 43.5424 31.6409 46.67 29.8379 49.0195C28.9456 50.1823 28.0514 51.1258 27.3809 51.7773C27.2102 51.9432 27.0532 52.0887 26.916 52.2148C26.7791 52.0889 26.6234 51.9428 26.4531 51.7773C25.7826 51.1258 24.8884 50.1823 23.9961 49.0195C22.1931 46.67 20.4884 43.5426 20.4883 40.1728C20.4883 36.803 22.193 33.6748 23.9961 31.3252C24.8884 30.1625 25.7826 29.2199 26.4531 28.5684C26.6238 28.4025 26.7789 28.255 26.916 28.1289Z" stroke="currentColor" stroke-width="2"></path> <path d="M26.2147 27.691C26.2225 27.8774 26.2293 28.0922 26.2327 28.3305C26.2461 29.2653 26.2119 30.5643 26.0207 32.0172C25.6342 34.9536 24.627 38.3704 22.2442 40.7532C19.8614 43.1357 16.4452 44.1425 13.5089 44.529C12.0557 44.7203 10.7563 44.7551 9.82145 44.7417C9.58349 44.7383 9.36957 44.7301 9.1834 44.7224C9.17564 44.5365 9.16886 44.3231 9.16545 44.0857C9.15203 43.1508 9.18689 41.8514 9.37813 40.3982C9.76458 37.4619 10.7706 34.0451 13.1533 31.6623C15.5361 29.2795 18.9535 28.2729 21.8899 27.8865C23.343 27.6952 24.6419 27.6611 25.5767 27.6745C25.8146 27.6779 26.0286 27.6833 26.2147 27.691Z" stroke="currentColor" stroke-width="2"></path> <path d="M25.7021 27.1602C25.5759 27.2974 25.4288 27.4541 25.2627 27.625C24.6111 28.2955 23.6684 29.1899 22.5059 30.082C20.1562 31.8851 17.028 33.5889 13.6582 33.5889C10.2886 33.5887 7.16105 31.885 4.81153 30.082C3.64873 29.1897 2.70529 28.2955 2.05372 27.625C1.88786 27.4543 1.74236 27.2973 1.61622 27.1602C1.74215 27.0232 1.88824 26.8676 2.05372 26.6973C2.70527 26.0267 3.64874 25.1326 4.81153 24.2402C7.16108 22.4372 10.2885 20.7326 13.6582 20.7324C17.0281 20.7324 20.1562 22.4371 22.5059 24.2402C23.6686 25.1325 24.6112 26.0268 25.2627 26.6973C25.4285 26.8679 25.576 27.023 25.7021 27.1602Z" stroke="currentColor" stroke-width="2"></path> <path d="M25.7338 25.9813C25.5474 25.9891 25.3326 25.9959 25.0943 25.9993C24.1595 26.0127 22.8605 25.9785 21.4076 25.7873C18.4712 25.4008 15.0544 24.3936 12.6716 22.0108C10.2891 19.628 9.28226 16.2118 8.89579 13.2755C8.70453 11.8223 8.66969 10.5229 8.6831 9.58806C8.68652 9.35009 8.69466 9.13618 8.70244 8.95C8.8883 8.94224 9.10168 8.93546 9.33911 8.93205C10.274 8.91863 11.5734 8.95349 13.0266 9.14473C15.9629 9.53118 19.3797 10.5372 21.7625 12.9199C24.1454 15.3027 25.1519 18.7201 25.5383 21.6565C25.7296 23.1096 25.7638 24.4085 25.7503 25.3433C25.7469 25.5812 25.7415 25.7952 25.7338 25.9813Z" stroke="currentColor" stroke-width="2"></path> <path d="M26.9121 25.7031C26.7748 25.5769 26.6182 25.4298 26.4473 25.2637C25.7768 24.6121 24.8824 23.6694 23.9902 22.5068C22.1872 20.1572 20.4834 17.029 20.4834 13.6592C20.4835 10.2896 22.1873 7.16203 23.9902 4.8125C24.8826 3.6497 25.7767 2.70627 26.4473 2.05469C26.618 1.88883 26.775 1.74333 26.9121 1.61719C27.049 1.74312 27.2047 1.88921 27.375 2.05469C28.0455 2.70624 28.9397 3.64971 29.832 4.8125C31.6351 7.16206 33.3397 10.2895 33.3398 13.6592C33.3398 17.029 31.6351 20.1572 29.832 22.5068C28.9398 23.6695 28.0455 24.6121 27.375 25.2637C27.2043 25.4295 27.0492 25.577 26.9121 25.7031Z" stroke="currentColor" stroke-width="2"></path> <path d="M25.5607 19.3789L27.4618 19.3457C27.5492 19.3442 27.6286 19.3884 27.6747 19.4583L27.7093 19.5368L28.045 20.9198C28.1559 21.3761 28.4798 21.7513 28.9152 21.9272C29.3419 22.0994 29.8251 22.0595 30.2183 21.8205L31.3036 21.1608C31.3771 21.116 31.4662 21.1134 31.5407 21.1488L31.6099 21.1965L32.9965 22.5729C33.0577 22.6336 33.0825 22.7203 33.0659 22.8012L33.035 22.8799L32.4788 23.8048C32.2386 24.2041 32.1867 24.6853 32.3299 25.122L32.4034 25.3063C32.5966 25.715 32.9524 26.0199 33.3793 26.1498L33.5666 26.1943L34.4238 26.3454C34.5414 26.3663 34.628 26.4675 34.6302 26.587L34.6642 28.532C34.6662 28.6469 34.5891 28.7489 34.478 28.7784L33.3785 29.0711C32.9508 29.1849 32.5956 29.4757 32.399 29.8657L32.3249 30.0389C32.1648 30.4848 32.2187 30.9794 32.4714 31.3803L33.0028 32.2237C33.0497 32.2981 33.0532 32.3898 33.0168 32.4656L32.9672 32.5349L31.5394 33.9438C31.4825 33.9998 31.4038 34.0241 31.3277 34.0129L31.2531 33.9898L30.2136 33.4737C29.8594 33.298 29.4528 33.2687 29.0801 33.387L28.9219 33.4464C28.5639 33.6057 28.2838 33.8968 28.1361 34.2552L28.0812 34.4124L27.7617 35.5207C27.7312 35.6261 27.6352 35.6996 27.5255 35.7016L25.5874 35.7354C25.4685 35.7375 25.3646 35.6555 25.3388 35.5396L25.0832 34.3808L25.0342 34.2068C24.9146 33.8684 24.6748 33.5849 24.361 33.4108L24.1976 33.3335L24.0433 33.2806C23.7308 33.1931 23.3978 33.2118 23.0968 33.3332L22.9495 33.4022L21.7729 34.0361C21.6979 34.0764 21.6097 34.0746 21.5375 34.0363L21.4722 33.9867L20.1375 32.5586C20.0776 32.4944 20.0574 32.4054 20.0787 32.3242L20.1135 32.2474L20.7373 31.3321C20.9834 30.9707 21.049 30.5199 20.923 30.108L20.8575 29.9343L20.7817 29.7901C20.6149 29.5119 20.3581 29.2988 20.0542 29.1855L19.8981 29.1365L18.4973 28.7898C18.3875 28.7625 18.3097 28.6649 18.3075 28.5518L18.275 26.6888C18.2733 26.5838 18.3372 26.4906 18.4321 26.4527L18.4738 26.4402L19.6961 26.1854C20.1451 26.0918 20.5232 25.7997 20.7294 25.3977L20.8074 25.2186C20.9466 24.8306 20.9208 24.4049 20.7399 24.0399L20.6523 23.8881L20.0481 22.9571C19.9825 22.8563 19.9975 22.723 20.0845 22.64L21.5852 21.2083C21.6715 21.126 21.8046 21.1157 21.9022 21.1843L22.718 21.758C23.1295 22.0472 23.659 22.111 24.1274 21.9278C24.5375 21.7673 24.8531 21.4365 24.9966 21.0267L25.0481 20.8461L25.3209 19.5765C25.3453 19.4629 25.4445 19.3809 25.5607 19.3789Z" fill="currentColor" stroke="currentColor" stroke-width="1.5"></path> <circle cx="26.4669" cy="27.5406" r="2.53895" transform="rotate(-1 26.4669 27.5406)" fill="currentColor" stroke="currentColor" stroke-width="1.5"></circle>' },
|
|
105
|
+
tavily: { viewBox: '0 0 24 24', body: '<path d="M8.033 14.273a1.612 1.612 0 011.139.47l.04.042.044.043a1.61 1.61 0 010 2.277l-3.073 3.073.816.816c.6.6.303 1.627-.525 1.814l-5.159 1.165a1.07 1.07 0 01-.897-.2l-.102-.09a1.07 1.07 0 01-.289-1l1.164-5.158A1.079 1.079 0 013.006 17l.816.817 3.074-3.074a1.612 1.612 0 011.137-.47zM17.042 13.246c0-.85.935-1.366 1.653-.912l4.47 2.824c.336.212.503.562.503.911 0 .35-.167.7-.501.913l-4.472 2.824a1.079 1.079 0 01-1.654-.912v-1.155h-7.027c.37-.4.605-.902.677-1.438l.022-.232a2.65 2.65 0 00-.492-1.669h6.821v-1.154zM8.188 0c.35 0 .7.168.913.503l2.823 4.47a1.079 1.079 0 01-.911 1.655H9.857v6.692h-1.67a2.633 2.633 0 00-1.668.48V6.629H5.365c-.849 0-1.366-.936-.912-1.654L7.276.503A1.072 1.072 0 018.188 0z"></path>' },
|
|
106
|
+
together: { viewBox: '0 0 24 24', body: '<path d="M23.197 4.503A6 6 0 0015 2.307a5.973 5.973 0 00-2.995 4.933l5.996.008v.515h-5.996c.039.937.298 1.87.8 2.74a6 6 0 1010.39-6z"></path><path d="M.805 4.5A6 6 0 003 12.697a5.972 5.972 0 005.77.127L5.779 7.627l.446-.257 2.997 5.192A6 6 0 10.804 4.5z"></path><path d="M12 23.894a6 6 0 005.999-6c0-2.13-1.1-3.996-2.775-5.06l-3.005 5.189-.444-.258 2.997-5.192A6 6 0 1012 23.894z"></path>' },
|
|
107
|
+
venice: { viewBox: '0 0 24 24', body: '<path clip-rule="evenodd" d="M8.295 16.074a4.239 4.239 0 00-1.37-.685 4.255 4.255 0 00-1.636-.138 4.27 4.27 0 00-1.566.499c-.472.26-.875.602-1.19.973-.315.37-.59.824-.773 1.336a4.432 4.432 0 00-.257 1.644c.02.564.155 1.125.375 1.621s.528.93.87 1.275c.34.346.766.657 1.256.881.49.224 1.041.36 1.598.381a4.258 4.258 0 001.62-.26 4.25 4.25 0 001.318-.786c.365-.319.703-.728.959-1.206.256-.479.43-1.027.492-1.589a4.436 4.436 0 00-.137-1.659 4.346 4.346 0 00-.675-1.39l.95-.964.691.702h.393l.475-.481v-.399l-.692-.702L12 14.11l1.004 1.018-.691.702v.399l.474.48h.393l.691-.701.95.964a4.346 4.346 0 00-.675 1.39 4.435 4.435 0 00-.137 1.66c.062.56.236 1.11.492 1.588s.594.887.96 1.206c.364.32.812.599 1.316.785a4.258 4.258 0 001.621.261 4.262 4.262 0 001.598-.38c.49-.225.916-.536 1.257-.882.341-.346.648-.779.869-1.275.22-.496.355-1.057.375-1.62a4.433 4.433 0 00-.257-1.645 4.338 4.338 0 00-.774-1.336 4.272 4.272 0 00-1.189-.973 4.27 4.27 0 00-1.566-.5 4.255 4.255 0 00-1.635.14 4.239 4.239 0 00-1.37.684l-.933-.947.69-.702v-.398l-.49-.498h-.393l-.692.701-1.004-1.018L18.15 7.87l2.132 2.163v-2.25H22.5L20.368 5.62 22.5 3.457V3.06l-.491-.498h-.393L12 12.316 2.384 2.56H1.99l-.491.498v.398L3.632 5.62 1.5 7.782h2.218v2.25L5.85 7.87l5.266 5.342-1.004 1.018-.692-.701h-.393l-.49.498v.399l.69.7-.932.948zm8.546 4.95a1.59 1.59 0 00.107 1.49c.256.43.799.73 1.294.716.494.014 1.037-.287 1.293-.716a1.59 1.59 0 00.108-1.49l.054-.06a1.53 1.53 0 001.471-.107c.424-.26.72-.81.707-1.313.014-.502-.283-1.053-.707-1.313a1.53 1.53 0 00-1.471-.107l-.054-.059a1.59 1.59 0 00-.108-1.49c-.256-.43-.799-.73-1.293-.717-.495-.013-1.038.287-1.294.716a1.59 1.59 0 00-.107 1.491l-.054.059a1.53 1.53 0 00-1.472.107c-.424.26-.72.81-.707 1.313-.013.502.283 1.053.707 1.313a1.53 1.53 0 001.472.107l.054.06zm-9.79 1.49a1.59 1.59 0 00.108-1.49l.054-.06a1.53 1.53 0 001.471-.107c.424-.26.72-.81.707-1.313.014-.502-.283-1.053-.707-1.313a1.53 1.53 0 00-1.47-.107l-.055-.059a1.59 1.59 0 00-.107-1.49c-.257-.43-.8-.73-1.294-.717-.495-.013-1.037.287-1.294.716a1.59 1.59 0 00-.107 1.491l-.054.059a1.53 1.53 0 00-1.471.107c-.424.26-.72.81-.707 1.313-.014.502.283 1.053.707 1.313a1.53 1.53 0 001.471.107l.054.06a1.59 1.59 0 00.107 1.49c.257.43.8.73 1.294.716.495.014 1.037-.287 1.294-.716z"></path><path clip-rule="evenodd" d="M12.274 2.56L14.8 0l1.25 1.268v4.274l-3.462 3.512h-.625L8.5 5.542V1.268L9.75 0l2.524 2.56zM9.75.898l2.212 2.243v4.12L9.75 5.018V.897zm2.837 2.243L14.799.897v4.12l-2.212 2.244V3.14z"></path>' },
|
|
108
|
+
vercel: { viewBox: '0 0 24 24', body: '<path d="M12 0l12 20.785H0L12 0z"></path>' },
|
|
109
|
+
vertexai: { viewBox: '0 0 24 24', body: '<path d="M11.995 20.216a1.892 1.892 0 100 3.785 1.892 1.892 0 000-3.785zm0 2.806a.927.927 0 11.927-.914.914.914 0 01-.927.914z"></path><path clip-rule="evenodd" d="M21.687 14.144c.237.038.452.16.605.344a.978.978 0 01-.18 1.3l-8.24 6.082a1.892 1.892 0 00-1.147-1.508l8.28-6.08a.991.991 0 01.682-.138z"></path><path clip-rule="evenodd" d="M10.122 21.842l-8.217-6.066a.952.952 0 01-.206-1.287.978.978 0 011.287-.206l8.28 6.08a1.893 1.893 0 00-1.144 1.479z"></path><path d="M4.273 4.475a.978.978 0 01-.965-.965V1.09a.978.978 0 111.943 0v2.42a.978.978 0 01-.978.965zM4.247 13.034a.978.978 0 100-1.956.978.978 0 000 1.956zM4.247 10.19a.978.978 0 100-1.956.978.978 0 000 1.956zM4.247 7.332a.978.978 0 100-1.956.978.978 0 000 1.956z"></path><path d="M19.718 7.307a.978.978 0 01-.965-.979v-2.42a.965.965 0 011.93 0v2.42a.964.964 0 01-.965.979zM19.743 13.047a.978.978 0 100-1.956.978.978 0 000 1.956zM19.743 10.151a.978.978 0 100-1.956.978.978 0 000 1.956zM19.743 2.068a.978.978 0 100-1.956.978.978 0 000 1.956z"></path><path d="M11.995 15.917a.978.978 0 01-.965-.965v-2.459a.978.978 0 011.943 0v2.433a.976.976 0 01-.978.991zM11.995 18.762a.978.978 0 100-1.956.978.978 0 000 1.956zM11.995 10.64a.978.978 0 100-1.956.978.978 0 000 1.956zM11.995 7.783a.978.978 0 100-1.956.978.978 0 000 1.956z"></path><path d="M15.856 10.177a.978.978 0 01-.965-.965v-2.42a.977.977 0 011.702-.763.979.979 0 01.241.763v2.42a.978.978 0 01-.978.965zM15.869 4.913a.978.978 0 100-1.956.978.978 0 000 1.956zM15.869 15.853a.978.978 0 100-1.956.978.978 0 000 1.956zM15.869 12.996a.978.978 0 100-1.956.978.978 0 000 1.956z"></path><path d="M8.121 15.853a.978.978 0 100-1.956.978.978 0 000 1.956zM8.121 7.783a.978.978 0 100-1.956.978.978 0 000 1.956zM8.121 4.913a.978.978 0 100-1.957.978.978 0 000 1.957zM8.134 12.996a.978.978 0 01-.978-.94V9.611a.965.965 0 011.93 0v2.445a.966.966 0 01-.952.94z"></path>' },
|
|
110
|
+
vllm: { viewBox: '0 0 24 24', body: '<path d="M0 4.973h9.324V23L0 4.973z"></path><path d="M13.986 4.351L22.378 0l-6.216 23H9.324l4.662-18.649z"></path>' },
|
|
111
|
+
wafer: { viewBox: '0 0 24 24', body: '<path d="M0 12c0 6.617 5.395 12 12.026 12H24V0H12.026C5.395 0 0 5.383 0 12m3.518 0c0-4.81 3.861-8.726 8.608-8.726S20.733 7.189 20.733 12c0 4.81-3.861 8.726-8.607 8.726-4.747 0-8.608-3.915-8.608-8.726"></path>' },
|
|
112
|
+
xai: { viewBox: '0 0 24 24', body: '<path d="M6.469 8.776L16.512 23h-4.464L2.005 8.776H6.47zm-.004 7.9l2.233 3.164L6.467 23H2l4.465-6.324zM22 2.582V23h-3.659V7.764L22 2.582zM22 1l-9.952 14.095-2.233-3.163L17.533 1H22z"></path>' },
|
|
113
|
+
xiaomi: { viewBox: '0 0 24 24', body: '<path d="M12 0C8.016 0 4.756.255 2.493 2.516.23 4.776 0 8.033 0 12.012c0 3.98.23 7.235 2.494 9.497C4.757 23.77 8.017 24 12 24c3.983 0 7.243-.23 9.506-2.491C23.77 19.247 24 15.99 24 12.012c0-3.984-.233-7.243-2.502-9.504C19.234.252 15.978 0 12 0zM4.906 7.405h5.624c1.47 0 3.007.068 3.764.827.746.746.827 2.233.83 3.676v4.54a.15.15 0 0 1-.152.147h-1.947a.15.15 0 0 1-.152-.148V11.83c-.002-.806-.048-1.634-.464-2.051-.358-.36-1.026-.441-1.72-.458H7.158a.15.15 0 0 0-.151.147v6.98a.15.15 0 0 1-.152.148H4.906a.15.15 0 0 1-.15-.148V7.554a.15.15 0 0 1 .15-.149zm12.131 0h1.949a.15.15 0 0 1 .15.15v8.892a.15.15 0 0 1-.15.148h-1.949a.15.15 0 0 1-.151-.148V7.554a.15.15 0 0 1 .151-.149zM8.92 10.948h2.046c.083 0 .15.066.15.147v5.352a.15.15 0 0 1-.15.148H8.92a.15.15 0 0 1-.152-.148v-5.352a.15.15 0 0 1 .152-.147Z"/>' },
|
|
114
|
+
yoloauto: { viewBox: '0 0 64 64', body: '<path d="M13 15h11l8 15 8-15h11L37 39v11H27V39Z"/>' },
|
|
115
|
+
zai: { viewBox: '0 0 24 24', body: '<path d="M12.105 2L9.927 4.953H.653L2.83 2h9.276zM23.254 19.048L21.078 22h-9.242l2.174-2.952h9.244zM24 2L9.264 22H0L14.736 2H24z"></path>' },
|
|
116
|
+
zenmux: { viewBox: '0 0 24 24', body: '<g transform="scale(0.15)"><path clip-rule="evenodd" d="M76.5655 12.5465C83.6841 12.273 98.0909 13.2144 109.616 23.5631C119.071 32.0522 122.328 47.7904 120.125 59.9938C118.105 71.1802 113.346 80.3327 115.21 88.8073C117.074 97.2819 121.818 101.46 125.854 103.215C129.752 104.909 133.52 104.401 132.803 107.621C132.085 110.841 127.21 112.028 123.65 112.028C121.698 112.028 115.795 111.519 113.176 109.824C110.081 107.821 109.391 106.026 108.213 104.583C108.013 104.338 107.66 104.509 107.707 104.821C108.244 108.371 109.724 114.394 112.125 118.13C114.068 121.152 114.871 123.356 119.322 127.085C123.774 130.813 125.853 134.203 121.525 136.604C117.68 138.736 109.322 134.373 104.407 128.977C99.9829 124.12 96.9028 118.129 95.6846 114.231C95.0335 112.147 94.3811 108.562 93.7296 105.63C93.644 105.244 93.116 105.306 93.1046 105.701C92.8883 113.164 91.7152 120.291 90.0001 127.932C88.7652 133.433 85.7626 140.135 83.0508 144.203C79.7442 149.163 74.8354 150.711 71.1866 149.355C68.2684 148.27 70.3392 144.582 71.1866 141.389C72.034 138.197 73.7294 131.519 74.8712 124.203C75.9046 117.581 76.1781 111.026 75.7178 104.815C75.6893 104.436 75.1073 104.378 74.9893 104.739C74.0382 107.652 72.2455 112.481 70.9376 115.418C68.2097 121.543 66.1909 124.231 60.5977 130.672C55.5676 136.464 41.1004 144.655 39.2422 136.604C38.7338 134.401 41.3978 133.436 43.8546 131.519C47.5476 128.638 50.6336 123.525 53.5596 117.282C56.1869 111.676 57.5223 106.253 57.7266 102.791C57.746 102.457 57.3268 102.331 57.1387 102.607C55.9225 104.391 54.1317 106.805 52.1592 108.807C48.8643 112.152 45.2098 115.595 40.9717 117.282C34.1576 119.994 27.2089 118.129 27.7169 113.215C28.1415 109.109 32.725 109.959 38.4307 103.734C44.0239 97.6323 45.8876 92.8857 46.2266 87.6315C46.4975 83.428 42.3854 73.4513 40.295 68.9879C36.9616 61.8693 34.4984 41.666 44.5323 28.6491C57.0743 12.3784 72.1582 12.7159 76.5655 12.5465ZM57.0001 40.9997C52.3335 40.9997 50.0002 44.5815 50.0001 48.9997C50.0001 53.4179 52.5927 56.9997 57.0001 56.9997C61.4074 56.9996 64.0001 53.4179 64.0001 48.9997C63.9999 44.5816 61.6666 40.9997 57.0001 40.9997ZM95.0001 40.9997C90.3335 40.9997 88.0002 44.5815 88.0001 48.9997C88.0001 53.4179 90.5927 56.9997 95.0001 56.9997C99.4074 56.9996 102 53.4179 102 48.9997C102 44.5816 99.6666 40.9997 95.0001 40.9997Z" fill-rule="evenodd"></path></g>' },
|
|
117
|
+
zhipu: { viewBox: '0 0 24 24', body: '<path d="M11.991 23.503a.24.24 0 00-.244.248.24.24 0 00.244.249.24.24 0 00.245-.249.24.24 0 00-.22-.247l-.025-.001zM9.671 5.365a1.697 1.697 0 011.099 2.132l-.071.172-.016.04-.018.054c-.07.16-.104.32-.104.498-.035.71.47 1.279 1.186 1.314h.366c1.309.053 2.338 1.173 2.286 2.523-.052 1.332-1.152 2.38-2.478 2.327h-.174c-.715.018-1.274.64-1.239 1.368 0 .124.018.23.053.337.209.373.54.658.96.8.75.23 1.517-.125 1.9-.782l.018-.035c.402-.64 1.17-.96 1.92-.711.854.284 1.378 1.226 1.099 2.167a1.661 1.661 0 01-2.077 1.102 1.711 1.711 0 01-.907-.711l-.017-.035c-.2-.323-.463-.58-.851-.711l-.056-.018a1.646 1.646 0 00-1.954.746 1.66 1.66 0 01-1.065.764 1.677 1.677 0 01-1.989-1.279c-.209-.906.332-1.83 1.257-2.043a1.51 1.51 0 01.296-.035h.018c.68-.071 1.151-.622 1.116-1.333a1.307 1.307 0 00-.227-.693 2.515 2.515 0 01-.366-1.403 2.39 2.39 0 01.366-1.208c.14-.195.21-.444.227-.693.018-.71-.506-1.261-1.186-1.332l-.07-.018a1.43 1.43 0 01-.299-.07l-.05-.019a1.7 1.7 0 01-1.047-2.114 1.68 1.68 0 012.094-1.101zm-5.575 10.11c.26-.264.639-.367.994-.27.355.096.633.379.728.74.095.362-.007.748-.267 1.013-.402.41-1.053.41-1.455 0a1.062 1.062 0 010-1.482zm14.845-.294c.359-.09.738.024.992.297.254.274.344.665.237 1.025-.107.36-.396.634-.756.718-.551.128-1.1-.22-1.23-.781a1.05 1.05 0 01.757-1.26zm-.064-4.39c.314.32.49.753.49 1.206 0 .452-.176.886-.49 1.206-.315.32-.74.5-1.185.5-.444 0-.87-.18-1.184-.5a1.727 1.727 0 010-2.412 1.654 1.654 0 012.369 0zm-11.243.163c.364.484.447 1.128.218 1.691a1.665 1.665 0 01-2.188.923c-.855-.36-1.26-1.358-.907-2.228a1.68 1.68 0 011.33-1.038c.593-.08 1.183.169 1.547.652zm11.545-4.221c.368 0 .708.2.892.524.184.324.184.724 0 1.048a1.026 1.026 0 01-.892.524c-.568 0-1.03-.47-1.03-1.048 0-.579.462-1.048 1.03-1.048zm-14.358 0c.368 0 .707.2.891.524.184.324.184.724 0 1.048a1.026 1.026 0 01-.891.524c-.569 0-1.03-.47-1.03-1.048 0-.579.461-1.048 1.03-1.048zm10.031-1.475c.925 0 1.675.764 1.675 1.706s-.75 1.705-1.675 1.705-1.674-.763-1.674-1.705c0-.942.75-1.706 1.674-1.706zm-2.626-.684c.362-.082.653-.356.761-.718a1.062 1.062 0 00-.238-1.028 1.017 1.017 0 00-.996-.294c-.547.14-.881.7-.752 1.257.13.558.675.907 1.225.783zm0 16.876c.359-.087.644-.36.75-.72a1.062 1.062 0 00-.237-1.019 1.018 1.018 0 00-.985-.301 1.037 1.037 0 00-.762.717c-.108.361-.017.754.239 1.028.245.263.606.377.953.305l.043-.01zM17.19 3.5a.631.631 0 00.628-.64c0-.355-.279-.64-.628-.64a.631.631 0 00-.628.64c0 .355.28.64.628.64zm-10.38 0a.631.631 0 00.628-.64c0-.355-.28-.64-.628-.64a.631.631 0 00-.628.64c0 .355.279.64.628.64zm-5.182 7.852a.631.631 0 00-.628.64c0 .354.28.639.628.639a.63.63 0 00.627-.606l.001-.034a.62.62 0 00-.628-.64zm5.182 9.13a.631.631 0 00-.628.64c0 .355.279.64.628.64a.631.631 0 00.628-.64c0-.355-.28-.64-.628-.64zm10.38.018a.631.631 0 00-.628.64c0 .355.28.64.628.64a.631.631 0 00.628-.64c0-.355-.279-.64-.628-.64zm5.182-9.148a.631.631 0 00-.628.64c0 .354.279.639.628.639a.631.631 0 00.628-.64c0-.355-.28-.64-.628-.64zm-.384-4.992a.24.24 0 00.244-.249.24.24 0 00-.244-.249.24.24 0 00-.244.249c0 .142.122.249.244.249zM11.991.497a.24.24 0 00.245-.248A.24.24 0 0011.99 0a.24.24 0 00-.244.249c0 .133.108.236.223.247l.021.001zM2.011 6.36a.24.24 0 00.245-.249.24.24 0 00-.244-.249.24.24 0 00-.244.249.24.24 0 00.244.249zm0 11.263a.24.24 0 00-.243.248.24.24 0 00.244.249.24.24 0 00.244-.249.252.252 0 00-.244-.248zm19.995-.018a.24.24 0 00-.245.248.24.24 0 00.245.25.24.24 0 00.244-.25.252.252 0 00-.244-.248z"></path>' },
|
|
118
|
+
};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The brand mark for a provider, or its initials when no mark is registered.
|
|
8
|
+
*
|
|
9
|
+
* Every provider surface draws through this one component — the settings
|
|
10
|
+
* sidebar, the provider header, the login/reconnect modals, the "add provider"
|
|
11
|
+
* preset list, the composer's model picker and the usage panel — so a provider
|
|
12
|
+
* cannot be a whale emoji in one place and a generic cloud in another.
|
|
13
|
+
*
|
|
14
|
+
* The mark is painted in `currentColor`, so it takes the surrounding ink and
|
|
15
|
+
* follows the theme. That is deliberate: the app's palette is a monochrome
|
|
16
|
+
* paper/ink system (`DESIGN.md`), and a full-colour logo per row would be the
|
|
17
|
+
* only chroma in a dense list. Brand identity is carried by the shape.
|
|
18
|
+
*
|
|
19
|
+
* Fallback rule: a provider with no registered mark shows its initials, each
|
|
20
|
+
* followed by a dot — `Tooker` -> `t.`, `Toktok ID` -> `ti.`
|
|
21
|
+
* ({@link providerInitials}). A provider that is not in the table still gets a
|
|
22
|
+
* stable, readable badge rather than an empty box.
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
import {
|
|
26
|
+
PROVIDER_GLYPHS,
|
|
27
|
+
type ProviderGlyph,
|
|
28
|
+
} from '@/client/components/common/provider-icon/glyphs';
|
|
29
|
+
import { providerInitials, resolveProviderGlyph } from '@/shared/lib/models/provider/glyph';
|
|
30
|
+
|
|
31
|
+
interface ProviderIconProps {
|
|
32
|
+
/**
|
|
33
|
+
* The provider row's stored icon key (`ProviderItem.icon`). Tried first, so a
|
|
34
|
+
* legacy key keeps resolving after the provider's slug changes.
|
|
35
|
+
*/
|
|
36
|
+
icon?: string;
|
|
37
|
+
/** The provider slug — the primary brand key. */
|
|
38
|
+
slug?: string;
|
|
39
|
+
/** Display name; only the initials fallback reads it. */
|
|
40
|
+
name?: string;
|
|
41
|
+
size?: number;
|
|
42
|
+
className?: string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export function ProviderIcon({ icon, slug, name, size = 16, className = '' }: ProviderIconProps) {
|
|
46
|
+
const glyphName = resolveProviderGlyph(icon, slug, name);
|
|
47
|
+
const glyph: ProviderGlyph | undefined = glyphName ? PROVIDER_GLYPHS[glyphName] : undefined;
|
|
48
|
+
|
|
49
|
+
if (!glyph) {
|
|
50
|
+
// No mark: the initials badge. It is a PILL, not a square — the text has to
|
|
51
|
+
// sit at the same visual weight as a brand mark, and `ti.` is far wider than
|
|
52
|
+
// it is tall, so a square column would force a font size half the height of
|
|
53
|
+
// its neighbours' ink (measured: `ti.` fits a 15px column only at 9.5px,
|
|
54
|
+
// whose glyph ink is 6.4px against the marks' 13.8px median). Height stays
|
|
55
|
+
// `size`, width follows the text.
|
|
56
|
+
//
|
|
57
|
+
// 1.2x is the largest size whose ink still lands inside the box (measured on
|
|
58
|
+
// canvas: ink 10-15px in a 16px band with >=1px clearance, versus clipping
|
|
59
|
+
// at 1.3x), and it brings the text level with the marks' ink.
|
|
60
|
+
// `aria-hidden` because the provider's name is always rendered beside it —
|
|
61
|
+
// a screen reader announcing "t." first is noise.
|
|
62
|
+
return (
|
|
63
|
+
<span
|
|
64
|
+
aria-hidden="true"
|
|
65
|
+
className={`inline-flex flex-shrink-0 items-center justify-center font-semibold lowercase leading-none ${className}`}
|
|
66
|
+
style={{ height: size, minWidth: size, paddingInline: Math.max(1, Math.round(size * 0.12)), fontSize: Math.round(size * 1.2) }}
|
|
67
|
+
>
|
|
68
|
+
{providerInitials(name || slug || icon || '')}
|
|
69
|
+
</span>
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
return (
|
|
74
|
+
<svg
|
|
75
|
+
viewBox={glyph.viewBox}
|
|
76
|
+
width={size}
|
|
77
|
+
height={size}
|
|
78
|
+
className={`flex-shrink-0 ${className}`}
|
|
79
|
+
aria-hidden="true"
|
|
80
|
+
focusable="false"
|
|
81
|
+
// Static, bake-time data from this repo — never user input.
|
|
82
|
+
dangerouslySetInnerHTML={{ __html: glyph.body }}
|
|
83
|
+
/>
|
|
84
|
+
);
|
|
85
|
+
}
|
|
@@ -56,6 +56,8 @@ interface WorkspacePanelsProps {
|
|
|
56
56
|
refreshKey: number;
|
|
57
57
|
onSetActiveFileId: (id: number | string | null) => void;
|
|
58
58
|
onCloseFile: (id: number | string) => void;
|
|
59
|
+
/** Replace a diff tab with the plain editor tab for the same file. */
|
|
60
|
+
onConvertDiffToEditor: (id: number | string) => void;
|
|
59
61
|
onOpenFile: (file: any) => void;
|
|
60
62
|
onRefreshWorkspace: () => void;
|
|
61
63
|
onChangeRightPanel: (panel: RightPanelType) => void;
|
|
@@ -81,6 +83,7 @@ export function WorkspacePanels(props: WorkspacePanelsProps) {
|
|
|
81
83
|
refreshKey,
|
|
82
84
|
onSetActiveFileId,
|
|
83
85
|
onCloseFile,
|
|
86
|
+
onConvertDiffToEditor,
|
|
84
87
|
onOpenFile,
|
|
85
88
|
onRefreshWorkspace,
|
|
86
89
|
onChangeRightPanel,
|
|
@@ -185,6 +188,7 @@ export function WorkspacePanels(props: WorkspacePanelsProps) {
|
|
|
185
188
|
activeFileId={activeFileId}
|
|
186
189
|
onSelectFile={onSetActiveFileId}
|
|
187
190
|
onCloseFile={onCloseFile}
|
|
191
|
+
onConvertDiffToEditor={onConvertDiffToEditor}
|
|
188
192
|
refreshKey={refreshKey}
|
|
189
193
|
onFileSaved={onRefreshWorkspace}
|
|
190
194
|
/>
|
|
@@ -56,6 +56,7 @@ export function DesktopLayout({ sessionId, onSwitchToMobile, appSettings = {} }:
|
|
|
56
56
|
setActiveFileId,
|
|
57
57
|
handleOpenFile,
|
|
58
58
|
handleCloseFile,
|
|
59
|
+
convertDiffToEditor,
|
|
59
60
|
} = useFileTabs(activeProjectPath, sessionId || '', handleOpenTab);
|
|
60
61
|
|
|
61
62
|
const showEditor = openedFiles.length > 0 && (userToggledEditor ?? true);
|
|
@@ -183,6 +184,7 @@ export function DesktopLayout({ sessionId, onSwitchToMobile, appSettings = {} }:
|
|
|
183
184
|
refreshKey={refreshKey}
|
|
184
185
|
onSetActiveFileId={setActiveFileId}
|
|
185
186
|
onCloseFile={handleCloseFile}
|
|
187
|
+
onConvertDiffToEditor={convertDiffToEditor}
|
|
186
188
|
onOpenFile={handleOpenFile}
|
|
187
189
|
onRefreshWorkspace={handleRefreshWorkspace}
|
|
188
190
|
onChangeRightPanel={handleChangeRightPanel}
|
|
@@ -118,6 +118,21 @@ export function MobileLayoutWrapper({ onDesktopToggle, appSettings = {} }: Mobil
|
|
|
118
118
|
setCurrentScreen('main');
|
|
119
119
|
};
|
|
120
120
|
|
|
121
|
+
// Desktop parity: the `+` on a workspace header creates the pending session
|
|
122
|
+
// INSIDE that folder, so the prewarmed cwd and the eventual spawn cwd are the
|
|
123
|
+
// folder's — not whatever the active session resolved to.
|
|
124
|
+
const handleNewSessionForFolder = (targetFolderId: number) => {
|
|
125
|
+
const cwd = spawnCwdForNewSession(folders, sessionParam, targetFolderId);
|
|
126
|
+
if (cwd) triggerSessionPrewarm(cwd);
|
|
127
|
+
setSearchParams(prev => {
|
|
128
|
+
const next = new URLSearchParams(prev);
|
|
129
|
+
next.set('sessionId', `new-${Date.now()}`);
|
|
130
|
+
next.set('folderId', targetFolderId.toString());
|
|
131
|
+
return next;
|
|
132
|
+
}, { replace: true });
|
|
133
|
+
setCurrentScreen('main');
|
|
134
|
+
};
|
|
135
|
+
|
|
121
136
|
const handleCreateFolder = async (input: { name: string; path?: string }) => {
|
|
122
137
|
const res = await fetch('/api/folders', {
|
|
123
138
|
method: 'POST',
|
|
@@ -162,6 +177,7 @@ export function MobileLayoutWrapper({ onDesktopToggle, appSettings = {} }: Mobil
|
|
|
162
177
|
activeSessionId={sessionId}
|
|
163
178
|
onSelectSession={handleSelectSession}
|
|
164
179
|
onNewSession={handleNewSession}
|
|
180
|
+
onNewSessionForFolder={handleNewSessionForFolder}
|
|
165
181
|
onCreateFolder={handleCreateFolder}
|
|
166
182
|
onClose={() => setCurrentScreen('main')}
|
|
167
183
|
onDesktopToggle={onDesktopToggle}
|
|
@@ -16,6 +16,7 @@ interface MobileSessionSidebarProps {
|
|
|
16
16
|
activeSessionId: number | string | null;
|
|
17
17
|
onSelectSession: (id: number | string) => void;
|
|
18
18
|
onNewSession: () => void;
|
|
19
|
+
onNewSessionForFolder: (folderId: number) => void;
|
|
19
20
|
onCreateFolder: (input: { name: string; path?: string }) => Promise<void> | void;
|
|
20
21
|
onClose: () => void;
|
|
21
22
|
onDesktopToggle?: () => void;
|
|
@@ -26,6 +27,7 @@ export function MobileSessionSidebar({
|
|
|
26
27
|
activeSessionId,
|
|
27
28
|
onSelectSession,
|
|
28
29
|
onNewSession,
|
|
30
|
+
onNewSessionForFolder,
|
|
29
31
|
onCreateFolder,
|
|
30
32
|
onClose,
|
|
31
33
|
onDesktopToggle,
|
|
@@ -96,6 +98,13 @@ export function MobileSessionSidebar({
|
|
|
96
98
|
onClose();
|
|
97
99
|
};
|
|
98
100
|
|
|
101
|
+
// Same dismissal as the toolbar's New Session: the pending session is opened
|
|
102
|
+
// behind the drawer, so the user must land on the chat, not on the list.
|
|
103
|
+
const handleNewSessionForFolderAndClose = (folderId: number) => {
|
|
104
|
+
onNewSessionForFolder(folderId);
|
|
105
|
+
onClose();
|
|
106
|
+
};
|
|
107
|
+
|
|
99
108
|
const handleToggleArchived = () => {
|
|
100
109
|
setShowArchived(!showArchived);
|
|
101
110
|
setOptionsOpen(false);
|
|
@@ -136,6 +145,7 @@ export function MobileSessionSidebar({
|
|
|
136
145
|
isScrolling={isScrolling}
|
|
137
146
|
onScroll={handleScroll}
|
|
138
147
|
onSelectSession={handleSelectSession}
|
|
148
|
+
onNewSessionForFolder={handleNewSessionForFolderAndClose}
|
|
139
149
|
onToggleFolder={toggleFolder}
|
|
140
150
|
/>
|
|
141
151
|
)}
|
|
@@ -29,7 +29,6 @@ export function MobileFullEditor({ file, onClose, onFileSaved }: MobileFullEdito
|
|
|
29
29
|
const isMd = file.name.endsWith('.md');
|
|
30
30
|
|
|
31
31
|
const editor = useFileEditor(file, {
|
|
32
|
-
reportLoadError: true,
|
|
33
32
|
flushOnUnmount: true,
|
|
34
33
|
reportSaveError: true,
|
|
35
34
|
downloadMimeType: 'text/plain;charset=utf-8',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useRef, useState } from 'preact/hooks';
|
|
2
|
-
import { ChevronDown, ChevronRight, GitBranch, MessageSquare, MoreHorizontal } from 'lucide-preact';
|
|
2
|
+
import { ChevronDown, ChevronRight, GitBranch, MessageSquare, MoreHorizontal, Plus } from 'lucide-preact';
|
|
3
3
|
import { MobileSessionRow } from '@/client/components/mobile/mobile-session-sidebar/SessionRow';
|
|
4
4
|
import { WorkspaceOptionsMenu } from '@/client/components/common/workspace-options-menu';
|
|
5
5
|
import { useShowMore } from '@/client/hooks/ui/show-more';
|
|
@@ -14,6 +14,7 @@ interface MobileSessionCategoryProps {
|
|
|
14
14
|
folder: WorkspaceFolderData;
|
|
15
15
|
activeSessionId: number | string | null;
|
|
16
16
|
onSelectSession: (id: number | string) => void;
|
|
17
|
+
onNewSessionForFolder: (folderId: number) => void;
|
|
17
18
|
isExpanded: boolean;
|
|
18
19
|
onToggleExpand: () => void;
|
|
19
20
|
showArchived?: boolean;
|
|
@@ -24,6 +25,7 @@ export function MobileSessionCategory({
|
|
|
24
25
|
folder,
|
|
25
26
|
activeSessionId,
|
|
26
27
|
onSelectSession,
|
|
28
|
+
onNewSessionForFolder,
|
|
27
29
|
isExpanded,
|
|
28
30
|
onToggleExpand,
|
|
29
31
|
showArchived = false,
|
|
@@ -104,6 +106,19 @@ export function MobileSessionCategory({
|
|
|
104
106
|
<GitBranch size={13} className="text-ink/50 ml-1" />
|
|
105
107
|
)}
|
|
106
108
|
|
|
109
|
+
<button
|
|
110
|
+
type="button"
|
|
111
|
+
onClick={(event) => {
|
|
112
|
+
event.stopPropagation();
|
|
113
|
+
onNewSessionForFolder(folder.id);
|
|
114
|
+
}}
|
|
115
|
+
className="p-1.5 rounded-lg hover:bg-ink/10 active:bg-ink/15 text-ink/60 hover:text-ink"
|
|
116
|
+
title="New Session"
|
|
117
|
+
aria-label={`New session in ${folder.name}`}
|
|
118
|
+
>
|
|
119
|
+
<Plus size={15} />
|
|
120
|
+
</button>
|
|
121
|
+
|
|
107
122
|
<div className="relative flex items-center" ref={menuRef} onClick={(event) => event.stopPropagation()}>
|
|
108
123
|
<button
|
|
109
124
|
type="button"
|
|
@@ -11,6 +11,7 @@ interface MobileSessionListProps {
|
|
|
11
11
|
isScrolling: boolean;
|
|
12
12
|
onScroll: () => void;
|
|
13
13
|
onSelectSession: (id: number | string) => void;
|
|
14
|
+
onNewSessionForFolder: (folderId: number) => void;
|
|
14
15
|
onToggleFolder: (folderId: number) => void;
|
|
15
16
|
}
|
|
16
17
|
|
|
@@ -23,6 +24,7 @@ export function MobileSessionList({
|
|
|
23
24
|
isScrolling,
|
|
24
25
|
onScroll,
|
|
25
26
|
onSelectSession,
|
|
27
|
+
onNewSessionForFolder,
|
|
26
28
|
onToggleFolder,
|
|
27
29
|
}: MobileSessionListProps) {
|
|
28
30
|
return (
|
|
@@ -41,6 +43,7 @@ export function MobileSessionList({
|
|
|
41
43
|
folder={folder}
|
|
42
44
|
activeSessionId={activeSessionId}
|
|
43
45
|
onSelectSession={onSelectSession}
|
|
46
|
+
onNewSessionForFolder={onNewSessionForFolder}
|
|
44
47
|
isExpanded={expandedFolders[folder.id] ?? true}
|
|
45
48
|
onToggleExpand={() => onToggleFolder(folder.id)}
|
|
46
49
|
showArchived={showArchived}
|