@praxis.guard/auditor-cli 0.0.62 → 0.0.64
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 +19 -0
- package/dist/adapters/claude-code/adapter.d.ts +3 -1
- package/dist/adapters/claude-code/adapter.d.ts.map +1 -1
- package/dist/adapters/claude-code/adapter.js +68 -0
- package/dist/adapters/claude-code/adapter.js.map +1 -1
- package/dist/adapters/claude-desktop.d.ts +2 -1
- package/dist/adapters/claude-desktop.d.ts.map +1 -1
- package/dist/adapters/claude-desktop.js +24 -0
- package/dist/adapters/claude-desktop.js.map +1 -1
- package/dist/adapters/codex.d.ts +3 -1
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +7 -1
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/copilot-cli/adapter.d.ts +3 -1
- package/dist/adapters/copilot-cli/adapter.d.ts.map +1 -1
- package/dist/adapters/copilot-cli/adapter.js +57 -1
- package/dist/adapters/copilot-cli/adapter.js.map +1 -1
- package/dist/adapters/copilot-cli/config.d.ts +6 -0
- package/dist/adapters/copilot-cli/config.d.ts.map +1 -1
- package/dist/adapters/copilot-cli/config.js +23 -0
- package/dist/adapters/copilot-cli/config.js.map +1 -1
- package/dist/adapters/cursor.d.ts +4 -1
- package/dist/adapters/cursor.d.ts.map +1 -1
- package/dist/adapters/cursor.js +15 -1
- package/dist/adapters/cursor.js.map +1 -1
- package/dist/adapters/remove-helpers.d.ts +23 -0
- package/dist/adapters/remove-helpers.d.ts.map +1 -0
- package/dist/adapters/remove-helpers.js +40 -0
- package/dist/adapters/remove-helpers.js.map +1 -0
- package/dist/adapters/select-targets.d.ts +10 -0
- package/dist/adapters/select-targets.d.ts.map +1 -1
- package/dist/adapters/select-targets.js +23 -1
- package/dist/adapters/select-targets.js.map +1 -1
- package/dist/adapters/types.d.ts +29 -0
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/adapters/vscode.d.ts +2 -1
- package/dist/adapters/vscode.d.ts.map +1 -1
- package/dist/adapters/vscode.js +38 -6
- package/dist/adapters/vscode.js.map +1 -1
- package/dist/approval/mcp-flow-create.d.ts +3 -0
- package/dist/approval/mcp-flow-create.d.ts.map +1 -0
- package/dist/approval/mcp-flow-create.js +76 -0
- package/dist/approval/mcp-flow-create.js.map +1 -0
- package/dist/approval/mcp-flow-existing.d.ts +14 -0
- package/dist/approval/mcp-flow-existing.d.ts.map +1 -0
- package/dist/approval/mcp-flow-existing.js +43 -0
- package/dist/approval/mcp-flow-existing.js.map +1 -0
- package/dist/approval/mcp-flow-outcome.d.ts +5 -0
- package/dist/approval/mcp-flow-outcome.d.ts.map +1 -0
- package/dist/approval/mcp-flow-outcome.js +19 -0
- package/dist/approval/mcp-flow-outcome.js.map +1 -0
- package/dist/approval/mcp-flow-pending.d.ts +7 -0
- package/dist/approval/mcp-flow-pending.d.ts.map +1 -0
- package/dist/approval/mcp-flow-pending.js +25 -0
- package/dist/approval/mcp-flow-pending.js.map +1 -0
- package/dist/approval/mcp-flow-redeem.d.ts +13 -0
- package/dist/approval/mcp-flow-redeem.d.ts.map +1 -0
- package/dist/approval/mcp-flow-redeem.js +20 -0
- package/dist/approval/mcp-flow-redeem.js.map +1 -0
- package/dist/approval/mcp-flow.d.ts +6 -28
- package/dist/approval/mcp-flow.d.ts.map +1 -1
- package/dist/approval/mcp-flow.js +21 -129
- package/dist/approval/mcp-flow.js.map +1 -1
- package/dist/approval/mcp-flow.types.d.ts +42 -0
- package/dist/approval/mcp-flow.types.d.ts.map +1 -0
- package/dist/approval/mcp-flow.types.js +2 -0
- package/dist/approval/mcp-flow.types.js.map +1 -0
- package/dist/cli/cursor-config/environment-config.d.ts +8 -0
- package/dist/cli/cursor-config/environment-config.d.ts.map +1 -1
- package/dist/cli/cursor-config/environment-config.js +45 -1
- package/dist/cli/cursor-config/environment-config.js.map +1 -1
- package/dist/cli/cursor-config/hooks-config.d.ts +13 -0
- package/dist/cli/cursor-config/hooks-config.d.ts.map +1 -1
- package/dist/cli/cursor-config/hooks-config.js +64 -0
- package/dist/cli/cursor-config/hooks-config.js.map +1 -1
- package/dist/cli/cursor-config/index.d.ts +3 -3
- package/dist/cli/cursor-config/index.d.ts.map +1 -1
- package/dist/cli/cursor-config/index.js +3 -3
- package/dist/cli/cursor-config/index.js.map +1 -1
- package/dist/cli/cursor-config/json-io.d.ts +2 -0
- package/dist/cli/cursor-config/json-io.d.ts.map +1 -1
- package/dist/cli/cursor-config/json-io.js +5 -1
- package/dist/cli/cursor-config/json-io.js.map +1 -1
- package/dist/cli/cursor-config/mcp-config.d.ts +5 -0
- package/dist/cli/cursor-config/mcp-config.d.ts.map +1 -1
- package/dist/cli/cursor-config/mcp-config.js +37 -0
- package/dist/cli/cursor-config/mcp-config.js.map +1 -1
- package/dist/cli/cursor-config.d.ts +1 -1
- package/dist/cli/cursor-config.d.ts.map +1 -1
- package/dist/cli/cursor-config.js +1 -1
- package/dist/cli/cursor-config.js.map +1 -1
- package/dist/cli/dispatch-uninstall.d.ts +6 -0
- package/dist/cli/dispatch-uninstall.d.ts.map +1 -0
- package/dist/cli/dispatch-uninstall.js +10 -0
- package/dist/cli/dispatch-uninstall.js.map +1 -0
- package/dist/cli/doctor-adapter-lines.d.ts +4 -0
- package/dist/cli/doctor-adapter-lines.d.ts.map +1 -0
- package/dist/cli/doctor-adapter-lines.js +47 -0
- package/dist/cli/doctor-adapter-lines.js.map +1 -0
- package/dist/cli/doctor-notifications.d.ts +5 -0
- package/dist/cli/doctor-notifications.d.ts.map +1 -0
- package/dist/cli/doctor-notifications.js +10 -0
- package/dist/cli/doctor-notifications.js.map +1 -0
- package/dist/cli/doctor-remote.d.ts +3 -0
- package/dist/cli/doctor-remote.d.ts.map +1 -0
- package/dist/cli/doctor-remote.js +48 -0
- package/dist/cli/doctor-remote.js.map +1 -0
- package/dist/cli/doctor.d.ts +1 -22
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +46 -142
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +3 -0
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +12 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/setup-gateway.d.ts +13 -0
- package/dist/cli/setup-gateway.d.ts.map +1 -1
- package/dist/cli/setup-gateway.js +24 -0
- package/dist/cli/setup-gateway.js.map +1 -1
- package/dist/cli/uninstall-all.d.ts +24 -0
- package/dist/cli/uninstall-all.d.ts.map +1 -0
- package/dist/cli/uninstall-all.js +249 -0
- package/dist/cli/uninstall-all.js.map +1 -0
- package/dist/codex/config-hooks.d.ts +7 -0
- package/dist/codex/config-hooks.d.ts.map +1 -1
- package/dist/codex/config-hooks.js +28 -0
- package/dist/codex/config-hooks.js.map +1 -1
- package/dist/codex/config-io.d.ts +1 -0
- package/dist/codex/config-io.d.ts.map +1 -1
- package/dist/codex/config-io.js +4 -1
- package/dist/codex/config-io.js.map +1 -1
- package/dist/codex/config-toml.d.ts +7 -0
- package/dist/codex/config-toml.d.ts.map +1 -1
- package/dist/codex/config-toml.js +50 -0
- package/dist/codex/config-toml.js.map +1 -1
- package/dist/codex/config.d.ts +2 -0
- package/dist/codex/config.d.ts.map +1 -1
- package/dist/codex/config.js +52 -3
- package/dist/codex/config.js.map +1 -1
- package/dist/mcp/evaluate-guard-approval.d.ts +47 -0
- package/dist/mcp/evaluate-guard-approval.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-approval.js +80 -0
- package/dist/mcp/evaluate-guard-approval.js.map +1 -0
- package/dist/mcp/evaluate-guard-policy.d.ts +3 -0
- package/dist/mcp/evaluate-guard-policy.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-policy.js +6 -0
- package/dist/mcp/evaluate-guard-policy.js.map +1 -0
- package/dist/mcp/evaluate-guard-proposal.d.ts +16 -0
- package/dist/mcp/evaluate-guard-proposal.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-proposal.js +57 -0
- package/dist/mcp/evaluate-guard-proposal.js.map +1 -0
- package/dist/mcp/evaluate-guard-run.d.ts +23 -0
- package/dist/mcp/evaluate-guard-run.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-run.js +75 -0
- package/dist/mcp/evaluate-guard-run.js.map +1 -0
- package/dist/mcp/evaluate-guard-telemetry.d.ts +22 -0
- package/dist/mcp/evaluate-guard-telemetry.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-telemetry.js +38 -0
- package/dist/mcp/evaluate-guard-telemetry.js.map +1 -0
- package/dist/mcp/evaluate-guard-tier.d.ts +18 -0
- package/dist/mcp/evaluate-guard-tier.d.ts.map +1 -0
- package/dist/mcp/evaluate-guard-tier.js +42 -0
- package/dist/mcp/evaluate-guard-tier.js.map +1 -0
- package/dist/mcp/evaluate-guard.d.ts +2 -5
- package/dist/mcp/evaluate-guard.d.ts.map +1 -1
- package/dist/mcp/evaluate-guard.js +18 -195
- package/dist/mcp/evaluate-guard.js.map +1 -1
- package/dist/mcp/gateway-call-handler.d.ts +9 -0
- package/dist/mcp/gateway-call-handler.d.ts.map +1 -0
- package/dist/mcp/gateway-call-handler.js +61 -0
- package/dist/mcp/gateway-call-handler.js.map +1 -0
- package/dist/mcp/gateway-call-results.d.ts +5 -0
- package/dist/mcp/gateway-call-results.d.ts.map +1 -0
- package/dist/mcp/gateway-call-results.js +14 -0
- package/dist/mcp/gateway-call-results.js.map +1 -0
- package/dist/mcp/gateway-connection-lib.d.ts +54 -0
- package/dist/mcp/gateway-connection-lib.d.ts.map +1 -0
- package/dist/mcp/gateway-connection-lib.js +39 -0
- package/dist/mcp/gateway-connection-lib.js.map +1 -0
- package/dist/mcp/gateway-connection.d.ts +16 -0
- package/dist/mcp/gateway-connection.d.ts.map +1 -0
- package/dist/mcp/gateway-connection.js +54 -0
- package/dist/mcp/gateway-connection.js.map +1 -0
- package/dist/mcp/gateway-log.d.ts +5 -0
- package/dist/mcp/gateway-log.d.ts.map +1 -0
- package/dist/mcp/gateway-log.js +9 -0
- package/dist/mcp/gateway-log.js.map +1 -0
- package/dist/mcp/gateway.d.ts +2 -20
- package/dist/mcp/gateway.d.ts.map +1 -1
- package/dist/mcp/gateway.js +18 -186
- package/dist/mcp/gateway.js.map +1 -1
- package/dist/policies.v1.json +6 -0
- package/native/darwin-amd64/praxis-guard-daemon +0 -0
- package/native/darwin-amd64/praxis-guard-hook +0 -0
- package/native/darwin-arm64/praxis-guard-daemon +0 -0
- package/native/darwin-arm64/praxis-guard-hook +0 -0
- package/native/linux-amd64/praxis-guard-daemon +0 -0
- package/native/linux-amd64/praxis-guard-hook +0 -0
- package/native/linux-arm64/praxis-guard-daemon +0 -0
- package/native/linux-arm64/praxis-guard-hook +0 -0
- package/package.json +1 -1
package/dist/cli/main.js
CHANGED
|
@@ -47,6 +47,18 @@ export async function runCli(argv) {
|
|
|
47
47
|
return;
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
+
if (a0 === "uninstall") {
|
|
51
|
+
const { dispatchUninstallCommand } = await import("./dispatch-uninstall.js");
|
|
52
|
+
try {
|
|
53
|
+
await dispatchUninstallCommand(a1, argv.slice(2));
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
57
|
+
process.stderr.write(`${msg}\n`);
|
|
58
|
+
process.exitCode = 1;
|
|
59
|
+
}
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
50
62
|
if (a0 === "logout") {
|
|
51
63
|
const { runLogout } = await import("./logout.js");
|
|
52
64
|
try {
|
package/dist/cli/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SetupResult } from "../adapters/types.js";
|
|
1
2
|
type GatewayOptions = {
|
|
2
3
|
apply: boolean;
|
|
3
4
|
revert: boolean;
|
|
@@ -7,5 +8,17 @@ type GatewayOptions = {
|
|
|
7
8
|
};
|
|
8
9
|
export declare function parseSetupGatewayOptions(args: string[]): GatewayOptions;
|
|
9
10
|
export declare function runSetupGateway(args: string[]): Promise<void>;
|
|
11
|
+
/**
|
|
12
|
+
* Gateway revert for `auditor uninstall`: restore the pre-migration Desktop
|
|
13
|
+
* config from the newest `*.praxis-bak-*` backup, so connectors moved into the
|
|
14
|
+
* gateway come back before the Claude Desktop adapter strips the `praxis-guard`
|
|
15
|
+
* entry. Unlike the interactive `--revert`, this never refuses on drift and
|
|
16
|
+
* never sets a process exit code — a non-migrated or backup-less Desktop is a
|
|
17
|
+
* clean no-op (`changed: false`), reported in the uninstall summary.
|
|
18
|
+
*/
|
|
19
|
+
export declare function revertGatewayForUninstall(opts: {
|
|
20
|
+
desktopPath?: string;
|
|
21
|
+
apply: boolean;
|
|
22
|
+
}): Promise<SetupResult>;
|
|
10
23
|
export {};
|
|
11
24
|
//# sourceMappingURL=setup-gateway.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-gateway.d.ts","sourceRoot":"","sources":["../../src/cli/setup-gateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setup-gateway.d.ts","sourceRoot":"","sources":["../../src/cli/setup-gateway.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAsBxD,KAAK,cAAc,GAAG;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAIF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAavE;AAsCD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CASnE;AAyHD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,WAAW,CAAC,CAevB"}
|
|
@@ -195,6 +195,30 @@ async function newestBackup(desktopPath) {
|
|
|
195
195
|
// ISO-8601 stamps sort lexically by time, so the last is the newest.
|
|
196
196
|
return baks.length ? path.join(dir, baks[baks.length - 1]) : null;
|
|
197
197
|
}
|
|
198
|
+
/**
|
|
199
|
+
* Gateway revert for `auditor uninstall`: restore the pre-migration Desktop
|
|
200
|
+
* config from the newest `*.praxis-bak-*` backup, so connectors moved into the
|
|
201
|
+
* gateway come back before the Claude Desktop adapter strips the `praxis-guard`
|
|
202
|
+
* entry. Unlike the interactive `--revert`, this never refuses on drift and
|
|
203
|
+
* never sets a process exit code — a non-migrated or backup-less Desktop is a
|
|
204
|
+
* clean no-op (`changed: false`), reported in the uninstall summary.
|
|
205
|
+
*/
|
|
206
|
+
export async function revertGatewayForUninstall(opts) {
|
|
207
|
+
const desktopPath = opts.desktopPath?.trim() || claudeDesktopConfigPath();
|
|
208
|
+
const backup = await newestBackup(desktopPath);
|
|
209
|
+
if (!backup) {
|
|
210
|
+
return { path: desktopPath, changed: false, message: "no gateway backup; nothing to revert" };
|
|
211
|
+
}
|
|
212
|
+
const current = await readJson(desktopPath).catch(() => null);
|
|
213
|
+
if (!isMigratedShape(current)) {
|
|
214
|
+
return { path: desktopPath, changed: false, message: "Desktop not gateway-migrated; skipping revert" };
|
|
215
|
+
}
|
|
216
|
+
if (!opts.apply) {
|
|
217
|
+
return { path: desktopPath, changed: true, message: `would restore Desktop config from ${backup}` };
|
|
218
|
+
}
|
|
219
|
+
await copyFile(backup, desktopPath);
|
|
220
|
+
return { path: desktopPath, changed: true, message: `restored Desktop config from ${backup}` };
|
|
221
|
+
}
|
|
198
222
|
async function revertMigration(desktopPath, opts) {
|
|
199
223
|
const backup = await newestBackup(desktopPath);
|
|
200
224
|
if (!backup) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-gateway.js","sourceRoot":"","sources":["../../src/cli/setup-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAgB,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"setup-gateway.js","sourceRoot":"","sources":["../../src/cli/setup-gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { AgentId } from "../adapters/types.js";
|
|
2
|
+
type UninstallOptions = {
|
|
3
|
+
apply: boolean;
|
|
4
|
+
purge: boolean;
|
|
5
|
+
projectDir: string;
|
|
6
|
+
forIds: AgentId[];
|
|
7
|
+
};
|
|
8
|
+
export declare function parseUninstallOptions(args: string[]): UninstallOptions;
|
|
9
|
+
/**
|
|
10
|
+
* `auditor uninstall` — reverse everything `auditor setup *` created.
|
|
11
|
+
*
|
|
12
|
+
* Order is load-bearing: agent configs are stripped BEFORE the daemon/binary
|
|
13
|
+
* go, so a fail-closed Cursor/Codex hook can never lock the user out mid-run.
|
|
14
|
+
* Gateway revert runs first so connectors moved behind the gateway are restored
|
|
15
|
+
* before the Claude Desktop adapter strips the `praxis-guard` entry.
|
|
16
|
+
*
|
|
17
|
+
* configs (gateway revert -> per-adapter remove) -> daemon -> state -> [purge] -> verify
|
|
18
|
+
*
|
|
19
|
+
* Dry-run by default; pass --apply to write. Every step is isolated: one
|
|
20
|
+
* unreadable file is reported and skipped, never aborting the rest.
|
|
21
|
+
*/
|
|
22
|
+
export declare function runUninstall(args: string[]): Promise<void>;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=uninstall-all.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall-all.d.ts","sourceRoot":"","sources":["../../src/cli/uninstall-all.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAgB,OAAO,EAAe,MAAM,sBAAsB,CAAC;AAY/E,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB,CAAC;AAKF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,CA6BtE;AA8ID;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiFhE"}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
2
|
+
import { readdir, rm } from "node:fs/promises";
|
|
3
|
+
import os from "node:os";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import process from "node:process";
|
|
6
|
+
import { claudeDesktopConfigPath } from "../adapters/claude-desktop.js";
|
|
7
|
+
import { parseForFlag, selectUninstallTargets } from "../adapters/select-targets.js";
|
|
8
|
+
import { guardDaemonPidPath, guardDaemonSocketPath } from "../daemon/paths.js";
|
|
9
|
+
import { uninstallDaemonService } from "../daemon/service.js";
|
|
10
|
+
import { resolveGatewayConfigPath, resolveGatewayStorageRoot } from "../mcp/gateway-config.js";
|
|
11
|
+
import { policiesV1MetaPathFor, resolvedPoliciesV1Path } from "../policy/paths.js";
|
|
12
|
+
import { credentialsPath } from "./credentials.js";
|
|
13
|
+
import { installIdPath } from "./install-id.js";
|
|
14
|
+
import { revertGatewayForUninstall } from "./setup-gateway.js";
|
|
15
|
+
const NPM_PACKAGE = "@praxis.guard/auditor-cli";
|
|
16
|
+
export function parseUninstallOptions(args) {
|
|
17
|
+
const { forIds, rest } = parseForFlag(args);
|
|
18
|
+
let apply = false;
|
|
19
|
+
let purge = false;
|
|
20
|
+
let projectDir = process.cwd();
|
|
21
|
+
for (let i = 0; i < rest.length; i++) {
|
|
22
|
+
const arg = rest[i];
|
|
23
|
+
if (arg === "--apply") {
|
|
24
|
+
apply = true;
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
if (arg === "--dry-run") {
|
|
28
|
+
apply = false;
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
if (arg === "--purge") {
|
|
32
|
+
purge = true;
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if (arg === "--project") {
|
|
36
|
+
const value = rest[i + 1];
|
|
37
|
+
if (!value)
|
|
38
|
+
throw new Error("Missing value for --project");
|
|
39
|
+
projectDir = value;
|
|
40
|
+
i++;
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
throw new Error(`Unknown uninstall option: ${arg}`);
|
|
44
|
+
}
|
|
45
|
+
return { apply, purge, projectDir, forIds };
|
|
46
|
+
}
|
|
47
|
+
function out(line) {
|
|
48
|
+
process.stdout.write(`${line}\n`);
|
|
49
|
+
}
|
|
50
|
+
async function runStep(label, fn, results) {
|
|
51
|
+
try {
|
|
52
|
+
const r = await fn();
|
|
53
|
+
results.push({ label, status: r.changed ? "changed" : "noop", message: r.message });
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
results.push({ label, status: "error", message: e instanceof Error ? e.message : String(e) });
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/** Root of the global Praxis state dir (~/.praxis). Honors a sandboxed HOME. */
|
|
60
|
+
function praxisRoot() {
|
|
61
|
+
return path.join(os.homedir(), ".praxis");
|
|
62
|
+
}
|
|
63
|
+
/** Directory holding credentials + install-id (~/.config/praxis, or $XDG_CONFIG_HOME/praxis). */
|
|
64
|
+
function praxisConfigDir() {
|
|
65
|
+
return path.dirname(credentialsPath());
|
|
66
|
+
}
|
|
67
|
+
/** Remove a file or directory, honoring dry-run and reporting what happened. */
|
|
68
|
+
async function rmPath(pathname, dryRun) {
|
|
69
|
+
if (!existsSync(pathname))
|
|
70
|
+
return { changed: false, message: `absent: ${pathname}`, path: pathname };
|
|
71
|
+
if (dryRun)
|
|
72
|
+
return { changed: true, message: `would remove ${pathname}`, path: pathname };
|
|
73
|
+
await rm(pathname, { recursive: true, force: true });
|
|
74
|
+
return { changed: true, message: `removed ${pathname}`, path: pathname };
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Remove a directory only when it is empty. Everything under ~/.praxis and
|
|
78
|
+
* ~/.config/praxis is Praxis-owned, so once the targeted pieces are gone an
|
|
79
|
+
* empty parent is residue worth sweeping (e.g. the dir is kept when policies
|
|
80
|
+
* remain without --purge, removed once --purge clears them).
|
|
81
|
+
*/
|
|
82
|
+
async function pruneEmptyDir(dir, dryRun) {
|
|
83
|
+
if (!existsSync(dir))
|
|
84
|
+
return { changed: false, message: `absent: ${dir}`, path: dir };
|
|
85
|
+
let entries = [];
|
|
86
|
+
try {
|
|
87
|
+
entries = await readdir(dir);
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
return { changed: false, message: `unreadable: ${dir}`, path: dir };
|
|
91
|
+
}
|
|
92
|
+
if (entries.length > 0)
|
|
93
|
+
return { changed: false, message: `kept (not empty): ${dir}`, path: dir };
|
|
94
|
+
if (dryRun)
|
|
95
|
+
return { changed: true, message: `would remove empty ${dir}`, path: dir };
|
|
96
|
+
await rm(dir, { recursive: true, force: true });
|
|
97
|
+
return { changed: true, message: `removed empty ${dir}`, path: dir };
|
|
98
|
+
}
|
|
99
|
+
/** Stop the running daemon and remove its launchd/systemd service + socket/pid. */
|
|
100
|
+
async function removeDaemon(dryRun) {
|
|
101
|
+
const sock = guardDaemonSocketPath();
|
|
102
|
+
const pid = guardDaemonPidPath();
|
|
103
|
+
const present = existsSync(sock) || existsSync(pid);
|
|
104
|
+
if (dryRun) {
|
|
105
|
+
return { changed: true, message: "would stop daemon and remove launchd/systemd service" };
|
|
106
|
+
}
|
|
107
|
+
let serviceMsg = "no service to remove";
|
|
108
|
+
try {
|
|
109
|
+
const target = await uninstallDaemonService();
|
|
110
|
+
serviceMsg = `removed service ${target}`;
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
// Unsupported platform or nothing installed — non-fatal.
|
|
114
|
+
}
|
|
115
|
+
await rm(sock, { force: true }).catch(() => undefined);
|
|
116
|
+
await rm(pid, { force: true }).catch(() => undefined);
|
|
117
|
+
return { changed: present || serviceMsg.startsWith("removed"), message: serviceMsg };
|
|
118
|
+
}
|
|
119
|
+
/** Remove gateway-migration backups (`claude_desktop_config.json.praxis-bak-*`). */
|
|
120
|
+
async function removeGatewayBackups(dryRun, results) {
|
|
121
|
+
const desktop = claudeDesktopConfigPath();
|
|
122
|
+
const dir = path.dirname(desktop);
|
|
123
|
+
const base = path.basename(desktop);
|
|
124
|
+
let names = [];
|
|
125
|
+
try {
|
|
126
|
+
names = await readdir(dir);
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
for (const name of names.filter((n) => n.startsWith(`${base}.praxis-bak-`))) {
|
|
132
|
+
await runStep(`backup ${name}`, () => rmPath(path.join(dir, name), dryRun), results);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
function anyHookConfigured(st) {
|
|
136
|
+
const g = st.hook?.global;
|
|
137
|
+
const p = st.hook?.project;
|
|
138
|
+
return !!(g?.shell || g?.mcp || p?.shell || p?.mcp);
|
|
139
|
+
}
|
|
140
|
+
/** Re-read each target's status and collect anything still configured. */
|
|
141
|
+
async function collectResidue(targets, projectDir) {
|
|
142
|
+
const residue = [];
|
|
143
|
+
for (const adapter of targets) {
|
|
144
|
+
try {
|
|
145
|
+
const st = await adapter.status({ projectDir });
|
|
146
|
+
const hookOn = anyHookConfigured(st);
|
|
147
|
+
const mcpOn = !!st.mcp?.configured;
|
|
148
|
+
if (hookOn || mcpOn) {
|
|
149
|
+
const parts = [hookOn ? "hook" : "", mcpOn ? "mcp" : ""].filter(Boolean).join("+");
|
|
150
|
+
residue.push(`${adapter.id}: ${parts} still configured`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
// status() is best-effort during verification — ignore read failures.
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return residue;
|
|
158
|
+
}
|
|
159
|
+
/** Strip a single adapter's hook + MCP + cloud config, each isolated. */
|
|
160
|
+
async function removeFromAdapter(adapter, projectDir, dryRun, results) {
|
|
161
|
+
if (adapter.removeHook) {
|
|
162
|
+
await runStep(`${adapter.id} hook`, () => adapter.removeHook({ scope: "global", projectDir, dryRun }), results);
|
|
163
|
+
}
|
|
164
|
+
await runStep(`${adapter.id} mcp`, () => adapter.removeMcp({ projectDir, dryRun }), results);
|
|
165
|
+
if (adapter.removeCloud) {
|
|
166
|
+
await runStep(`${adapter.id} cloud`, () => adapter.removeCloud({ projectDir, dryRun }), results);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* `auditor uninstall` — reverse everything `auditor setup *` created.
|
|
171
|
+
*
|
|
172
|
+
* Order is load-bearing: agent configs are stripped BEFORE the daemon/binary
|
|
173
|
+
* go, so a fail-closed Cursor/Codex hook can never lock the user out mid-run.
|
|
174
|
+
* Gateway revert runs first so connectors moved behind the gateway are restored
|
|
175
|
+
* before the Claude Desktop adapter strips the `praxis-guard` entry.
|
|
176
|
+
*
|
|
177
|
+
* configs (gateway revert -> per-adapter remove) -> daemon -> state -> [purge] -> verify
|
|
178
|
+
*
|
|
179
|
+
* Dry-run by default; pass --apply to write. Every step is isolated: one
|
|
180
|
+
* unreadable file is reported and skipped, never aborting the rest.
|
|
181
|
+
*/
|
|
182
|
+
export async function runUninstall(args) {
|
|
183
|
+
const opts = parseUninstallOptions(args);
|
|
184
|
+
const dryRun = !opts.apply;
|
|
185
|
+
const targets = selectUninstallTargets(opts.forIds);
|
|
186
|
+
const results = [];
|
|
187
|
+
out(`uninstall${dryRun ? " (dry run)" : ""} — agents: ${targets.map((a) => a.id).join(", ")}`);
|
|
188
|
+
// 1. Agent configs. Gateway revert first (restores moved Desktop connectors),
|
|
189
|
+
// then each adapter strips its hook/MCP/cloud entries.
|
|
190
|
+
await runStep("gateway revert", () => revertGatewayForUninstall({ apply: opts.apply }), results);
|
|
191
|
+
for (const adapter of targets) {
|
|
192
|
+
await removeFromAdapter(adapter, opts.projectDir, dryRun, results);
|
|
193
|
+
}
|
|
194
|
+
// 2. Daemon (after configs so fail-closed hooks are already gone).
|
|
195
|
+
await runStep("daemon", () => removeDaemon(dryRun), results);
|
|
196
|
+
// 3. Runtime state.
|
|
197
|
+
await runStep("state ~/.praxis/guard", () => rmPath(path.dirname(guardDaemonSocketPath()), dryRun), results);
|
|
198
|
+
await runStep("state ~/.praxis/gateway", () => rmPath(resolveGatewayStorageRoot(), dryRun), results);
|
|
199
|
+
await runStep("state gateway-servers.json", () => rmPath(resolveGatewayConfigPath(), dryRun), results);
|
|
200
|
+
// The bin shim is dropped by the auditor-cli postinstall; it is Praxis-owned.
|
|
201
|
+
await runStep("state ~/.praxis/bin", () => rmPath(path.join(praxisRoot(), "bin"), dryRun), results);
|
|
202
|
+
// 4. Purge (opt-in): credentials, install id, policies, gateway backups.
|
|
203
|
+
if (opts.purge) {
|
|
204
|
+
await runStep("purge credentials", () => rmPath(credentialsPath(), dryRun), results);
|
|
205
|
+
await runStep("purge install-id", () => rmPath(installIdPath(), dryRun), results);
|
|
206
|
+
const policyPath = resolvedPoliciesV1Path();
|
|
207
|
+
await runStep("purge policies", () => rmPath(policyPath, dryRun), results);
|
|
208
|
+
await runStep("purge policies meta", () => rmPath(policiesV1MetaPathFor(policyPath), dryRun), results);
|
|
209
|
+
await removeGatewayBackups(dryRun, results);
|
|
210
|
+
}
|
|
211
|
+
// 5. Sweep now-empty Praxis dirs (kept when policies remain without --purge).
|
|
212
|
+
await runStep("prune ~/.praxis", () => pruneEmptyDir(praxisRoot(), dryRun), results);
|
|
213
|
+
await runStep("prune ~/.config/praxis", () => pruneEmptyDir(praxisConfigDir(), dryRun), results);
|
|
214
|
+
// Report.
|
|
215
|
+
out("");
|
|
216
|
+
for (const r of results) {
|
|
217
|
+
const mark = r.status === "error" ? "ERROR" : r.status === "changed" ? "•" : "·";
|
|
218
|
+
out(` ${mark} ${r.label}: ${r.message}`);
|
|
219
|
+
}
|
|
220
|
+
const errors = results.filter((r) => r.status === "error");
|
|
221
|
+
// 6. Verify (post-write only): re-read status and flag any residue.
|
|
222
|
+
if (!dryRun) {
|
|
223
|
+
const residue = await collectResidue(targets, opts.projectDir);
|
|
224
|
+
out("");
|
|
225
|
+
if (residue.length === 0) {
|
|
226
|
+
out("Verified: no agent hook/MCP residue remains.");
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
out("Residue still present (re-run uninstall, or remove by hand):");
|
|
230
|
+
for (const line of residue)
|
|
231
|
+
out(` ! ${line}`);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
out("");
|
|
235
|
+
if (dryRun) {
|
|
236
|
+
out("Dry run: no files written. Re-run with --apply to uninstall.");
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
if (!opts.purge) {
|
|
240
|
+
out("Kept credentials + policies. Re-run with --purge to remove those too.");
|
|
241
|
+
}
|
|
242
|
+
out(`Last step (this CLI cannot remove its own binary): npm uninstall -g ${NPM_PACKAGE}`);
|
|
243
|
+
}
|
|
244
|
+
if (errors.length > 0) {
|
|
245
|
+
process.exitCode = 1;
|
|
246
|
+
process.stderr.write(`\n${errors.length} step(s) failed; see ERROR lines above.\n`);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
//# sourceMappingURL=uninstall-all.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall-all.js","sourceRoot":"","sources":["../../src/cli/uninstall-all.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
type JsonMap = Record<string, unknown>;
|
|
2
2
|
export declare function mergeCodexHooks(existing: JsonMap | null): JsonMap;
|
|
3
|
+
/**
|
|
4
|
+
* Inverse of mergeCodexHooks: drop the Praxis hook groups from PreToolUse and
|
|
5
|
+
* PermissionRequest, pruning emptied arrays and the `hooks` object. Returns the
|
|
6
|
+
* stripped config (caller deletes the file if nothing meaningful remains), or
|
|
7
|
+
* null when there was no input.
|
|
8
|
+
*/
|
|
9
|
+
export declare function removePraxisCodexHooks(existing: JsonMap | null): JsonMap | null;
|
|
3
10
|
export declare function hooksContainCommand(config: JsonMap | null, event: string, command: string): boolean;
|
|
4
11
|
export declare const CODEX_PRE_TOOL_COMMAND = "auditor hook codex-pre-tool-use";
|
|
5
12
|
export declare const CODEX_PERMISSION_COMMAND = "auditor hook codex-permission-request";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-hooks.d.ts","sourceRoot":"","sources":["../../src/codex/config-hooks.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAyBvC,wBAAgB,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAqBjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAYnG;AAED,eAAO,MAAM,sBAAsB,oCAAmB,CAAC;AACvD,eAAO,MAAM,wBAAwB,0CAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"config-hooks.d.ts","sourceRoot":"","sources":["../../src/codex/config-hooks.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAyBvC,wBAAgB,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAqBjE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,CAgB/E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAYnG;AAED,eAAO,MAAM,sBAAsB,oCAAmB,CAAC;AACvD,eAAO,MAAM,wBAAwB,0CAAqB,CAAC"}
|
|
@@ -40,6 +40,34 @@ export function mergeCodexHooks(existing) {
|
|
|
40
40
|
]);
|
|
41
41
|
return config;
|
|
42
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Inverse of mergeCodexHooks: drop the Praxis hook groups from PreToolUse and
|
|
45
|
+
* PermissionRequest, pruning emptied arrays and the `hooks` object. Returns the
|
|
46
|
+
* stripped config (caller deletes the file if nothing meaningful remains), or
|
|
47
|
+
* null when there was no input.
|
|
48
|
+
*/
|
|
49
|
+
export function removePraxisCodexHooks(existing) {
|
|
50
|
+
if (!existing)
|
|
51
|
+
return null;
|
|
52
|
+
const config = structuredClone(existing);
|
|
53
|
+
const hooks = config.hooks && typeof config.hooks === "object" && !Array.isArray(config.hooks)
|
|
54
|
+
? config.hooks
|
|
55
|
+
: null;
|
|
56
|
+
if (!hooks)
|
|
57
|
+
return config;
|
|
58
|
+
for (const event of ["PreToolUse", "PermissionRequest"]) {
|
|
59
|
+
if (!Array.isArray(hooks[event]))
|
|
60
|
+
continue;
|
|
61
|
+
const filtered = hooks[event].filter((entry) => !isPraxisHookGroup(entry));
|
|
62
|
+
if (filtered.length === 0)
|
|
63
|
+
delete hooks[event];
|
|
64
|
+
else
|
|
65
|
+
hooks[event] = filtered;
|
|
66
|
+
}
|
|
67
|
+
if (Object.keys(hooks).length === 0)
|
|
68
|
+
delete config.hooks;
|
|
69
|
+
return config;
|
|
70
|
+
}
|
|
43
71
|
export function hooksContainCommand(config, event, command) {
|
|
44
72
|
const hooks = config?.hooks;
|
|
45
73
|
if (!hooks || typeof hooks !== "object" || Array.isArray(hooks))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-hooks.js","sourceRoot":"","sources":["../../src/codex/config-hooks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-hooks.js","sourceRoot":"","sources":["../../src/codex/config-hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
type JsonMap = Record<string, unknown>;
|
|
2
2
|
export declare function readText(pathname: string): Promise<string>;
|
|
3
3
|
export declare function writeAtomic(pathname: string, content: string): Promise<void>;
|
|
4
|
+
export declare function removeFile(pathname: string): Promise<void>;
|
|
4
5
|
export declare function readJson(pathname: string): Promise<JsonMap | null>;
|
|
5
6
|
export {};
|
|
6
7
|
//# sourceMappingURL=config-io.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-io.d.ts","sourceRoot":"","sources":["../../src/codex/config-io.ts"],"names":[],"mappings":"AAGA,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvC,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhE;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKlF;AAED,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAYxE"}
|
|
1
|
+
{"version":3,"file":"config-io.d.ts","sourceRoot":"","sources":["../../src/codex/config-io.ts"],"names":[],"mappings":"AAGA,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvC,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhE;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKlF;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhE;AAED,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAYxE"}
|
package/dist/codex/config-io.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
|
|
1
|
+
import { mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
export async function readText(pathname) {
|
|
4
4
|
try {
|
|
@@ -16,6 +16,9 @@ export async function writeAtomic(pathname, content) {
|
|
|
16
16
|
await writeFile(temp, content, "utf8");
|
|
17
17
|
await rename(temp, pathname);
|
|
18
18
|
}
|
|
19
|
+
export async function removeFile(pathname) {
|
|
20
|
+
await rm(pathname, { force: true });
|
|
21
|
+
}
|
|
19
22
|
export async function readJson(pathname) {
|
|
20
23
|
const raw = await readText(pathname);
|
|
21
24
|
if (!raw)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-io.js","sourceRoot":"","sources":["../../src/codex/config-io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"config-io.js","sourceRoot":"","sources":["../../src/codex/config-io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,QAAgB;IAC7C,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QAClE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,OAAe;IACjE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACjG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,QAAgB;IAC7C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAiB,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,KAAK,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACzG,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
export declare function mergeCodexConfigToml(source: string): string;
|
|
2
2
|
export declare function isPraxisMcpConfigured(config: string): boolean;
|
|
3
3
|
export declare function isUnifiedExecDisabled(config: string): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Inverse of mergeCodexConfigToml: strip the Praxis MCP tables and the
|
|
6
|
+
* Praxis-added `[features] unified_exec = false`. A `[features]` table that
|
|
7
|
+
* holds nothing but that flag is removed entirely; one with other keys keeps
|
|
8
|
+
* them. Returns "" when the document is left empty (caller deletes the file).
|
|
9
|
+
*/
|
|
10
|
+
export declare function removePraxisCodexConfig(source: string): string;
|
|
4
11
|
//# sourceMappingURL=config-toml.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-toml.d.ts","sourceRoot":"","sources":["../../src/codex/config-toml.ts"],"names":[],"mappings":"AA8DA,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI7D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7D"}
|
|
1
|
+
{"version":3,"file":"config-toml.d.ts","sourceRoot":"","sources":["../../src/codex/config-toml.ts"],"names":[],"mappings":"AA8DA,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI7D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7D;AA2BD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmB9D"}
|