@node9/proxy 2.53.0 → 2.54.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/scan-ink.mjs CHANGED
@@ -211,6 +211,8 @@ var ConfigFileSchema = z.object({
211
211
  registrySignals: z.boolean().optional(),
212
212
  newPackage: z.enum(["review", "off"]).optional(),
213
213
  installScript: z.enum(["review", "off"]).optional(),
214
+ lookalike: z.enum(["review", "off"]).optional(),
215
+ establishedAge: z.enum(["review", "off"]).optional(),
214
216
  maxAgeHours: z.number().min(0).optional(),
215
217
  onlineFallback: z.boolean().optional(),
216
218
  allow: z.array(z.string()).optional()
@@ -2335,7 +2337,7 @@ var CHECK_TEXT = {
2335
2337
  advice: "Fixed at Block. A person accepts the change on the machine (node9 mcp pin update)."
2336
2338
  },
2337
2339
  "loading.malicious-package": {
2338
- plain: "The agent installs a package that the public malicious-package database (OSV) lists, or one published minutes ago. Covers npm, PyPI, RubyGems, crates.io, Go, NuGet, Maven, Packagist and VS Code extensions; the publish-age and install-script signals are npm and PyPI only. A new release built from the same repository as the one before it (registry provenance) and an install script the package has always run do not stop; a release that lost the provenance its previous release had does.",
2340
+ plain: "The agent installs a package that the public malicious-package database (OSV) lists, or one published minutes ago. Covers npm, PyPI, RubyGems, crates.io, Go, NuGet, Maven, Packagist and VS Code extensions; the publish-age and install-script signals are npm and PyPI only. A new release built from the same repository as the one before it (registry provenance) and an install script the package has always run do not stop; a release that lost the provenance its previous release had does. A name that looks like a popular package and has no standing of its own, a name no package on npm or PyPI has, or a package npm removed as malicious also stops for review (the lookalike tuning). A fresh release of a package over a year old that released within the last six months is its normal cadence: Standard lets it through, Strict asks (the establishedAge tuning).",
2339
2341
  example: "npm install of a package flagged as malware",
2340
2342
  advice: "Keep Block for known-malicious packages; brand-new packages already stop for Review."
2341
2343
  },
@@ -7420,6 +7422,16 @@ var TUNING_FIELDS = [
7420
7422
  name: "installScript",
7421
7423
  legacy: ["packageCheck", "installScript"]
7422
7424
  },
7425
+ {
7426
+ checkId: "loading.malicious-package",
7427
+ name: "lookalike",
7428
+ legacy: ["packageCheck", "lookalike"]
7429
+ },
7430
+ {
7431
+ checkId: "loading.malicious-package",
7432
+ name: "establishedAge",
7433
+ legacy: ["packageCheck", "establishedAge"]
7434
+ },
7423
7435
  {
7424
7436
  checkId: "loading.malicious-package",
7425
7437
  name: "onlineFallback",
@@ -7867,6 +7879,8 @@ var DEFAULT_CONFIG = {
7867
7879
  newPackage: "review",
7868
7880
  maxAgeHours: 48,
7869
7881
  installScript: "review",
7882
+ lookalike: "review",
7883
+ establishedAge: "off",
7870
7884
  onlineFallback: true,
7871
7885
  allow: []
7872
7886
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node9/proxy",
3
- "version": "2.53.0",
3
+ "version": "2.54.1",
4
4
  "description": "Access control for AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",