@purix/cli 0.1.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/LICENSE +202 -0
- package/dist/cli/commands/auth.d.ts +3 -0
- package/dist/cli/commands/auth.d.ts.map +1 -0
- package/dist/cli/commands/auth.js +130 -0
- package/dist/cli/commands/auth.js.map +1 -0
- package/dist/cli/commands/backup.d.ts +3 -0
- package/dist/cli/commands/backup.d.ts.map +1 -0
- package/dist/cli/commands/backup.js +54 -0
- package/dist/cli/commands/backup.js.map +1 -0
- package/dist/cli/commands/config.d.ts +3 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- package/dist/cli/commands/config.js +35 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/connect.d.ts +16 -0
- package/dist/cli/commands/connect.d.ts.map +1 -0
- package/dist/cli/commands/connect.js +45 -0
- package/dist/cli/commands/connect.js.map +1 -0
- package/dist/cli/commands/dev.d.ts +3 -0
- package/dist/cli/commands/dev.d.ts.map +1 -0
- package/dist/cli/commands/dev.js +58 -0
- package/dist/cli/commands/dev.js.map +1 -0
- package/dist/cli/commands/index.d.ts +3 -0
- package/dist/cli/commands/index.d.ts.map +1 -0
- package/dist/cli/commands/index.js +35 -0
- package/dist/cli/commands/index.js.map +1 -0
- package/dist/cli/commands/lang.d.ts +3 -0
- package/dist/cli/commands/lang.d.ts.map +1 -0
- package/dist/cli/commands/lang.js +187 -0
- package/dist/cli/commands/lang.js.map +1 -0
- package/dist/cli/commands/lifecycle.d.ts +3 -0
- package/dist/cli/commands/lifecycle.d.ts.map +1 -0
- package/dist/cli/commands/lifecycle.js +782 -0
- package/dist/cli/commands/lifecycle.js.map +1 -0
- package/dist/cli/commands/mcp.d.ts +3 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +75 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/mcp_serve.d.ts +3 -0
- package/dist/cli/commands/mcp_serve.d.ts.map +1 -0
- package/dist/cli/commands/mcp_serve.js +16 -0
- package/dist/cli/commands/mcp_serve.js.map +1 -0
- package/dist/cli/commands/memory.d.ts +3 -0
- package/dist/cli/commands/memory.d.ts.map +1 -0
- package/dist/cli/commands/memory.js +12 -0
- package/dist/cli/commands/memory.js.map +1 -0
- package/dist/cli/commands/migrations.d.ts +3 -0
- package/dist/cli/commands/migrations.d.ts.map +1 -0
- package/dist/cli/commands/migrations.js +98 -0
- package/dist/cli/commands/migrations.js.map +1 -0
- package/dist/cli/commands/observability.d.ts +3 -0
- package/dist/cli/commands/observability.d.ts.map +1 -0
- package/dist/cli/commands/observability.js +141 -0
- package/dist/cli/commands/observability.js.map +1 -0
- package/dist/cli/commands/provider.d.ts +3 -0
- package/dist/cli/commands/provider.d.ts.map +1 -0
- package/dist/cli/commands/provider.js +82 -0
- package/dist/cli/commands/provider.js.map +1 -0
- package/dist/cli/commands/security.d.ts +3 -0
- package/dist/cli/commands/security.d.ts.map +1 -0
- package/dist/cli/commands/security.js +27 -0
- package/dist/cli/commands/security.js.map +1 -0
- package/dist/cli/commands/tier.d.ts +3 -0
- package/dist/cli/commands/tier.d.ts.map +1 -0
- package/dist/cli/commands/tier.js +27 -0
- package/dist/cli/commands/tier.js.map +1 -0
- package/dist/cli/commands/tools.d.ts +3 -0
- package/dist/cli/commands/tools.d.ts.map +1 -0
- package/dist/cli/commands/tools.js +18 -0
- package/dist/cli/commands/tools.js.map +1 -0
- package/dist/cli/output.d.ts +5 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +22 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/cli/savings_output.d.ts +9 -0
- package/dist/cli/savings_output.d.ts.map +1 -0
- package/dist/cli/savings_output.js +62 -0
- package/dist/cli/savings_output.js.map +1 -0
- package/dist/cli.d.ts +12 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +155 -0
- package/dist/cli.js.map +1 -0
- package/dist/telemetry/log.d.ts +4 -0
- package/dist/telemetry/log.d.ts.map +1 -0
- package/dist/telemetry/log.js +92 -0
- package/dist/telemetry/log.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../src/cli/commands/lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QAkDnD"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { confirmGated } from "@purix/core/cli-io/gated-confirm";
|
|
2
|
+
import { addServer, removeServer, listServers } from "@purix/core/mcp/mcp_registry";
|
|
3
|
+
import { listServerTools, callServerTool } from "@purix/core/mcp/mcp_gateway";
|
|
4
|
+
export function registerMcpCommands(program) {
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
// MCP Gateway
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
program.command("mcp-add <n> <url>").description("Register an MCP server").action((name, url) => {
|
|
9
|
+
addServer(name, url);
|
|
10
|
+
console.log(`✅ Registered MCP server "${name}" -> ${url}`);
|
|
11
|
+
});
|
|
12
|
+
program.command("mcp-remove <n>").description("Remove a registered MCP server").action((name) => {
|
|
13
|
+
console.log(removeServer(name) ? `✅ Removed "${name}".` : `No server registered as "${name}".`);
|
|
14
|
+
});
|
|
15
|
+
program.command("mcp-list").description("List registered MCP servers").action(() => {
|
|
16
|
+
const servers = listServers();
|
|
17
|
+
if (servers.length === 0) {
|
|
18
|
+
console.log(`No MCP servers registered. Run "purix mcp-add <n> <url>".`);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
for (const s of servers)
|
|
22
|
+
console.log(`${s.name} ${s.url} (added ${s.added_at})`);
|
|
23
|
+
});
|
|
24
|
+
program.command("mcp-tools <n>").description("List tools on a registered MCP server").action(async (name) => {
|
|
25
|
+
try {
|
|
26
|
+
const tools = await listServerTools(name);
|
|
27
|
+
if (tools.length === 0) {
|
|
28
|
+
console.log(`"${name}" exposes no tools.`);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
for (const t of tools)
|
|
32
|
+
console.log(` ${t.name}${t.description ? ` — ${t.description}` : ""}`);
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
console.error(`🛑 ${err instanceof Error ? err.message : err}`);
|
|
36
|
+
process.exitCode = 1;
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
program
|
|
40
|
+
.command("mcp-call <n> <toolName> [jsonArgs]")
|
|
41
|
+
.description("Call a tool on a registered MCP server ( always confirms)")
|
|
42
|
+
.action(async (name, toolName, jsonArgs) => {
|
|
43
|
+
try {
|
|
44
|
+
let args = {};
|
|
45
|
+
if (jsonArgs) {
|
|
46
|
+
try {
|
|
47
|
+
args = JSON.parse(jsonArgs);
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
console.error(`🛑 args must be valid JSON.`);
|
|
51
|
+
process.exitCode = 1;
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
console.log(`About to call "${toolName}" on "${name}" with:`, args);
|
|
56
|
+
const proceed = await confirmGated(`Run this external tool call now?`, "mcp_call", null);
|
|
57
|
+
if (!proceed) {
|
|
58
|
+
console.log("Cancelled.");
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const result = await callServerTool(name, toolName, args);
|
|
62
|
+
if (result.ok)
|
|
63
|
+
console.log(`✅ Result:`, JSON.stringify(result.content, null, 2));
|
|
64
|
+
else {
|
|
65
|
+
console.error(`🛑 Call failed: ${result.reason}`);
|
|
66
|
+
process.exitCode = 1;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
catch (err) {
|
|
70
|
+
console.error(`\n🛑 MCP call failed: ${err instanceof Error ? err.message : err}`);
|
|
71
|
+
process.exitCode = 1;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=mcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp_serve.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mcp_serve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,QAYvD"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { runMcpServer } from "@purix/mcp-server";
|
|
2
|
+
export function registerMcpServeCommand(program) {
|
|
3
|
+
program
|
|
4
|
+
.command("mcp-serve")
|
|
5
|
+
.description("Start the local Purix MCP server over stdio transport")
|
|
6
|
+
.action(async () => {
|
|
7
|
+
try {
|
|
8
|
+
await runMcpServer();
|
|
9
|
+
}
|
|
10
|
+
catch (err) {
|
|
11
|
+
console.error(`🛑 MCP server error: ${err instanceof Error ? err.message : err}`);
|
|
12
|
+
process.exitCode = 1;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=mcp_serve.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp_serve.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp_serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,CAAC;YACH,MAAM,YAAY,EAAE,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAClF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,QAStD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { recordMemory, GLOBAL_SCOPE } from "@purix/core/manifest/memory";
|
|
2
|
+
export function registerMemoryCommands(program) {
|
|
3
|
+
program
|
|
4
|
+
.command("remember <note>")
|
|
5
|
+
.description("Record a convention or decision into Repository Memory")
|
|
6
|
+
.option("-c, --component <componentId>", "scope this note to one component instead of the whole repo")
|
|
7
|
+
.action((note, opts) => {
|
|
8
|
+
recordMemory({ component_id: opts.component ?? GLOBAL_SCOPE, kind: "decision", summary: note });
|
|
9
|
+
console.log(opts.component ? `✅ Recorded under "${opts.component}".` : `✅ Recorded as a repo-wide convention.`);
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/cli/commands/memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEzE,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,wDAAwD,CAAC;SACrE,MAAM,CAAC,+BAA+B,EAAE,4DAA4D,CAAC;SACrG,MAAM,CAAC,CAAC,IAAY,EAAE,IAA4B,EAAE,EAAE;QACrD,YAAY,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,IAAI,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC;IAClH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/migrations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,QAoF1D"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { confirmGated } from "@purix/core/cli-io/gated-confirm";
|
|
2
|
+
import { readManifest } from "@purix/core/manifest/store";
|
|
3
|
+
import { checkDrift, acceptDrift } from "@purix/core/state/drift";
|
|
4
|
+
import { activateMigration, rollbackMigration } from "@purix/core/state/migration";
|
|
5
|
+
import { listMigrations } from "@purix/core/manifest/migrations";
|
|
6
|
+
import { recordEvent } from "@purix/core/manifest/events";
|
|
7
|
+
export function registerMigrationsCommands(program) {
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// accept-drift
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
program
|
|
12
|
+
.command("accept-drift <componentId>")
|
|
13
|
+
.description("Accept current on-disk state as the new baseline")
|
|
14
|
+
.option("-a, --agent <n>", "the agent believed responsible for the out-of-band edit, if known")
|
|
15
|
+
.action(async (componentId, opts) => {
|
|
16
|
+
try {
|
|
17
|
+
const entry = readManifest(componentId);
|
|
18
|
+
if (!entry) {
|
|
19
|
+
console.error(`No manifest entry for "${componentId}".`);
|
|
20
|
+
process.exitCode = 1;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const drift = await checkDrift(entry, process.cwd());
|
|
24
|
+
if (!drift.drifted) {
|
|
25
|
+
console.log(`"${componentId}" hasn't drifted — nothing to accept.`);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const proceed = await confirmGated(`Accept current on-disk state of "${componentId}" as the new baseline?`, "accept_drift", componentId);
|
|
29
|
+
if (!proceed)
|
|
30
|
+
return;
|
|
31
|
+
const result = await acceptDrift(entry, drift.liveFiles, drift.liveHash, process.cwd(), opts.agent ?? null);
|
|
32
|
+
console.log(result.ok ? `✅ Baseline accepted.` : `🛑 ${result.reason}`);
|
|
33
|
+
if (result.ok) {
|
|
34
|
+
recordEvent("reconciliation", { component_id: componentId, detail: { source: "accept_drift" } });
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
process.exitCode = 1;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
console.error(`\n🛑 Accept-drift failed: ${err instanceof Error ? err.message : err}`);
|
|
42
|
+
process.exitCode = 1;
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
// ---------------------------------------------------------------------------
|
|
46
|
+
// migration-activate / migration-rollback / migrations
|
|
47
|
+
// ---------------------------------------------------------------------------
|
|
48
|
+
program
|
|
49
|
+
.command("migration-activate <id>")
|
|
50
|
+
.description("Activate a staged migration (§6.5)")
|
|
51
|
+
.action(async (id) => {
|
|
52
|
+
try {
|
|
53
|
+
const proceed = await confirmGated(`Activate migration ${id} and write it to real files?`, "migration_activate", null);
|
|
54
|
+
if (!proceed)
|
|
55
|
+
return;
|
|
56
|
+
const result = await activateMigration(id, process.cwd());
|
|
57
|
+
console.log(result.ok ? `✅ Activated.` : `🛑 ${result.reason}`);
|
|
58
|
+
if (!result.ok)
|
|
59
|
+
process.exitCode = 1;
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
console.error(`\n🛑 Failed to activate migration: ${err instanceof Error ? err.message : err}`);
|
|
63
|
+
process.exitCode = 1;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
program
|
|
67
|
+
.command("migration-rollback <id>")
|
|
68
|
+
.description("Roll back a migration to its before-snapshot")
|
|
69
|
+
.action(async (id) => {
|
|
70
|
+
try {
|
|
71
|
+
const proceed = await confirmGated(`Roll back migration ${id}?`, "migration_rollback", null);
|
|
72
|
+
if (!proceed)
|
|
73
|
+
return;
|
|
74
|
+
const result = await rollbackMigration(id, process.cwd());
|
|
75
|
+
console.log(result.ok ? `✅ Rolled back.` : `🛑 ${result.reason}`);
|
|
76
|
+
if (!result.ok)
|
|
77
|
+
process.exitCode = 1;
|
|
78
|
+
}
|
|
79
|
+
catch (err) {
|
|
80
|
+
console.error(`\n🛑 Failed to rollback migration: ${err instanceof Error ? err.message : err}`);
|
|
81
|
+
process.exitCode = 1;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
program
|
|
85
|
+
.command("migrations [componentId]")
|
|
86
|
+
.description("List migration records")
|
|
87
|
+
.action((componentId) => {
|
|
88
|
+
const records = listMigrations(componentId);
|
|
89
|
+
if (records.length === 0) {
|
|
90
|
+
console.log("No migration records.");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
for (const r of records) {
|
|
94
|
+
console.log(`${r.id} [${r.status}] ${r.component_id} v${r.version_from}->v${r.version_to} ${r.operation} ${r.created_at}`);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=migrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/cli/commands/migrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/observability.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAazC,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,QA+H7D"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { listManifest } from "@purix/core/manifest/store";
|
|
2
|
+
import { buildAuditTrail, formatAuditTrailJson, formatAuditTrailMarkdown } from "@purix/core/manifest/audit_export";
|
|
3
|
+
import { checkIdioms } from "@purix/core/verify/idiom";
|
|
4
|
+
import { getLanguageProvider } from "@purix/core/language/registry";
|
|
5
|
+
import { checkVersionPinning, runVulnScan, formatVulnScan } from "@purix/core/security/deps_audit";
|
|
6
|
+
import { verifyAuditChain } from "@purix/core/security/audit_tamper_evidence";
|
|
7
|
+
import { listLibrary } from "@purix/core/manifest/library";
|
|
8
|
+
import { buildObservabilityReport, formatObservabilityReport } from "@purix/core/manifest/observability";
|
|
9
|
+
import { writeFile } from "node:fs/promises";
|
|
10
|
+
import { join } from "node:path";
|
|
11
|
+
import { getRecentLogs, redactLogContent } from "../../telemetry/log.js";
|
|
12
|
+
export function registerObservabilityCommands(program) {
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
// status / library / stats / audit / audit-trail
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
program
|
|
17
|
+
.command("status")
|
|
18
|
+
.description("List all manifest components")
|
|
19
|
+
.action(() => {
|
|
20
|
+
const all = listManifest();
|
|
21
|
+
if (all.length === 0) {
|
|
22
|
+
console.log("No components registered yet. Run \"purix create <n>\".");
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
for (const e of all) {
|
|
26
|
+
const fileCount = e.files?.length ?? 0;
|
|
27
|
+
console.log(`${e.component_id} v${e.current_version} [${e.verification_status}] (${fileCount} file(s))`);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
program
|
|
31
|
+
.command("library")
|
|
32
|
+
.description("Show the self-extending local operation library")
|
|
33
|
+
.action(() => {
|
|
34
|
+
const entries = listLibrary();
|
|
35
|
+
if (entries.length === 0) {
|
|
36
|
+
console.log("Library is empty — nothing has been promoted from escalation yet.");
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
for (const e of entries) {
|
|
40
|
+
console.log(`${e.component_id} ${e.operation} used ${e.usage_count}x — ${e.description}`);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
program
|
|
44
|
+
.command("stats")
|
|
45
|
+
.description("§10 Observability: measured metrics (escalation rate, confidence trend, failure clustering, test-integrity/coverage flag rates, approval fatigue, library growth)")
|
|
46
|
+
.action(() => {
|
|
47
|
+
const report = buildObservabilityReport();
|
|
48
|
+
console.log(formatObservabilityReport(report));
|
|
49
|
+
});
|
|
50
|
+
program
|
|
51
|
+
.command("audit")
|
|
52
|
+
.description("Dependency pinning + vuln scan + idiom check")
|
|
53
|
+
.action(async () => {
|
|
54
|
+
try {
|
|
55
|
+
const pinning = await checkVersionPinning(process.cwd());
|
|
56
|
+
console.log(`Version pinning:`);
|
|
57
|
+
if (pinning.length === 0)
|
|
58
|
+
console.log(" all dependencies exactly pinned.");
|
|
59
|
+
for (const f of pinning)
|
|
60
|
+
console.log(` ${f.section}: ${f.name}@${f.declaredRange} — ${f.reason}`);
|
|
61
|
+
console.log(`\nVuln scan:`);
|
|
62
|
+
console.log(formatVulnScan(runVulnScan(process.cwd())));
|
|
63
|
+
console.log(`\nIdiom check (soft-fail — flags for cleanup, never blocks):`);
|
|
64
|
+
const trackedPaths = Array.from(new Set(listManifest().flatMap((e) => e.files))).map((f) => join(process.cwd(), f));
|
|
65
|
+
if (trackedPaths.length === 0) {
|
|
66
|
+
console.log(" no manifest-tracked files yet.");
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
const lang = trackedPaths.length > 0 && trackedPaths[0].endsWith(".py") ? "python" : "typescript";
|
|
70
|
+
const provider = getLanguageProvider(lang);
|
|
71
|
+
const idiom = provider ? provider.checkIdiom(trackedPaths, process.cwd()) : checkIdioms(trackedPaths, process.cwd());
|
|
72
|
+
if (!idiom.ran) {
|
|
73
|
+
console.log(" skipped — no local ESLint binary + config found in this project.");
|
|
74
|
+
}
|
|
75
|
+
else if (idiom.findings.length === 0) {
|
|
76
|
+
console.log(" clean — no idiom findings across all tracked components.");
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
for (const f of idiom.findings)
|
|
80
|
+
console.log(` ${f.path}:${f.line} [${f.rule}] ${f.message}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
console.error(`\n🛑 Audit failed: ${err instanceof Error ? err.message : err}`);
|
|
86
|
+
process.exitCode = 1;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
program
|
|
90
|
+
.command("audit-trail")
|
|
91
|
+
.description("Compliance audit-trail export — one row per landed commit, joined with gate evidence")
|
|
92
|
+
.option("-c, --component <componentId>", "filter to one component")
|
|
93
|
+
.option("-s, --since <isoTimestamp>", "only include commits at or after this ISO timestamp")
|
|
94
|
+
.option("-f, --format <format>", "output format: markdown or json", "markdown")
|
|
95
|
+
.option("-o, --out <file>", "write to a file instead of stdout")
|
|
96
|
+
.action(async (opts) => {
|
|
97
|
+
try {
|
|
98
|
+
const { requireEntitlement } = await import("@purix/core/licensing/tier");
|
|
99
|
+
requireEntitlement("auditExport");
|
|
100
|
+
const format = opts.format === "json" ? "json" : "markdown";
|
|
101
|
+
const report = buildAuditTrail({ componentId: opts.component, since: opts.since });
|
|
102
|
+
const output = format === "json" ? formatAuditTrailJson(report) : formatAuditTrailMarkdown(report);
|
|
103
|
+
if (opts.out) {
|
|
104
|
+
await writeFile(opts.out, output, "utf-8");
|
|
105
|
+
console.log(`✅ Wrote ${report.entries.length} entr${report.entries.length === 1 ? "y" : "ies"} to ${opts.out} (${format}).`);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
console.log(output);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (err) {
|
|
112
|
+
console.error(`\n🛑 Failed to export audit-trail: ${err instanceof Error ? err.message : err}`);
|
|
113
|
+
process.exitCode = 1;
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
program
|
|
117
|
+
.command("audit-verify")
|
|
118
|
+
.description("Verify local tamper-evident audit chain integrity")
|
|
119
|
+
.action(() => {
|
|
120
|
+
const result = verifyAuditChain();
|
|
121
|
+
if (!result.valid) {
|
|
122
|
+
console.error(`🛑 Audit chain verification failed at record index ${result.compromisedIndex ?? "unknown"}: ${result.reason}`);
|
|
123
|
+
process.exitCode = 1;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
program
|
|
127
|
+
.command("diagnostics")
|
|
128
|
+
.description("Review recent local diagnostics/error logs with automatic path/secret redaction")
|
|
129
|
+
.action(() => {
|
|
130
|
+
const logs = getRecentLogs(30);
|
|
131
|
+
if (logs.length === 0) {
|
|
132
|
+
console.log("No recent diagnostic logs found in ~/.purix/logs/.");
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
console.log("Recent diagnostic logs (redacted for privacy):");
|
|
136
|
+
for (const line of logs) {
|
|
137
|
+
console.log(redactLogContent(line));
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=observability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability.js","sourceRoot":"","sources":["../../../src/cli/commands/observability.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/provider.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,QAgFxD"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { listProviders, persistProviderChoice, persistCustomProvider, activeProviderId, getProvider } from "@purix/core/llm/providers";
|
|
2
|
+
export function registerProviderCommands(program) {
|
|
3
|
+
program
|
|
4
|
+
.command("provider-set <id>")
|
|
5
|
+
.description("Choose which LLM provider Purix calls — bring your own key. Run provider-list to see all supported ids.")
|
|
6
|
+
.option("--base-url <url>", "required if id is 'custom': the OpenAI-compatible base URL")
|
|
7
|
+
.option("--key-env <name>", "required if id is 'custom': env var / secret name holding the API key")
|
|
8
|
+
.option("--model-low <id>", "required if id is 'custom': model id for the low tier")
|
|
9
|
+
.option("--model-high <id>", "required if id is 'custom': model id for the high tier")
|
|
10
|
+
.option("--label <text>", "optional display label for a custom provider")
|
|
11
|
+
.action((id, opts) => {
|
|
12
|
+
if (id === "custom") {
|
|
13
|
+
if (!opts.baseUrl || !opts.keyEnv || !opts.modelLow || !opts.modelHigh) {
|
|
14
|
+
console.log(`"custom" needs all of: --base-url --key-env --model-low --model-high\n` +
|
|
15
|
+
`Example: purix provider-set custom --base-url https://api.example.ai/v1 ` +
|
|
16
|
+
`--key-env EXAMPLE_API_KEY --model-low example-small --model-high example-large`);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
persistCustomProvider({
|
|
20
|
+
baseUrl: opts.baseUrl,
|
|
21
|
+
keyEnvVar: opts.keyEnv,
|
|
22
|
+
modelLow: opts.modelLow,
|
|
23
|
+
modelHigh: opts.modelHigh,
|
|
24
|
+
label: opts.label,
|
|
25
|
+
});
|
|
26
|
+
console.log(`✅ Custom provider configured (${opts.baseUrl}). Store the key: purix secret-set ${opts.keyEnv} <your-key>`);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const known = listProviders().find((p) => p.id === id);
|
|
30
|
+
if (!known) {
|
|
31
|
+
console.log(`Unknown provider "${id}". Run "purix provider-list" to see supported ids, or use "custom" for anything else.`);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
persistProviderChoice(id);
|
|
35
|
+
console.log(`✅ Active provider set to "${id}" (${known.label}). Make sure a key is stored: purix secret-set ${known.keyEnvVar} <your-key>`);
|
|
36
|
+
});
|
|
37
|
+
program
|
|
38
|
+
.command("provider-status")
|
|
39
|
+
.description("Show which LLM provider is active and whether a key is configured")
|
|
40
|
+
.action(() => {
|
|
41
|
+
let id;
|
|
42
|
+
try {
|
|
43
|
+
id = activeProviderId();
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
console.log(`No provider configured yet. Run "purix provider-list" to see options, then "purix provider-set <id>".`);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
const known = listProviders().find((p) => p.id === id);
|
|
50
|
+
console.log(`Active provider: ${id}${known ? ` (${known.label})` : ""}`);
|
|
51
|
+
try {
|
|
52
|
+
const p = getProvider(id);
|
|
53
|
+
console.log(`Model (low tier): ${p.modelFor("low")}`);
|
|
54
|
+
console.log(`Model (high tier): ${p.modelFor("high")}`);
|
|
55
|
+
console.log(`(Key resolution happens on first call — run a real "purix modify" to fully verify it.)`);
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
console.log(`🛑 ${err instanceof Error ? err.message : err}`);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
program
|
|
62
|
+
.command("provider-list")
|
|
63
|
+
.description("List every supported LLM provider (registry + the custom escape hatch)")
|
|
64
|
+
.action(() => {
|
|
65
|
+
let active = null;
|
|
66
|
+
try {
|
|
67
|
+
active = activeProviderId();
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
// No provider configured yet — that's expected for a fresh install, not an error here.
|
|
71
|
+
}
|
|
72
|
+
for (const p of listProviders()) {
|
|
73
|
+
console.log(`${p.id}${p.id === active ? " (active)" : ""} — ${p.label} — requires ${p.keyEnvVar}`);
|
|
74
|
+
}
|
|
75
|
+
if (!active) {
|
|
76
|
+
console.log(`\n(No provider configured yet — pick one above and run "purix provider-set <id>".)`);
|
|
77
|
+
}
|
|
78
|
+
console.log(`\nDon't see your provider? Nearly every LLM vendor exposes an OpenAI-compatible endpoint —`);
|
|
79
|
+
console.log(`use "purix provider-set custom --base-url <url> --key-env <n> --model-low <id> --model-high <id>".`);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/cli/commands/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/security.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,QAuBxD"}
|