@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.
- package/dist/api-client.d.ts +11 -11
- package/dist/api-client.js +41 -36
- package/dist/api-client.js.map +1 -1
- package/dist/auth/index.d.ts +9 -5
- package/dist/auth/index.js +33 -17
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/keychain.d.ts +6 -5
- package/dist/auth/keychain.js +82 -69
- package/dist/auth/keychain.js.map +1 -1
- package/dist/auth/oauth.d.ts +18 -0
- package/dist/auth/oauth.js +55 -6
- package/dist/auth/oauth.js.map +1 -1
- package/dist/auth/sessions.d.ts +5 -4
- package/dist/auth/sessions.js +20 -14
- package/dist/auth/sessions.js.map +1 -1
- package/dist/auth/token-refresh.d.ts +2 -2
- package/dist/auth/token-refresh.js +42 -9
- package/dist/auth/token-refresh.js.map +1 -1
- package/dist/cli.d.ts +7 -15
- package/dist/cli.js +36 -904
- package/dist/cli.js.map +1 -1
- package/dist/lib/next-steps.d.ts +57 -0
- package/dist/lib/next-steps.js +45 -0
- package/dist/lib/next-steps.js.map +1 -0
- package/dist/project-binding.d.ts +19 -2
- package/dist/project-binding.js +57 -3
- package/dist/project-binding.js.map +1 -1
- package/dist/prompts/audit-dependencies.d.ts +10 -0
- package/dist/prompts/audit-dependencies.js +56 -0
- package/dist/prompts/audit-dependencies.js.map +1 -0
- package/dist/prompts/getting-started.d.ts +12 -0
- package/dist/prompts/getting-started.js +48 -0
- package/dist/prompts/getting-started.js.map +1 -0
- package/dist/prompts/index.d.ts +14 -0
- package/dist/prompts/index.js +25 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/prep-for-launch.d.ts +9 -0
- package/dist/prompts/prep-for-launch.js +62 -0
- package/dist/prompts/prep-for-launch.js.map +1 -0
- package/dist/prompts/secure-my-app.d.ts +9 -0
- package/dist/prompts/secure-my-app.js +70 -0
- package/dist/prompts/secure-my-app.js.map +1 -0
- package/dist/prompts/weekly-check.d.ts +9 -0
- package/dist/prompts/weekly-check.js +48 -0
- package/dist/prompts/weekly-check.js.map +1 -0
- package/dist/server.d.ts +1 -1
- package/dist/server.js +119 -43
- package/dist/server.js.map +1 -1
- package/dist/tools/check-project.d.ts +7 -7
- package/dist/tools/check-project.js +127 -95
- package/dist/tools/check-project.js.map +1 -1
- package/dist/tools/check-repo-trust.d.ts +4 -10
- package/dist/tools/check-repo-trust.js +56 -27
- package/dist/tools/check-repo-trust.js.map +1 -1
- package/dist/tools/enterprise/get-campaign.d.ts +27 -0
- package/dist/tools/enterprise/get-campaign.js +31 -0
- package/dist/tools/enterprise/get-campaign.js.map +1 -0
- package/dist/tools/enterprise/list-agents.d.ts +1 -1
- package/dist/tools/enterprise/list-attack-scenarios.d.ts +29 -0
- package/dist/tools/enterprise/list-attack-scenarios.js +69 -0
- package/dist/tools/enterprise/list-attack-scenarios.js.map +1 -0
- package/dist/tools/enterprise/list-attack-step-library-tests.d.ts +29 -0
- package/dist/tools/enterprise/list-attack-step-library-tests.js +61 -0
- package/dist/tools/enterprise/list-attack-step-library-tests.js.map +1 -0
- package/dist/tools/enterprise/list-campaigns.d.ts +37 -0
- package/dist/tools/enterprise/list-campaigns.js +60 -0
- package/dist/tools/enterprise/list-campaigns.js.map +1 -0
- package/dist/tools/enterprise/list-threat-model-review-items.d.ts +35 -0
- package/dist/tools/enterprise/list-threat-model-review-items.js +60 -0
- package/dist/tools/enterprise/list-threat-model-review-items.js.map +1 -0
- package/dist/tools/enterprise/list-threat-model-versions.d.ts +29 -0
- package/dist/tools/enterprise/list-threat-model-versions.js +60 -0
- package/dist/tools/enterprise/list-threat-model-versions.js.map +1 -0
- package/dist/tools/enterprise/manage-campaign-agent-instance.d.ts +42 -0
- package/dist/tools/enterprise/manage-campaign-agent-instance.js +68 -0
- package/dist/tools/enterprise/manage-campaign-agent-instance.js.map +1 -0
- package/dist/tools/enterprise/manage-campaign-target.d.ts +44 -0
- package/dist/tools/enterprise/manage-campaign-target.js +70 -0
- package/dist/tools/enterprise/manage-campaign-target.js.map +1 -0
- package/dist/tools/enterprise/manage-campaign.d.ts +62 -0
- package/dist/tools/enterprise/manage-campaign.js +114 -0
- package/dist/tools/enterprise/manage-campaign.js.map +1 -0
- package/dist/tools/enterprise/manage-finding.d.ts +1 -1
- package/dist/tools/enterprise/manage-threat-model-analysis.d.ts +52 -0
- package/dist/tools/enterprise/manage-threat-model-analysis.js +92 -0
- package/dist/tools/enterprise/manage-threat-model-analysis.js.map +1 -0
- package/dist/tools/enterprise/manage-threat-model-review.d.ts +47 -0
- package/dist/tools/enterprise/manage-threat-model-review.js +82 -0
- package/dist/tools/enterprise/manage-threat-model-review.js.map +1 -0
- package/dist/tools/get-application-auth-config.d.ts +27 -0
- package/dist/tools/get-application-auth-config.js +44 -0
- package/dist/tools/get-application-auth-config.js.map +1 -0
- package/dist/tools/get-finding-details.d.ts +4 -10
- package/dist/tools/get-finding-details.js +28 -10
- package/dist/tools/get-finding-details.js.map +1 -1
- package/dist/tools/get-findings.d.ts +4 -10
- package/dist/tools/get-findings.js +44 -23
- package/dist/tools/get-findings.js.map +1 -1
- package/dist/tools/get-started.d.ts +28 -0
- package/dist/tools/get-started.js +364 -0
- package/dist/tools/get-started.js.map +1 -0
- package/dist/tools/list-applications.d.ts +1 -1
- package/dist/tools/list-scans.d.ts +4 -10
- package/dist/tools/list-scans.js +55 -21
- package/dist/tools/list-scans.js.map +1 -1
- package/dist/tools/list-test-scenarios.d.ts +4 -10
- package/dist/tools/list-test-scenarios.js +41 -13
- package/dist/tools/list-test-scenarios.js.map +1 -1
- package/dist/tools/local-scan.d.ts +1 -1
- package/dist/tools/manage-application.d.ts +72 -0
- package/dist/tools/manage-application.js +138 -0
- package/dist/tools/manage-application.js.map +1 -0
- package/dist/tools/manage-endpoint-lifecycle.d.ts +90 -0
- package/dist/tools/manage-endpoint-lifecycle.js +191 -0
- package/dist/tools/manage-endpoint-lifecycle.js.map +1 -0
- package/dist/tools/open-in-ide.d.ts +1 -1
- package/dist/tools/setup-red-team-target.d.ts +6 -12
- package/dist/tools/setup-red-team-target.js +51 -20
- package/dist/tools/setup-red-team-target.js.map +1 -1
- package/dist/tools/triage-finding.d.ts +4 -10
- package/dist/tools/triage-finding.js +30 -21
- package/dist/tools/triage-finding.js.map +1 -1
- package/dist/types.d.ts +42 -2
- package/dist/types.js +29 -23
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* zivis_manage_endpoint_lifecycle — Create/update/delete/import endpoints
|
|
3
|
+
*
|
|
4
|
+
* Maps to:
|
|
5
|
+
* - POST /api/rt/applications/:id/endpoints
|
|
6
|
+
* - PATCH /api/rt/applications/:id/endpoints/:endpointId
|
|
7
|
+
* - DELETE /api/rt/applications/:id/endpoints/:endpointId
|
|
8
|
+
* - DELETE /api/rt/applications/:id/endpoints?source=<source>
|
|
9
|
+
* - POST /api/rt/applications/:id/endpoints/import-openapi
|
|
10
|
+
*/
|
|
11
|
+
import { z } from "zod";
|
|
12
|
+
import { requireApplicationId } from "../resolve-application-id.js";
|
|
13
|
+
import { sanitizeResponse } from "../sanitize.js";
|
|
14
|
+
export const MANAGE_ENDPOINT_LIFECYCLE_NAME = "zivis_manage_endpoint_lifecycle";
|
|
15
|
+
export const MANAGE_ENDPOINT_LIFECYCLE_DESCRIPTION = `Manage endpoint lifecycle for an application.
|
|
16
|
+
|
|
17
|
+
Actions:
|
|
18
|
+
- create: create a single endpoint
|
|
19
|
+
- update: patch an endpoint
|
|
20
|
+
- delete: delete a single endpoint
|
|
21
|
+
- bulk_delete: delete endpoints by source (e.g., openapi)
|
|
22
|
+
- import_openapi: import endpoints from an OpenAPI spec`;
|
|
23
|
+
export const MANAGE_ENDPOINT_LIFECYCLE_SCHEMA = {
|
|
24
|
+
application_id: z
|
|
25
|
+
.string()
|
|
26
|
+
.optional()
|
|
27
|
+
.describe("Application UUID. If omitted, uses applicationId from .zivis/project.json when set."),
|
|
28
|
+
action: z
|
|
29
|
+
.enum(["create", "update", "delete", "bulk_delete", "import_openapi"])
|
|
30
|
+
.describe("Endpoint lifecycle action"),
|
|
31
|
+
endpoint_id: z.string().optional().describe("Required for update/delete actions"),
|
|
32
|
+
path: z.string().optional().describe("Endpoint path, e.g. /api/chat"),
|
|
33
|
+
method: z
|
|
34
|
+
.enum(["GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"])
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("HTTP method"),
|
|
37
|
+
summary: z.string().optional().describe("Endpoint summary"),
|
|
38
|
+
description: z.string().optional().describe("Endpoint description"),
|
|
39
|
+
tags: z.array(z.string()).optional().describe("Endpoint tags"),
|
|
40
|
+
auth_required: z.boolean().optional().describe("Whether auth is required"),
|
|
41
|
+
deprecated: z.boolean().optional().describe("Whether endpoint is deprecated"),
|
|
42
|
+
endpoint_type: z
|
|
43
|
+
.enum(["api", "chat", "sse", "validation", "web"])
|
|
44
|
+
.optional()
|
|
45
|
+
.describe("Endpoint type"),
|
|
46
|
+
request_template: z
|
|
47
|
+
.string()
|
|
48
|
+
.optional()
|
|
49
|
+
.describe("AI request template, usually includes {{message}}"),
|
|
50
|
+
response_path: z
|
|
51
|
+
.string()
|
|
52
|
+
.optional()
|
|
53
|
+
.describe("JSON path to pull response text"),
|
|
54
|
+
streaming_enabled: z.boolean().optional().describe("Whether streaming is enabled"),
|
|
55
|
+
source: z
|
|
56
|
+
.enum(["openapi", "manual", "discovery"])
|
|
57
|
+
.optional()
|
|
58
|
+
.describe("Source filter for bulk_delete"),
|
|
59
|
+
spec_url: z.string().optional().describe("OpenAPI spec URL for import_openapi"),
|
|
60
|
+
spec_content: z.string().optional().describe("Raw OpenAPI spec content"),
|
|
61
|
+
replace_existing: z
|
|
62
|
+
.boolean()
|
|
63
|
+
.optional()
|
|
64
|
+
.describe("When import_openapi, remove previous openapi endpoints first"),
|
|
65
|
+
};
|
|
66
|
+
export function createManageEndpointLifecycleHandler(apiClient) {
|
|
67
|
+
return async (params) => {
|
|
68
|
+
const req = requireApplicationId(params.application_id);
|
|
69
|
+
if (!req.ok) {
|
|
70
|
+
return {
|
|
71
|
+
content: [{ type: "text", text: `Error: ${req.message}` }],
|
|
72
|
+
isError: true,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
const applicationId = req.id;
|
|
76
|
+
const action = params.action;
|
|
77
|
+
try {
|
|
78
|
+
let data;
|
|
79
|
+
if (action === "create") {
|
|
80
|
+
if (!params.path || !params.method) {
|
|
81
|
+
return {
|
|
82
|
+
content: [
|
|
83
|
+
{
|
|
84
|
+
type: "text",
|
|
85
|
+
text: "Error: create requires path and method",
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
isError: true,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
data = await apiClient.post(`/api/rt/applications/${applicationId}/endpoints`, {
|
|
92
|
+
path: params.path,
|
|
93
|
+
method: params.method,
|
|
94
|
+
summary: params.summary,
|
|
95
|
+
description: params.description,
|
|
96
|
+
tags: params.tags,
|
|
97
|
+
authRequired: params.auth_required,
|
|
98
|
+
deprecated: params.deprecated,
|
|
99
|
+
endpointType: params.endpoint_type,
|
|
100
|
+
requestTemplate: params.request_template,
|
|
101
|
+
responsePath: params.response_path,
|
|
102
|
+
streamingEnabled: params.streaming_enabled,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
else if (action === "update") {
|
|
106
|
+
if (!params.endpoint_id) {
|
|
107
|
+
return {
|
|
108
|
+
content: [
|
|
109
|
+
{ type: "text", text: "Error: endpoint_id is required for update" },
|
|
110
|
+
],
|
|
111
|
+
isError: true,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
const body = {};
|
|
115
|
+
if (params.path !== undefined)
|
|
116
|
+
body.path = params.path;
|
|
117
|
+
if (params.method !== undefined)
|
|
118
|
+
body.method = params.method;
|
|
119
|
+
if (params.summary !== undefined)
|
|
120
|
+
body.summary = params.summary;
|
|
121
|
+
if (params.description !== undefined)
|
|
122
|
+
body.description = params.description;
|
|
123
|
+
if (params.tags !== undefined)
|
|
124
|
+
body.tags = params.tags;
|
|
125
|
+
if (params.auth_required !== undefined)
|
|
126
|
+
body.authRequired = params.auth_required;
|
|
127
|
+
if (params.deprecated !== undefined)
|
|
128
|
+
body.deprecated = params.deprecated;
|
|
129
|
+
if (params.endpoint_type !== undefined)
|
|
130
|
+
body.endpointType = params.endpoint_type;
|
|
131
|
+
if (params.request_template !== undefined)
|
|
132
|
+
body.requestTemplate = params.request_template;
|
|
133
|
+
if (params.response_path !== undefined)
|
|
134
|
+
body.responsePath = params.response_path;
|
|
135
|
+
if (params.streaming_enabled !== undefined) {
|
|
136
|
+
body.streamingEnabled = params.streaming_enabled;
|
|
137
|
+
}
|
|
138
|
+
data = await apiClient.patch(`/api/rt/applications/${applicationId}/endpoints/${params.endpoint_id}`, body);
|
|
139
|
+
}
|
|
140
|
+
else if (action === "delete") {
|
|
141
|
+
if (!params.endpoint_id) {
|
|
142
|
+
return {
|
|
143
|
+
content: [
|
|
144
|
+
{ type: "text", text: "Error: endpoint_id is required for delete" },
|
|
145
|
+
],
|
|
146
|
+
isError: true,
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
data = await apiClient.del(`/api/rt/applications/${applicationId}/endpoints/${params.endpoint_id}`);
|
|
150
|
+
}
|
|
151
|
+
else if (action === "bulk_delete") {
|
|
152
|
+
if (!params.source) {
|
|
153
|
+
return {
|
|
154
|
+
content: [
|
|
155
|
+
{
|
|
156
|
+
type: "text",
|
|
157
|
+
text: "Error: source is required for bulk_delete (openapi/manual/discovery)",
|
|
158
|
+
},
|
|
159
|
+
],
|
|
160
|
+
isError: true,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
data = await apiClient.del(`/api/rt/applications/${applicationId}/endpoints?source=${encodeURIComponent(params.source)}`);
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
data = await apiClient.post(`/api/rt/applications/${applicationId}/endpoints/import-openapi`, {
|
|
167
|
+
specUrl: params.spec_url,
|
|
168
|
+
specContent: params.spec_content,
|
|
169
|
+
replaceExisting: params.replace_existing ?? false,
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
const sanitized = sanitizeResponse({
|
|
173
|
+
action,
|
|
174
|
+
application_id: applicationId,
|
|
175
|
+
endpoint_id: params.endpoint_id,
|
|
176
|
+
result: data,
|
|
177
|
+
});
|
|
178
|
+
return {
|
|
179
|
+
content: [{ type: "text", text: JSON.stringify(sanitized, null, 2) }],
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
catch (err) {
|
|
183
|
+
const message = err instanceof Error ? err.message : "Failed to manage endpoint lifecycle";
|
|
184
|
+
return {
|
|
185
|
+
content: [{ type: "text", text: `Error: ${message}` }],
|
|
186
|
+
isError: true,
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=manage-endpoint-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manage-endpoint-lifecycle.js","sourceRoot":"","sources":["../../src/tools/manage-endpoint-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,8 +22,8 @@ export declare const OPEN_IN_IDE_SCHEMA: {
|
|
|
22
22
|
id: z.ZodString;
|
|
23
23
|
label: z.ZodOptional<z.ZodString>;
|
|
24
24
|
ide_client: z.ZodOptional<z.ZodEnum<{
|
|
25
|
-
vscode: "vscode";
|
|
26
25
|
cursor: "cursor";
|
|
26
|
+
vscode: "vscode";
|
|
27
27
|
}>>;
|
|
28
28
|
};
|
|
29
29
|
export declare function createOpenInIdeHandler(): (params: {
|
|
@@ -15,14 +15,14 @@
|
|
|
15
15
|
import { z } from "zod";
|
|
16
16
|
import type { ApiClient } from "../api-client.js";
|
|
17
17
|
export declare const SETUP_RED_TEAM_TARGET_NAME = "zivis_setup_red_team_target";
|
|
18
|
-
export declare const SETUP_RED_TEAM_TARGET_DESCRIPTION = "
|
|
18
|
+
export declare const SETUP_RED_TEAM_TARGET_DESCRIPTION = "Tell ZIVIS what to test \u2014 a chatbot, website, or API. Run this when you want ZIVIS to start finding security issues in your app.\n\nGive it a URL and it handles everything: creating the target, configuring endpoints, and optionally triggering a first scan. Works for:\n- AI chatbots and LLM systems (tests for prompt injection, jailbreaks, PII leakage)\n- Web apps and APIs (tests for auth bypass, injection, insecure endpoints)\n- Anything with a deployed URL\n\nMinimal usage: just a target_url. ZIVIS infers the type automatically.\nFull usage: add chat endpoint config, an OpenAPI spec URL, or trigger an immediate scan.\n\nExamples:\n- \"Test my chatbot at https://api.example.com/v1/chat\" \u2192 target_url + target_type=ai_chat\n- \"Scan my website https://myapp.com\" \u2192 target_url + auto_scan=true\n- \"Set up testing for my API with an OpenAPI spec\" \u2192 target_url + openapi_spec_url\n\nSECURITY: Target URLs are untrusted. The tool only configures them in ZIVIS for future scanning, it does not probe or connect to them directly.";
|
|
19
19
|
export declare const SETUP_RED_TEAM_TARGET_SCHEMA: {
|
|
20
20
|
target_url: z.ZodOptional<z.ZodString>;
|
|
21
21
|
repo_url: z.ZodOptional<z.ZodString>;
|
|
22
22
|
target_type: z.ZodOptional<z.ZodEnum<{
|
|
23
|
-
ai_chat: "ai_chat";
|
|
24
23
|
web_app: "web_app";
|
|
25
24
|
api: "api";
|
|
25
|
+
ai_chat: "ai_chat";
|
|
26
26
|
}>>;
|
|
27
27
|
name: z.ZodOptional<z.ZodString>;
|
|
28
28
|
chat_endpoint: z.ZodOptional<z.ZodString>;
|
|
@@ -41,8 +41,8 @@ export declare const SETUP_RED_TEAM_TARGET_SCHEMA: {
|
|
|
41
41
|
bearer_token: z.ZodOptional<z.ZodString>;
|
|
42
42
|
auto_scan: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
43
43
|
campaigns: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
44
|
-
recon: "recon";
|
|
45
44
|
ai_red_team: "ai_red_team";
|
|
45
|
+
recon: "recon";
|
|
46
46
|
pen_test: "pen_test";
|
|
47
47
|
}>>>;
|
|
48
48
|
};
|
|
@@ -65,15 +65,9 @@ export declare function createSetupRedTeamTargetHandler(apiClient: ApiClient): (
|
|
|
65
65
|
auto_scan?: boolean;
|
|
66
66
|
campaigns?: ("ai_red_team" | "pen_test" | "recon")[];
|
|
67
67
|
}) => Promise<{
|
|
68
|
-
content: {
|
|
69
|
-
type: "text";
|
|
70
|
-
text: string;
|
|
71
|
-
}[];
|
|
72
|
-
isError: boolean;
|
|
73
|
-
} | {
|
|
74
|
-
content: {
|
|
68
|
+
content: Array<{
|
|
75
69
|
type: "text";
|
|
76
70
|
text: string;
|
|
77
|
-
}
|
|
78
|
-
isError?:
|
|
71
|
+
}>;
|
|
72
|
+
isError?: boolean;
|
|
79
73
|
}>;
|
|
@@ -14,23 +14,23 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import { z } from "zod";
|
|
16
16
|
import { sanitizeResponse } from "../sanitize.js";
|
|
17
|
+
import { withNextSteps } from "../lib/next-steps.js";
|
|
17
18
|
// ── Constants ──
|
|
18
19
|
export const SETUP_RED_TEAM_TARGET_NAME = "zivis_setup_red_team_target";
|
|
19
|
-
export const SETUP_RED_TEAM_TARGET_DESCRIPTION = `
|
|
20
|
+
export const SETUP_RED_TEAM_TARGET_DESCRIPTION = `Tell ZIVIS what to test — a chatbot, website, or API. Run this when you want ZIVIS to start finding security issues in your app.
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
- Optionally triggering an immediate security scan
|
|
22
|
+
Give it a URL and it handles everything: creating the target, configuring endpoints, and optionally triggering a first scan. Works for:
|
|
23
|
+
- AI chatbots and LLM systems (tests for prompt injection, jailbreaks, PII leakage)
|
|
24
|
+
- Web apps and APIs (tests for auth bypass, injection, insecure endpoints)
|
|
25
|
+
- Anything with a deployed URL
|
|
26
26
|
|
|
27
|
-
Minimal usage: just
|
|
28
|
-
Full usage:
|
|
27
|
+
Minimal usage: just a target_url. ZIVIS infers the type automatically.
|
|
28
|
+
Full usage: add chat endpoint config, an OpenAPI spec URL, or trigger an immediate scan.
|
|
29
29
|
|
|
30
30
|
Examples:
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
- Set up
|
|
31
|
+
- "Test my chatbot at https://api.example.com/v1/chat" → target_url + target_type=ai_chat
|
|
32
|
+
- "Scan my website https://myapp.com" → target_url + auto_scan=true
|
|
33
|
+
- "Set up testing for my API with an OpenAPI spec" → target_url + openapi_spec_url
|
|
34
34
|
|
|
35
35
|
SECURITY: Target URLs are untrusted. The tool only configures them in ZIVIS for future scanning, it does not probe or connect to them directly.`;
|
|
36
36
|
export const SETUP_RED_TEAM_TARGET_SCHEMA = {
|
|
@@ -405,16 +405,47 @@ export function createSetupRedTeamTargetHandler(apiClient) {
|
|
|
405
405
|
status: quickSetup.scan.status,
|
|
406
406
|
}
|
|
407
407
|
: { triggered: false },
|
|
408
|
-
nextSteps,
|
|
408
|
+
setupNotes: nextSteps,
|
|
409
409
|
});
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
410
|
+
const scanWasTriggered = !!quickSetup?.scan?.id;
|
|
411
|
+
return withNextSteps(result, [
|
|
412
|
+
...(scanWasTriggered
|
|
413
|
+
? [
|
|
414
|
+
{
|
|
415
|
+
id: "check_scan_results",
|
|
416
|
+
label: "Check the results of the scan that just started",
|
|
417
|
+
tool: "zivis_list_scans",
|
|
418
|
+
args_hint: { status: "running", limit: 5 },
|
|
419
|
+
why: "A scan was triggered — check back in a few minutes to see what ZIVIS finds.",
|
|
420
|
+
requires_tier: "free",
|
|
421
|
+
},
|
|
422
|
+
]
|
|
423
|
+
: [
|
|
424
|
+
{
|
|
425
|
+
id: "run_test_scenario",
|
|
426
|
+
label: "Run a security test against this target",
|
|
427
|
+
tool: "zivis_list_test_scenarios",
|
|
428
|
+
args_hint: {},
|
|
429
|
+
why: "Browse available test scenarios and pick one to run against the target you just set up.",
|
|
430
|
+
requires_tier: "free",
|
|
431
|
+
},
|
|
432
|
+
]),
|
|
433
|
+
{
|
|
434
|
+
id: "add_auth",
|
|
435
|
+
label: "Configure authentication for logged-in test coverage",
|
|
436
|
+
tool: "zivis_setup_red_team_target",
|
|
437
|
+
args_hint: { name: appName },
|
|
438
|
+
why: "Testing authenticated flows finds more vulnerabilities than unauthenticated testing alone.",
|
|
439
|
+
requires_tier: "free",
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
id: "check_deps",
|
|
443
|
+
label: "Check the dependencies this app uses",
|
|
444
|
+
tool: "zivis_check_repo_trust",
|
|
445
|
+
why: "Supply-chain risks in your libraries can be just as dangerous as app-level vulnerabilities.",
|
|
446
|
+
requires_tier: "free",
|
|
447
|
+
},
|
|
448
|
+
], `Target "${appName}" ${isNew ? "created" : "updated"}. ${scanWasTriggered ? "A scan has been triggered." : "Ready to run security tests."}`);
|
|
418
449
|
}
|
|
419
450
|
catch (err) {
|
|
420
451
|
const message = err instanceof Error
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-red-team-target.js","sourceRoot":"","sources":["../../src/tools/setup-red-team-target.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-red-team-target.js","sourceRoot":"","sources":["../../src/tools/setup-red-team-target.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import { z } from "zod";
|
|
12
12
|
import type { ApiClient } from "../api-client.js";
|
|
13
13
|
export declare const TRIAGE_FINDING_NAME = "zivis_triage_finding";
|
|
14
|
-
export declare const TRIAGE_FINDING_DESCRIPTION = "
|
|
14
|
+
export declare const TRIAGE_FINDING_DESCRIPTION = "Mark a security issue as fixed, dismissed, or accepted. Use this after the user reviews a finding and decides what to do with it.\n\nThree outcomes:\n- \"resolve\" \u2014 the bug is fixed. ZIVIS logs the fix and generates remediation documentation.\n- \"dismiss\" \u2014 the finding is wrong (false positive) or doesn't apply to this project.\n- \"accept_risk\" \u2014 the team knows about the issue and has decided to live with it.\n\nA reasoning field is REQUIRED \u2014 this creates an audit trail. Explain briefly why the action is appropriate (e.g. \"Fixed by adding input validation in auth.ts\" or \"Not applicable \u2014 we don't accept user HTML input\").\n\nAfter resolving a finding, ZIVIS will provide markdown to append to .zivis/remediations.md as an audit trail.\n\nTriage one finding at a time. Use finding_id from zivis_get_findings or zivis_get_finding_details.";
|
|
15
15
|
export declare const TRIAGE_FINDING_SCHEMA: {
|
|
16
16
|
finding_id: z.ZodString;
|
|
17
17
|
action: z.ZodEnum<{
|
|
@@ -33,15 +33,9 @@ export declare function createTriageFindingHandler(apiClient: ApiClient): (param
|
|
|
33
33
|
reasoning: string;
|
|
34
34
|
dismiss_reason?: string;
|
|
35
35
|
}) => Promise<{
|
|
36
|
-
content: {
|
|
36
|
+
content: Array<{
|
|
37
37
|
type: "text";
|
|
38
38
|
text: string;
|
|
39
|
-
}
|
|
40
|
-
isError
|
|
41
|
-
} | {
|
|
42
|
-
content: {
|
|
43
|
-
type: "text";
|
|
44
|
-
text: string;
|
|
45
|
-
}[];
|
|
46
|
-
isError?: undefined;
|
|
39
|
+
}>;
|
|
40
|
+
isError?: boolean;
|
|
47
41
|
}>;
|
|
@@ -9,24 +9,20 @@
|
|
|
9
9
|
* in the dashboard.
|
|
10
10
|
*/
|
|
11
11
|
import { z } from "zod";
|
|
12
|
+
import { withNextSteps } from "../lib/next-steps.js";
|
|
12
13
|
export const TRIAGE_FINDING_NAME = "zivis_triage_finding";
|
|
13
|
-
export const TRIAGE_FINDING_DESCRIPTION = `
|
|
14
|
+
export const TRIAGE_FINDING_DESCRIPTION = `Mark a security issue as fixed, dismissed, or accepted. Use this after the user reviews a finding and decides what to do with it.
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
- "resolve" — the
|
|
17
|
-
- "dismiss" — the finding is
|
|
18
|
-
- "accept_risk" — the
|
|
16
|
+
Three outcomes:
|
|
17
|
+
- "resolve" — the bug is fixed. ZIVIS logs the fix and generates remediation documentation.
|
|
18
|
+
- "dismiss" — the finding is wrong (false positive) or doesn't apply to this project.
|
|
19
|
+
- "accept_risk" — the team knows about the issue and has decided to live with it.
|
|
19
20
|
|
|
20
|
-
A reasoning field is REQUIRED. Explain why
|
|
21
|
+
A reasoning field is REQUIRED — this creates an audit trail. Explain briefly why the action is appropriate (e.g. "Fixed by adding input validation in auth.ts" or "Not applicable — we don't accept user HTML input").
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
After resolving a finding, ZIVIS will provide markdown to append to .zivis/remediations.md as an audit trail.
|
|
23
24
|
|
|
24
|
-
|
|
25
|
-
1. Create .zivis/ directory if it doesn't exist
|
|
26
|
-
2. Append to .zivis/remediations.md using the markdown template in the response
|
|
27
|
-
3. This creates a security audit trail that stays with the project
|
|
28
|
-
|
|
29
|
-
The response includes a "documentation" field with pre-formatted markdown to append.`;
|
|
25
|
+
Triage one finding at a time. Use finding_id from zivis_get_findings or zivis_get_finding_details.`;
|
|
30
26
|
export const TRIAGE_FINDING_SCHEMA = {
|
|
31
27
|
finding_id: z.string().describe("The finding ID to triage"),
|
|
32
28
|
action: z
|
|
@@ -95,14 +91,27 @@ export function createTriageFindingHandler(apiClient) {
|
|
|
95
91
|
instructions: "Append the markdownToAppend to .zivis/remediations.md (create directory and file if needed). Add finding title, severity, vulnerable code description, and files changed above the reasoning.",
|
|
96
92
|
}
|
|
97
93
|
: { shouldDocument: false };
|
|
98
|
-
return {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
},
|
|
104
|
-
|
|
105
|
-
|
|
94
|
+
return withNextSteps({ ...response, documentation }, [
|
|
95
|
+
{
|
|
96
|
+
id: "view_remaining_findings",
|
|
97
|
+
label: "Review the remaining open findings",
|
|
98
|
+
tool: "zivis_get_findings",
|
|
99
|
+
args_hint: { status: "open" },
|
|
100
|
+
why: "See what's left to triage — keep working through the queue to clear the backlog.",
|
|
101
|
+
requires_tier: "free",
|
|
102
|
+
},
|
|
103
|
+
...(params.action === "resolve"
|
|
104
|
+
? [
|
|
105
|
+
{
|
|
106
|
+
id: "run_new_scan",
|
|
107
|
+
label: "Run a new scan to verify the fix held",
|
|
108
|
+
tool: "zivis_list_test_scenarios",
|
|
109
|
+
why: "Confirm the vulnerability is gone by re-testing after your code change.",
|
|
110
|
+
requires_tier: "free",
|
|
111
|
+
},
|
|
112
|
+
]
|
|
113
|
+
: []),
|
|
114
|
+
], `Finding ${params.finding_id} marked as ${statusMap[params.action]}.`);
|
|
106
115
|
}
|
|
107
116
|
catch (err) {
|
|
108
117
|
const message = err instanceof Error ? err.message : "Failed to triage finding";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triage-finding.js","sourceRoot":"","sources":["../../src/tools/triage-finding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"triage-finding.js","sourceRoot":"","sources":["../../src/tools/triage-finding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AAE1D,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;mGAWyD,CAAC;AAEpG,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC3D,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;SAC3C,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,CACP,iHAAiH,CAClH;IACH,cAAc,EAAE,CAAC;SACd,IAAI,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;SACnE,QAAQ,EAAE;SACV,QAAQ,CAAC,0DAA0D,CAAC;CACxE,CAAC;AAEF,MAAM,UAAU,0BAA0B,CAAC,SAAoB;IAC7D,OAAO,KAAK,EAAE,MAKb,EAAE,EAAE;QACH,sDAAsD;QACtD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,4DAA4D;qBACnE;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,+BAA+B;YAC/B,MAAM,SAAS,GAA2B;gBACxC,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,WAAW;gBACpB,WAAW,EAAE,UAAU;aACxB,CAAC;YAEF,kDAAkD;YAClD,oFAAoF;YACpF,MAAM,SAAS,GAA4B;gBACzC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,mBAAmB,MAAM,CAAC,SAAS,EAAE;aAC5C,CAAC;YACF,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,SAAS,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;YAClD,CAAC;YAED,MAAM,SAAS,CAAC,KAAK,CACnB,yBAAyB,MAAM,CAAC,UAAU,EAAE,EAC5C,SAAS,CACV,CAAC;YAEF,MAAM,QAAQ,GAAmB;gBAC/B,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,MAAM,CAAC,UAAU;gBAC5B,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;gBACnC,OAAO,EAAE,WAAW,MAAM,CAAC,UAAU,cAAc,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,mCAAmC;aAC/G,CAAC;YAEF,wDAAwD;YACxD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,aAAa,GACjB,MAAM,CAAC,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC;oBACE,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,wBAAwB;oBAClC,gBAAgB,EAAE;KAC3B,KAAK,MAAM,MAAM,CAAC,UAAU;;;iBAGhB,MAAM,CAAC,SAAS;;;CAGhC;oBACa,YAAY,EACV,+LAA+L;iBAClM;gBACH,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;YAEhC,OAAO,aAAa,CAClB,EAAE,GAAG,QAAQ,EAAE,aAAa,EAAE,EAC9B;gBACE;oBACE,EAAE,EAAE,yBAAyB;oBAC7B,KAAK,EAAE,oCAAoC;oBAC3C,IAAI,EAAE,oBAAoB;oBAC1B,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;oBAC7B,GAAG,EAAE,kFAAkF;oBACvF,aAAa,EAAE,MAAe;iBAC/B;gBACD,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;oBAC7B,CAAC,CAAC;wBACE;4BACE,EAAE,EAAE,cAAc;4BAClB,KAAK,EAAE,uCAAuC;4BAC9C,IAAI,EAAE,2BAA2B;4BACjC,GAAG,EAAE,yEAAyE;4BAC9E,aAAa,EAAE,MAAe;yBAC/B;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,EACD,WAAW,MAAM,CAAC,UAAU,cAAc,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CACtE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GACX,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC;gBAC/D,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export interface OAuthTokens {
|
|
5
5
|
access_token: string;
|
|
6
|
-
refresh_token
|
|
6
|
+
refresh_token?: string;
|
|
7
7
|
expires_at: number;
|
|
8
8
|
id_token?: string;
|
|
9
9
|
}
|
|
@@ -198,6 +198,25 @@ export interface ProjectBinding {
|
|
|
198
198
|
applicationId?: string;
|
|
199
199
|
/** Display name for that application (optional) */
|
|
200
200
|
applicationName?: string;
|
|
201
|
+
/**
|
|
202
|
+
* Environment overrides — stored here so `zivis` CLI commands run from
|
|
203
|
+
* this directory automatically hit the right environment without requiring
|
|
204
|
+
* env vars to be set in the shell. Takes precedence over env vars.
|
|
205
|
+
*/
|
|
206
|
+
/** ZIVIS API base URL (e.g. "https://staging.zivis.ai") */
|
|
207
|
+
apiBaseUrl?: string;
|
|
208
|
+
/** OAuth / AuthKit API URL */
|
|
209
|
+
oauthApiUrl?: string;
|
|
210
|
+
/** OAuth client ID */
|
|
211
|
+
oauthClientId?: string;
|
|
212
|
+
/** Keychain/credential storage prefix */
|
|
213
|
+
keychainPrefix?: string;
|
|
214
|
+
/** Config directory name under ~/.config/ */
|
|
215
|
+
configDir?: string;
|
|
216
|
+
}
|
|
217
|
+
export interface CredentialStorage {
|
|
218
|
+
keychainPrefix: string;
|
|
219
|
+
configDir: string;
|
|
201
220
|
}
|
|
202
221
|
export interface ZivisConfig {
|
|
203
222
|
apiBaseUrl: string;
|
|
@@ -206,6 +225,23 @@ export interface ZivisConfig {
|
|
|
206
225
|
callbackPort: number;
|
|
207
226
|
/** Named session for multi-tenant isolation (from ZIVIS_SESSION env var) */
|
|
208
227
|
session?: string;
|
|
228
|
+
/**
|
|
229
|
+
* Override OS keychain / encrypted-file credential namespace (default: ENV_CONFIG).
|
|
230
|
+
* MUST match MCP's ZIVIS_KEYCHAIN_PREFIX or CLI auth and MCP will read different buckets.
|
|
231
|
+
*/
|
|
232
|
+
keychainPrefix?: string;
|
|
233
|
+
/**
|
|
234
|
+
* Override ~/.config subdirectory for sessions.json etc. (default: ENV_CONFIG).
|
|
235
|
+
* MUST match MCP's ZIVIS_CONFIG_DIR.
|
|
236
|
+
*/
|
|
237
|
+
configDir?: string;
|
|
238
|
+
/**
|
|
239
|
+
* Absolute path to the workspace root passed via `zivis mcp serve --workspace`.
|
|
240
|
+
* When set, project binding is detected from this path instead of process.cwd().
|
|
241
|
+
* This is the primary tenant-isolation mechanism: each IDE workspace gets its own
|
|
242
|
+
* MCP process with a fixed, immutable workspace path → no runtime session switching.
|
|
243
|
+
*/
|
|
244
|
+
workspacePath?: string;
|
|
209
245
|
}
|
|
210
246
|
interface EnvConfig {
|
|
211
247
|
apiBaseUrl: string;
|
|
@@ -214,7 +250,11 @@ interface EnvConfig {
|
|
|
214
250
|
keychainPrefix: string;
|
|
215
251
|
configDir: string;
|
|
216
252
|
}
|
|
217
|
-
export declare const BUILD_ENV: "staging" | "production";
|
|
218
253
|
export declare const ENV_CONFIG: EnvConfig;
|
|
219
254
|
export declare const DEFAULT_CONFIG: ZivisConfig;
|
|
255
|
+
/**
|
|
256
|
+
* Resolved credential storage bucket for keychain + ~/.config/<dir>.
|
|
257
|
+
* Prefer explicit ZivisConfig fields, then ENV (set by MCP IDE config).
|
|
258
|
+
*/
|
|
259
|
+
export declare function credentialStorageFromConfig(config?: ZivisConfig): CredentialStorage;
|
|
220
260
|
export {};
|