detached b764bd2

Merge branch 'main' into feat/stability-performance-multi-agent-2026-02-07

commit
b764bd2edef1c261123daeaeddc1b955fe64b185
author
bnema · · 2026-02-07 06:46 UTC
committer
GitHub · · 2026-02-07 06:46 UTC
merge of
ff377bb + 01bb10e · diff against the first parent
signature
GPG UnverifiedB5690EEEBB952194 The key is unknown
4 files · +51 -64
M go.mod +5 -5
@@ -4,7 +4,7 @@ go 1.25.3
44
55 require (
66 github.com/bnema/puregotk-webkit v0.0.10
7- github.com/charmbracelet/bubbles v0.21.0
7+ github.com/charmbracelet/bubbles v0.21.1
88 github.com/charmbracelet/bubbletea v1.3.10
99 github.com/charmbracelet/lipgloss v1.1.0
1010 github.com/fsnotify/fsnotify v1.9.0
@@ -28,12 +28,12 @@ require (
2828 github.com/atotto/clipboard v0.1.4 // indirect
2929 github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
3030 github.com/charmbracelet/colorprofile v0.4.1 // indirect
31- github.com/charmbracelet/x/ansi v0.11.4 // indirect
32- github.com/charmbracelet/x/cellbuf v0.0.14 // indirect
31+ github.com/charmbracelet/x/ansi v0.11.5 // indirect
32+ github.com/charmbracelet/x/cellbuf v0.0.15 // indirect
3333 github.com/charmbracelet/x/term v0.2.2 // indirect
34- github.com/clipperhouse/displaywidth v0.7.0 // indirect
34+ github.com/clipperhouse/displaywidth v0.9.0 // indirect
3535 github.com/clipperhouse/stringish v0.1.1 // indirect
36- github.com/clipperhouse/uax29/v2 v2.3.1 // indirect
36+ github.com/clipperhouse/uax29/v2 v2.5.0 // indirect
3737 github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
3838 github.com/davecgh/go-spew v1.1.1 // indirect
3939 github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
@@ -4,7 +4,7 @@ go 1.25.3
4 4
5 require (5 require (
6 github.com/bnema/puregotk-webkit v0.0.106 github.com/bnema/puregotk-webkit v0.0.10
7- github.com/charmbracelet/bubbles v0.21.07+ github.com/charmbracelet/bubbles v0.21.1
8 github.com/charmbracelet/bubbletea v1.3.108 github.com/charmbracelet/bubbletea v1.3.10
9 github.com/charmbracelet/lipgloss v1.1.09 github.com/charmbracelet/lipgloss v1.1.0
10 github.com/fsnotify/fsnotify v1.9.010 github.com/fsnotify/fsnotify v1.9.0
@@ -28,12 +28,12 @@ require (
28 github.com/atotto/clipboard v0.1.4 // indirect28 github.com/atotto/clipboard v0.1.4 // indirect
29 github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect29 github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
30 github.com/charmbracelet/colorprofile v0.4.1 // indirect30 github.com/charmbracelet/colorprofile v0.4.1 // indirect
31- github.com/charmbracelet/x/ansi v0.11.4 // indirect31+ github.com/charmbracelet/x/ansi v0.11.5 // indirect
32- github.com/charmbracelet/x/cellbuf v0.0.14 // indirect32+ github.com/charmbracelet/x/cellbuf v0.0.15 // indirect
33 github.com/charmbracelet/x/term v0.2.2 // indirect33 github.com/charmbracelet/x/term v0.2.2 // indirect
34- github.com/clipperhouse/displaywidth v0.7.0 // indirect34+ github.com/clipperhouse/displaywidth v0.9.0 // indirect
35 github.com/clipperhouse/stringish v0.1.1 // indirect35 github.com/clipperhouse/stringish v0.1.1 // indirect
36- github.com/clipperhouse/uax29/v2 v2.3.1 // indirect36+ github.com/clipperhouse/uax29/v2 v2.5.0 // indirect
37 github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect37 github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
38 github.com/davecgh/go-spew v1.1.1 // indirect38 github.com/davecgh/go-spew v1.1.1 // indirect
39 github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect39 github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
M go.sum +8 -8 generated file: collapsed
M webui/package-lock.json +31 -44
@@ -8,29 +8,29 @@
88 "name": "@dumber/gui",
99 "version": "0.1.0",
1010 "dependencies": {
11- "bits-ui": "^2.14.4",
11+ "bits-ui": "^2.15.5",
1212 "clsx": "^2.1.1",
1313 "frappe-charts": "^1.6.2",
1414 "mode-watcher": "^1.1.0",
1515 "tailwind-merge": "^3.4.0"
1616 },
1717 "devDependencies": {
18- "@internationalized/date": "^3.10.1",
18+ "@internationalized/date": "^3.11.0",
1919 "@lucide/svelte": "^0.563.1",
2020 "@sveltejs/vite-plugin-svelte": "^6.2.4",
2121 "@tailwindcss/cli": "^4.0.0",
2222 "@tailwindcss/postcss": "^4.1.13",
23- "@types/node": "^25.1.0",
23+ "@types/node": "^25.2.0",
2424 "@typescript-eslint/eslint-plugin": "^8.54.0",
2525 "@typescript-eslint/parser": "^8.54.0",
26- "autoprefixer": "^10.4.20",
26+ "autoprefixer": "^10.4.24",
2727 "eslint": "^9.39.2",
2828 "eslint-plugin-svelte": "^3.14.0",
29- "globals": "^17.2.0",
29+ "globals": "^17.3.0",
3030 "postcss": "^8.4.47",
31- "svelte": "^5.48.5",
31+ "svelte": "^5.49.2",
3232 "svelte-awesome-color-picker": "^4.1.0",
33- "svelte-check": "^4.0.0",
33+ "svelte-check": "^4.3.6",
3434 "tailwind-variants": "^3.2.2",
3535 "tailwindcss": "^4.0.0",
3636 "tw-animate-css": "^1.4.0",
@@ -764,11 +764,10 @@
764764 }
765765 },
766766 "node_modules/@internationalized/date": {
767- "version": "3.10.1",
768- "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.10.1.tgz",
769- "integrity": "sha512-oJrXtQiAXLvT9clCf1K4kxp3eKsQhIaZqxEyowkBcsvZDdZkbWrVmnGknxs5flTD0VGsxrxKgBCZty1EzoiMzA==",
767+ "version": "3.11.0",
768+ "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.11.0.tgz",
769+ "integrity": "sha512-BOx5huLAWhicM9/ZFs84CzP+V3gBW6vlpM02yzsdYC7TGlZJX1OJiEEHcSayF00Z+3jLlm4w79amvSt6RqKN3Q==",
770770 "license": "Apache-2.0",
771- "peer": true,
772771 "dependencies": {
773772 "@swc/helpers": "^0.5.0"
774773 }
@@ -1502,7 +1501,6 @@
15021501 "integrity": "sha512-ou/d51QSdTyN26D7h6dSpusAKaZkAiGM55/AKYi+9AGZw7q85hElbjK3kEyzXHhLSnRISHOYzVge6x0jRZ7DXA==",
15031502 "dev": true,
15041503 "license": "MIT",
1505- "peer": true,
15061504 "dependencies": {
15071505 "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0",
15081506 "deepmerge": "^4.3.1",
@@ -1909,12 +1907,11 @@
19091907 "license": "MIT"
19101908 },
19111909 "node_modules/@types/node": {
1912- "version": "25.1.0",
1913- "resolved": "https://registry.npmjs.org/@types/node/-/node-25.1.0.tgz",
1914- "integrity": "sha512-t7frlewr6+cbx+9Ohpl0NOTKXZNV9xHRmNOvql47BFJKcEG1CxtxlPEEe+gR9uhVWM4DwhnvTF110mIL4yP9RA==",
1910+ "version": "25.2.0",
1911+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.0.tgz",
1912+ "integrity": "sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==",
19151913 "dev": true,
19161914 "license": "MIT",
1917- "peer": true,
19181915 "dependencies": {
19191916 "undici-types": "~7.16.0"
19201917 }
@@ -1964,7 +1961,6 @@
19641961 "integrity": "sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==",
19651962 "dev": true,
19661963 "license": "MIT",
1967- "peer": true,
19681964 "dependencies": {
19691965 "@typescript-eslint/scope-manager": "8.54.0",
19701966 "@typescript-eslint/types": "8.54.0",
@@ -2168,7 +2164,6 @@
21682164 "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
21692165 "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
21702166 "license": "MIT",
2171- "peer": true,
21722167 "bin": {
21732168 "acorn": "bin/acorn"
21742169 },
@@ -2236,9 +2231,9 @@
22362231 }
22372232 },
22382233 "node_modules/autoprefixer": {
2239- "version": "10.4.23",
2240- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz",
2241- "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==",
2234+ "version": "10.4.24",
2235+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz",
2236+ "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==",
22422237 "dev": true,
22432238 "funding": [
22442239 {
@@ -2257,7 +2252,7 @@
22572252 "license": "MIT",
22582253 "dependencies": {
22592254 "browserslist": "^4.28.1",
2260- "caniuse-lite": "^1.0.30001760",
2255+ "caniuse-lite": "^1.0.30001766",
22612256 "fraction.js": "^5.3.4",
22622257 "picocolors": "^1.1.1",
22632258 "postcss-value-parser": "^4.2.0"
@@ -2299,9 +2294,9 @@
22992294 }
23002295 },
23012296 "node_modules/bits-ui": {
2302- "version": "2.15.4",
2303- "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-2.15.4.tgz",
2304- "integrity": "sha512-7H9YUfp03KOk1LVDh8wPYSRPxlZgG/GRWLNSA8QC73/8Z8ytun+DWJhIuibyFyz7A0cP/RANVcB4iDrbY8q+Og==",
2297+ "version": "2.15.5",
2298+ "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-2.15.5.tgz",
2299+ "integrity": "sha512-WhS+P+E//ClLfKU6KqjKC17nGDRLnz+vkwoP6ClFUPd5m1fFVDxTElPX8QVsduLj5V1KFDxlnv6sW2G5Lqk+vw==",
23052300 "license": "MIT",
23062301 "dependencies": {
23072302 "@floating-ui/core": "^1.7.1",
@@ -2352,7 +2347,6 @@
23522347 }
23532348 ],
23542349 "license": "MIT",
2355- "peer": true,
23562350 "dependencies": {
23572351 "baseline-browser-mapping": "^2.9.0",
23582352 "caniuse-lite": "^1.0.30001759",
@@ -2654,7 +2648,6 @@
26542648 "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==",
26552649 "dev": true,
26562650 "license": "MIT",
2657- "peer": true,
26582651 "dependencies": {
26592652 "@eslint-community/eslint-utils": "^4.8.0",
26602653 "@eslint-community/regexpp": "^4.12.1",
@@ -3054,9 +3047,9 @@
30543047 }
30553048 },
30563049 "node_modules/globals": {
3057- "version": "17.2.0",
3058- "resolved": "https://registry.npmjs.org/globals/-/globals-17.2.0.tgz",
3059- "integrity": "sha512-tovnCz/fEq+Ripoq+p/gN1u7l6A7wwkoBT9pRCzTHzsD/LvADIzXZdjmRymh5Ztf0DYC3Rwg5cZRYjxzBmzbWg==",
3050+ "version": "17.3.0",
3051+ "resolved": "https://registry.npmjs.org/globals/-/globals-17.3.0.tgz",
3052+ "integrity": "sha512-yMqGUQVVCkD4tqjOJf3TnrvaaHDMYp4VlUSObbkIiuCPe/ofdMBFIAcBbCSRFWOnos6qRiTVStDwqPLUclaxIw==",
30603053 "dev": true,
30613054 "license": "MIT",
30623055 "engines": {
@@ -3828,7 +3821,6 @@
38283821 }
38293822 ],
38303823 "license": "MIT",
3831- "peer": true,
38323824 "dependencies": {
38333825 "nanoid": "^3.3.11",
38343826 "picocolors": "^1.1.1",
@@ -4161,11 +4153,10 @@
41614153 }
41624154 },
41634155 "node_modules/svelte": {
4164- "version": "5.48.5",
4165- "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.48.5.tgz",
4166- "integrity": "sha512-NB3o70OxfmnE5UPyLr8uH3IV02Q43qJVAuWigYmsSOYsS0s/rHxP0TF81blG0onF/xkhNvZw4G8NfzIX+By5ZQ==",
4156+ "version": "5.49.2",
4157+ "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.49.2.tgz",
4158+ "integrity": "sha512-PYLwnngYzyhKzqDlGVlCH4z+NVI8mC0/bTv15vw25CcdOhxENsOHIbQ36oj5DIf3oBazM+STbCAvaskpxtBmWA==",
41674159 "license": "MIT",
4168- "peer": true,
41694160 "dependencies": {
41704161 "@jridgewell/remapping": "^2.3.4",
41714162 "@jridgewell/sourcemap-codec": "^1.5.0",
@@ -4177,7 +4168,7 @@
41774168 "clsx": "^2.1.1",
41784169 "devalue": "^5.6.2",
41794170 "esm-env": "^1.2.1",
4180- "esrap": "^2.2.1",
4171+ "esrap": "^2.2.2",
41814172 "is-reference": "^3.0.3",
41824173 "locate-character": "^3.0.0",
41834174 "magic-string": "^0.30.11",
@@ -4215,9 +4206,9 @@
42154206 }
42164207 },
42174208 "node_modules/svelte-check": {
4218- "version": "4.3.5",
4219- "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.3.5.tgz",
4220- "integrity": "sha512-e4VWZETyXaKGhpkxOXP+B/d0Fp/zKViZoJmneZWe/05Y2aqSKj3YN2nLfYPJBQ87WEiY4BQCQ9hWGu9mPT1a1Q==",
4209+ "version": "4.3.6",
4210+ "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.3.6.tgz",
4211+ "integrity": "sha512-uBkz96ElE3G4pt9E1Tw0xvBfIUQkeH794kDQZdAUk795UVMr+NJZpuFSS62vcmO/DuSalK83LyOwhgWq8YGU1Q==",
42214212 "dev": true,
42224213 "license": "MIT",
42234214 "dependencies": {
@@ -4312,7 +4303,6 @@
43124303 "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.4.0.tgz",
43134304 "integrity": "sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==",
43144305 "license": "MIT",
4315- "peer": true,
43164306 "funding": {
43174307 "type": "github",
43184308 "url": "https://github.com/sponsors/dcastil"
@@ -4343,8 +4333,7 @@
43434333 "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz",
43444334 "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==",
43454335 "dev": true,
4346- "license": "MIT",
4347- "peer": true
4336+ "license": "MIT"
43484337 },
43494338 "node_modules/tapable": {
43504339 "version": "2.3.0",
@@ -4425,7 +4414,6 @@
44254414 "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
44264415 "dev": true,
44274416 "license": "Apache-2.0",
4428- "peer": true,
44294417 "bin": {
44304418 "tsc": "bin/tsc",
44314419 "tsserver": "bin/tsserver"
@@ -4519,7 +4507,6 @@
45194507 "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==",
45204508 "dev": true,
45214509 "license": "MIT",
4522- "peer": true,
45234510 "dependencies": {
45244511 "esbuild": "^0.27.0",
45254512 "fdir": "^6.5.0",
@@ -8,29 +8,29 @@
8 "name": "@dumber/gui",8 "name": "@dumber/gui",
9 "version": "0.1.0",9 "version": "0.1.0",
10 "dependencies": {10 "dependencies": {
11- "bits-ui": "^2.14.4",11+ "bits-ui": "^2.15.5",
12 "clsx": "^2.1.1",12 "clsx": "^2.1.1",
13 "frappe-charts": "^1.6.2",13 "frappe-charts": "^1.6.2",
14 "mode-watcher": "^1.1.0",14 "mode-watcher": "^1.1.0",
15 "tailwind-merge": "^3.4.0"15 "tailwind-merge": "^3.4.0"
16 },16 },
17 "devDependencies": {17 "devDependencies": {
18- "@internationalized/date": "^3.10.1",18+ "@internationalized/date": "^3.11.0",
19 "@lucide/svelte": "^0.563.1",19 "@lucide/svelte": "^0.563.1",
20 "@sveltejs/vite-plugin-svelte": "^6.2.4",20 "@sveltejs/vite-plugin-svelte": "^6.2.4",
21 "@tailwindcss/cli": "^4.0.0",21 "@tailwindcss/cli": "^4.0.0",
22 "@tailwindcss/postcss": "^4.1.13",22 "@tailwindcss/postcss": "^4.1.13",
23- "@types/node": "^25.1.0",23+ "@types/node": "^25.2.0",
24 "@typescript-eslint/eslint-plugin": "^8.54.0",24 "@typescript-eslint/eslint-plugin": "^8.54.0",
25 "@typescript-eslint/parser": "^8.54.0",25 "@typescript-eslint/parser": "^8.54.0",
26- "autoprefixer": "^10.4.20",26+ "autoprefixer": "^10.4.24",
27 "eslint": "^9.39.2",27 "eslint": "^9.39.2",
28 "eslint-plugin-svelte": "^3.14.0",28 "eslint-plugin-svelte": "^3.14.0",
29- "globals": "^17.2.0",29+ "globals": "^17.3.0",
30 "postcss": "^8.4.47",30 "postcss": "^8.4.47",
31- "svelte": "^5.48.5",31+ "svelte": "^5.49.2",
32 "svelte-awesome-color-picker": "^4.1.0",32 "svelte-awesome-color-picker": "^4.1.0",
33- "svelte-check": "^4.0.0",33+ "svelte-check": "^4.3.6",
34 "tailwind-variants": "^3.2.2",34 "tailwind-variants": "^3.2.2",
35 "tailwindcss": "^4.0.0",35 "tailwindcss": "^4.0.0",
36 "tw-animate-css": "^1.4.0",36 "tw-animate-css": "^1.4.0",
@@ -764,11 +764,10 @@
764 }764 }
765 },765 },
766 "node_modules/@internationalized/date": {766 "node_modules/@internationalized/date": {
767- "version": "3.10.1",767+ "version": "3.11.0",
768- "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.10.1.tgz",768+ "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.11.0.tgz",
769- "integrity": "sha512-oJrXtQiAXLvT9clCf1K4kxp3eKsQhIaZqxEyowkBcsvZDdZkbWrVmnGknxs5flTD0VGsxrxKgBCZty1EzoiMzA==",769+ "integrity": "sha512-BOx5huLAWhicM9/ZFs84CzP+V3gBW6vlpM02yzsdYC7TGlZJX1OJiEEHcSayF00Z+3jLlm4w79amvSt6RqKN3Q==",
770 "license": "Apache-2.0",770 "license": "Apache-2.0",
771- "peer": true,
772 "dependencies": {771 "dependencies": {
773 "@swc/helpers": "^0.5.0"772 "@swc/helpers": "^0.5.0"
774 }773 }
@@ -1502,7 +1501,6 @@
1502 "integrity": "sha512-ou/d51QSdTyN26D7h6dSpusAKaZkAiGM55/AKYi+9AGZw7q85hElbjK3kEyzXHhLSnRISHOYzVge6x0jRZ7DXA==",1501 "integrity": "sha512-ou/d51QSdTyN26D7h6dSpusAKaZkAiGM55/AKYi+9AGZw7q85hElbjK3kEyzXHhLSnRISHOYzVge6x0jRZ7DXA==",
1503 "dev": true,1502 "dev": true,
1504 "license": "MIT",1503 "license": "MIT",
1505- "peer": true,
1506 "dependencies": {1504 "dependencies": {
1507 "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0",1505 "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0",
1508 "deepmerge": "^4.3.1",1506 "deepmerge": "^4.3.1",
@@ -1909,12 +1907,11 @@
1909 "license": "MIT"1907 "license": "MIT"
1910 },1908 },
1911 "node_modules/@types/node": {1909 "node_modules/@types/node": {
1912- "version": "25.1.0",1910+ "version": "25.2.0",
1913- "resolved": "https://registry.npmjs.org/@types/node/-/node-25.1.0.tgz",1911+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.0.tgz",
1914- "integrity": "sha512-t7frlewr6+cbx+9Ohpl0NOTKXZNV9xHRmNOvql47BFJKcEG1CxtxlPEEe+gR9uhVWM4DwhnvTF110mIL4yP9RA==",1912+ "integrity": "sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==",
1915 "dev": true,1913 "dev": true,
1916 "license": "MIT",1914 "license": "MIT",
1917- "peer": true,
1918 "dependencies": {1915 "dependencies": {
1919 "undici-types": "~7.16.0"1916 "undici-types": "~7.16.0"
1920 }1917 }
@@ -1964,7 +1961,6 @@
1964 "integrity": "sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==",1961 "integrity": "sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==",
1965 "dev": true,1962 "dev": true,
1966 "license": "MIT",1963 "license": "MIT",
1967- "peer": true,
1968 "dependencies": {1964 "dependencies": {
1969 "@typescript-eslint/scope-manager": "8.54.0",1965 "@typescript-eslint/scope-manager": "8.54.0",
1970 "@typescript-eslint/types": "8.54.0",1966 "@typescript-eslint/types": "8.54.0",
@@ -2168,7 +2164,6 @@
2168 "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",2164 "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
2169 "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",2165 "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
2170 "license": "MIT",2166 "license": "MIT",
2171- "peer": true,
2172 "bin": {2167 "bin": {
2173 "acorn": "bin/acorn"2168 "acorn": "bin/acorn"
2174 },2169 },
@@ -2236,9 +2231,9 @@
2236 }2231 }
2237 },2232 },
2238 "node_modules/autoprefixer": {2233 "node_modules/autoprefixer": {
2239- "version": "10.4.23",2234+ "version": "10.4.24",
2240- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz",2235+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz",
2241- "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==",2236+ "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==",
2242 "dev": true,2237 "dev": true,
2243 "funding": [2238 "funding": [
2244 {2239 {
@@ -2257,7 +2252,7 @@
2257 "license": "MIT",2252 "license": "MIT",
2258 "dependencies": {2253 "dependencies": {
2259 "browserslist": "^4.28.1",2254 "browserslist": "^4.28.1",
2260- "caniuse-lite": "^1.0.30001760",2255+ "caniuse-lite": "^1.0.30001766",
2261 "fraction.js": "^5.3.4",2256 "fraction.js": "^5.3.4",
2262 "picocolors": "^1.1.1",2257 "picocolors": "^1.1.1",
2263 "postcss-value-parser": "^4.2.0"2258 "postcss-value-parser": "^4.2.0"
@@ -2299,9 +2294,9 @@
2299 }2294 }
2300 },2295 },
2301 "node_modules/bits-ui": {2296 "node_modules/bits-ui": {
2302- "version": "2.15.4",2297+ "version": "2.15.5",
2303- "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-2.15.4.tgz",2298+ "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-2.15.5.tgz",
2304- "integrity": "sha512-7H9YUfp03KOk1LVDh8wPYSRPxlZgG/GRWLNSA8QC73/8Z8ytun+DWJhIuibyFyz7A0cP/RANVcB4iDrbY8q+Og==",2299+ "integrity": "sha512-WhS+P+E//ClLfKU6KqjKC17nGDRLnz+vkwoP6ClFUPd5m1fFVDxTElPX8QVsduLj5V1KFDxlnv6sW2G5Lqk+vw==",
2305 "license": "MIT",2300 "license": "MIT",
2306 "dependencies": {2301 "dependencies": {
2307 "@floating-ui/core": "^1.7.1",2302 "@floating-ui/core": "^1.7.1",
@@ -2352,7 +2347,6 @@
2352 }2347 }
2353 ],2348 ],
2354 "license": "MIT",2349 "license": "MIT",
2355- "peer": true,
2356 "dependencies": {2350 "dependencies": {
2357 "baseline-browser-mapping": "^2.9.0",2351 "baseline-browser-mapping": "^2.9.0",
2358 "caniuse-lite": "^1.0.30001759",2352 "caniuse-lite": "^1.0.30001759",
@@ -2654,7 +2648,6 @@
2654 "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==",2648 "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==",
2655 "dev": true,2649 "dev": true,
2656 "license": "MIT",2650 "license": "MIT",
2657- "peer": true,
2658 "dependencies": {2651 "dependencies": {
2659 "@eslint-community/eslint-utils": "^4.8.0",2652 "@eslint-community/eslint-utils": "^4.8.0",
2660 "@eslint-community/regexpp": "^4.12.1",2653 "@eslint-community/regexpp": "^4.12.1",
@@ -3054,9 +3047,9 @@
3054 }3047 }
3055 },3048 },
3056 "node_modules/globals": {3049 "node_modules/globals": {
3057- "version": "17.2.0",3050+ "version": "17.3.0",
3058- "resolved": "https://registry.npmjs.org/globals/-/globals-17.2.0.tgz",3051+ "resolved": "https://registry.npmjs.org/globals/-/globals-17.3.0.tgz",
3059- "integrity": "sha512-tovnCz/fEq+Ripoq+p/gN1u7l6A7wwkoBT9pRCzTHzsD/LvADIzXZdjmRymh5Ztf0DYC3Rwg5cZRYjxzBmzbWg==",3052+ "integrity": "sha512-yMqGUQVVCkD4tqjOJf3TnrvaaHDMYp4VlUSObbkIiuCPe/ofdMBFIAcBbCSRFWOnos6qRiTVStDwqPLUclaxIw==",
3060 "dev": true,3053 "dev": true,
3061 "license": "MIT",3054 "license": "MIT",
3062 "engines": {3055 "engines": {
@@ -3828,7 +3821,6 @@
3828 }3821 }
3829 ],3822 ],
3830 "license": "MIT",3823 "license": "MIT",
3831- "peer": true,
3832 "dependencies": {3824 "dependencies": {
3833 "nanoid": "^3.3.11",3825 "nanoid": "^3.3.11",
3834 "picocolors": "^1.1.1",3826 "picocolors": "^1.1.1",
@@ -4161,11 +4153,10 @@
4161 }4153 }
4162 },4154 },
4163 "node_modules/svelte": {4155 "node_modules/svelte": {
4164- "version": "5.48.5",4156+ "version": "5.49.2",
4165- "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.48.5.tgz",4157+ "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.49.2.tgz",
4166- "integrity": "sha512-NB3o70OxfmnE5UPyLr8uH3IV02Q43qJVAuWigYmsSOYsS0s/rHxP0TF81blG0onF/xkhNvZw4G8NfzIX+By5ZQ==",4158+ "integrity": "sha512-PYLwnngYzyhKzqDlGVlCH4z+NVI8mC0/bTv15vw25CcdOhxENsOHIbQ36oj5DIf3oBazM+STbCAvaskpxtBmWA==",
4167 "license": "MIT",4159 "license": "MIT",
4168- "peer": true,
4169 "dependencies": {4160 "dependencies": {
4170 "@jridgewell/remapping": "^2.3.4",4161 "@jridgewell/remapping": "^2.3.4",
4171 "@jridgewell/sourcemap-codec": "^1.5.0",4162 "@jridgewell/sourcemap-codec": "^1.5.0",
@@ -4177,7 +4168,7 @@
4177 "clsx": "^2.1.1",4168 "clsx": "^2.1.1",
4178 "devalue": "^5.6.2",4169 "devalue": "^5.6.2",
4179 "esm-env": "^1.2.1",4170 "esm-env": "^1.2.1",
4180- "esrap": "^2.2.1",4171+ "esrap": "^2.2.2",
4181 "is-reference": "^3.0.3",4172 "is-reference": "^3.0.3",
4182 "locate-character": "^3.0.0",4173 "locate-character": "^3.0.0",
4183 "magic-string": "^0.30.11",4174 "magic-string": "^0.30.11",
@@ -4215,9 +4206,9 @@
4215 }4206 }
4216 },4207 },
4217 "node_modules/svelte-check": {4208 "node_modules/svelte-check": {
4218- "version": "4.3.5",4209+ "version": "4.3.6",
4219- "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.3.5.tgz",4210+ "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.3.6.tgz",
4220- "integrity": "sha512-e4VWZETyXaKGhpkxOXP+B/d0Fp/zKViZoJmneZWe/05Y2aqSKj3YN2nLfYPJBQ87WEiY4BQCQ9hWGu9mPT1a1Q==",4211+ "integrity": "sha512-uBkz96ElE3G4pt9E1Tw0xvBfIUQkeH794kDQZdAUk795UVMr+NJZpuFSS62vcmO/DuSalK83LyOwhgWq8YGU1Q==",
4221 "dev": true,4212 "dev": true,
4222 "license": "MIT",4213 "license": "MIT",
4223 "dependencies": {4214 "dependencies": {
@@ -4312,7 +4303,6 @@
4312 "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.4.0.tgz",4303 "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.4.0.tgz",
4313 "integrity": "sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==",4304 "integrity": "sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==",
4314 "license": "MIT",4305 "license": "MIT",
4315- "peer": true,
4316 "funding": {4306 "funding": {
4317 "type": "github",4307 "type": "github",
4318 "url": "https://github.com/sponsors/dcastil"4308 "url": "https://github.com/sponsors/dcastil"
@@ -4343,8 +4333,7 @@
4343 "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz",4333 "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz",
4344 "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==",4334 "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==",
4345 "dev": true,4335 "dev": true,
4346- "license": "MIT",4336+ "license": "MIT"
4347- "peer": true
4348 },4337 },
4349 "node_modules/tapable": {4338 "node_modules/tapable": {
4350 "version": "2.3.0",4339 "version": "2.3.0",
@@ -4425,7 +4414,6 @@
4425 "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",4414 "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
4426 "dev": true,4415 "dev": true,
4427 "license": "Apache-2.0",4416 "license": "Apache-2.0",
4428- "peer": true,
4429 "bin": {4417 "bin": {
4430 "tsc": "bin/tsc",4418 "tsc": "bin/tsc",
4431 "tsserver": "bin/tsserver"4419 "tsserver": "bin/tsserver"
@@ -4519,7 +4507,6 @@
4519 "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==",4507 "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==",
4520 "dev": true,4508 "dev": true,
4521 "license": "MIT",4509 "license": "MIT",
4522- "peer": true,
4523 "dependencies": {4510 "dependencies": {
4524 "esbuild": "^0.27.0",4511 "esbuild": "^0.27.0",
4525 "fdir": "^6.5.0",4512 "fdir": "^6.5.0",
M webui/package.json +7 -7
@@ -17,22 +17,22 @@
1717 "fmt": "prettier --write ."
1818 },
1919 "devDependencies": {
20- "@internationalized/date": "^3.10.1",
20+ "@internationalized/date": "^3.11.0",
2121 "@lucide/svelte": "^0.563.1",
2222 "@sveltejs/vite-plugin-svelte": "^6.2.4",
2323 "@tailwindcss/cli": "^4.0.0",
2424 "@tailwindcss/postcss": "^4.1.13",
25- "@types/node": "^25.1.0",
25+ "@types/node": "^25.2.0",
2626 "@typescript-eslint/eslint-plugin": "^8.54.0",
2727 "@typescript-eslint/parser": "^8.54.0",
28- "autoprefixer": "^10.4.20",
28+ "autoprefixer": "^10.4.24",
2929 "eslint": "^9.39.2",
3030 "eslint-plugin-svelte": "^3.14.0",
31- "globals": "^17.2.0",
31+ "globals": "^17.3.0",
3232 "postcss": "^8.4.47",
33- "svelte": "^5.48.5",
33+ "svelte": "^5.49.2",
3434 "svelte-awesome-color-picker": "^4.1.0",
35- "svelte-check": "^4.0.0",
35+ "svelte-check": "^4.3.6",
3636 "tailwind-variants": "^3.2.2",
3737 "tailwindcss": "^4.0.0",
3838 "tw-animate-css": "^1.4.0",
@@ -41,7 +41,7 @@
4141 "vite": "^7.3.1"
4242 },
4343 "dependencies": {
44- "bits-ui": "^2.14.4",
44+ "bits-ui": "^2.15.5",
4545 "clsx": "^2.1.1",
4646 "frappe-charts": "^1.6.2",
4747 "mode-watcher": "^1.1.0",
@@ -17,22 +17,22 @@
17 "fmt": "prettier --write ."17 "fmt": "prettier --write ."
18 },18 },
19 "devDependencies": {19 "devDependencies": {
20- "@internationalized/date": "^3.10.1",20+ "@internationalized/date": "^3.11.0",
21 "@lucide/svelte": "^0.563.1",21 "@lucide/svelte": "^0.563.1",
22 "@sveltejs/vite-plugin-svelte": "^6.2.4",22 "@sveltejs/vite-plugin-svelte": "^6.2.4",
23 "@tailwindcss/cli": "^4.0.0",23 "@tailwindcss/cli": "^4.0.0",
24 "@tailwindcss/postcss": "^4.1.13",24 "@tailwindcss/postcss": "^4.1.13",
25- "@types/node": "^25.1.0",25+ "@types/node": "^25.2.0",
26 "@typescript-eslint/eslint-plugin": "^8.54.0",26 "@typescript-eslint/eslint-plugin": "^8.54.0",
27 "@typescript-eslint/parser": "^8.54.0",27 "@typescript-eslint/parser": "^8.54.0",
28- "autoprefixer": "^10.4.20",28+ "autoprefixer": "^10.4.24",
29 "eslint": "^9.39.2",29 "eslint": "^9.39.2",
30 "eslint-plugin-svelte": "^3.14.0",30 "eslint-plugin-svelte": "^3.14.0",
31- "globals": "^17.2.0",31+ "globals": "^17.3.0",
32 "postcss": "^8.4.47",32 "postcss": "^8.4.47",
33- "svelte": "^5.48.5",33+ "svelte": "^5.49.2",
34 "svelte-awesome-color-picker": "^4.1.0",34 "svelte-awesome-color-picker": "^4.1.0",
35- "svelte-check": "^4.0.0",35+ "svelte-check": "^4.3.6",
36 "tailwind-variants": "^3.2.2",36 "tailwind-variants": "^3.2.2",
37 "tailwindcss": "^4.0.0",37 "tailwindcss": "^4.0.0",
38 "tw-animate-css": "^1.4.0",38 "tw-animate-css": "^1.4.0",
@@ -41,7 +41,7 @@
41 "vite": "^7.3.1"41 "vite": "^7.3.1"
42 },42 },
43 "dependencies": {43 "dependencies": {
44- "bits-ui": "^2.14.4",44+ "bits-ui": "^2.15.5",
45 "clsx": "^2.1.1",45 "clsx": "^2.1.1",
46 "frappe-charts": "^1.6.2",46 "frappe-charts": "^1.6.2",
47 "mode-watcher": "^1.1.0",47 "mode-watcher": "^1.1.0",

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close