@zivis/mcp 0.1.0-alpha.2 → 0.1.0-alpha.21

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 (126) hide show
  1. package/dist/api-client.d.ts +11 -11
  2. package/dist/api-client.js +41 -36
  3. package/dist/api-client.js.map +1 -1
  4. package/dist/auth/index.d.ts +9 -5
  5. package/dist/auth/index.js +33 -17
  6. package/dist/auth/index.js.map +1 -1
  7. package/dist/auth/keychain.d.ts +6 -5
  8. package/dist/auth/keychain.js +82 -69
  9. package/dist/auth/keychain.js.map +1 -1
  10. package/dist/auth/oauth.d.ts +18 -0
  11. package/dist/auth/oauth.js +55 -6
  12. package/dist/auth/oauth.js.map +1 -1
  13. package/dist/auth/sessions.d.ts +5 -4
  14. package/dist/auth/sessions.js +20 -14
  15. package/dist/auth/sessions.js.map +1 -1
  16. package/dist/auth/token-refresh.d.ts +2 -2
  17. package/dist/auth/token-refresh.js +42 -9
  18. package/dist/auth/token-refresh.js.map +1 -1
  19. package/dist/cli.d.ts +7 -15
  20. package/dist/cli.js +36 -904
  21. package/dist/cli.js.map +1 -1
  22. package/dist/lib/next-steps.d.ts +57 -0
  23. package/dist/lib/next-steps.js +45 -0
  24. package/dist/lib/next-steps.js.map +1 -0
  25. package/dist/project-binding.d.ts +19 -2
  26. package/dist/project-binding.js +57 -3
  27. package/dist/project-binding.js.map +1 -1
  28. package/dist/prompts/audit-dependencies.d.ts +10 -0
  29. package/dist/prompts/audit-dependencies.js +56 -0
  30. package/dist/prompts/audit-dependencies.js.map +1 -0
  31. package/dist/prompts/getting-started.d.ts +12 -0
  32. package/dist/prompts/getting-started.js +48 -0
  33. package/dist/prompts/getting-started.js.map +1 -0
  34. package/dist/prompts/index.d.ts +14 -0
  35. package/dist/prompts/index.js +25 -0
  36. package/dist/prompts/index.js.map +1 -0
  37. package/dist/prompts/prep-for-launch.d.ts +9 -0
  38. package/dist/prompts/prep-for-launch.js +62 -0
  39. package/dist/prompts/prep-for-launch.js.map +1 -0
  40. package/dist/prompts/secure-my-app.d.ts +9 -0
  41. package/dist/prompts/secure-my-app.js +70 -0
  42. package/dist/prompts/secure-my-app.js.map +1 -0
  43. package/dist/prompts/weekly-check.d.ts +9 -0
  44. package/dist/prompts/weekly-check.js +48 -0
  45. package/dist/prompts/weekly-check.js.map +1 -0
  46. package/dist/server.d.ts +1 -1
  47. package/dist/server.js +119 -43
  48. package/dist/server.js.map +1 -1
  49. package/dist/tools/check-project.d.ts +7 -7
  50. package/dist/tools/check-project.js +127 -95
  51. package/dist/tools/check-project.js.map +1 -1
  52. package/dist/tools/check-repo-trust.d.ts +4 -10
  53. package/dist/tools/check-repo-trust.js +56 -27
  54. package/dist/tools/check-repo-trust.js.map +1 -1
  55. package/dist/tools/enterprise/get-campaign.d.ts +27 -0
  56. package/dist/tools/enterprise/get-campaign.js +31 -0
  57. package/dist/tools/enterprise/get-campaign.js.map +1 -0
  58. package/dist/tools/enterprise/list-agents.d.ts +1 -1
  59. package/dist/tools/enterprise/list-attack-scenarios.d.ts +29 -0
  60. package/dist/tools/enterprise/list-attack-scenarios.js +69 -0
  61. package/dist/tools/enterprise/list-attack-scenarios.js.map +1 -0
  62. package/dist/tools/enterprise/list-attack-step-library-tests.d.ts +29 -0
  63. package/dist/tools/enterprise/list-attack-step-library-tests.js +61 -0
  64. package/dist/tools/enterprise/list-attack-step-library-tests.js.map +1 -0
  65. package/dist/tools/enterprise/list-campaigns.d.ts +37 -0
  66. package/dist/tools/enterprise/list-campaigns.js +60 -0
  67. package/dist/tools/enterprise/list-campaigns.js.map +1 -0
  68. package/dist/tools/enterprise/list-threat-model-review-items.d.ts +35 -0
  69. package/dist/tools/enterprise/list-threat-model-review-items.js +60 -0
  70. package/dist/tools/enterprise/list-threat-model-review-items.js.map +1 -0
  71. package/dist/tools/enterprise/list-threat-model-versions.d.ts +29 -0
  72. package/dist/tools/enterprise/list-threat-model-versions.js +60 -0
  73. package/dist/tools/enterprise/list-threat-model-versions.js.map +1 -0
  74. package/dist/tools/enterprise/manage-campaign-agent-instance.d.ts +42 -0
  75. package/dist/tools/enterprise/manage-campaign-agent-instance.js +68 -0
  76. package/dist/tools/enterprise/manage-campaign-agent-instance.js.map +1 -0
  77. package/dist/tools/enterprise/manage-campaign-target.d.ts +44 -0
  78. package/dist/tools/enterprise/manage-campaign-target.js +70 -0
  79. package/dist/tools/enterprise/manage-campaign-target.js.map +1 -0
  80. package/dist/tools/enterprise/manage-campaign.d.ts +62 -0
  81. package/dist/tools/enterprise/manage-campaign.js +114 -0
  82. package/dist/tools/enterprise/manage-campaign.js.map +1 -0
  83. package/dist/tools/enterprise/manage-finding.d.ts +1 -1
  84. package/dist/tools/enterprise/manage-threat-model-analysis.d.ts +52 -0
  85. package/dist/tools/enterprise/manage-threat-model-analysis.js +92 -0
  86. package/dist/tools/enterprise/manage-threat-model-analysis.js.map +1 -0
  87. package/dist/tools/enterprise/manage-threat-model-review.d.ts +47 -0
  88. package/dist/tools/enterprise/manage-threat-model-review.js +82 -0
  89. package/dist/tools/enterprise/manage-threat-model-review.js.map +1 -0
  90. package/dist/tools/get-application-auth-config.d.ts +27 -0
  91. package/dist/tools/get-application-auth-config.js +44 -0
  92. package/dist/tools/get-application-auth-config.js.map +1 -0
  93. package/dist/tools/get-finding-details.d.ts +4 -10
  94. package/dist/tools/get-finding-details.js +28 -10
  95. package/dist/tools/get-finding-details.js.map +1 -1
  96. package/dist/tools/get-findings.d.ts +4 -10
  97. package/dist/tools/get-findings.js +44 -23
  98. package/dist/tools/get-findings.js.map +1 -1
  99. package/dist/tools/get-started.d.ts +28 -0
  100. package/dist/tools/get-started.js +364 -0
  101. package/dist/tools/get-started.js.map +1 -0
  102. package/dist/tools/list-applications.d.ts +1 -1
  103. package/dist/tools/list-scans.d.ts +4 -10
  104. package/dist/tools/list-scans.js +55 -21
  105. package/dist/tools/list-scans.js.map +1 -1
  106. package/dist/tools/list-test-scenarios.d.ts +4 -10
  107. package/dist/tools/list-test-scenarios.js +41 -13
  108. package/dist/tools/list-test-scenarios.js.map +1 -1
  109. package/dist/tools/local-scan.d.ts +1 -1
  110. package/dist/tools/manage-application.d.ts +72 -0
  111. package/dist/tools/manage-application.js +138 -0
  112. package/dist/tools/manage-application.js.map +1 -0
  113. package/dist/tools/manage-endpoint-lifecycle.d.ts +90 -0
  114. package/dist/tools/manage-endpoint-lifecycle.js +191 -0
  115. package/dist/tools/manage-endpoint-lifecycle.js.map +1 -0
  116. package/dist/tools/open-in-ide.d.ts +1 -1
  117. package/dist/tools/setup-red-team-target.d.ts +6 -12
  118. package/dist/tools/setup-red-team-target.js +51 -20
  119. package/dist/tools/setup-red-team-target.js.map +1 -1
  120. package/dist/tools/triage-finding.d.ts +4 -10
  121. package/dist/tools/triage-finding.js +30 -21
  122. package/dist/tools/triage-finding.js.map +1 -1
  123. package/dist/types.d.ts +42 -2
  124. package/dist/types.js +29 -23
  125. package/dist/types.js.map +1 -1
  126. package/package.json +1 -1
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QACtE,OAAO,eAAe,WAAW,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,mBAAmB,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAc;IAItC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAClC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBACpB,CAAC,EAAE,CAAC;YACN,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,OAAe,EACf,QAAgC,EAChC,SAAsB,cAAc;IAEpC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,OAAO,SAAS,EAAE,CAAC;QACrB,KAAK,SAAS,CAAC;QACf,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1B,OAAO;QACT;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO,CAAC,KAAK,CACX,sEAAsE,CACvE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;YAC7E,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;CAuBb,CAAC,CAAC;AACH,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * next-steps — Shared helper for the guided UX layer
3
+ *
4
+ * Every ZIVIS tool response can include a next_steps array so the LLM
5
+ * organically guides the user through the funnel without them needing to
6
+ * know which tool to call next.
7
+ *
8
+ * Usage:
9
+ * import { withNextSteps } from "../lib/next-steps.js";
10
+ * return withNextSteps(myResult, [
11
+ * { id: "...", label: "...", tool: "...", why: "..." },
12
+ * ], "One-line summary for the LLM to paraphrase");
13
+ */
14
+ export interface NextStep {
15
+ /** Stable, snake_case id used for referencing (e.g. "triage_finding") */
16
+ id: string;
17
+ /** Plain-English label with no security jargon */
18
+ label: string;
19
+ /** The MCP tool the LLM should call to execute this step */
20
+ tool: string;
21
+ /** Pre-filled argument suggestions the LLM should pass to the tool */
22
+ args_hint?: Record<string, unknown>;
23
+ /** One-line, plain-English reason this step is suggested */
24
+ why: string;
25
+ /** Optional tier gate — LLM should not surface if user is below this tier */
26
+ requires_tier?: "free" | "pro" | "enterprise";
27
+ }
28
+ export interface ZivisToolPayload<T> {
29
+ result: T;
30
+ next_steps?: NextStep[];
31
+ /** Free-form one-line summary for the LLM to paraphrase to the user */
32
+ summary?: string;
33
+ }
34
+ /**
35
+ * Wrap any tool result with a next_steps array and optional summary.
36
+ *
37
+ * The LLM will read next_steps and use them to naturally suggest the
38
+ * next action, converting discrete tool calls into a guided funnel.
39
+ */
40
+ export declare function withNextSteps<T>(result: T, nextSteps: NextStep[], summary?: string): {
41
+ content: Array<{
42
+ type: "text";
43
+ text: string;
44
+ }>;
45
+ isError?: boolean;
46
+ };
47
+ /**
48
+ * Wrap an error result with next_steps guidance so even failures give users
49
+ * a clear path forward.
50
+ */
51
+ export declare function withNextStepsError(message: string, nextSteps: NextStep[], summary?: string): {
52
+ content: Array<{
53
+ type: "text";
54
+ text: string;
55
+ }>;
56
+ isError: true;
57
+ };
@@ -0,0 +1,45 @@
1
+ /**
2
+ * next-steps — Shared helper for the guided UX layer
3
+ *
4
+ * Every ZIVIS tool response can include a next_steps array so the LLM
5
+ * organically guides the user through the funnel without them needing to
6
+ * know which tool to call next.
7
+ *
8
+ * Usage:
9
+ * import { withNextSteps } from "../lib/next-steps.js";
10
+ * return withNextSteps(myResult, [
11
+ * { id: "...", label: "...", tool: "...", why: "..." },
12
+ * ], "One-line summary for the LLM to paraphrase");
13
+ */
14
+ /**
15
+ * Wrap any tool result with a next_steps array and optional summary.
16
+ *
17
+ * The LLM will read next_steps and use them to naturally suggest the
18
+ * next action, converting discrete tool calls into a guided funnel.
19
+ */
20
+ export function withNextSteps(result, nextSteps, summary) {
21
+ const payload = {
22
+ result,
23
+ next_steps: nextSteps,
24
+ ...(summary ? { summary } : {}),
25
+ };
26
+ return {
27
+ content: [{ type: "text", text: JSON.stringify(payload, null, 2) }],
28
+ };
29
+ }
30
+ /**
31
+ * Wrap an error result with next_steps guidance so even failures give users
32
+ * a clear path forward.
33
+ */
34
+ export function withNextStepsError(message, nextSteps, summary) {
35
+ const payload = {
36
+ result: { error: message },
37
+ next_steps: nextSteps,
38
+ ...(summary ? { summary } : {}),
39
+ };
40
+ return {
41
+ content: [{ type: "text", text: JSON.stringify(payload, null, 2) }],
42
+ isError: true,
43
+ };
44
+ }
45
+ //# sourceMappingURL=next-steps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next-steps.js","sourceRoot":"","sources":["../../src/lib/next-steps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAwBH;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAS,EACT,SAAqB,EACrB,OAAgB;IAEhB,MAAM,OAAO,GAAwB;QACnC,MAAM;QACN,UAAU,EAAE,SAAS;QACrB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;IACF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAe,EACf,SAAqB,EACrB,OAAgB;IAEhB,MAAM,OAAO,GAAwC;QACnD,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,UAAU,EAAE,SAAS;QACrB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;IACF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5E,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
@@ -6,8 +6,8 @@
6
6
  * using the wrong org's MCP connection in a project.
7
7
  *
8
8
  * The binding file is optional — if absent, the server starts normally.
9
- * If present, the configured ZIVIS_SESSION must match the binding's
10
- * session field or the server refuses to start.
9
+ * If ZIVIS_SESSION is set in the MCP process env, it must match the binding.
10
+ * If unset, the binding file's session is authoritative (workspace MCP).
11
11
  */
12
12
  import type { ProjectBinding, ZivisConfig } from "./types.js";
13
13
  /**
@@ -18,6 +18,23 @@ export declare function detectProjectBinding(cwd: string): {
18
18
  binding: ProjectBinding;
19
19
  filePath: string;
20
20
  } | null;
21
+ /**
22
+ * Build a ZivisConfig that merges DEFAULT_CONFIG with any environment overrides
23
+ * stored in a project binding. Use this in CLI commands so that running `zivis`
24
+ * from a staging repo automatically hits staging without requiring env vars.
25
+ */
26
+ export declare function resolveConfigFromBinding(cwd?: string): ZivisConfig;
27
+ /**
28
+ * Resolve which named session this MCP process should use.
29
+ *
30
+ * Precedence:
31
+ * 1. ZIVIS_SESSION env (non-empty) — explicit override for advanced setups
32
+ * 2. `.zivis/project.json` session when that file exists for this workspace
33
+ * 3. incoming config session (e.g. CLI flags) if non-empty
34
+ * 4. merged binding defaults from resolveConfigFromBinding
35
+ * 5. "default"
36
+ */
37
+ export declare function resolveMcpSessionForWorkspace(incoming: ZivisConfig, workspacePath: string, detected: ReturnType<typeof detectProjectBinding>, fromBinding: ZivisConfig): string;
21
38
  /**
22
39
  * Validate that the project binding matches the current MCP session.
23
40
  * Exits with code 1 on mismatch.
@@ -6,11 +6,12 @@
6
6
  * using the wrong org's MCP connection in a project.
7
7
  *
8
8
  * The binding file is optional — if absent, the server starts normally.
9
- * If present, the configured ZIVIS_SESSION must match the binding's
10
- * session field or the server refuses to start.
9
+ * If ZIVIS_SESSION is set in the MCP process env, it must match the binding.
10
+ * If unset, the binding file's session is authoritative (workspace MCP).
11
11
  */
12
12
  import * as fs from "node:fs";
13
13
  import * as path from "node:path";
14
+ import { DEFAULT_CONFIG } from "./types.js";
14
15
  const BINDING_DIR = ".zivis";
15
16
  const BINDING_FILE = "project.json";
16
17
  /**
@@ -41,12 +42,65 @@ export function detectProjectBinding(cwd) {
41
42
  }
42
43
  return null;
43
44
  }
45
+ /**
46
+ * Build a ZivisConfig that merges DEFAULT_CONFIG with any environment overrides
47
+ * stored in a project binding. Use this in CLI commands so that running `zivis`
48
+ * from a staging repo automatically hits staging without requiring env vars.
49
+ */
50
+ export function resolveConfigFromBinding(cwd) {
51
+ const detected = detectProjectBinding(cwd ?? process.cwd());
52
+ if (!detected)
53
+ return DEFAULT_CONFIG;
54
+ const { binding } = detected;
55
+ return {
56
+ ...DEFAULT_CONFIG,
57
+ ...(binding.session ? { session: binding.session } : {}),
58
+ ...(binding.apiBaseUrl ? { apiBaseUrl: binding.apiBaseUrl } : {}),
59
+ ...(binding.oauthApiUrl ? { oauthApiUrl: binding.oauthApiUrl } : {}),
60
+ ...(binding.oauthClientId ? { oauthClientId: binding.oauthClientId } : {}),
61
+ ...(binding.keychainPrefix ? { keychainPrefix: binding.keychainPrefix } : {}),
62
+ ...(binding.configDir ? { configDir: binding.configDir } : {}),
63
+ };
64
+ }
65
+ /**
66
+ * Resolve which named session this MCP process should use.
67
+ *
68
+ * Precedence:
69
+ * 1. ZIVIS_SESSION env (non-empty) — explicit override for advanced setups
70
+ * 2. `.zivis/project.json` session when that file exists for this workspace
71
+ * 3. incoming config session (e.g. CLI flags) if non-empty
72
+ * 4. merged binding defaults from resolveConfigFromBinding
73
+ * 5. "default"
74
+ */
75
+ export function resolveMcpSessionForWorkspace(incoming, workspacePath, detected, fromBinding) {
76
+ const envSession = process.env.ZIVIS_SESSION?.trim();
77
+ if (envSession !== undefined && envSession !== "") {
78
+ // IDE configs often set ZIVIS_SESSION=default as a placeholder; if the project
79
+ // binding names a real session, treat "default" as non-override.
80
+ if (envSession === "default" &&
81
+ detected?.binding.session &&
82
+ detected.binding.session !== "default") {
83
+ return detected.binding.session;
84
+ }
85
+ return envSession;
86
+ }
87
+ if (detected?.binding.session) {
88
+ return detected.binding.session;
89
+ }
90
+ if (incoming.session !== undefined && incoming.session !== "") {
91
+ return incoming.session;
92
+ }
93
+ if (fromBinding.session) {
94
+ return fromBinding.session;
95
+ }
96
+ return "default";
97
+ }
44
98
  /**
45
99
  * Validate that the project binding matches the current MCP session.
46
100
  * Exits with code 1 on mismatch.
47
101
  */
48
102
  export function validateProjectBinding(binding, filePath, config) {
49
- const currentSession = config.session || "default";
103
+ const currentSession = config.session ?? "default";
50
104
  const expectedSession = binding.session;
51
105
  if (currentSession !== expectedSession) {
52
106
  const orgLabel = binding.orgName
@@ -1 +1 @@
1
- {"version":3,"file":"project-binding.js","sourceRoot":"","sources":["../src/project-binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-binding.js","sourceRoot":"","sources":["../src/project-binding.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * audit-dependencies prompt
3
+ *
4
+ * The zero-setup, zero-auth entry point. Walks through package.json /
5
+ * requirements.txt / go.mod and runs zivis_check_repo_trust on each dep.
6
+ * This is the perfect "first taste" — no binding needed.
7
+ * In Cursor: /zivis-audit-dependencies
8
+ */
9
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
10
+ export declare function registerAuditDependenciesPrompt(server: McpServer): void;
@@ -0,0 +1,56 @@
1
+ /**
2
+ * audit-dependencies prompt
3
+ *
4
+ * The zero-setup, zero-auth entry point. Walks through package.json /
5
+ * requirements.txt / go.mod and runs zivis_check_repo_trust on each dep.
6
+ * This is the perfect "first taste" — no binding needed.
7
+ * In Cursor: /zivis-audit-dependencies
8
+ */
9
+ export function registerAuditDependenciesPrompt(server) {
10
+ server.registerPrompt("audit-dependencies", {
11
+ description: "Check the open source libraries this project depends on for security risks. No account setup needed.",
12
+ argsSchema: {},
13
+ }, async () => ({
14
+ messages: [
15
+ {
16
+ role: "user",
17
+ content: {
18
+ type: "text",
19
+ text: `I want to check whether the open source libraries I'm using are safe.
20
+
21
+ Please do the following:
22
+
23
+ 1. Look at the dependency files in this project. In priority order, check:
24
+ - package.json (look for the "dependencies" and "devDependencies" keys)
25
+ - requirements.txt or pyproject.toml
26
+ - go.mod
27
+ - Any other manifest files you can see
28
+
29
+ 2. From those files, find all external dependencies that have a GitHub repository.
30
+ - Skip internal packages (those starting with "@my-company/" or similar private namespaces).
31
+ - Skip built-in packages (e.g. node built-ins like "fs", "path").
32
+
33
+ 3. For each external dependency that has a public GitHub repo, call \`zivis_check_repo_trust\`
34
+ with the owner/repo string (e.g. "openai/openai-node").
35
+
36
+ 4. After checking each one, give me a summary table with columns:
37
+ - Package name
38
+ - Trust grade (A+ through F)
39
+ - Risk level (Safe / Low risk / Moderate / High / Critical)
40
+ - Any critical or high findings (one line each)
41
+
42
+ 5. Flag any package with grade C or below and explain in plain English why it's risky.
43
+
44
+ 6. At the end, suggest the two highest-priority actions to take based on the results.
45
+
46
+ Ground rules:
47
+ - Process dependencies one at a time so I can follow along.
48
+ - If a package doesn't have a GitHub repo, skip it and say "(no GitHub repo found)".
49
+ - Don't make up trust data — only use what zivis_check_repo_trust returns.
50
+ - Speak in plain English. "High risk" is better than "critical severity threat vector".`,
51
+ },
52
+ },
53
+ ],
54
+ }));
55
+ }
56
+ //# sourceMappingURL=audit-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-dependencies.js","sourceRoot":"","sources":["../../src/prompts/audit-dependencies.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,UAAU,+BAA+B,CAAC,MAAiB;IAC/D,MAAM,CAAC,cAAc,CACnB,oBAAoB,EACpB;QACE,WAAW,EACT,sGAAsG;QACxG,UAAU,EAAE,EAAE;KACf,EACD,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFA+BsE;iBAC7E;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * getting-started prompt
3
+ *
4
+ * The front-door slash command for new users who don't know what to do.
5
+ * In Cursor: /zivis-getting-started
6
+ * In Claude Code: /mcp__zivis-security__getting-started
7
+ *
8
+ * Instructs the LLM to call zivis_check_project and zivis_get_started
9
+ * and present the results as a numbered list — no jargon, no assumptions.
10
+ */
11
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
12
+ export declare function registerGettingStartedPrompt(server: McpServer): void;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * getting-started prompt
3
+ *
4
+ * The front-door slash command for new users who don't know what to do.
5
+ * In Cursor: /zivis-getting-started
6
+ * In Claude Code: /mcp__zivis-security__getting-started
7
+ *
8
+ * Instructs the LLM to call zivis_check_project and zivis_get_started
9
+ * and present the results as a numbered list — no jargon, no assumptions.
10
+ */
11
+ export function registerGettingStartedPrompt(server) {
12
+ server.registerPrompt("getting-started", {
13
+ description: "Walk me through ZIVIS for this project. Use this if you're new or unsure what to test.",
14
+ argsSchema: {},
15
+ }, async () => ({
16
+ messages: [
17
+ {
18
+ role: "user",
19
+ content: {
20
+ type: "text",
21
+ text: `I want to use ZIVIS for security on this project but I'm not sure where to start.
22
+
23
+ Please do the following, in order:
24
+
25
+ 1. Call \`zivis_check_project\` (no arguments) to confirm the project is connected correctly.
26
+ - If it returns any problems, explain them in plain English and tell me the exact terminal command to run to fix them. Stop here and wait for me.
27
+ - If it's OK, continue to step 2.
28
+
29
+ 2. Call \`zivis_get_started\` (no arguments).
30
+
31
+ 3. Present the \`recommended_next_steps\` from the response as a numbered list.
32
+ - Use the \`label\` as the item text.
33
+ - Add one sentence from the \`why\` field below each item.
34
+ - Do NOT invent additional steps or add security advice of your own.
35
+
36
+ 4. Ask me which number I want to do. Wait for my answer before calling anything else.
37
+
38
+ Ground rules for this conversation:
39
+ - I'm a developer, not a security person. Speak plainly.
40
+ - Avoid these words unless I use them first: "actor", "attack vector", "threat model", "STRIDE", "kill chain", "TTPs".
41
+ - Use plain alternatives: "tester", "how someone might break in", "security plan", "types of attacks".
42
+ - If I seem unsure which option to pick, suggest the one flagged as \`if_user_unsure\` in the response.`,
43
+ },
44
+ },
45
+ ],
46
+ }));
47
+ }
48
+ //# sourceMappingURL=getting-started.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getting-started.js","sourceRoot":"","sources":["../../src/prompts/getting-started.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,UAAU,4BAA4B,CAAC,MAAiB;IAC5D,MAAM,CAAC,cAAc,CACnB,iBAAiB,EACjB;QACE,WAAW,EACT,wFAAwF;QAC1F,UAAU,EAAE,EAAE;KACf,EACD,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;wGAqBsF;iBAC7F;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * MCP Prompts — guided slash commands for non-security engineers
3
+ *
4
+ * These prompts appear as slash commands in IDEs:
5
+ * Cursor: /zivis-getting-started, /zivis-secure-my-app, etc.
6
+ * Claude Code: /mcp__zivis-security__getting-started, etc.
7
+ * Cline: Listed in the Prompts picker
8
+ *
9
+ * Each prompt injects a detailed instruction set as a "user" message,
10
+ * telling the LLM exactly how to orchestrate the ZIVIS tools in
11
+ * plain English — no security vocabulary required.
12
+ */
13
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
14
+ export declare function registerAllPrompts(server: McpServer): void;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * MCP Prompts — guided slash commands for non-security engineers
3
+ *
4
+ * These prompts appear as slash commands in IDEs:
5
+ * Cursor: /zivis-getting-started, /zivis-secure-my-app, etc.
6
+ * Claude Code: /mcp__zivis-security__getting-started, etc.
7
+ * Cline: Listed in the Prompts picker
8
+ *
9
+ * Each prompt injects a detailed instruction set as a "user" message,
10
+ * telling the LLM exactly how to orchestrate the ZIVIS tools in
11
+ * plain English — no security vocabulary required.
12
+ */
13
+ import { registerGettingStartedPrompt } from "./getting-started.js";
14
+ import { registerSecureMyAppPrompt } from "./secure-my-app.js";
15
+ import { registerAuditDependenciesPrompt } from "./audit-dependencies.js";
16
+ import { registerPrepForLaunchPrompt } from "./prep-for-launch.js";
17
+ import { registerWeeklyCheckPrompt } from "./weekly-check.js";
18
+ export function registerAllPrompts(server) {
19
+ registerGettingStartedPrompt(server);
20
+ registerSecureMyAppPrompt(server);
21
+ registerAuditDependenciesPrompt(server);
22
+ registerPrepForLaunchPrompt(server);
23
+ registerWeeklyCheckPrompt(server);
24
+ }
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACrC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAClC,+BAA+B,CAAC,MAAM,CAAC,CAAC;IACxC,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACpC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * prep-for-launch prompt
3
+ *
4
+ * Pre-deploy checklist: dependency audit + open findings review + scan status.
5
+ * Returns a go / no-go summary based on severity counts.
6
+ * In Cursor: /zivis-prep-for-launch
7
+ */
8
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
9
+ export declare function registerPrepForLaunchPrompt(server: McpServer): void;
@@ -0,0 +1,62 @@
1
+ /**
2
+ * prep-for-launch prompt
3
+ *
4
+ * Pre-deploy checklist: dependency audit + open findings review + scan status.
5
+ * Returns a go / no-go summary based on severity counts.
6
+ * In Cursor: /zivis-prep-for-launch
7
+ */
8
+ export function registerPrepForLaunchPrompt(server) {
9
+ server.registerPrompt("prep-for-launch", {
10
+ description: "Run a pre-launch security checklist. Checks open findings, recent scans, and dependency risks. Returns a go / no-go recommendation.",
11
+ argsSchema: {},
12
+ }, async () => ({
13
+ messages: [
14
+ {
15
+ role: "user",
16
+ content: {
17
+ type: "text",
18
+ text: `I'm about to launch / deploy to production and I want to make sure there are no known security issues.
19
+
20
+ Please run through this checklist and give me a go / no-go recommendation at the end.
21
+
22
+ **Step 1 — Check open findings**
23
+ Call \`zivis_get_findings\` with status="open".
24
+ - If there are any critical or high findings, list them by title and severity.
25
+ - Note how many medium and low findings exist (don't list them all — just the count).
26
+
27
+ **Step 2 — Check recent scans**
28
+ Call \`zivis_list_scans\` with limit=5.
29
+ - Tell me when the most recent scan ran and whether it completed successfully.
30
+ - If no scan has run in the last 7 days, flag this as a gap.
31
+
32
+ **Step 3 — Check dependency risks (if time permits)**
33
+ If the project has a package.json, requirements.txt, or go.mod, identify the 3-5 most important AI or security-sensitive dependencies and call \`zivis_check_repo_trust\` for each.
34
+ - Flag any with grade C or below.
35
+
36
+ **Step 4 — Go / No-go recommendation**
37
+ Based on the above, give me a clear recommendation:
38
+
39
+ 🔴 NO-GO if:
40
+ - Any critical open findings exist
41
+ - No scan has run (ever)
42
+ - Any dependency has grade D or F
43
+
44
+ 🟡 PROCEED WITH CAUTION if:
45
+ - Any high-severity open findings exist
46
+ - Last scan ran more than 7 days ago
47
+ - Any dependency has grade C
48
+
49
+ 🟢 GO if:
50
+ - No critical or high open findings
51
+ - A scan ran within the last 7 days
52
+ - No high-risk dependencies
53
+
54
+ After the recommendation, list the top 3 things I should fix before or immediately after launch, in priority order.
55
+
56
+ Speak in plain English. I'm a developer, not a security engineer.`,
57
+ },
58
+ },
59
+ ],
60
+ }));
61
+ }
62
+ //# sourceMappingURL=prep-for-launch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prep-for-launch.js","sourceRoot":"","sources":["../../src/prompts/prep-for-launch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,UAAU,2BAA2B,CAAC,MAAiB;IAC3D,MAAM,CAAC,cAAc,CACnB,iBAAiB,EACjB;QACE,WAAW,EACT,qIAAqI;QACvI,UAAU,EAAE,EAAE;KACf,EACD,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kEAsCgD;iBACvD;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * secure-my-app prompt
3
+ *
4
+ * For developers who know they have an app and want to test it.
5
+ * Skips the intro tour and goes straight to red team setup.
6
+ * In Cursor: /zivis-secure-my-app
7
+ */
8
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
9
+ export declare function registerSecureMyAppPrompt(server: McpServer): void;