@node9/proxy 1.27.1 → 1.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/cli.js +1347 -124
- package/dist/cli.mjs +1347 -124
- package/dist/dashboard.mjs +19 -1
- package/dist/index.js +10 -1
- package/dist/index.mjs +10 -1
- package/package.json +3 -1
package/dist/dashboard.mjs
CHANGED
|
@@ -2395,7 +2395,14 @@ var init_config = __esm({
|
|
|
2395
2395
|
"edit_file",
|
|
2396
2396
|
"create_file",
|
|
2397
2397
|
"edit",
|
|
2398
|
-
"replace"
|
|
2398
|
+
"replace",
|
|
2399
|
+
// Claude / canonicalised Hermes — shouldSnapshot lowercases the
|
|
2400
|
+
// incoming name before set-membership, so we list the lowercase
|
|
2401
|
+
// forms of `Bash`/`Write`/`Edit`/`MultiEdit`. Without these,
|
|
2402
|
+
// post-canonicalisation Hermes `patch` / `write_file` (which now
|
|
2403
|
+
// arrive as `Edit` / `Write`) silently skipped snapshotting.
|
|
2404
|
+
"write",
|
|
2405
|
+
"multiedit"
|
|
2399
2406
|
],
|
|
2400
2407
|
onlyPaths: [],
|
|
2401
2408
|
ignorePaths: ["**/node_modules/**", "dist/**", "build/**", ".next/**", "**/*.log"]
|
|
@@ -3359,6 +3366,13 @@ var init_policy = __esm({
|
|
|
3359
3366
|
}
|
|
3360
3367
|
});
|
|
3361
3368
|
|
|
3369
|
+
// src/utils/hook-payload.ts
|
|
3370
|
+
var init_hook_payload = __esm({
|
|
3371
|
+
"src/utils/hook-payload.ts"() {
|
|
3372
|
+
"use strict";
|
|
3373
|
+
}
|
|
3374
|
+
});
|
|
3375
|
+
|
|
3362
3376
|
// src/scan-summary.ts
|
|
3363
3377
|
var init_scan_summary = __esm({
|
|
3364
3378
|
"src/scan-summary.ts"() {
|
|
@@ -3394,6 +3408,7 @@ var init_setup_pi_shim = __esm({
|
|
|
3394
3408
|
import chalk2 from "chalk";
|
|
3395
3409
|
import { confirm } from "@inquirer/prompts";
|
|
3396
3410
|
import { parse as parseToml, stringify as stringifyToml } from "smol-toml";
|
|
3411
|
+
import * as yaml from "yaml";
|
|
3397
3412
|
var init_setup = __esm({
|
|
3398
3413
|
"src/setup.ts"() {
|
|
3399
3414
|
"use strict";
|
|
@@ -4320,6 +4335,7 @@ var init_scan = __esm({
|
|
|
4320
4335
|
init_policy();
|
|
4321
4336
|
init_dist();
|
|
4322
4337
|
init_dlp();
|
|
4338
|
+
init_hook_payload();
|
|
4323
4339
|
init_dist();
|
|
4324
4340
|
init_scan_summary();
|
|
4325
4341
|
init_setup();
|
|
@@ -4398,6 +4414,8 @@ var init_scan = __esm({
|
|
|
4398
4414
|
"exec_command",
|
|
4399
4415
|
"shell",
|
|
4400
4416
|
"run_shell_command",
|
|
4417
|
+
"run_command",
|
|
4418
|
+
// Antigravity (agy)
|
|
4401
4419
|
"write",
|
|
4402
4420
|
"edit",
|
|
4403
4421
|
"multiedit"
|
package/dist/index.js
CHANGED
|
@@ -119,9 +119,11 @@ function appendLocalAudit(toolName, args, decision, checkedBy, meta, auditHashAr
|
|
|
119
119
|
const argsField = auditHashArgsEnabled ? { argsHash: hashArgs(args) } : { args: args ? JSON.parse(redactSecrets(JSON.stringify(args))) : {} };
|
|
120
120
|
const testRun = isTestCall(toolName, args) || process.env.NODE9_TESTING === "1" ? { testRun: true } : {};
|
|
121
121
|
const ruleNameField = meta?.ruleName ? { ruleName: meta.ruleName } : {};
|
|
122
|
+
const agentToolNameField = meta?.agentToolName ? { agentToolName: meta.agentToolName } : {};
|
|
122
123
|
appendToLog(LOCAL_AUDIT_LOG, {
|
|
123
124
|
ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
124
125
|
tool: toolName,
|
|
126
|
+
...agentToolNameField,
|
|
125
127
|
...argsField,
|
|
126
128
|
decision,
|
|
127
129
|
checkedBy,
|
|
@@ -2998,7 +3000,14 @@ var DEFAULT_CONFIG = {
|
|
|
2998
3000
|
"edit_file",
|
|
2999
3001
|
"create_file",
|
|
3000
3002
|
"edit",
|
|
3001
|
-
"replace"
|
|
3003
|
+
"replace",
|
|
3004
|
+
// Claude / canonicalised Hermes — shouldSnapshot lowercases the
|
|
3005
|
+
// incoming name before set-membership, so we list the lowercase
|
|
3006
|
+
// forms of `Bash`/`Write`/`Edit`/`MultiEdit`. Without these,
|
|
3007
|
+
// post-canonicalisation Hermes `patch` / `write_file` (which now
|
|
3008
|
+
// arrive as `Edit` / `Write`) silently skipped snapshotting.
|
|
3009
|
+
"write",
|
|
3010
|
+
"multiedit"
|
|
3002
3011
|
],
|
|
3003
3012
|
onlyPaths: [],
|
|
3004
3013
|
ignorePaths: ["**/node_modules/**", "dist/**", "build/**", ".next/**", "**/*.log"]
|
package/dist/index.mjs
CHANGED
|
@@ -99,9 +99,11 @@ function appendLocalAudit(toolName, args, decision, checkedBy, meta, auditHashAr
|
|
|
99
99
|
const argsField = auditHashArgsEnabled ? { argsHash: hashArgs(args) } : { args: args ? JSON.parse(redactSecrets(JSON.stringify(args))) : {} };
|
|
100
100
|
const testRun = isTestCall(toolName, args) || process.env.NODE9_TESTING === "1" ? { testRun: true } : {};
|
|
101
101
|
const ruleNameField = meta?.ruleName ? { ruleName: meta.ruleName } : {};
|
|
102
|
+
const agentToolNameField = meta?.agentToolName ? { agentToolName: meta.agentToolName } : {};
|
|
102
103
|
appendToLog(LOCAL_AUDIT_LOG, {
|
|
103
104
|
ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
104
105
|
tool: toolName,
|
|
106
|
+
...agentToolNameField,
|
|
105
107
|
...argsField,
|
|
106
108
|
decision,
|
|
107
109
|
checkedBy,
|
|
@@ -2968,7 +2970,14 @@ var DEFAULT_CONFIG = {
|
|
|
2968
2970
|
"edit_file",
|
|
2969
2971
|
"create_file",
|
|
2970
2972
|
"edit",
|
|
2971
|
-
"replace"
|
|
2973
|
+
"replace",
|
|
2974
|
+
// Claude / canonicalised Hermes — shouldSnapshot lowercases the
|
|
2975
|
+
// incoming name before set-membership, so we list the lowercase
|
|
2976
|
+
// forms of `Bash`/`Write`/`Edit`/`MultiEdit`. Without these,
|
|
2977
|
+
// post-canonicalisation Hermes `patch` / `write_file` (which now
|
|
2978
|
+
// arrive as `Edit` / `Write`) silently skipped snapshotting.
|
|
2979
|
+
"write",
|
|
2980
|
+
"multiedit"
|
|
2972
2981
|
],
|
|
2973
2982
|
onlyPaths: [],
|
|
2974
2983
|
ignorePaths: ["**/node_modules/**", "dist/**", "build/**", ".next/**", "**/*.log"]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@node9/proxy",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.29.0",
|
|
4
4
|
"description": "The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"vscode",
|
|
45
45
|
"opencode",
|
|
46
46
|
"pi-agent",
|
|
47
|
+
"hermes-agent",
|
|
47
48
|
"sudo",
|
|
48
49
|
"security-proxy",
|
|
49
50
|
"human-in-the-loop",
|
|
@@ -90,6 +91,7 @@
|
|
|
90
91
|
"safe-regex2": "^5.1.0",
|
|
91
92
|
"smol-toml": "^1.6.1",
|
|
92
93
|
"string-width": "^4.2.3",
|
|
94
|
+
"yaml": "^2.9.0",
|
|
93
95
|
"zod": "^3.25.76"
|
|
94
96
|
},
|
|
95
97
|
"bundleDependencies": [
|