{"_id":"@hyperpuncher/pi-ui","_rev":"29-9672b7e1934cfb5021323ab2c165833f","name":"@hyperpuncher/pi-ui","dist-tags":{"latest":"0.54.1"},"versions":{"0.38.2":{"name":"@hyperpuncher/pi-ui","version":"0.38.2","license":"MIT","_id":"@hyperpuncher/pi-ui@0.38.2","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"0a85e830efae4283dc83d479ad3090839dac2af6","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.38.2.tgz","fileCount":448,"integrity":"sha512-fu7irtkFiplsp+WTn9Tsv5M/wsROMfAp1Xa7CpzJKSJbNaWaNDN9/htUEWDZk7rpuIDELWjdDTzfLOiomO8K6Q==","signatures":[{"sig":"MEUCIQDJl7jlcCZCmGjwxoT9Cj67gKbfXgMtiFwxnVSEOtUYkAIgcDtsGKTmqV+v7bG1B0P+hWlQHw9c6qfgVRmNi4F3CNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13216615},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"2d5d40976ec89ab91f7f164c80a7faf23a78d5ae","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"12.0.2","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"26.8.1","dependencies":{"typebox":"^1.3.19","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@iconify-json/lucide":"^1.2.126","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.38.2_1787921460623_0.2837166575520882","host":"s3://npm-registry-packages-npm-production"}},"0.39.0":{"name":"@hyperpuncher/pi-ui","version":"0.39.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.39.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"20ae8adcc51b6fef9b74c6c75f197dabe38edb1b","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.39.0.tgz","fileCount":447,"integrity":"sha512-mJ+M7xUCvrJD1aqPogR2L9lBc9soxnuyDTFVE281AXxWlPUvwsOSlvhoj3vhUVwNOgZAYedBYiColkaK97A8nw==","signatures":[{"sig":"MEUCIQCDMdqUY+fXmS3C+jVUyAX1VnZOsyOk4q7eeO29cVbsjQIgJLNk6qobllKEcwkGiHTcHtKB3pgsYvVJlUc+YaXp0yE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.39.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13153157},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"1b7e6794af03a14c5b71cdce7c504b1ff49992c3","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.3.20","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.2"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.39.0_1787988096100_0.9795165543687214","host":"s3://npm-registry-packages-npm-production"}},"0.39.1":{"name":"@hyperpuncher/pi-ui","version":"0.39.1","license":"MIT","_id":"@hyperpuncher/pi-ui@0.39.1","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"05f4379f35ddc8d5fe05daec41e2a6168532721a","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.39.1.tgz","fileCount":447,"integrity":"sha512-XCpVYYG72CxeJDvVx59ChN5zrb97+hH0ji3xiWGI9Ua4CH6JVotCx9jZ9keU5grNWYu6l3wvlIWMYB8slEabBg==","signatures":[{"sig":"MEYCIQC6CldRkVhVSCsFQEqmjpTOMjXhBxDB97sQ7hVvoI05ZgIhAMPl1zV74E00gJi/l/YWpznc0epwRijsOs9kfuBNCni5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.39.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30880909},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"0f7180fca2f59a62c837137866f181b67cdb09b1","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","typebox":"^1.3.20","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","@kitajs/html":"5.0.0-next.1","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.2","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.39.1_1787994597484_0.6072262958329615","host":"s3://npm-registry-packages-npm-production"}},"0.39.2":{"name":"@hyperpuncher/pi-ui","version":"0.39.2","license":"MIT","_id":"@hyperpuncher/pi-ui@0.39.2","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"51e8b12f85eda05f728c2175e9ec8392bc04b9ac","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.39.2.tgz","fileCount":447,"integrity":"sha512-5FXO8VcJmwO4vJf15RAkc7xdgKVzJNqDq768S6uGbN1jeevG6I5HmP2ja4ldnVh8sobWarKqNK8J/UsOmgCLeQ==","signatures":[{"sig":"MEYCIQCDBuhGAQTU0G9ekCI9iQ+Zirv3x+Wi2rd09TZwRThXUAIhAOMoQ6DfLeZK2He/wnCZFqKdCsyzNzRE1sKIV7c8AD5B","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.39.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30880781},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"bbc51c1d3f7143ea1ff2ce90e1e872ff20a88e8c","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","typebox":"^1.3.20","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","@kitajs/html":"5.0.0-next.1","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.2","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.39.2_1788062204681_0.4874484545916209","host":"s3://npm-registry-packages-npm-production"}},"0.39.3":{"name":"@hyperpuncher/pi-ui","version":"0.39.3","license":"MIT","_id":"@hyperpuncher/pi-ui@0.39.3","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"23d8b774705e7f3477ea337dc9b9296c1f2c2307","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.39.3.tgz","fileCount":447,"integrity":"sha512-q/vr5AAU77IVH2QKXHstHMhEC2Kqg3WEh12eNzeoehmN3aALxIwTJ2D0pnxquLGLkdZf84cwCA06fNNwSE3HXg==","signatures":[{"sig":"MEUCIQCXMGe4KYQp5mqCOWaPut9nVbbaGNfWyuP0dXhuCb6AsAIgB4mkW+byJalFJ5mVifjN2HLjuq1jDOb0EGDpnHRkyT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.39.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30882099},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"5b8f65bf45e31c69ab9e47bd8a428d22e654289b","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","typebox":"^1.3.20","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","@kitajs/html":"5.0.0-next.1","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.2","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.39.3_1788080219356_0.49655459946251934","host":"s3://npm-registry-packages-npm-production"}},"0.39.4":{"name":"@hyperpuncher/pi-ui","version":"0.39.4","license":"MIT","_id":"@hyperpuncher/pi-ui@0.39.4","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"547b079911ec5e896b5739499afd47a3baa4d4db","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.39.4.tgz","fileCount":449,"integrity":"sha512-DiI4LN8X742IFNmfjjj8BMLEY3QFFin0XzDIinDivw6hJIspOSQXEdz70zZuHrytKtDK+lUz5qgP4KZrWBIr8g==","signatures":[{"sig":"MEQCIEBkJg5JHUqlNIl1JBl+4cZ7rLJ3nmf7E0OUFjVMCd+jAiA2IjDusIIXJc3WXYoYjxCsgRsejB60W1jyytquupbNQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.39.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30887520},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"f8c1a59c0c3eb133d8b062ae32f23487bd7c9a6d","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"concurrently -r \"bun run css:watch\" \"bun run client:watch\" \"bun --watch src/server-main.ts\"","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","server":"bun run assets:build && bun --watch src/server-main.ts","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:fix":"bunx oxlint --fix","css:build":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --minify","css:watch":"bun scripts/generate-basecoat-css.ts && bunx tailwindcss -i src/ui/styles.css -o static/app.css --watch --silent","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun run client:build && bun run css:build","client:build":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"production\" --ignore-dce-annotations --minify","client:watch":"bun -e 'await (await import(\"node:fs/promises\")).rm(\"static/build\", { recursive: true, force: true })' && bun build src/client/pierre-worker.ts --outfile static/build/pierre-worker.js --target browser --format esm --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline && bun build static/app/main.js --outdir static/build --target browser --format esm --splitting --entry-naming '[name].js' --chunk-naming 'chunks/[name]-[hash].js' --asset-naming 'assets/[name]-[hash].[ext]' --define process.env.NODE_ENV=\"development\" --ignore-dce-annotations --sourcemap=inline --watch --no-clear-screen","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","typebox":"^1.3.20","@types/bun":"^1.4.0","typescript":"^7.0.2","tailwindcss":"^4.3.3","@kitajs/html":"5.0.0-next.1","basecoat-css":"^1.0.2","concurrently":"^10.0.5","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"^1.80.0","@tailwindcss/cli":"^4.3.3","oxlint-tailwindcss":"^1.10.2","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.39.4_1788197345824_0.6690889647091653","host":"s3://npm-registry-packages-npm-production"}},"0.40.0":{"name":"@hyperpuncher/pi-ui","version":"0.40.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.40.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"c445857af461ec4d5b4fcb35ff7cdd19667cb6f1","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.40.0.tgz","fileCount":448,"integrity":"sha512-r/T2hUgaSmafz1vURI7uBzbeEEJLa9dekYnMHQE7W/Mo6H3nRkYxyQ5/pBNLgsC8jxZx+gHtnqsXoClQuNyBSA==","signatures":[{"sig":"MEUCIAHKyrN/JKmgkBtlIOtVJUm9TDM0wcC2IR+KnCKsN94gAiEAgr45BHySHFqTHpgC6JZDAXFizSybbSZBH+/av79Eibg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.40.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30756214},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"5cc1e76f1418cc33fc396f6f71c37aff254f0e9e","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.65.0","oxlint":"^1.80.0","typebox":"^1.3.20","stylelint":"^17.14.1","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"^1.80.0","@iconify-json/lucide":"^1.2.127","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.40.0_1788435747437_0.9858931557788932","host":"s3://npm-registry-packages-npm-production"}},"0.40.1":{"name":"@hyperpuncher/pi-ui","version":"0.40.1","license":"MIT","_id":"@hyperpuncher/pi-ui@0.40.1","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"8fb6a5324141fe655847d42c173cf59b8495a59d","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.40.1.tgz","fileCount":448,"integrity":"sha512-AUavTMtm3yRbnQElivDFy0GHRFQOJoQjW6MVn7PZcA7UQKELAaXNPi54P0Ps2w53wZ72011wxY9gbnkRgWlyxw==","signatures":[{"sig":"MEQCIBb9X3IhE/rrl+1I/rDnz4UGIrSs/OiWB9/fu4ZWuKAAAiAKAZLcUHDkAAWTfrJBqw2FYMp31DSUei39qHOn+KoERQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.40.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30745297},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"f91a52a975e6cf0c57343d3acb4b70b46595a581","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.25","stylelint":"^17.14.1","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.3.6","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.84.4"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.40.1_1788543053117_0.036695484690518976","host":"s3://npm-registry-packages-npm-production"}},"0.41.0":{"name":"@hyperpuncher/pi-ui","version":"0.41.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.41.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"dda2833db030caa02faa730e9ab07ca62c88f02a","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.41.0.tgz","fileCount":449,"integrity":"sha512-KtlJ5qa2xUC4GbClzByAV0ZZ2oBDxaGgC/mLDtFVusmYs24UtoodTARkAYXYu0Yhx1QG+z72bb7AREV4sN4fjQ==","signatures":[{"sig":"MEQCIDM269EQ6m0P9KbDRL5O52KRFOfxwEofxrYkJqTrilERAiBnYDqJiiRyfr3RDRLAz1jN/C2WH1uiPcNAOtYMN5VjRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.41.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31153678},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"a9e2dd1b05b27f3f5ff1c44ad3099997da8c74d6","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.41.0_1788628041206_0.6867332517461735","host":"s3://npm-registry-packages-npm-production"}},"0.42.0":{"name":"@hyperpuncher/pi-ui","version":"0.42.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.42.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"f61ca6faf69b07c3a8871403e7c5f20f31c7d30e","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.42.0.tgz","fileCount":449,"integrity":"sha512-H6sZU4SvYbOUzbyniBJ0DLH2cHAFmY0+QZlS6CjsmCqiI/kk3oK8lp+HWU0JpG7AesZQp6OXng8I+eZK+nQrQQ==","signatures":[{"sig":"MEUCIBc13ru7MKk4ZLSYdAJUIHu27iw5M/2htEll6MJFyiUiAiEAp2jhsG7JmhKcpTQEyJP/cCTi0aDNus1AmLoXioPJ9W0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.42.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31157711},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"05e8b8d6f0bf76cfeaa22db02c6533fa55053b6e","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.42.0_1788670630777_0.010774627743068255","host":"s3://npm-registry-packages-npm-production"}},"0.42.1":{"name":"@hyperpuncher/pi-ui","version":"0.42.1","license":"MIT","_id":"@hyperpuncher/pi-ui@0.42.1","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"9847c25ffbbb75cf4987887d2e1fb65f3d8817c1","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.42.1.tgz","fileCount":449,"integrity":"sha512-FPP4JkZkpqLtTwo/tWpC9jSiVoWRzM2fgx3OOAXTJ0Hfxbyl+QI9tbVcFPsBlT9BmjetwR1PD4hquW7Jo+uwcg==","signatures":[{"sig":"MEYCIQDzMuwFz/TuyqNvyx9f5Dd79DWcCZEDZPNMqYI0hYzawgIhALAHvcn81B8C1+MPYCPuUIAIqtHt+EWVpC8Ybq1PQt6T","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.42.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31157552},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"051cd343539a9dce8b379d0e99a7d3067307c3c8","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.42.1_1788683362422_0.4700222693446854","host":"s3://npm-registry-packages-npm-production"}},"0.42.2":{"name":"@hyperpuncher/pi-ui","version":"0.42.2","license":"MIT","_id":"@hyperpuncher/pi-ui@0.42.2","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"ed939d18d7c0fda43eb3b81c9b23732c696586b2","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.42.2.tgz","fileCount":449,"integrity":"sha512-Mecsd7SLZF/L8bGSY0PTL6Dk2yQLGjZwnMtSJf2mab46OguoXWfhl5o1pbRw1IbMq7ju/4apscceNaEEiAKQXQ==","signatures":[{"sig":"MEQCIE75XVCfplquvSGBw0jiSAH7gD5gm4JOK5GKc1Ldm847AiB+oLFvxIESMMsnEGxzqImpdUlSENZyXFyQ+T268W2Eqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.42.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31161326},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"b269284a5e38ce149513043b873902f3c12a866b","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/files":"./src/testing/files.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.42.2_1788756779303_0.5115567427326688","host":"s3://npm-registry-packages-npm-production"}},"0.43.0":{"name":"@hyperpuncher/pi-ui","version":"0.43.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.43.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"66ee1d32f7f9f14f07b0d57fabdc0bb7233a317a","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.43.0.tgz","fileCount":448,"integrity":"sha512-LBmBRZTOm5hyAecc3NmapxUHM8JkYnn76agsdPE/gjJ2hJQmThLUPhgYmF5+Qy9pVFWH9TvxMzrRckICBGp8ig==","signatures":[{"sig":"MEUCIDFYB60q+1FYVAZpiQ/4ncVmJdEoyuRtOBf28Ch5JHZwAiEAviEncAJyB5IQ09EKLpbhKem/PTosLeAdsjEy9UhGT1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.43.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31164436},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"ab11cc52e29c1f6a751fc0345125d050445c6f85","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.66.0","oxlint":"1.81.0","typebox":"^1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.81.0","@iconify-json/lucide":"^1.2.129","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.43.0_1788858267594_0.65168205637954","host":"s3://npm-registry-packages-npm-production"}},"0.43.1":{"name":"@hyperpuncher/pi-ui","version":"0.43.1","license":"MIT","_id":"@hyperpuncher/pi-ui@0.43.1","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"825cd5e861d5e0a8384d769df2ca2b3e8fb109a0","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.43.1.tgz","fileCount":448,"integrity":"sha512-V3YEUj1zSGgn62tLskFS6sUCsMoLVsJpepzZWv+8r4H8AF2VoDJiPVG1GLNjpPIwx3ok47rqHLWLU594FrU3Qg==","signatures":[{"sig":"MEYCIQC1aVqrb3kN3ooMjXtERv1VMvPmMN5z6v133aTVyromSAIhAILnG1AEYUH6fICMy7Y434h2RYsnCm/1/k6cq/jIrKwC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.43.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31174126},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"6740a1fdb926bd2b3f994c74e7a3bcec017f4881","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.28","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.130","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.43.1_1788948286388_0.029477203963612197","host":"s3://npm-registry-packages-npm-production"}},"0.43.2":{"name":"@hyperpuncher/pi-ui","version":"0.43.2","license":"MIT","_id":"@hyperpuncher/pi-ui@0.43.2","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"3448d39d8a1e7889b675355046da58af5e92c134","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.43.2.tgz","fileCount":448,"integrity":"sha512-sAgdG9cOtIUmkriyeunUZ2wsbxoQegxakdBZs4pX9JV0eOMxDFsHoZzEZX/nLCuEhQ/s0hUpB4FQKPNFTCx9TA==","signatures":[{"sig":"MEUCIQCJWXaOS30WQmzTDeq+7/wpx0aR89VoXXdWrt1RJSJTCQIgRtagcwW+JviOOpVt0Fftg4glNNMmED5pBiLkreuLeDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.43.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31174224},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"16bcf8cc9ee4291662e0441647d207741617fe4f","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.28","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.130","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.43.2_1788950784165_0.12043473101392865","host":"s3://npm-registry-packages-npm-production"}},"0.43.3":{"name":"@hyperpuncher/pi-ui","version":"0.43.3","license":"MIT","_id":"@hyperpuncher/pi-ui@0.43.3","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"757ea556d15159a4a68d19a6ee673d84dc5fe1f9","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.43.3.tgz","fileCount":448,"integrity":"sha512-8L/LMosQ6VujvWYeU9yyn65MIKouKWsZXZKALlnLLf7zQDGcrZtHFfN7tjpOCayBE4ZkXnK9LwtacLRkr8NNIA==","signatures":[{"sig":"MEUCIQDbcKkygd3S2roew8gSOEBVZ+vO/fMivrPcoalIqUtTEQIgauH03350Czj3/rd++lFZWC6coM6jKuDC30e1xuN4Esc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.43.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31174334},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"537c0506411566327c751937f3cd4ad76be9049b","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.28","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.130","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.43.3_1788952879563_0.8044422662126118","host":"s3://npm-registry-packages-npm-production"}},"0.44.0":{"name":"@hyperpuncher/pi-ui","version":"0.44.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.44.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"fc3becca36179666316d77f5c20d68b6b5201324","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.44.0.tgz","fileCount":449,"integrity":"sha512-lVCikHQWhT/LiOaT4FcjWxRf/GZ1Rfk5lpQsfq0te3qjejxXUwLFzn0R0EEbJetjAQLzy19aKNZyr8SJRoB7Ww==","signatures":[{"sig":"MEUCIEQt/XMCawVCvUGL+1WEEBFM5afSU4h4BnCl5HxO3eqiAiEA+pI5MDO0b9A3YYECSfLp/PSMqsOVoKcZxb5FeQMDzeA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDWlvXkrsKG1of+1sxtj2ekTOfpJs0vPW0FitT6E4rltAiEA4w92OyhTqXNONb/QtLQQS6kYUzCbvptr99TjhFMyQ3E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.44.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31179424},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"12d4fe5371a572d98e8f31b442a170c75e8091d8","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.28","stylelint":"^17.15.0","@types/bun":"^1.4.0","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.130","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.44.0_1789121556295_0.0013655743534830567","host":"s3://npm-registry-packages-npm-production"}},"0.45.0":{"name":"@hyperpuncher/pi-ui","version":"0.45.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.45.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"62cc2ec490c419079d1d94f84833cd64c9b8d6b0","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.45.0.tgz","fileCount":449,"integrity":"sha512-Mp6BI4MIh9jp8e+5U3KhpjN9SzokzoICDcdt6DZvfrO6BDWhzSGxhPQ5dt2wcEAxwftZ1WXoVyBmHpkWU4zy0A==","signatures":[{"sig":"MEQCIAX8rlQFBN0exYbLfxs2+j1xS6cxY6xjFd6lRHwN0Y+6AiAhWrmdOKchGCDX4vtjeMvKSEZEpjyzoQOdI0pSd1hq1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIF9ZyxIsSUQFyzzzL/k5pJ3d2MuC/zvWCQ8x2kdVP4WCAiAPjhGy5XlC3AKnZ0NLtwohKFIFjh5XI1hdyfrzhLvqWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.45.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31183786},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"a6c578e434ae845b6beea81413eae897206ec6a0","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.30","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.2","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.131","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.45.0_1789195103525_0.5751316444747581","host":"s3://npm-registry-packages-npm-production"}},"0.46.0":{"name":"@hyperpuncher/pi-ui","version":"0.46.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.46.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"7db80837b6e235317f51aead54dcd00a45d55c29","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.46.0.tgz","fileCount":449,"integrity":"sha512-lMd8beIeNGiiTyNH4N0Ekdh3Kbz6wdwUYQStxyOFkLPbWBqL1pJFpHZjw2BgoywgxluL2rdx/d/PVlt27RtMUQ==","signatures":[{"sig":"MEYCIQCfHs4qp01GewahalBBsmQaIWYGEdLuy0xvsZZXwUBESwIhAOAlHp+bneIU5WB4LfuQgEqLleDWeW8XvuB4QZVNaRSv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDXi0Y32QL3OecgURXTbgacAf2wg2hHMYmokpnB5uWsagIhAMfiinuNC1K32YQKVtGGM1xKUpM8/RTQSze1S/Zo1rOo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.46.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31184732},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"d91ebfe1f3344e33c96e29e31f5fcf60d57d52d4","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.30","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.2","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.131","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.46.0_1789409670465_0.5956818906738417","host":"s3://npm-registry-packages-npm-production"}},"0.47.0":{"name":"@hyperpuncher/pi-ui","version":"0.47.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.47.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"34f9e1b60dad8cc92a3a8f513212d2ed20cbfddf","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.47.0.tgz","fileCount":449,"integrity":"sha512-KBlhnti4a3+2xnaNBL8NA166eBzK64Fsw5GqLCoFG35PPda3yczw7bV5UVVnLEbqGmBpaGQEu5kaMoSLtAb4xg==","signatures":[{"sig":"MEUCIQDYlBE8r6kt6loayE6ledIxjMjBfDviuFTzph1kuq2cCgIgD6b/DqZ8gWCffYCjbhq8UsecXLpQfnvWDHd+nQs20yA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDkVbs87gbnqolxhsXaKPpSg0BO0IEUQG5MT5q8UJ5teQIhAMv/FkWUVv7ObqpQKWMdb6mVL0JCANusahICBG864FlP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.47.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31188548},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"5062a88d507078e2269136770320083cd0a188f3","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.30","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.2","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.131","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.47.0_1789461049165_0.48298307819257635","host":"s3://npm-registry-packages-npm-production"}},"0.47.1":{"name":"@hyperpuncher/pi-ui","version":"0.47.1","license":"MIT","_id":"@hyperpuncher/pi-ui@0.47.1","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"9da3c1b8c6c18ed2270aa0a293c691282f224107","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.47.1.tgz","fileCount":449,"integrity":"sha512-0JbzrjiR9/OpOavCq5gB7wGY2bCH1svEQeARLrl9L/FGA1ttg9ustCpaQ1vHIjIdIufp69cANS/5W7PlM5uabA==","signatures":[{"sig":"MEUCIEGaXEfoZCkJM9rSJBnWuCByvAqoD8JzBpVeiPpPc0R/AiEAtW5n7A+AkRy9Lol98EylsV+n8fObtUI3nHYDuL/1qvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDdg7ZAE28VnZyTpthOrdwOfvIsA5FAE4TFf5F6CAGgSQIhAJJNFmwInvN6UGczRFt+yKpVluYDXdA7H28M+CydV//+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.47.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31191387},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"069b5d583a5f20ffb2ab61f8bc22487cda16dc89","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.0","devDependencies":{"oxfmt":"^0.67.0","oxlint":"1.82.0","typebox":"^1.3.30","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.2","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.82.0","@iconify-json/lucide":"^1.2.131","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.47.1_1789467629540_0.8533081866551888","host":"s3://npm-registry-packages-npm-production"}},"0.48.0":{"name":"@hyperpuncher/pi-ui","version":"0.48.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.48.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"4e40c8ffc133ca7c3797bd515437235ff16b3fc6","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.48.0.tgz","fileCount":445,"integrity":"sha512-C41eVohmKmh8yyk9V/9/b4m8WuoBROj2Qi7GodpMJH86G0xdo8p5zSOTa4t2lTJI8pGIpiQ+AWc6ImesdETCjA==","signatures":[{"sig":"MEUCIFGQXlyYmDhG8Oa4sRTBqzmLgudp8oUQWh8Rewr/j4BaAiEAuI0G58DHWlDCJMpeyn7ARTiupd6ox0Jxhi6VwemdKk8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAIx8TjK861SZJMMKQnUSSF6H1h3RX2lr2bFdadJw05GAiEAhlSvGVRNzkUHiQIR5CrkKHDzEpYBFWcRQm5BD/V2+SY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.48.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31003663},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"eb028a8a4f55fddbd40c76a3331a33d597cb9fd2","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.68.0","oxlint":"1.83.0","typebox":"^1.3.31","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.2","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.83.0","@iconify-json/lucide":"^1.2.132","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.85.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.48.0_1789577240395_0.7697928986534619","host":"s3://npm-registry-packages-npm-production"}},"0.49.0":{"name":"@hyperpuncher/pi-ui","version":"0.49.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.49.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"0ef8789539faf575d24dcb9b596b8e3f147f3c54","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.49.0.tgz","fileCount":444,"integrity":"sha512-ExzvJip5Gw8R+JKP2LNJlTBDH5jsPyBgdhQo7DgPx+TtA31E5HzQd64Efio6Bt+s8HPFCQSQL3g/LJM8wanpvQ==","signatures":[{"sig":"MEUCIGH0bobJn2IIzV9tBvH/wzLhhnaLvNgcIDn/UrB0qEhuAiEAtuSBCsI5dLEeSinuO67DihaZQurN/f9pqbOqY6wuF5k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC5ZKc3gfjRV9ct4RpapRivJgzo6IKvMyMie2uEUQmEyAiEA3hfuaxdKHYxfs1SeNeXD6wAVlAygniJYXnq8YXrtE48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.49.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31258064},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"3e50ae23334b7aa5f9ebaa81c14aa50a54930a5e","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.68.0","oxlint":"1.83.0","typebox":"^1.3.34","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.3","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.83.0","@iconify-json/lucide":"^1.2.134","@earendil-works/pi-ai":"^0.86.0","@earendil-works/pi-tui":"^0.86.0","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.86.0"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.49.0_1789902945708_0.8421080399599461","host":"s3://npm-registry-packages-npm-production"}},"0.50.0":{"name":"@hyperpuncher/pi-ui","version":"0.50.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.50.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"98291e9a8bb1e7cb61a85e9390615460c4703cd5","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.50.0.tgz","fileCount":444,"integrity":"sha512-lbRTCBP3Ei4KIst1TLjbmytHromX6oVYYQt9+qab41UnsemDXywxGylseWrcZdlg9MBVPChs94xo+UujO+yHgg==","signatures":[{"sig":"MEYCIQCk3HHLVuRYCHJrD4c+EFPLNo0FSPeWH9wPnrwIlV723QIhAOarEkr4cHneeJk63hn+pL/TSP8GspWBON0AKgHrwhS+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCV6dwhlOoG3NWUmKIlKyrEBpqg14pzBqh+9ngqkNfUGwIhAN9YdSc/CpWpLOYZZqYRRd8tJL4sjXF+YWDX66hAnXNU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.50.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31263927},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"c7664a8d3a73af66c47cd1e8f026fe682b8b94cb","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.68.0","oxlint":"1.83.0","typebox":"^1.3.34","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.3","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.83.0","@iconify-json/lucide":"^1.2.135","@earendil-works/pi-ai":"^0.86.1","@earendil-works/pi-tui":"^0.86.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.86.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.50.0_1789983704475_0.7056452110827818","host":"s3://npm-registry-packages-npm-production"}},"0.51.0":{"name":"@hyperpuncher/pi-ui","version":"0.51.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.51.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"b8496c17593c6815efae75b16ea40dc2795cf667","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.51.0.tgz","fileCount":444,"integrity":"sha512-BZcFVB8MTA3l9aDd3t3KJGgBr5Jywvmd6NBtxQV4MbIQi8wkZL95Gn3/MNY3tteurTn2IBSQv1MROZXFkdPsYA==","signatures":[{"sig":"MEQCIAeLK4jWZU5wND7Uj0TtjQbk4ql2u+V1v5JZhLcS74dIAiARq8dqaoNYqFjXwjPwvDp+hUds179Xj833kKcY69NHrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHff77vZLVP/8TmHHxEaVQufeng6P8YJTxXe1KkFE3rvAiEArs12VxSQvl9G7AKwhyaQHXnsTJ31wJTaJ+GENq1knLQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.51.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31419605},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"bf1e4b3b96e7c3174178bec9cab2a05e0f0ca4be","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.70.0","oxlint":"1.85.0","typebox":"^1.3.34","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.4.3","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.85.0","@iconify-json/lucide":"^1.2.136","@earendil-works/pi-ai":"^0.87.1","@earendil-works/pi-tui":"^0.87.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.87.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.51.0_1790140109009_0.13053884452623188","host":"s3://npm-registry-packages-npm-production"}},"0.52.0":{"name":"@hyperpuncher/pi-ui","version":"0.52.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.52.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"cdc12befbb91a6f4cea6e8b96ef8b164cdec1e5b","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.52.0.tgz","fileCount":444,"integrity":"sha512-/UumzISWUg4gs+rI5qzCdjExvOI4khOZmBILZyX8/6vTUWtrFWR3fpT0XF1fWVSaFCfp0sA3MWK0BWXfn5AOlA==","signatures":[{"sig":"MEYCIQD1sb81W3gWYo1fzkX68UquLfUzNuTpeKwYj9xMQXqQOwIhAO4r+UNopM3pU9xSAKuttltl3kxeloTnPhbnrVuT0U6K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAMyP1YiU1Zo94lrCA5c14eMed7qeWSDvxwKdhh9eIfIAiByki8SaQRGFVfmeo6jygFUduUuRbvP4pwhCrINFi6f7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.52.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31450366},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"7f4961c9de9d70918285bdc65477b9132ddef786","imports":{"#testing/temp":"./src/testing/temp.ts","#testing/assertions":"./src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test --parallel=8","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.70.0","oxlint":"1.85.0","typebox":"^1.3.34","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.5.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.85.0","@iconify-json/lucide":"^1.2.136","@earendil-works/pi-ai":"^0.87.1","@earendil-works/pi-tui":"^0.87.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.87.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.52.0_1790501718129_0.6408647191367258","host":"s3://npm-registry-packages-npm-production"}},"0.53.0":{"name":"@hyperpuncher/pi-ui","version":"0.53.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.53.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"038b9baa8838bbf880444af45ddb864a06a037e7","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.53.0.tgz","fileCount":418,"integrity":"sha512-Y1wCMbuPcNGEk/lNOytnPw3D1lEyK7kVJ5mfhv0iF61ltSy592LUfVW3mCqw3+PV3p+kakHab/dn2KY9i0Dubg==","signatures":[{"sig":"MEQCIHTrvty0bTlIFY1cu8zIftodZ0e2jfoNzF5oabz28IJsAiBndq8n6n2cBL78xW0oB52LeSCq+FHn0ypdzmKCxvUoLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD3Y6Huqkk2IkCMguSLQWPpNbEyQMUSvW3CM5xFj8DfZAIhAPiY6HWh22/y00YT3ZcNi0hOeLa2F2RO9JZUHCP0298M","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.53.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27675586},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"bad3ac170f6b1dd7fb9aa59fce084991bbc9f710","imports":{"#src/*":"./src/*","#static/*":"./static/*","#testing/temp":"./tests/src/testing/temp.ts","#testing/assertions":"./tests/src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && ~/projects/dsfmt/target/release/dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test --parallel=8","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/check-typebox.ts && bun scripts/generate-icons.ts && bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.70.0","oxlint":"1.85.0","typebox":"1.3.27","stylelint":"^17.15.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.5.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.85.0","@iconify-json/lucide":"^1.2.136","@earendil-works/pi-ai":"^0.87.1","@earendil-works/pi-tui":"^0.87.1","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^0.87.1"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.53.0_1790686930210_0.18083368240951003","host":"s3://npm-registry-packages-npm-production"}},"0.54.0":{"name":"@hyperpuncher/pi-ui","version":"0.54.0","license":"MIT","_id":"@hyperpuncher/pi-ui@0.54.0","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"homepage":"https://pi-ui.app","bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"bin":{"pi-ui":"dist/npm/server-main.js"},"dist":{"shasum":"0147dec8feec66969ec3f921fe2be847bca440ed","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.54.0.tgz","fileCount":420,"integrity":"sha512-QBAGTB3njXv2mRk0wFA6iWXgQQRfExoxr3KR7ezu0DsnWWx+Mo2Ms4oHIcSfWJIPDAvPKh6fMCd1QVaGOqtePQ==","signatures":[{"sig":"MEQCIAt3fI21UuHpE0akp6o2RGa1J/Ee9UvO0KTwPLaACIoFAiA3NQLxG81wGFD0QKBTrBsP6sJV2TBNMia1na6XQC4Ffw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICpsfIMw17cVd3GKpHkR3eCcXO4xY6pgG6fr1FFpvfY0AiEAhXS7KIZtp9yqrtWgpmGHt9aW8MJ9GTmP+k3MGIzuKAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.54.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29212959},"type":"module","engines":{"bun":">=1.4.0"},"gitHead":"82c20ef552f7eaa4ebb23c2f269c4e40d9544bad","imports":{"#src/*":"./src/*","#static/*":"./static/*","#testing/temp":"./tests/src/testing/temp.ts","#testing/assertions":"./tests/src/testing/assertions.ts"},"scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test --parallel=8","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/check-typebox.ts && bun scripts/generate-icons.ts && bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.71.0","oxlint":"1.86.0","typebox":"1.3.27","stylelint":"^17.16.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.5.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.86.0","@iconify-json/lucide":"^1.2.138","@earendil-works/pi-ai":"^1.0.0","@earendil-works/pi-tui":"^1.0.0","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^1.0.0"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"tmp":"tmp/pi-ui_0.54.0_1790921251845_0.840142706396684","host":"s3://npm-registry-packages-npm-production"}},"0.54.1":{"_id":"@hyperpuncher/pi-ui@0.54.1","bin":{"pi-ui":"dist/npm/server-main.js"},"bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"dist":{"shasum":"b5ca6604e91498a241c0835ac319a12267bfc3d7","tarball":"https://registry.npmjs.org/@hyperpuncher/pi-ui/-/pi-ui-0.54.1.tgz","fileCount":420,"integrity":"sha512-FLAQ55gUKB2TFnNISdkaz4WWHuEfqAD+Pm562heO/CE07OBivbJ1wLHjmSeQ+ZpZ1v+b3T4WmTbMReXm0/y3xA==","signatures":[{"sig":"MEYCIQDwNr/2qJLfLlXFUFx272idfxNiiVz5aKjTd8+pDUUs4gIhAP6CjajshtUPmfRRvix0p+a6rwE99FnM7H+5j4HLSOXN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAZX48JGVpu6Rgm6TfkuMY890HnUC5KeDPpqJ9RTu/oYAiEAnAi+9iDgZFrc9yiQWiReM6ADxjE3aD4eLX+WgaaI9Ss="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hyperpuncher%2fpi-ui@0.54.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29213886},"name":"@hyperpuncher/pi-ui","type":"module","engines":{"bun":">=1.4.0"},"gitHead":"82f65ffa1072376defde23019e2b61f8e219cdb7","imports":{"#src/*":"./src/*","#static/*":"./static/*","#testing/temp":"./tests/src/testing/temp.ts","#testing/assertions":"./tests/src/testing/assertions.ts"},"license":"MIT","scripts":{"dev":"bun run assets:build && bun src/server-main.ts","fmt":"bun run schema:build && dsfmt --write . && bunx oxfmt","run":"./dist/pi-ui","lint":"bunx oxlint && bun run lint:css","test":"bun test --parallel=8","audit":"bunx fallow audit","build":"bun run assets:build && bun scripts/build.ts","check":"bun run schema:check && bunx tsc --noEmit","prepack":"bun run npm:build","release":"bun scripts/release.ts","lint:css":"bunx stylelint \"src/**/*.css\"","lint:fix":"bunx oxlint --fix && bun run lint:css --fix","npm:build":"bun run assets:build && bun scripts/build-npm.ts","assets:build":"bun scripts/check-typebox.ts && bun scripts/generate-icons.ts && bun scripts/build-assets.ts","schema:build":"bun scripts/generate-config-schema.ts","schema:check":"bun scripts/generate-config-schema.ts --check"},"version":"0.54.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"5b615c90-1625-49a5-98bb-4ce508bdd28d"}},"homepage":"https://pi-ui.app","repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"keyboard-first minimal gui for pi","directories":{},"maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"oxfmt":"^0.71.0","oxlint":"1.86.0","typebox":"1.3.27","stylelint":"^17.16.0","@types/bun":"^1.4.2","open-props":"^1.7.23","typescript":"^7.0.2","@kitajs/html":"5.0.0-next.1","@pierre/diffs":"^1.5.1","@pierre/trees":"^1.0.0-beta.6","@oxlint/plugins":"1.86.0","@iconify-json/lucide":"^1.2.138","@earendil-works/pi-ai":"^1.0.0","@earendil-works/pi-tui":"^1.0.0","stylelint-config-standard":"^40.0.0","@starfederation/datastar-sdk":"^1.0.0","@earendil-works/pi-coding-agent":"^1.0.0"},"patchedDependencies":{"@shikijs/primitive@4.4.3":"patches/@shikijs%2Fprimitive@4.4.3.patch"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-ui_0.54.1_1790958790101_0.8491105067716285"}}},"time":{"created":"2026-08-28T12:51:00.360Z","modified":"2026-10-02T16:33:10.622Z","0.38.2":"2026-08-28T12:51:00.841Z","0.39.0":"2026-08-29T07:21:36.402Z","0.39.1":"2026-08-29T09:09:57.756Z","0.39.2":"2026-08-30T03:56:44.918Z","0.39.3":"2026-08-30T08:56:59.619Z","0.39.4":"2026-08-31T17:29:06.112Z","0.40.0":"2026-09-03T11:42:27.709Z","0.40.1":"2026-09-04T17:30:53.440Z","0.41.0":"2026-09-05T17:07:21.425Z","0.42.0":"2026-09-06T04:57:11.095Z","0.42.1":"2026-09-06T08:29:22.697Z","0.42.2":"2026-09-07T04:52:59.576Z","0.43.0":"2026-09-08T09:04:27.818Z","0.43.1":"2026-09-09T10:04:46.620Z","0.43.2":"2026-09-09T10:46:24.470Z","0.43.3":"2026-09-09T11:21:19.783Z","0.44.0":"2026-09-11T10:12:36.926Z","0.45.0":"2026-09-12T06:38:23.753Z","0.46.0":"2026-09-14T18:14:30.661Z","0.47.0":"2026-09-15T08:30:49.396Z","0.47.1":"2026-09-15T10:20:29.716Z","0.48.0":"2026-09-16T16:47:20.588Z","0.49.0":"2026-09-20T11:15:45.954Z","0.50.0":"2026-09-21T09:41:44.701Z","0.51.0":"2026-09-23T05:08:29.219Z","0.52.0":"2026-09-27T09:35:18.341Z","0.53.0":"2026-09-29T13:02:10.445Z","0.54.0":"2026-10-02T06:07:32.047Z","0.54.1":"2026-10-02T16:33:10.321Z"},"bugs":{"url":"https://github.com/hyperpuncher/pi-ui/issues"},"license":"MIT","homepage":"https://pi-ui.app","repository":{"url":"git+https://github.com/hyperpuncher/pi-ui.git","type":"git"},"description":"keyboard-first minimal gui for pi","maintainers":[{"name":"hyperpuncher","email":"hyper.puncher@gmail.com"}],"readme":"# pi-ui\n\nkeyboard-first minimal gui for [`pi`](https://pi.dev)\n\n<div>\n\t<picture>\n\t\t<source\n\t\t\tsrcset=\".github/assets/demo-dark.webp\"\n\t\t\tmedia=\"(prefers-color-scheme: dark)\"\n\t\t>\n\t\t<source\n\t\t\tsrcset=\".github/assets/demo-light.webp\"\n\t\t\tmedia=\"(prefers-color-scheme: light)\"\n\t\t>\n\t\t<img src=\".github/assets/demo-dark.webp\" alt=\"pi-ui demo\">\n\t</picture>\n</div>\n\n## features\n\n- background sessions\n- git review with commit history and inline comments\n- markdown, syntax highlighting, and rich diffs\n- file attachments with image previews\n\n## built with\n\n- [`pi`](https://github.com/earendil-works/pi)\n- [`datastar`](https://data-star.dev/)\n- [`kita-jsx`](https://github.com/kitajs/html)\n- [`pierre-diffs`](https://diffs.com/)\n\n## try\n\n> requires bun 1.4+\n\n```sh\nbunx @hyperpuncher/pi-ui\n```\n\n## install\n\n### quick install\n\n> the quick installers start pi-ui in the background and at login\n\n#### linux and macos\n\n```sh\ncurl -fsSL https://pi-ui.app/install | sh\n```\n\n#### windows\n\n```powershell\nirm https://pi-ui.app/install.ps1 | iex\n```\n\nopen [http://127.0.0.1:31415](http://127.0.0.1:31415) in your browser\n\n### package managers\n\n#### bun\n\n> requires bun 1.4+\n\n```sh\nbun i -g @hyperpuncher/pi-ui\n```\n\n#### arch\n\n```sh\nparu -S pi-ui-bin\n```\n\n#### homebrew\n\n```sh\nbrew install hyperpuncher/tap/pi-ui\n```\n\n> package-manager installs must be started with `pi-ui` or configured as a background service below\n\n## background service\n\nstart pi-ui now and at login:\n\n```sh\npi-ui service install\n```\n\nstop pi-ui and remove the service:\n\n```sh\npi-ui service uninstall\n```\n\n### homebrew\n\nhomebrew manages the service separately:\n\n```sh\nbrew services start pi-ui\nbrew services stop pi-ui\n```\n\n## development\n\n> requires bun 1.4+\n\n```sh\nbun ci\nbun run dev\n```\n\n## configuration\n\npi-ui stores its configuration in:\n\n- linux: `~/.config/pi-ui/config.json`\n- macos: `~/.config/pi-ui/config.json`\n- windows: `%APPDATA%\\pi-ui\\config.json`\n\nall options with their defaults:\n\n```json\n{\n\t\"$schema\": \"https://pi-ui.app/config.schema.json\",\n\t\"autoTitle\": {\n\t\t\"enabled\": true,\n\t\t\"models\": [\n\t\t\t\"openai/gpt-6-luna:low\",\n\t\t\t\"openai-codex/gpt-6-luna:low\",\n\t\t\t\"opencode-go/deepseek-v4.1-flash:off\"\n\t\t],\n\t\t\"prompt\": \"use lowercase\"\n\t},\n\t\"codeTheme\": {\n\t\t\"dark\": \"pierre-dark-soft\",\n\t\t\"light\": \"pierre-light\"\n\t},\n\t\"fonts\": {\n\t\t\"mono\": \"system\",\n\t\t\"sans\": \"system\"\n\t},\n\t\"gitView\": {\n\t\t\"changesRatio\": 0.5,\n\t\t\"gitPaneRatio\": 0.5,\n\t\t\"layout\": \"split\",\n\t\t\"mode\": \"all\",\n\t\t\"reviewSidebarWidth\": 272,\n\t\t\"tab\": \"git\",\n\t\t\"wrap\": true\n\t},\n\t\"keybindHints\": true,\n\t\"keybinds\": {\n\t\t\"new-chat\": \"ctrl o\",\n\t\t\"new-temporary-chat\": \"ctrl alt o\",\n\t\t\"resume-session\": \"ctrl r\",\n\t\t\"previous-session\": \"ctrl ^\",\n\t\t\"command-palette\": \"ctrl k\",\n\t\t\"toggle-minimal-mode\": \"alt m\",\n\t\t\"toggle-tool-output\": \"alt o\",\n\t\t\"switch-model\": \"ctrl l\",\n\t\t\"cycle-model\": \"ctrl p\",\n\t\t\"cycle-thinking\": \"alt t\",\n\t\t\"cycle-thinking-backward\": \"alt shift t\",\n\t\t\"toggle-thinking\": \"ctrl alt t\",\n\t\t\"toggle-review\": \"ctrl g\",\n\t\t\"change-workspace\": \"ctrl /\",\n\t\t\"cycle-model-backward\": \"ctrl shift p\",\n\t\t\"toggle-sessions\": \"ctrl b\",\n\t\t\"focus-prompt\": \"alt p\",\n\t\t\"focus-conversation\": \"alt c\",\n\t\t\"focus-sessions\": \"alt s\",\n\t\t\"focus-workspace-files\": \"alt f\",\n\t\t\"focus-workspace-changes\": \"alt g\",\n\t\t\"focus-workspace-editor\": \"alt e\"\n\t},\n\t\"minimalMode\": false,\n\t\"sessionSidebar\": {\n\t\t\"open\": true,\n\t\t\"width\": 288\n\t},\n\t\"toolOutputHidden\": false,\n\t\"toolbarHidden\": false,\n\t\"updateCheck\": true\n}\n```\n\n## keybinds\n\n| key                                                        | action                      |\n| ---------------------------------------------------------- | --------------------------- |\n| <kbd>ctrl/⌘</kbd> <kbd>k</kbd>                             | command palette             |\n| <kbd>alt</kbd> <kbd>p</kbd>                                | focus prompt                |\n| <kbd>alt</kbd> <kbd>c</kbd>                                | focus conversation          |\n| <kbd>alt</kbd> <kbd>f</kbd>                                | focus workspace files       |\n| <kbd>alt</kbd> <kbd>g</kbd>                                | focus git changes           |\n| <kbd>alt</kbd> <kbd>e</kbd>                                | focus file or diff          |\n| <kbd>alt</kbd> <kbd>s</kbd>                                | focus sessions              |\n| <kbd>j</kbd> / <kbd>k</kbd> or <kbd>↑</kbd> / <kbd>↓</kbd> | move or scroll focused pane |\n| <kbd>gg</kbd> / <kbd>G</kbd>                               | top / bottom                |\n| <kbd>ctrl/⌘</kbd> <kbd>o</kbd>                             | new session                 |\n| <kbd>ctrl/⌘</kbd> <kbd>alt</kbd> <kbd>o</kbd>              | temporary chat              |\n| <kbd>ctrl/⌘</kbd> <kbd>1–9</kbd>                           | switch session              |\n| <kbd>ctrl/⌘</kbd> <kbd>^</kbd>                             | previous session            |\n| <kbd>ctrl/⌘</kbd> <kbd>r</kbd>                             | session picker              |\n| <kbd>ctrl/⌘</kbd> <kbd>b</kbd>                             | toggle session sidebar      |\n| <kbd>ctrl/⌘</kbd> <kbd>/</kbd>                             | workspace picker            |\n| <kbd>ctrl/⌘</kbd> <kbd>g</kbd>                             | toggle workspace            |\n| <kbd>ctrl/⌘</kbd> <kbd>l</kbd>                             | model picker                |\n| <kbd>ctrl/⌘</kbd> <kbd>p</kbd>                             | cycle favorite model        |\n| <kbd>ctrl/⌘</kbd> <kbd>shift</kbd> <kbd>p</kbd>            | cycle favorite model back   |\n| <kbd>alt</kbd> <kbd>t</kbd>                                | cycle thinking level        |\n| <kbd>alt</kbd> <kbd>shift</kbd> <kbd>t</kbd>               | cycle thinking back         |\n| <kbd>ctrl/⌘</kbd> <kbd>alt</kbd> <kbd>t</kbd>              | toggle thinking blocks      |\n| <kbd>alt</kbd> <kbd>m</kbd>                                | toggle minimal mode         |\n| <kbd>alt</kbd> <kbd>o</kbd>                                | toggle tool output          |\n| <kbd>/</kbd>                                               | slash commands              |\n| <kbd>@</kbd>                                               | file picker                 |\n| <kbd>alt</kbd> <kbd>enter</kbd>                            | queue follow-up             |\n| <kbd>alt</kbd> <kbd>↑</kbd>                                | restore queued text         |\n\n## license\n\nmit\n","readmeFilename":"README.md"}