@greenarmor/ges 0.5.2 → 0.5.4
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/utils/next-steps.js +39 -95
- package/package.json +12 -12
package/dist/utils/next-steps.js
CHANGED
|
@@ -3,118 +3,62 @@ const DIVIDER = " ────────────────────
|
|
|
3
3
|
function isInteractive() {
|
|
4
4
|
return process.stdin.isTTY === true && process.stdout.isTTY === true;
|
|
5
5
|
}
|
|
6
|
+
const ALL_COMMANDS = {
|
|
7
|
+
audit: { label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
8
|
+
score: { label: "View score", value: "ges score", description: "See compliance score" },
|
|
9
|
+
compliance: { label: "View compliance", value: "ges compliance", description: "See status by pack" },
|
|
10
|
+
report: { label: "Generate report", value: "ges report", description: "Create compliance/security report" },
|
|
11
|
+
badge: { label: "Generate badge", value: "ges badge", description: "Create SVG badge for README" },
|
|
12
|
+
doctor: { label: "Check health", value: "ges doctor", description: "Diagnose GESF setup" },
|
|
13
|
+
validate: { label: "Validate config", value: "ges validate", description: "Validate configuration and controls" },
|
|
14
|
+
scan: { label: "Scan dependencies", value: "ges scan", description: "Run external security scanners" },
|
|
15
|
+
generate: { label: "Regenerate docs", value: "ges generate --all", description: "Update all documentation and workflows" },
|
|
16
|
+
policy: { label: "Manage policies", value: "ges policy list", description: "List, install, or remove policy packs" },
|
|
17
|
+
update: { label: "Check updates", value: "ges update", description: "Check for GESF updates" },
|
|
18
|
+
};
|
|
19
|
+
function buildSteps(exclude) {
|
|
20
|
+
const steps = [];
|
|
21
|
+
for (const [key, step] of Object.entries(ALL_COMMANDS)) {
|
|
22
|
+
if (!exclude.includes(key))
|
|
23
|
+
steps.push(step);
|
|
24
|
+
}
|
|
25
|
+
steps.push({ label: "Exit", value: "exit", description: "Return to terminal" });
|
|
26
|
+
return steps;
|
|
27
|
+
}
|
|
6
28
|
export function getNextStepsForCommand(command, context) {
|
|
7
29
|
switch (command) {
|
|
8
30
|
case "init":
|
|
9
|
-
return [
|
|
10
|
-
{ label: "Run audit", value: "ges audit", description: "Scan your project for compliance issues" },
|
|
11
|
-
{ label: "View score", value: "ges score", description: "See your compliance score" },
|
|
12
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
13
|
-
{ label: "Check health", value: "ges doctor", description: "Diagnose your GESF setup" },
|
|
14
|
-
{ label: "View policies", value: "ges policy list", description: "See installed policy packs" },
|
|
15
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
16
|
-
];
|
|
31
|
+
return buildSteps(["init"]);
|
|
17
32
|
case "audit":
|
|
18
|
-
return [
|
|
19
|
-
{ label: "View score", value: "ges score", description: "See detailed compliance score" },
|
|
20
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
21
|
-
{ label: "Fix issues", value: "ges doctor", description: "Check what needs attention" },
|
|
22
|
-
{ label: "Scan dependencies", value: "ges scan", description: "Run external security scanners" },
|
|
23
|
-
{ label: "View compliance", value: "ges compliance", description: "See compliance status by pack" },
|
|
24
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
25
|
-
];
|
|
33
|
+
return buildSteps(["audit"]);
|
|
26
34
|
case "score":
|
|
27
|
-
return [
|
|
28
|
-
{ label: "Run audit", value: "ges audit", description: "Re-scan for compliance issues" },
|
|
29
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
30
|
-
{ label: "View compliance", value: "ges compliance", description: "See status by pack" },
|
|
31
|
-
{ label: "Fix issues", value: "ges doctor", description: "Check what needs attention" },
|
|
32
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
33
|
-
];
|
|
35
|
+
return buildSteps(["score"]);
|
|
34
36
|
case "report":
|
|
35
|
-
return [
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
{ label: "View compliance", value: "ges compliance", description: "See status by pack" },
|
|
39
|
-
{ label: "Regenerate docs", value: "ges generate --all", description: "Update all documentation" },
|
|
40
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
41
|
-
];
|
|
37
|
+
return buildSteps(["report"]);
|
|
38
|
+
case "badge":
|
|
39
|
+
return buildSteps(["badge"]);
|
|
42
40
|
case "doctor":
|
|
43
|
-
return [
|
|
44
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
45
|
-
{ label: "View score", value: "ges score", description: "See compliance score" },
|
|
46
|
-
{ label: "Validate config", value: "ges validate", description: "Validate GESF configuration" },
|
|
47
|
-
{ label: "Fix issues", value: "ges generate --all", description: "Regenerate missing files" },
|
|
48
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
49
|
-
];
|
|
41
|
+
return buildSteps(["doctor"]);
|
|
50
42
|
case "scan":
|
|
51
|
-
return [
|
|
52
|
-
{ label: "Run audit", value: "ges audit", description: "Full compliance audit" },
|
|
53
|
-
{ label: "View score", value: "ges score", description: "See compliance score" },
|
|
54
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
55
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
56
|
-
];
|
|
43
|
+
return buildSteps(["scan"]);
|
|
57
44
|
case "compliance":
|
|
58
|
-
return [
|
|
59
|
-
{ label: "Run audit", value: "ges audit", description: "Re-scan for issues" },
|
|
60
|
-
{ label: "View score", value: "ges score", description: "See compliance score" },
|
|
61
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
62
|
-
{ label: "View policies", value: "ges policy list", description: "See available policy packs" },
|
|
63
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
64
|
-
];
|
|
45
|
+
return buildSteps(["compliance"]);
|
|
65
46
|
case "validate":
|
|
66
|
-
return [
|
|
67
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
68
|
-
{ label: "Check health", value: "ges doctor", description: "Diagnose GESF setup" },
|
|
69
|
-
{ label: "Fix issues", value: "ges generate --all", description: "Regenerate missing files" },
|
|
70
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
71
|
-
];
|
|
47
|
+
return buildSteps(["validate"]);
|
|
72
48
|
case "generate":
|
|
73
|
-
return [
|
|
74
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
75
|
-
{ label: "View score", value: "ges score", description: "See compliance score" },
|
|
76
|
-
{ label: "Generate report", value: "ges report", description: "Create a compliance report" },
|
|
77
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
78
|
-
];
|
|
49
|
+
return buildSteps(["generate"]);
|
|
79
50
|
case "policy-list":
|
|
80
|
-
return [
|
|
81
|
-
{ label: "Install a pack", value: "ges policy install", description: "Install a policy pack" },
|
|
82
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
83
|
-
{ label: "View compliance", value: "ges compliance", description: "See status by pack" },
|
|
84
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
85
|
-
];
|
|
51
|
+
return buildSteps(["policy"]);
|
|
86
52
|
case "policy-install":
|
|
87
|
-
return [
|
|
88
|
-
{ label: "Run audit", value: "ges audit", description: "Scan with new pack" },
|
|
89
|
-
{ label: "View compliance", value: "ges compliance", description: "See status by pack" },
|
|
90
|
-
{ label: "View policies", value: "ges policy list", description: "See all policy packs" },
|
|
91
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
92
|
-
];
|
|
53
|
+
return buildSteps(["policy"]);
|
|
93
54
|
case "policy-remove":
|
|
94
|
-
return [
|
|
95
|
-
{ label: "View policies", value: "ges policy list", description: "See remaining packs" },
|
|
96
|
-
{ label: "Run audit", value: "ges audit", description: "Re-scan after removal" },
|
|
97
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
98
|
-
];
|
|
55
|
+
return buildSteps(["policy"]);
|
|
99
56
|
case "update":
|
|
100
|
-
return [
|
|
101
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
102
|
-
{ label: "Check health", value: "ges doctor", description: "Diagnose GESF setup" },
|
|
103
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
104
|
-
];
|
|
57
|
+
return buildSteps(["update"]);
|
|
105
58
|
case "mcp-setup":
|
|
106
|
-
return [
|
|
107
|
-
{ label: "Setup another client", value: "ges mcp setup", description: "Configure another MCP client" },
|
|
108
|
-
{ label: "Check health", value: "ges doctor", description: "Diagnose GESF setup" },
|
|
109
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
110
|
-
];
|
|
59
|
+
return buildSteps(["mcp-setup"]);
|
|
111
60
|
default:
|
|
112
|
-
return [
|
|
113
|
-
{ label: "Run audit", value: "ges audit", description: "Scan for compliance issues" },
|
|
114
|
-
{ label: "View score", value: "ges score", description: "See compliance score" },
|
|
115
|
-
{ label: "Check health", value: "ges doctor", description: "Diagnose GESF setup" },
|
|
116
|
-
{ label: "Exit", value: "exit", description: "Return to terminal" },
|
|
117
|
-
];
|
|
61
|
+
return buildSteps([]);
|
|
118
62
|
}
|
|
119
63
|
}
|
|
120
64
|
export async function showNextStepsMenu(command, context) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@greenarmor/ges",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4",
|
|
4
4
|
"description": "Green Engineering Standard Framework - Compliance-as-Code CLI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -13,17 +13,17 @@
|
|
|
13
13
|
],
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"commander": "^13.0.0",
|
|
16
|
-
"@greenarmor/ges-audit-engine": "0.5.
|
|
17
|
-
"@greenarmor/ges-cicd-generator": "0.5.
|
|
18
|
-
"@greenarmor/ges-doc-generator": "0.5.
|
|
19
|
-
"@greenarmor/ges-
|
|
20
|
-
"@greenarmor/ges-
|
|
21
|
-
"@greenarmor/ges-rules-engine": "0.5.
|
|
22
|
-
"@greenarmor/ges-
|
|
23
|
-
"@greenarmor/ges-
|
|
24
|
-
"@greenarmor/ges-scoring-engine": "0.5.
|
|
25
|
-
"@greenarmor/ges-
|
|
26
|
-
"@greenarmor/ges-
|
|
16
|
+
"@greenarmor/ges-audit-engine": "0.5.4",
|
|
17
|
+
"@greenarmor/ges-cicd-generator": "0.5.4",
|
|
18
|
+
"@greenarmor/ges-doc-generator": "0.5.4",
|
|
19
|
+
"@greenarmor/ges-report-generator": "0.5.4",
|
|
20
|
+
"@greenarmor/ges-policy-engine": "0.5.4",
|
|
21
|
+
"@greenarmor/ges-rules-engine": "0.5.4",
|
|
22
|
+
"@greenarmor/ges-compliance-engine": "0.5.4",
|
|
23
|
+
"@greenarmor/ges-scanner-integration": "0.5.4",
|
|
24
|
+
"@greenarmor/ges-scoring-engine": "0.5.4",
|
|
25
|
+
"@greenarmor/ges-mcp-server": "0.5.4",
|
|
26
|
+
"@greenarmor/ges-core": "0.5.4"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@types/node": "^22.0.0",
|