@calltelemetry/ct-lab-mcp 0.8.105 → 0.8.107

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.
Files changed (63) hide show
  1. package/assets/stig/SHA256SUMS +15 -1
  2. package/assets/stig/guest/collect-fips-state.sh +6 -0
  3. package/assets/stig/guest/collect-hardware.sh +3 -0
  4. package/assets/stig/guest/collect-host-checks.sh +3 -0
  5. package/assets/stig/guest/collect-network-services.sh +15 -0
  6. package/assets/stig/guest/collect-repolist.sh +3 -0
  7. package/assets/stig/guest/collect-rpm-inventory.sh +3 -0
  8. package/assets/stig/guest/collect-rpm-nevra.sh +3 -0
  9. package/assets/stig/guest/collect-rpmlist.sh +3 -0
  10. package/assets/stig/guest/collect-updateinfo-all.sh +3 -0
  11. package/assets/stig/guest/collect-updateinfo-security.sh +3 -0
  12. package/assets/stig/guest/collect-updateinfo-summary.sh +3 -0
  13. package/assets/stig/guest/oval-eval.sh +11 -0
  14. package/assets/stig/guest/oval-prep.sh +4 -0
  15. package/assets/stig/guest/verify-root.sh +13 -0
  16. package/assets/stig/image/verify-image.sh +28 -0
  17. package/dist/src/generated-version.d.ts +1 -1
  18. package/dist/src/generated-version.js +1 -1
  19. package/dist/src/stig/dist.d.ts +121 -0
  20. package/dist/src/stig/dist.d.ts.map +1 -0
  21. package/dist/src/stig/dist.js +234 -0
  22. package/dist/src/stig/dist.js.map +1 -0
  23. package/dist/src/stig/distribution.d.ts +95 -0
  24. package/dist/src/stig/distribution.d.ts.map +1 -0
  25. package/dist/src/stig/distribution.js +398 -0
  26. package/dist/src/stig/distribution.js.map +1 -0
  27. package/dist/src/stig/evidence.d.ts +135 -0
  28. package/dist/src/stig/evidence.d.ts.map +1 -0
  29. package/dist/src/stig/evidence.js +637 -0
  30. package/dist/src/stig/evidence.js.map +1 -0
  31. package/dist/src/stig/live.d.ts +67 -4
  32. package/dist/src/stig/live.d.ts.map +1 -1
  33. package/dist/src/stig/live.js +226 -5
  34. package/dist/src/stig/live.js.map +1 -1
  35. package/dist/src/stig/markers.d.ts +6 -0
  36. package/dist/src/stig/markers.d.ts.map +1 -0
  37. package/dist/src/stig/markers.js +23 -0
  38. package/dist/src/stig/markers.js.map +1 -0
  39. package/dist/src/stig/model.d.ts +2 -1
  40. package/dist/src/stig/model.d.ts.map +1 -1
  41. package/dist/src/stig/model.js +7 -2
  42. package/dist/src/stig/model.js.map +1 -1
  43. package/dist/src/stig/nodes.d.ts +52 -12
  44. package/dist/src/stig/nodes.d.ts.map +1 -1
  45. package/dist/src/stig/nodes.js +90 -11
  46. package/dist/src/stig/nodes.js.map +1 -1
  47. package/dist/src/stig/ports.d.ts +81 -2
  48. package/dist/src/stig/ports.d.ts.map +1 -1
  49. package/dist/src/stig/pve.d.ts +22 -0
  50. package/dist/src/stig/pve.d.ts.map +1 -0
  51. package/dist/src/stig/pve.js +26 -0
  52. package/dist/src/stig/pve.js.map +1 -0
  53. package/dist/src/stig/runner.d.ts +36 -9
  54. package/dist/src/stig/runner.d.ts.map +1 -1
  55. package/dist/src/stig/runner.js +129 -96
  56. package/dist/src/stig/runner.js.map +1 -1
  57. package/dist/src/tools/quick-provision.d.ts +2 -2
  58. package/dist/src/tools/slot-tools.d.ts +4 -4
  59. package/dist/src/tools/stig-tools.d.ts +52 -8
  60. package/dist/src/tools/stig-tools.d.ts.map +1 -1
  61. package/dist/src/tools/stig-tools.js +105 -21
  62. package/dist/src/tools/stig-tools.js.map +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/stig/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/stig/runner.ts"],"names":[],"mappings":"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"}
@@ -101,6 +101,7 @@ export declare const ProxmoxQuickProvisionInputSchema: z.ZodObject<{
101
101
  operationId?: string | undefined;
102
102
  workspaceRoot?: string | undefined;
103
103
  importStorage?: string | undefined;
104
+ runDir?: string | undefined;
104
105
  placementSeed?: string | undefined;
105
106
  webImage?: string | undefined;
106
107
  baseVersion?: string | undefined;
@@ -108,7 +109,6 @@ export declare const ProxmoxQuickProvisionInputSchema: z.ZodObject<{
108
109
  vcpus?: number | undefined;
109
110
  vlanTag?: number | undefined;
110
111
  inventoryFile?: string | undefined;
111
- runDir?: string | undefined;
112
112
  }, {
113
113
  version: string;
114
114
  linearIssue: string;
@@ -129,6 +129,7 @@ export declare const ProxmoxQuickProvisionInputSchema: z.ZodObject<{
129
129
  apply?: boolean | undefined;
130
130
  workspaceRoot?: string | undefined;
131
131
  importStorage?: string | undefined;
132
+ runDir?: string | undefined;
132
133
  placementSeed?: string | undefined;
133
134
  webImage?: string | undefined;
134
135
  baseVersion?: string | undefined;
@@ -136,7 +137,6 @@ export declare const ProxmoxQuickProvisionInputSchema: z.ZodObject<{
136
137
  vcpus?: number | undefined;
137
138
  vlanTag?: number | undefined;
138
139
  inventoryFile?: string | undefined;
139
- runDir?: string | undefined;
140
140
  }>;
141
141
  export type ProxmoxQuickProvisionInput = z.infer<typeof ProxmoxQuickProvisionInputSchema>;
142
142
  export declare function buildQuickProvisionArgs(args: ProxmoxQuickProvisionInput): string[];
@@ -106,8 +106,8 @@ export declare const ClaimSlotInputSchema: z.ZodEffects<z.ZodObject<{
106
106
  operationId?: string | undefined;
107
107
  confirmAssetId?: string | undefined;
108
108
  allowEsxiSlots?: boolean | undefined;
109
- receiptFile?: string | undefined;
110
109
  claimNode?: "proxmox" | "esxi" | "minis" | "ibm64" | undefined;
110
+ receiptFile?: string | undefined;
111
111
  claimVmid?: number | undefined;
112
112
  claimVmName?: string | undefined;
113
113
  placementSeed?: string | undefined;
@@ -138,8 +138,8 @@ export declare const ClaimSlotInputSchema: z.ZodEffects<z.ZodObject<{
138
138
  apply?: boolean | undefined;
139
139
  confirmAssetId?: string | undefined;
140
140
  allowEsxiSlots?: boolean | undefined;
141
- receiptFile?: string | undefined;
142
141
  claimNode?: "proxmox" | "esxi" | "minis" | "ibm64" | undefined;
142
+ receiptFile?: string | undefined;
143
143
  claimVmid?: number | undefined;
144
144
  claimVmName?: string | undefined;
145
145
  replaceClosedClaim?: boolean | undefined;
@@ -174,8 +174,8 @@ export declare const ClaimSlotInputSchema: z.ZodEffects<z.ZodObject<{
174
174
  operationId?: string | undefined;
175
175
  confirmAssetId?: string | undefined;
176
176
  allowEsxiSlots?: boolean | undefined;
177
- receiptFile?: string | undefined;
178
177
  claimNode?: "proxmox" | "esxi" | "minis" | "ibm64" | undefined;
178
+ receiptFile?: string | undefined;
179
179
  claimVmid?: number | undefined;
180
180
  claimVmName?: string | undefined;
181
181
  placementSeed?: string | undefined;
@@ -206,8 +206,8 @@ export declare const ClaimSlotInputSchema: z.ZodEffects<z.ZodObject<{
206
206
  apply?: boolean | undefined;
207
207
  confirmAssetId?: string | undefined;
208
208
  allowEsxiSlots?: boolean | undefined;
209
- receiptFile?: string | undefined;
210
209
  claimNode?: "proxmox" | "esxi" | "minis" | "ibm64" | undefined;
210
+ receiptFile?: string | undefined;
211
211
  claimVmid?: number | undefined;
212
212
  claimVmName?: string | undefined;
213
213
  replaceClosedClaim?: boolean | undefined;
@@ -2,7 +2,8 @@ import { z } from "zod";
2
2
  import { CallToolResult } from "../types/mcp.js";
3
3
  import type { ToolContext } from "./list-hosts.js";
4
4
  import { StigRunner } from "../stig/runner.js";
5
- import { type StigNode } from "../stig/nodes.js";
5
+ import { StigDistribution } from "../stig/distribution.js";
6
+ import { StigEvidence } from "../stig/evidence.js";
6
7
  export declare const BuildStigTemplateInputShape: {
7
8
  ssgDatastreamPath: z.ZodString;
8
9
  disaBenchmarkPath: z.ZodString;
@@ -13,10 +14,10 @@ export declare const BuildStigTemplateInputShape: {
13
14
  planDigest: z.ZodOptional<z.ZodString>;
14
15
  };
15
16
  export declare const CreateStigClaimInputShape: {
16
- node: z.ZodDefault<z.ZodOptional<z.ZodEnum<[StigNode, ...StigNode[]]>>>;
17
+ cloneName: z.ZodString;
17
18
  recreate: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
18
19
  untagged: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
- cloneName: z.ZodString;
20
+ node: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>>>;
20
21
  templateRef: z.ZodOptional<z.ZodString>;
21
22
  ttlHours: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
22
23
  dns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -27,27 +28,70 @@ export declare const CreateStigClaimInputShape: {
27
28
  };
28
29
  export declare const ValidateStigClaimInputShape: {
29
30
  cloneName: z.ZodString;
30
- node: z.ZodDefault<z.ZodOptional<z.ZodEnum<[StigNode, ...StigNode[]]>>>;
31
+ node: z.ZodOptional<z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>>;
31
32
  requireDisa: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
32
33
  };
33
34
  export declare const GetStigReceiptInputShape: {
34
35
  claim: z.ZodString;
36
+ node: z.ZodOptional<z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>>;
35
37
  };
36
38
  export declare const ReleaseStigTemplateInputShape: {
37
- node: z.ZodDefault<z.ZodOptional<z.ZodEnum<[StigNode, ...StigNode[]]>>>;
38
39
  claim: z.ZodString;
40
+ node: z.ZodOptional<z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>>;
39
41
  confirmDestroy: z.ZodBoolean;
40
42
  };
43
+ export declare const PublishStigTemplateInputShape: {
44
+ template: z.ZodString;
45
+ force: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
46
+ receiptPath: z.ZodOptional<z.ZodString>;
47
+ manifestPath: z.ZodOptional<z.ZodString>;
48
+ apply: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
49
+ planDigest: z.ZodOptional<z.ZodString>;
50
+ };
51
+ export declare const SyncStigTemplateInputShape: {
52
+ template: z.ZodString;
53
+ node: z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>;
54
+ apply: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
55
+ planDigest: z.ZodOptional<z.ZodString>;
56
+ };
57
+ export declare const CollectStigEvidenceInputShape: {
58
+ cloneName: z.ZodOptional<z.ZodString>;
59
+ claimName: z.ZodOptional<z.ZodString>;
60
+ template: z.ZodString;
61
+ node: z.ZodOptional<z.ZodEffects<z.ZodEnum<[string, ...string[]]>, "proxmox" | "minis" | "prox-ibm64", string>>;
62
+ ctMetaPath: z.ZodString;
63
+ planRoot: z.ZodOptional<z.ZodString>;
64
+ templateRunDir: z.ZodOptional<z.ZodString>;
65
+ manualStigZip: z.ZodOptional<z.ZodString>;
66
+ ssgDatastream: z.ZodOptional<z.ZodString>;
67
+ schemaDir: z.ZodOptional<z.ZodString>;
68
+ benchmarkZip: z.ZodOptional<z.ZodString>;
69
+ benchmarkXml: z.ZodOptional<z.ZodString>;
70
+ distDir: z.ZodOptional<z.ZodString>;
71
+ today: z.ZodOptional<z.ZodString>;
72
+ from: z.ZodOptional<z.ZodEnum<["preflight", "scan", "oval", "keyhash", "collect", "verify", "receipt", "e1", "e7", "e3", "e6", "e8", "e5", "report", "e2", "e4", "e10", "docs", "distribution", "sign", "explorer", "resign", "verify-bundle", "tests"]>>;
73
+ only: z.ZodOptional<z.ZodEnum<["preflight", "scan", "oval", "keyhash", "collect", "verify", "receipt", "e1", "e7", "e3", "e6", "e8", "e5", "report", "e2", "e4", "e10", "docs", "distribution", "sign", "explorer", "resign", "verify-bundle", "tests"]>>;
74
+ force: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
75
+ noSign: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
76
+ skipTests: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
77
+ apply: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
78
+ planDigest: z.ZodOptional<z.ZodString>;
79
+ };
41
80
  export interface StigToolDeps {
42
- makeRunner: (node?: StigNode) => StigRunner;
81
+ makeRunner: (node?: string) => StigRunner;
82
+ makeDistribution?: () => StigDistribution;
83
+ makeEvidence?: () => StigEvidence;
43
84
  }
44
85
  export declare function handleBuildStigTemplate(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
45
86
  export declare function handleCreateStigClaim(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
46
87
  export declare function handleValidateStigClaim(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
47
88
  export declare function handleGetStigReceipt(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
48
89
  export declare function handleReleaseStigTemplate(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
49
- export declare const STIG_TOOL_NAMES: readonly ["build_stig_template", "create_stig_claim", "validate_stig_claim", "get_stig_receipt", "release_stig_template"];
50
- /** Registers the five tools on a server whose `.tool()` is already the guarded wrapper. */
90
+ export declare function handlePublishStigTemplate(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
91
+ export declare function handleSyncStigTemplate(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
92
+ export declare function handleCollectStigEvidence(args: unknown, deps?: StigToolDeps): Promise<CallToolResult>;
93
+ export declare const STIG_TOOL_NAMES: readonly ["build_stig_template", "create_stig_claim", "validate_stig_claim", "get_stig_receipt", "release_stig_template", "publish_stig_template", "sync_stig_template", "collect_stig_evidence"];
94
+ /** Registers the STIG tools on a server whose `.tool()` is already the guarded wrapper. */
51
95
  export declare function registerStigTools(server: {
52
96
  tool: (...a: any[]) => unknown;
53
97
  }, _context: ToolContext, deps?: StigToolDeps): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"stig-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/stig-tools.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAA2C,MAAM,iBAAiB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AASlE,eAAO,MAAM,2BAA2B;;;;;;;;CAQvC,CAAC;AACF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;CAWrC,CAAC;AACF,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAC;AACF,eAAO,MAAM,wBAAwB;;CAA0G,CAAC;AAChJ,eAAO,MAAM,6BAA6B;;;;CAIzC,CAAC;AAEF,MAAM,WAAW,YAAY;IAAG,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,KAAK,UAAU,CAAA;CAAE;AAY7E,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CASxH;AACD,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAItH;AACD,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAIxH;AACD,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAIrH;AACD,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAI1H;AAED,eAAO,MAAM,eAAe,2HAA4H,CAAC;AAEzJ,2FAA2F;AAC3F,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,OAAO,CAAA;CAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAOhJ"}
1
+ {"version":3,"file":"stig-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/stig-tools.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAA2C,MAAM,iBAAiB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAmB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAapE,eAAO,MAAM,2BAA2B;;;;;;;;CAQvC,CAAC;AACF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;CAWrC,CAAC;AACF,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAC;AACF,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC;AACF,eAAO,MAAM,6BAA6B;;;;CAIzC,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;CAOzC,CAAC;AACF,eAAO,MAAM,0BAA0B;;;;;CAKtC,CAAC;AAGF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;CAqBzC,CAAC;AAEF,MAAM,WAAW,YAAY;IAAG,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,gBAAgB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,YAAY,CAAA;CAAE;AAYzJ,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CASxH;AACD,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAItH;AACD,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAIxH;AACD,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAIrH;AACD,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAI1H;AAED,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAI1H;AACD,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAIvH;AAED,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAK1H;AAED,eAAO,MAAM,eAAe,mMAAoM,CAAC;AAEjO,2FAA2F;AAC3F,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,OAAO,CAAA;CAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,GAAE,YAA4B,GAAG,OAAO,CAUhJ"}
@@ -6,21 +6,30 @@
6
6
  * validate_stig_claim oscap scan on a clone, fail=0 gate, receipt summary on the claim
7
7
  * get_stig_receipt the annotated receipt summary and what status.stig will carry
8
8
  * release_stig_template explicit template destroy, then claim deletion
9
+ * publish_stig_template plan | apply signed, compressed qcow2 of a sealed template on the shared image store
10
+ * sync_stig_template plan | apply verify the published image on a node and create the claimed template there
11
+ * collect_stig_evidence plan | apply DoD evidence package E1-E10 from a claimed clone (read-only on the clone and on golden artifacts)
9
12
  *
10
- * The shell recipe in ct-meta (rhel8-stig-template) remains the documented default until live parity passes.
13
+ * Node-addressing tools take `node` (minis | proxmox | prox-ibm64; create and sync act on it, the rest check it
14
+ * against the claim). The shell recipe in ct-meta (rhel8-stig-template) remains the documented default until live
15
+ * parity passes.
11
16
  */
12
17
  import { createHash } from "node:crypto";
13
18
  import { readFileSync } from "node:fs";
14
19
  import { z } from "zod";
15
20
  import { ProxmoxErrorCode, createToolErrorResult } from "../types/mcp.js";
16
21
  import { StigRunner } from "../stig/runner.js";
22
+ import { StigDistribution } from "../stig/distribution.js";
23
+ import { EVIDENCE_STAGES, StigEvidence } from "../stig/evidence.js";
24
+ import { STIG_NODE_INPUT_NAMES, canonicalNodeName } from "../stig/nodes.js";
17
25
  import { liveDeps } from "../stig/live.js";
18
- import { STIG_NODE_NAMES } from "../stig/nodes.js";
19
26
  import { redact } from "../stig/model.js";
20
- const nodeField = z.enum(STIG_NODE_NAMES).optional().default("minis").describe("Lab node: minis (proxmox-minis-lab), ibm64 (proxmox-ibm64) or proxmox (proxmox-lab). Templates are per node (claims tpl-<template>-<node>).");
21
27
  const hex64 = z.string().regex(/^[a-f0-9]{64}$/i);
22
28
  const dnsList = z.array(z.string().ip({ version: "v4" })).min(1).max(4);
23
29
  const ntpList = z.array(z.string().min(1).max(253)).max(4);
30
+ /** minis | proxmox | prox-ibm64; the legacy claim-node spelling `ibm64` is accepted and means prox-ibm64. */
31
+ const nodeName = z.enum(STIG_NODE_INPUT_NAMES).transform((n) => canonicalNodeName(n));
32
+ const templateName = z.string().regex(/^rhel810-stig-\d{8}-\d{4}$/);
24
33
  const cloneName = z.string().regex(/^[a-z0-9]([a-z0-9-]{0,40}[a-z0-9])?$/, "lowercase DNS label");
25
34
  export const BuildStigTemplateInputShape = {
26
35
  ssgDatastreamPath: z.string().min(1).describe("Path to the pinned scap-security-guide 0.1.82 ssg-rhel8-ds.xml on this host; its sha256 must equal the pin."),
@@ -32,11 +41,11 @@ export const BuildStigTemplateInputShape = {
32
41
  planDigest: hex64.optional().describe("planDigest from the plan; required with apply=true."),
33
42
  };
34
43
  export const CreateStigClaimInputShape = {
35
- node: nodeField,
36
- recreate: z.boolean().optional().default(false).describe("Release the existing clone-<cloneName> STIG clone claim (the operator destroys its guest) and create its replacement. Only a STIG clone claim qualifies."),
37
- untagged: z.boolean().optional().default(false).describe("Clone without a VLAN tag. Required on proxmox, whose bridge is not VLAN-aware."),
38
44
  cloneName: cloneName.describe("Clone VM name; the claim is clone-<cloneName>, the escrow key LAB_RHEL8_RECOVERY_<CLONENAME>."),
39
- templateRef: z.string().regex(/^rhel810-stig-\d{8}-\d{4}$/).optional().describe("Template version to clone, as synced on that node (default: the newest there)."),
45
+ recreate: z.boolean().optional().default(false).describe("Release the existing clone-<cloneName> STIG clone claim (the operator destroys its guest) and create its replacement. Only a STIG clone claim qualifies."),
46
+ untagged: z.boolean().optional().default(false).describe("Clone without a VLAN tag (VLAN 126 is the default on every node)."),
47
+ node: nodeName.optional().default("minis").describe("Proxmox node that hosts the clone: minis (build node), proxmox or prox-ibm64. The claim, the pool guard, the one-re-encrypting-clone guard and the template choice are all that node's."),
48
+ templateRef: z.string().regex(/^rhel810-stig-\d{8}-\d{4}$/).optional().describe("Template to clone (default: the newest synced to the node)."),
40
49
  ttlHours: z.number().int().min(1).max(8760).optional().default(48),
41
50
  dns: dnsList.optional(), ntp: ntpList.optional(),
42
51
  poolMaxPercent: z.number().int().min(10).max(70).optional().describe("Refuse to start above this thin-pool use. Default and hard cap 70; it can only be tightened."),
@@ -45,22 +54,62 @@ export const CreateStigClaimInputShape = {
45
54
  };
46
55
  export const ValidateStigClaimInputShape = {
47
56
  cloneName,
48
- node: nodeField,
57
+ node: nodeName.optional().describe("Optional: must match the node the clone's claim lives on (default: taken from the claim)."),
49
58
  requireDisa: z.boolean().optional().default(false).describe("Fail when the clone's template predates the DISA V2R8 dual-scan recipe (no benchmark baked in). Both scans must be fail=0 when present."),
50
59
  };
51
- export const GetStigReceiptInputShape = { claim: z.string().min(1).describe("ApplianceClaim name, e.g. clone-<cloneName> or tpl-<template>.") };
60
+ export const GetStigReceiptInputShape = {
61
+ claim: z.string().min(1).describe("ApplianceClaim name, e.g. clone-<cloneName>, tpl-<template> or tpl-<template>-<node>."),
62
+ node: nodeName.optional().describe("Optional: must match the node the claim lives on (default: taken from the claim)."),
63
+ };
52
64
  export const ReleaseStigTemplateInputShape = {
53
- node: nodeField,
54
65
  claim: z.string().min(1),
66
+ node: nodeName.optional().describe("Optional: must match the node the claim lives on (default: taken from the claim)."),
55
67
  confirmDestroy: z.boolean().describe("Must be true: templates are never reaped by the operator, so release destroys the template first, then deletes the claim."),
56
68
  };
57
- const defaultDeps = () => ({ makeRunner: (node) => new StigRunner(liveDeps({ node }), node ?? "minis") });
69
+ export const PublishStigTemplateInputShape = {
70
+ template: templateName.describe("Sealed template to publish (a template on the build node, node minis)."),
71
+ force: z.boolean().optional().default(false).describe("Re-export and re-publish even if the image already verifies."),
72
+ receiptPath: z.string().min(1).optional().describe("Optional local receipt JSON whose sha256 is recorded as receipt_sha256 (default: the template claim's receipt summary)."),
73
+ manifestPath: z.string().min(1).optional().describe("Optional local evidence MANIFEST.sha256 whose sha256 is recorded as evidence_manifest_sha256."),
74
+ apply: z.boolean().optional().default(false).describe("Omit for a plan. True exports, signs and publishes, and needs planDigest."),
75
+ planDigest: hex64.optional().describe("planDigest from the plan; required with apply=true."),
76
+ };
77
+ export const SyncStigTemplateInputShape = {
78
+ template: templateName.describe("Published template to materialize on the node."),
79
+ node: nodeName.describe("Node that receives the template (required): minis, proxmox or prox-ibm64."),
80
+ apply: z.boolean().optional().default(false).describe("Omit for a plan. True claims the template on the node, verifies it there and imports it; needs planDigest."),
81
+ planDigest: hex64.optional().describe("planDigest from the plan; required with apply=true."),
82
+ };
83
+ const evidenceStage = z.enum(EVIDENCE_STAGES);
84
+ export const CollectStigEvidenceInputShape = {
85
+ cloneName: cloneName.optional().describe("The STIG clone to read (exactly one of cloneName or claimName)."),
86
+ claimName: z.string().regex(/^clone-[a-z0-9]([a-z0-9-]{0,40}[a-z0-9])?$/).optional().describe("The clone's claim, clone-<cloneName>."),
87
+ template: templateName.describe("Template the clone was made from; refused when the clone's recorded template differs."),
88
+ node: nodeName.optional().describe("Optional: must match the node the clone's claim lives on."),
89
+ ctMetaPath: z.string().min(1).describe("Path to a ct-meta checkout: its rhel8-stig-template skill supplies the generators and pins, knowledge/rhel8-stig the ledger layout."),
90
+ planRoot: z.string().min(1).optional().describe("Output root in the knowledge/rhel8-stig layout. Default: a scratch copy under the run directory (the ledger is not written). Name <ctMetaPath>/knowledge/rhel8-stig to write the ledger."),
91
+ templateRunDir: z.string().min(1).optional().describe("The template's build evidence directory (contains evidence/stig-report). Needed to write the receipt for this clone; without it the receipt already in planRoot is gated."),
92
+ manualStigZip: z.string().min(1).optional().describe("DISA manual STIG zip (default env MANUAL_STIG_ZIP); pinned by sha256."),
93
+ ssgDatastream: z.string().min(1).optional().describe("Pinned SSG 0.1.82 ssg-rhel8-ds.xml (default env SSG_DATASTREAM)."),
94
+ schemaDir: z.string().min(1).optional().describe("SBOM schema cache (default env SBOM_SCHEMA_DIR, else under the run directory); downloaded and sha256-checked when missing."),
95
+ benchmarkZip: z.string().min(1).optional(), benchmarkXml: z.string().min(1).optional(),
96
+ distDir: z.string().min(1).optional().describe("Directory with publish-<template>.json and sync-<template>-<node>.json (default: <run dir>/dist)."),
97
+ today: z.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional(),
98
+ from: evidenceStage.optional().describe("Resume at this stage (earlier stages are not run)."),
99
+ only: evidenceStage.optional().describe("Run one stage."),
100
+ force: z.boolean().optional().default(false).describe("Redo the clone collection stages even when their marker says they are current."),
101
+ noSign: z.boolean().optional().default(false).describe("Stop before the bundle: no signing, explorer or verification."),
102
+ skipTests: z.boolean().optional().default(false),
103
+ apply: z.boolean().optional().default(false).describe("Omit for a plan. True collects and generates, and needs planDigest."),
104
+ planDigest: hex64.optional().describe("planDigest from the plan; required with apply=true."),
105
+ };
106
+ const defaultDeps = () => ({ makeRunner: (node) => new StigRunner(liveDeps({ node }), node ?? "minis"), makeDistribution: () => new StigDistribution(liveDeps()), makeEvidence: () => new StigEvidence(liveDeps()) });
58
107
  function ok(payload) {
59
108
  return { content: [{ type: "text", text: redact(JSON.stringify({ success: true, ...payload }, null, 2)) }] };
60
109
  }
61
110
  function fail(operation, err) {
62
111
  const message = redact(String(err?.message ?? err));
63
- const validation = /plan digest|must|cap|exceeds|refus|not a template|already exists|not found|re-encrypting|unreadable|datastream|packer|confirm|pinned|missing/i.test(message);
112
+ const validation = /plan digest|not ready|exactly one|stale|tagged|not a stig clone|planRoot|must|cap|exceeds|refus|not a template|already exists|not found|re-encrypting|unreadable|datastream|packer|confirm|pinned|missing|thin storage|not in the published|lives on|node map|mismatch|signature|still running/i.test(message);
64
113
  return createToolErrorResult(validation ? ProxmoxErrorCode.VALIDATION_ERROR : ProxmoxErrorCode.UPSTREAM_API_ERROR, `${operation}: ${message}`, { operation });
65
114
  }
66
115
  export async function handleBuildStigTemplate(args, deps = defaultDeps()) {
@@ -82,8 +131,7 @@ export async function handleCreateStigClaim(args, deps = defaultDeps()) {
82
131
  if (!p.success)
83
132
  return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
84
133
  try {
85
- const { node, ...rest } = p.data;
86
- return ok(await deps.makeRunner(node).createClone(rest));
134
+ return ok(await deps.makeRunner(p.data.node).createClone(p.data));
87
135
  }
88
136
  catch (e) {
89
137
  return fail("create_stig_claim", e);
@@ -94,8 +142,7 @@ export async function handleValidateStigClaim(args, deps = defaultDeps()) {
94
142
  if (!p.success)
95
143
  return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
96
144
  try {
97
- const { node, ...rest } = p.data;
98
- return ok(await deps.makeRunner(node).validate(rest));
145
+ return ok(await deps.makeRunner(p.data.node).validate(p.data));
99
146
  }
100
147
  catch (e) {
101
148
  return fail("validate_stig_claim", e);
@@ -106,7 +153,7 @@ export async function handleGetStigReceipt(args, deps = defaultDeps()) {
106
153
  if (!p.success)
107
154
  return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
108
155
  try {
109
- return ok(await deps.makeRunner().getReceipt(p.data));
156
+ return ok(await deps.makeRunner(p.data.node).getReceipt(p.data));
110
157
  }
111
158
  catch (e) {
112
159
  return fail("get_stig_receipt", e);
@@ -117,21 +164,58 @@ export async function handleReleaseStigTemplate(args, deps = defaultDeps()) {
117
164
  if (!p.success)
118
165
  return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
119
166
  try {
120
- const { node, ...rest } = p.data;
121
- return ok(await deps.makeRunner(node).releaseTemplate(rest));
167
+ return ok(await deps.makeRunner(p.data.node).releaseTemplate(p.data));
122
168
  }
123
169
  catch (e) {
124
170
  return fail("release_stig_template", e);
125
171
  }
126
172
  }
127
- export const STIG_TOOL_NAMES = ["build_stig_template", "create_stig_claim", "validate_stig_claim", "get_stig_receipt", "release_stig_template"];
128
- /** Registers the five tools on a server whose `.tool()` is already the guarded wrapper. */
173
+ export async function handlePublishStigTemplate(args, deps = defaultDeps()) {
174
+ const p = z.object(PublishStigTemplateInputShape).strict().safeParse(args);
175
+ if (!p.success)
176
+ return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
177
+ try {
178
+ return ok(await (deps.makeDistribution ?? defaultDeps().makeDistribution)().publish(p.data));
179
+ }
180
+ catch (e) {
181
+ return fail("publish_stig_template", e);
182
+ }
183
+ }
184
+ export async function handleSyncStigTemplate(args, deps = defaultDeps()) {
185
+ const p = z.object(SyncStigTemplateInputShape).strict().safeParse(args);
186
+ if (!p.success)
187
+ return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
188
+ try {
189
+ return ok(await (deps.makeDistribution ?? defaultDeps().makeDistribution)().sync(p.data));
190
+ }
191
+ catch (e) {
192
+ return fail("sync_stig_template", e);
193
+ }
194
+ }
195
+ export async function handleCollectStigEvidence(args, deps = defaultDeps()) {
196
+ const p = z.object(CollectStigEvidenceInputShape).strict().safeParse(args);
197
+ if (!p.success)
198
+ return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, p.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
199
+ if ((p.data.cloneName === undefined) === (p.data.claimName === undefined))
200
+ return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, "name exactly one clone: cloneName or claimName");
201
+ try {
202
+ return ok(await (deps.makeEvidence ?? defaultDeps().makeEvidence)().collect(p.data));
203
+ }
204
+ catch (e) {
205
+ return fail("collect_stig_evidence", e);
206
+ }
207
+ }
208
+ export const STIG_TOOL_NAMES = ["build_stig_template", "create_stig_claim", "validate_stig_claim", "get_stig_receipt", "release_stig_template", "publish_stig_template", "sync_stig_template", "collect_stig_evidence"];
209
+ /** Registers the STIG tools on a server whose `.tool()` is already the guarded wrapper. */
129
210
  export function registerStigTools(server, _context, deps = defaultDeps()) {
130
211
  server.tool("build_stig_template", "Plan or apply a RHEL 8.10 DISA STIG Proxmox template build on proxmox-minis-lab. Claim first (6h bare claim, Ready before Packer), pinned SSG 0.1.82 / DISA V2R8 benchmark / Packer 1.16.0, both scans must be fail=0, template verified, then the claim renews to the TTL cap. Apply needs the plan's planDigest.", BuildStigTemplateInputShape, async (a) => handleBuildStigTemplate(a, deps));
131
212
  server.tool("create_stig_claim", "Plan or apply a claim-backed clone of the newest STIG template: thin-pool guard (<=70%), one re-encrypting clone at a time, fresh tpmstate0, first-boot LUKS re-key bound to the clone's TPM2, recovery passphrase escrowed to Doppler by name, verify, fstrim. Apply needs the plan's planDigest.", CreateStigClaimInputShape, async (a) => handleCreateStigClaim(a, deps));
132
213
  server.tool("validate_stig_claim", "Run the pinned, tailored oscap STIG scan on a STIG clone, gate on fail=0, record the LUKS volume-key digest, and annotate the claim with the secret-free receipt summary.", ValidateStigClaimInputShape, async (a) => handleValidateStigClaim(a, deps));
133
214
  server.tool("get_stig_receipt", "Read a STIG claim's descriptor and receipt summary (counts, fail=0 gate, versions, artifact sha256, key digest) and what status.stig will carry when the operator projection is enabled.", GetStigReceiptInputShape, async (a) => handleGetStigReceipt(a, deps));
134
215
  server.tool("release_stig_template", "Release a STIG template: verify it is the claimed template, destroy it explicitly (the operator never reaps templates), then delete its claim. Requires confirmDestroy=true.", ReleaseStigTemplateInputShape, async (a) => handleReleaseStigTemplate(a, deps));
216
+ server.tool("publish_stig_template", "Plan or apply publishing a sealed RHEL 8.10 STIG template (on the build node) as a compressed qcow2 on the shared image store ct-stig-images: export from the read-only base LV, template.json (hardware, scan counts, digests), sha256, detached SHA-512 signatures with the pinned evidence key (Doppler into an ephemeral GNUPGHOME), index.json (latest, keep 3; prune never touches latest or an image a node is importing). Idempotent: a no-op when the image already verifies. Apply needs the plan's planDigest.", PublishStigTemplateInputShape, async (a) => handlePublishStigTemplate(a, deps));
217
+ server.tool("sync_stig_template", "Plan or apply materializing a published STIG template on one node (minis, proxmox, prox-ibm64): claim first (tpl-<template>[-<node>]), verify on the node (pinned key fingerprint, index.json, template.json and qcow2 sha256 + signatures; refuses and releases the claim on any mismatch), qm create with import-from onto thin storage (lvmthin only, pool <= 70%), efidisk, cloud-init, qm template, claim renewed to the TTL cap, sync receipt. Idempotent. Apply needs the plan's planDigest.", SyncStigTemplateInputShape, async (a) => handleSyncStigTemplate(a, deps));
218
+ server.tool("collect_stig_evidence", "Plan or apply the DoD evidence package (E1-E10) for a claimed STIG clone, mirroring ct-meta evidence.sh: clone-side stages through the claim's guest access (DISA/SSG scan results, Red Hat OVAL, volume-key digest, rpm inventory and host facts, FIPS state, verification), then the skill's own generators (CKL, POA&M, deviations, PPSM, SBOM, crypto modules, applicability, report, explorer) and the signed, verified bundle. Read-only on the guest and on golden artifacts; output goes to a scratch plan root unless one is named; returns a content-free receipt (counts, sha256, verify result). Apply needs the plan's planDigest.", CollectStigEvidenceInputShape, async (a) => handleCollectStigEvidence(a, deps));
135
219
  return true;
136
220
  }
137
221
  //# sourceMappingURL=stig-tools.js.map