diff --git a/flake.nix b/flake.nix index 444150c9..3f220b70 100644 --- a/flake.nix +++ b/flake.nix @@ -263,50 +263,53 @@ maxLayers = 10; }; - in { - # ── Layered OCI image for the devcontainer ────────────────────────────── - packages.${system}.devcontainer = pkgs.dockerTools.buildLayeredImage { - name = "research-stack-otom"; - tag = "latest"; + in rec { + packages.${system} = { - contents = [ - customEtc # Custom etc configuration containing researcher user - pkgs.dockerTools.usrBinEnv # /usr/bin/env - pkgs.dockerTools.binSh # /bin/sh -> bash - researcherSetup - ] ++ devPkgs; + # ── Layered OCI image for the devcontainer ──────────────────────────── + devcontainer = pkgs.dockerTools.buildLayeredImage { + name = "research-stack-otom"; + tag = "latest"; - # Ensure home is owned by researcher - fakeRootCommands = '' - chown -R 1000:1000 ./home/researcher || true - chmod 1777 ./tmp || true - ''; - enableFakechroot = true; + contents = [ + customEtc # Custom etc configuration containing researcher user + pkgs.dockerTools.usrBinEnv # /usr/bin/env + pkgs.dockerTools.binSh # /bin/sh -> bash + researcherSetup + ] ++ devPkgs; - config = { - User = "1000"; - WorkingDir = "/home/researcher/stack"; - Env = [ - "PATH=/home/researcher/.elan/bin:${pythonEnv}/bin:${pkgs.uv}/bin:${pkgs.git}/bin:${pkgs.ripgrep}/bin:${pkgs.jq}/bin:${pkgs.coreutils}/bin:${pkgs.bashInteractive}/bin:${pkgs.binutils}/bin:${pkgs.glibc.bin}/bin:${pkgs.gzip}/bin:${pkgs.pkg-config}/bin:${pkgs.openssl.bin}/bin:${pkgs.texliveFull}/bin:${pkgs.typst}/bin:${pkgs.gnuplot}/bin:${pkgs.maxima}/bin:${pkgs.octave}/bin:${rEnv}/bin:${pkgs.sage}/bin:/usr/bin:/bin" - "LD_LIBRARY_PATH=${pkgs.gcc.cc.lib}/lib:${pkgs.glibc}/lib:${pkgs.libglvnd}/lib:${pkgs.xorg.libX11}/lib:${pkgs.xorg.libXext}/lib:${pkgs.xorg.libXrender}/lib:${pkgs.mesa}/lib:${pkgs.openssl}/lib" - "PYTHONUNBUFFERED=1" - "XDG_CACHE_HOME=/home/researcher/.cache" - "HOME=/home/researcher" - "SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" - "NIX_SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" - ]; - Cmd = [ "${pkgs.bashInteractive}/bin/bash" ]; + # Ensure home is owned by researcher + fakeRootCommands = '' + chown -R 1000:1000 ./home/researcher || true + chmod 1777 ./tmp || true + ''; + enableFakechroot = true; + + config = { + User = "1000"; + WorkingDir = "/home/researcher/stack"; + Env = [ + "PATH=/home/researcher/.elan/bin:${pythonEnv}/bin:${pkgs.uv}/bin:${pkgs.git}/bin:${pkgs.ripgrep}/bin:${pkgs.jq}/bin:${pkgs.coreutils}/bin:${pkgs.bashInteractive}/bin:${pkgs.binutils}/bin:${pkgs.glibc.bin}/bin:${pkgs.gzip}/bin:${pkgs.pkg-config}/bin:${pkgs.openssl.bin}/bin:${pkgs.texliveFull}/bin:${pkgs.typst}/bin:${pkgs.gnuplot}/bin:${pkgs.maxima}/bin:${pkgs.octave}/bin:${rEnv}/bin:${pkgs.sage}/bin:/usr/bin:/bin" + "LD_LIBRARY_PATH=${pkgs.gcc.cc.lib}/lib:${pkgs.glibc}/lib:${pkgs.libglvnd}/lib:${pkgs.xorg.libX11}/lib:${pkgs.xorg.libXext}/lib:${pkgs.xorg.libXrender}/lib:${pkgs.mesa}/lib:${pkgs.openssl}/lib" + "PYTHONUNBUFFERED=1" + "XDG_CACHE_HOME=/home/researcher/.cache" + "HOME=/home/researcher" + "SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" + "NIX_SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" + ]; + Cmd = [ "${pkgs.bashInteractive}/bin/bash" ]; + }; + + maxLayers = 120; }; - maxLayers = 120; + # rs-surface binary and OCI image + rs-surface = rsSurface; + rs-surface-image = rsSurfaceImage; }; - # rs-surface binary and OCI image - packages.${system}.rs-surface = rsSurface; - packages.${system}.rs-surface-image = rsSurfaceImage; - # Convenience alias: `nix build .#devcontainer` - defaultPackage.${system} = self.packages.${system}.devcontainer; + defaultPackage.${system} = packages.${system}.devcontainer; # ── Dev shell — `nix develop` on the host (if nix is installed) ───────── devShells.${system}.default = pkgs.mkShell { diff --git a/package-lock.json b/package-lock.json index e5392188..da45567b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,9 +50,9 @@ } }, "node_modules/@ai-sdk/gateway": { - "version": "3.0.116", - "resolved": "https://registry.npmjs.org/@ai-sdk/gateway/-/gateway-3.0.116.tgz", - "integrity": "sha512-k8P17w7Eho5Y4l3tZrYxqQdffkI4xwtl8GCxkZs+JdMWZhyrLLlozqWkKLaWrCSlEYQOeIhEnQLhqQgYYU86Rw==", + "version": "3.0.118", + "resolved": "https://registry.npmjs.org/@ai-sdk/gateway/-/gateway-3.0.118.tgz", + "integrity": "sha512-XYPbVoDo1TDMVLe5Eg42gIjdOyxaizh9H0kiSSnTXr+AdrqZvutk/ypLOiqBXPV3D1K3+BSm/sbFeomZJlM64A==", "license": "Apache-2.0", "dependencies": { "@ai-sdk/provider": "3.0.10", @@ -67,9 +67,9 @@ } }, "node_modules/@ai-sdk/google": { - "version": "3.0.75", - "resolved": "https://registry.npmjs.org/@ai-sdk/google/-/google-3.0.75.tgz", - "integrity": "sha512-XAm31ftiOrzlb8NjDzT7kw0xw+4lmgFdGFn1QKM73nXFFKyN1kWLESBV75UGNfjXP8X1YJ0YydnMVqO0jaPghw==", + "version": "3.0.77", + "resolved": "https://registry.npmjs.org/@ai-sdk/google/-/google-3.0.77.tgz", + "integrity": "sha512-t6BdlhF5TBC8fRtGAwugS0UwAwWlUyUriYGYjYzFhap6iB7dY+tnPPL/AVn1k5BeGdIYAkLjRKeQdjUhHaB7rQ==", "license": "Apache-2.0", "dependencies": { "@ai-sdk/provider": "3.0.10", @@ -83,13 +83,13 @@ } }, "node_modules/@ai-sdk/google-vertex": { - "version": "4.0.131", - "resolved": "https://registry.npmjs.org/@ai-sdk/google-vertex/-/google-vertex-4.0.131.tgz", - "integrity": "sha512-Oj1X8p0rVgvEoR5OOSxWi6XgzJ3QDlE/n30MZVtpKkCiToYYDyvlvVDGXz3IqhMyUev2JhlcuUk1brScKT01kA==", + "version": "4.0.133", + "resolved": "https://registry.npmjs.org/@ai-sdk/google-vertex/-/google-vertex-4.0.133.tgz", + "integrity": "sha512-wxl0ic9kdWnvCNPwe+o/gduf9+JW8HMI48qwXoQvPkqAqr9F85vJaqA9Jls6wIinY9w6CxI7jCwRKPHHXsBmBw==", "license": "Apache-2.0", "dependencies": { "@ai-sdk/anthropic": "3.0.78", - "@ai-sdk/google": "3.0.75", + "@ai-sdk/google": "3.0.77", "@ai-sdk/openai-compatible": "2.0.47", "@ai-sdk/provider": "3.0.10", "@ai-sdk/provider-utils": "4.0.27", @@ -238,6 +238,9 @@ "cpu": [ "arm64" ], + "libc": [ + "glibc" + ], "license": "SEE LICENSE IN LICENSE.md", "optional": true, "os": [ @@ -251,6 +254,9 @@ "cpu": [ "arm64" ], + "libc": [ + "musl" + ], "license": "SEE LICENSE IN LICENSE.md", "optional": true, "os": [ @@ -264,6 +270,9 @@ "cpu": [ "x64" ], + "libc": [ + "glibc" + ], "license": "SEE LICENSE IN LICENSE.md", "optional": true, "os": [ @@ -277,6 +286,9 @@ "cpu": [ "x64" ], + "libc": [ + "musl" + ], "license": "SEE LICENSE IN LICENSE.md", "optional": true, "os": [ @@ -419,9 +431,9 @@ } }, "node_modules/@aws-sdk/client-cognito-identity": { - "version": "3.1049.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.1049.0.tgz", - "integrity": "sha512-gfgKqA8If1CVtHgDma2yIpBDbYiB8jshbGe+nagfjBmlOmrBAycpgXxPGg3VONtm+UfgzbkSYbbR9xKW8rRCQg==", + "version": "3.1051.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.1051.0.tgz", + "integrity": "sha512-3UBc7Fmc/5HnoV/8fMrjdZJoZdhLGx26doE21i5ekkWI1D/WvTsA+SK4C75Fl0xZxQIrQoPS1M3xhi2P/iIKpA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", @@ -623,12 +635,12 @@ } }, "node_modules/@aws-sdk/credential-providers": { - "version": "3.1049.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.1049.0.tgz", - "integrity": "sha512-2B0ljqENrXKHlPg50kCV12RA35jcAfgZLLB38NW9qv5gUtOHFS8/wW7AkbyVAFYQySl/+2a3x1MAjY2d+Ed71g==", + "version": "3.1051.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.1051.0.tgz", + "integrity": "sha512-ZT4dj1oKdX0JPPbKnugCqVk/UvyVdUeh6TLWAUX/2Z1DhlWBeqg7b8RJjJYgMb8qqdg6Qn30MkzjOSqgQ6sy+Q==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-cognito-identity": "3.1049.0", + "@aws-sdk/client-cognito-identity": "3.1051.0", "@aws-sdk/core": "^3.974.12", "@aws-sdk/credential-provider-cognito-identity": "^3.972.35", "@aws-sdk/credential-provider-env": "^3.972.38", @@ -777,9 +789,9 @@ } }, "node_modules/@cline/cli-darwin-arm64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-darwin-arm64/-/cli-darwin-arm64-3.0.7.tgz", - "integrity": "sha512-J8BQ7+xMCmnnXoX/ZjukFnE3BZymkU6sSbOrgJcJ4NMf1St54w0/mOS8+3YHsfyWh5QbvHi7JDURUrI+UzisKQ==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-darwin-arm64/-/cli-darwin-arm64-3.0.9.tgz", + "integrity": "sha512-4Emi7fFc+/J97Joo9B3GmIcN5IpWu1Ir9nMBaLkA6KCjZfhyWfDv7YIq2VF0fH1N5hT4ZD1CWWQsrqxpl7uyzw==", "cpu": [ "arm64" ], @@ -792,9 +804,9 @@ } }, "node_modules/@cline/cli-darwin-x64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-darwin-x64/-/cli-darwin-x64-3.0.7.tgz", - "integrity": "sha512-HTqGEdFLEHOhJ/nEzHvmWXdmFjBCIUElDY5V0EMxUe0BvVTM7FF3XqfSZv+DMIE2GaPk+B3eIdc9mzy6f0ulYA==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-darwin-x64/-/cli-darwin-x64-3.0.9.tgz", + "integrity": "sha512-QAdGbcIptQhB0xwBoeCxHHSg6daBmTCkOJll5PqoBefMuXD+mUc7ppVBz4svRCNCIQczQM5SGwGxq+kMzw/1Yg==", "cpu": [ "x64" ], @@ -807,9 +819,9 @@ } }, "node_modules/@cline/cli-linux-arm64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-linux-arm64/-/cli-linux-arm64-3.0.7.tgz", - "integrity": "sha512-dq4WH962uXMDQyJTAq0XTwPo8ymw9U489G/lBqqgZS9UKob9JXfJnAovSSXQgWsq+o6D8xNkW9GKLIHsHvR8Wg==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-linux-arm64/-/cli-linux-arm64-3.0.9.tgz", + "integrity": "sha512-i/bW6T+yJg6GISsCe+cedkaoxhHkADeEHFrp8AHTUdvd4THyR2/4YA72DZwyJ664VAf8WQjhrn49hChDMRjaKw==", "cpu": [ "arm64" ], @@ -822,9 +834,9 @@ } }, "node_modules/@cline/cli-linux-x64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-linux-x64/-/cli-linux-x64-3.0.7.tgz", - "integrity": "sha512-bIqMWbGIOxioovCKrZAEqab1Cml8UZuU+ES6UBqbqY+6Qiutl6wMA+Jm9N5Mff+gZa+af2TIEyJc+yeTfYmUhA==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-linux-x64/-/cli-linux-x64-3.0.9.tgz", + "integrity": "sha512-0a6xGCgg7xN8o9NkTt9SvVHZf931072C0AgeAetDwAi5EfWtehxC/KhjYkdx1omdSfL6YmA61GITzY0b5KLGWw==", "cpu": [ "x64" ], @@ -837,9 +849,9 @@ } }, "node_modules/@cline/cli-windows-arm64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-windows-arm64/-/cli-windows-arm64-3.0.7.tgz", - "integrity": "sha512-6VJug9rDpYZhJ4+d1Q9dBt2HYuPG8KWBYDkMvXgEtuOBNB2SgDGTUVMJzwB0nIhjoYZlyNzeJLqmGBbFXSBo8A==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-windows-arm64/-/cli-windows-arm64-3.0.9.tgz", + "integrity": "sha512-ZoExp8X5VfhHbUsgsVgch4lDOyDSzAOio3x580S/YfSCNp6+cJhA0khzXcNkri1b2x6lGawha06ytTom7W7hPQ==", "cpu": [ "arm64" ], @@ -852,9 +864,9 @@ } }, "node_modules/@cline/cli-windows-x64": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cline/cli-windows-x64/-/cli-windows-x64-3.0.7.tgz", - "integrity": "sha512-HwnPu0fKikrf1BjjWTwZdN9X0lKjoAVG0BHYwdoZd6AK9zCg4tL3eNB33fD6AP/R+oQYJZv5PhMzVehfKfyvYA==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@cline/cli-windows-x64/-/cli-windows-x64-3.0.9.tgz", + "integrity": "sha512-lJt2fVe2PdT8M3VBhTCIK7D76OCzM6w0on/xve5Lp5GatiER1RT3TgzYOekB+U+mhnmteVk73InpzAG8dyVohA==", "cpu": [ "x64" ], @@ -1228,37 +1240,6 @@ "mcp-inspector-client": "bin/start.js" } }, - "node_modules/@modelcontextprotocol/inspector-client/node_modules/ajv": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", - "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@modelcontextprotocol/inspector-client/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "license": "MIT" - }, - "node_modules/@modelcontextprotocol/inspector-client/node_modules/pkce-challenge": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-4.1.0.tgz", - "integrity": "sha512-ZBmhE1C9LcPoH9XZSdwiPtbPHZROwAnMy+kIFQVrnMCxY4Cudlz3gBOpzilgc0jOgRaiT3sIWfpMomW2ar2orQ==", - "license": "MIT", - "engines": { - "node": ">=16.20.0" - } - }, "node_modules/@modelcontextprotocol/inspector-client/node_modules/zod": { "version": "3.25.76", "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", @@ -1346,6 +1327,37 @@ } } }, + "node_modules/@modelcontextprotocol/sdk/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@modelcontextprotocol/sdk/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" + }, + "node_modules/@modelcontextprotocol/sdk/node_modules/pkce-challenge": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz", + "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==", + "license": "MIT", + "engines": { + "node": ">=16.20.0" + } + }, "node_modules/@nodable/entities": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz", @@ -1359,9 +1371,9 @@ "license": "MIT" }, "node_modules/@openai/codex": { - "version": "0.130.0", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0.tgz", - "integrity": "sha512-WGDj+RZ3TXWC/7MlwprgLWOqzpwatPIINPhP3IRzHA0ni+o3QZ4i4xrS2uWwGmHUJ395J5JHwoZAAZYyfJyz6w==", + "version": "0.132.0", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0.tgz", + "integrity": "sha512-OaTUz3oTbUP23I1yprQyaqO5LvlfWbTFIAI/JT2Hm0kgIsD+nKK14vauTzAt3zaeik6D7+meekCTuNdpU1dU2Q==", "license": "Apache-2.0", "optional": true, "bin": { @@ -1371,19 +1383,19 @@ "node": ">=16" }, "optionalDependencies": { - "@openai/codex-darwin-arm64": "npm:@openai/codex@0.130.0-darwin-arm64", - "@openai/codex-darwin-x64": "npm:@openai/codex@0.130.0-darwin-x64", - "@openai/codex-linux-arm64": "npm:@openai/codex@0.130.0-linux-arm64", - "@openai/codex-linux-x64": "npm:@openai/codex@0.130.0-linux-x64", - "@openai/codex-win32-arm64": "npm:@openai/codex@0.130.0-win32-arm64", - "@openai/codex-win32-x64": "npm:@openai/codex@0.130.0-win32-x64" + "@openai/codex-darwin-arm64": "npm:@openai/codex@0.132.0-darwin-arm64", + "@openai/codex-darwin-x64": "npm:@openai/codex@0.132.0-darwin-x64", + "@openai/codex-linux-arm64": "npm:@openai/codex@0.132.0-linux-arm64", + "@openai/codex-linux-x64": "npm:@openai/codex@0.132.0-linux-x64", + "@openai/codex-win32-arm64": "npm:@openai/codex@0.132.0-win32-arm64", + "@openai/codex-win32-x64": "npm:@openai/codex@0.132.0-win32-x64" } }, "node_modules/@openai/codex-darwin-arm64": { "name": "@openai/codex", - "version": "0.130.0-darwin-arm64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-darwin-arm64.tgz", - "integrity": "sha512-R9pkGC7kwC8yQ8el5hvBlmugQlcsG/pHMEFgZluu03X9fD2TezGxdq3KqRDRCZuMYl07ILamVEoqknuJ0cq7MA==", + "version": "0.132.0-darwin-arm64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-darwin-arm64.tgz", + "integrity": "sha512-EVD6XaKSN4fD7Z9HrQIjOFFLbL6cu1PWA6a2hzFwMomAjHlZelGOLtS4faFWOmLUZnO7TYtnJJXk8VNfdGqefg==", "cpu": [ "arm64" ], @@ -1398,9 +1410,9 @@ }, "node_modules/@openai/codex-darwin-x64": { "name": "@openai/codex", - "version": "0.130.0-darwin-x64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-darwin-x64.tgz", - "integrity": "sha512-gJ+7J8djevgtdra+NgDAiQQPW+O3KTsgGfE3E5dpDfww3zS5OCeV0V2dhxqnJdlOjOSDw99o0P2LqBv19mhpRw==", + "version": "0.132.0-darwin-x64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-darwin-x64.tgz", + "integrity": "sha512-RGaiBLwM9UkuB0tOHXjhwTJzMi/FCk/TQaKai97WIodIrvmRzL+j43hqVsXMV8jjYxTFwdyYooGMmCI7cQbKXw==", "cpu": [ "x64" ], @@ -1415,9 +1427,9 @@ }, "node_modules/@openai/codex-linux-arm64": { "name": "@openai/codex", - "version": "0.130.0-linux-arm64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-linux-arm64.tgz", - "integrity": "sha512-tFtH0V9/hEI3d9y7zP92BXI9FM4Z3+STNQaOR52Czv18TRtCFUp7CbIUYaToopuq6UBfnE1VKr8RLhwT5FcbmA==", + "version": "0.132.0-linux-arm64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-linux-arm64.tgz", + "integrity": "sha512-cdYuH9GqIHMI6p8hP0R4VKejBQjeAUtz1SMhPmwbIP24/Jc7w+KoVXP40UEqaLkD6i3pVbbYtnJ7KahZV+GEPQ==", "cpu": [ "arm64" ], @@ -1432,9 +1444,9 @@ }, "node_modules/@openai/codex-linux-x64": { "name": "@openai/codex", - "version": "0.130.0-linux-x64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-linux-x64.tgz", - "integrity": "sha512-3VcNlez99xdnEf+kB1IOpWv9fICYV9PiGj4sLCO4TCcShLnyxe+YBGa3poknkvXLnMG0qiN9SMnYS2FGrMxQcA==", + "version": "0.132.0-linux-x64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-linux-x64.tgz", + "integrity": "sha512-aGJPB+QkgtYQNQMlRGmE7oZstULu7k4trpux5r3CCZGPun4Xtwx3swtZXm7cWOVeTUkNfGCqdtCQ0bv6SKRiLA==", "cpu": [ "x64" ], @@ -1449,9 +1461,9 @@ }, "node_modules/@openai/codex-win32-arm64": { "name": "@openai/codex", - "version": "0.130.0-win32-arm64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-win32-arm64.tgz", - "integrity": "sha512-vdpmiNp57L/arZabltLXn8TyEtNa7W1meOEkr+3R6W/8ZyBt++wuqz1Orv134OT2grrcFJsIVCAIPiqUxCvBkA==", + "version": "0.132.0-win32-arm64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-win32-arm64.tgz", + "integrity": "sha512-6RmSrBe0sAMLdF3g1FIZw9Vlqy4pmcU/Lr0Q6bQJGeY/IKUbYwj2dWZukXVWU+kW8B7+KNuX89k5nRk1GUaS6A==", "cpu": [ "arm64" ], @@ -1466,9 +1478,9 @@ }, "node_modules/@openai/codex-win32-x64": { "name": "@openai/codex", - "version": "0.130.0-win32-x64", - "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.130.0-win32-x64.tgz", - "integrity": "sha512-FzMznm7fr5/nbjZgOujZ9Y9AbdGm7ji1FOoWiY3U+srqauvZaTgn6o6aCheSL7kuymu7nTLOO/cAyWV6NuesqQ==", + "version": "0.132.0-win32-x64", + "resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.132.0-win32-x64.tgz", + "integrity": "sha512-TnAoOBWbFSCqR+4AkgwSKOVQJtGUdBCqROOEyAKylbIug55xzrLPLNQ7Mnd9l1yFIUnU2NqvPeHtIYqGImzCqA==", "cpu": [ "x64" ], @@ -1482,9 +1494,9 @@ } }, "node_modules/@opencode-ai/sdk": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.15.5.tgz", - "integrity": "sha512-ozJuEmXzrOvia5n0L1KAuvpyf9ESGmTk1FiPhn0RK5X1whbzjlTXL0NAxqNCEkqETxL35jS1KHArEiTpvtJ6FQ==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.15.6.tgz", + "integrity": "sha512-zeMyjgf7jjp4ge7Y9mp1oza1nHsKZAmOg9RIFixRtrM9S1IPwgNMEybMlJR+wBwPTv2ZDgjvcJasuD0z4XjSDA==", "license": "MIT", "dependencies": { "cross-spawn": "7.0.6" @@ -3137,9 +3149,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.9.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.0.tgz", - "integrity": "sha512-AOQwYUNolgy3VosiRqXrACUXTN8nJUtPl7FJXMqZVyxiiCLhQuG3jXKvCS1ALr+Y2OmZhzzLVlYPEqJaiqkaJQ==", + "version": "25.9.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.1.tgz", + "integrity": "sha512-xfrlY7UD5rMJk3ZVJP8BNzS28J36YJg+xp+LPXV1TdWxr8uMH5A860QNxYDGQe/ylDSgjxE52Q9VnO7p75tJxg==", "license": "MIT", "dependencies": { "undici-types": ">=7.24.0 <7.24.7" @@ -3201,12 +3213,12 @@ } }, "node_modules/ai": { - "version": "6.0.185", - "resolved": "https://registry.npmjs.org/ai/-/ai-6.0.185.tgz", - "integrity": "sha512-oGsqscREaTlo75KHZLtwZxRyI+ZBwHV2wRX9B8smHjgOs13WwoCvUyr5aPUWpIBRz406wmIKy1RzoUEq0/WKJw==", + "version": "6.0.187", + "resolved": "https://registry.npmjs.org/ai/-/ai-6.0.187.tgz", + "integrity": "sha512-+0SWsOnrZ1CvfMeLUMBTd5L3ytf82FuL9VyJnaw475P78CUbvudZ1Jj/x/kmu3xE8ECoLqyu9Mn3LmuAjjbLIg==", "license": "Apache-2.0", "dependencies": { - "@ai-sdk/gateway": "3.0.116", + "@ai-sdk/gateway": "3.0.118", "@ai-sdk/provider": "3.0.10", "@ai-sdk/provider-utils": "4.0.27", "@opentelemetry/api": "^1.9.0" @@ -3273,15 +3285,15 @@ } }, "node_modules/ajv": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", - "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, "funding": { "type": "github", @@ -3305,6 +3317,28 @@ } } }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" + }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -3380,9 +3414,9 @@ "license": "MIT" }, "node_modules/better-sqlite3": { - "version": "12.9.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.9.0.tgz", - "integrity": "sha512-wqUv4Gm3toFpHDQmaKD4QhZm3g1DjUBI0yzS4UBl6lElUmXFYdTQmmEDpAFa5o8FiFiymURypEnfVHzILKaxqQ==", + "version": "12.10.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.10.0.tgz", + "integrity": "sha512-CyzaZRQKyHkB2ZInfTTl2nvT33EbDpjkLEbE8/Zck3Ll6O0qqvuGdrJ45HgtH+HykRg88ITY3AdreBGN70aBSQ==", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -3390,7 +3424,7 @@ "prebuild-install": "^7.1.1" }, "engines": { - "node": "20.x || 22.x || 23.x || 24.x || 25.x" + "node": "20.x || 22.x || 23.x || 24.x || 25.x || 26.x" } }, "node_modules/bignumber.js": { @@ -3592,9 +3626,9 @@ } }, "node_modules/cline": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/cline/-/cline-3.0.7.tgz", - "integrity": "sha512-Uu+3Ay3j+p7N5d2hhh+EdxBqNCujM9nKy1AZthTKlD1Jnx+1XqzOKw10EJUucaRMJPM/eZHmHpKcPYgpeczYDg==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/cline/-/cline-3.0.9.tgz", + "integrity": "sha512-4/ny28MmHp4kD18PshLO9pZ5l7WuxxrVNGc5y3rUCR/12Z4AT4l4/VHomARJaUplJZ2BSI71VKTM+/yN0NNdwQ==", "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { @@ -3608,12 +3642,12 @@ "cline": "bin/cline" }, "optionalDependencies": { - "@cline/cli-darwin-arm64": "3.0.7", - "@cline/cli-darwin-x64": "3.0.7", - "@cline/cli-linux-arm64": "3.0.7", - "@cline/cli-linux-x64": "3.0.7", - "@cline/cli-windows-arm64": "3.0.7", - "@cline/cli-windows-x64": "3.0.7" + "@cline/cli-darwin-arm64": "3.0.9", + "@cline/cli-darwin-x64": "3.0.9", + "@cline/cli-linux-arm64": "3.0.9", + "@cline/cli-linux-x64": "3.0.9", + "@cline/cli-windows-arm64": "3.0.9", + "@cline/cli-windows-x64": "3.0.9" } }, "node_modules/cliui": { @@ -4513,9 +4547,9 @@ } }, "node_modules/hono": { - "version": "4.12.19", - "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.19.tgz", - "integrity": "sha512-xa3eYXYXx68XTT4hZ7dRzsXBhaq85ToSrlUJNoR0gwz/1Ap/CNwX47wfvV7pc/xWhjKVVkLT7zBJy8chhNguqQ==", + "version": "4.12.21", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.21.tgz", + "integrity": "sha512-uV63apnb0kyPtAUwoWgaGh9HyIFcv8lgmzPZSiTBQAFOFGIzka5EZ1dZocmGnn0XdX0+XTqJ6Tqv7selMuGLRQ==", "license": "MIT", "engines": { "node": ">=16.9.0" @@ -4777,9 +4811,9 @@ } }, "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "license": "MIT" }, "node_modules/json-schema-typed": { @@ -4991,9 +5025,9 @@ } }, "node_modules/node-abi": { - "version": "3.91.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.91.0.tgz", - "integrity": "sha512-B+S7X/GS3Un6wMICtnsNjQD7oSpVBQrZftHE6GZ1Fe9/k3XOOoqbM5DZZ0GO4x3YiSCQfrM28yj1ppplwgIsfg==", + "version": "3.92.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.92.0.tgz", + "integrity": "sha512-KdHvFWZjEKDf0cakgFjebl371GPsISX2oZHcuyKqM7DtogIsHrqKeLTo8wBHxaXRAQlY2PsPlZmfo+9ZCxEREQ==", "license": "MIT", "dependencies": { "semver": "^7.3.5" @@ -5171,9 +5205,9 @@ } }, "node_modules/pkce-challenge": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz", - "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-4.1.0.tgz", + "integrity": "sha512-ZBmhE1C9LcPoH9XZSdwiPtbPHZROwAnMy+kIFQVrnMCxY4Cudlz3gBOpzilgc0jOgRaiT3sIWfpMomW2ar2orQ==", "license": "MIT", "engines": { "node": ">=16.20.0" @@ -5566,9 +5600,9 @@ } }, "node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", "license": "ISC", "bin": { "semver": "bin/semver.js" diff --git a/package.json b/package.json index 742767fb..781eaa1d 100644 --- a/package.json +++ b/package.json @@ -16,5 +16,8 @@ "@modelcontextprotocol/sdk": "^1.29.0", "better-sqlite3": "^12.4.1", "cline": "^3.0.7" + }, + "overrides": { + "@openai/codex": "0.132.0" } }