harness-mcp-v2 3.2.20 → 3.2.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/README.md +75 -36
- package/build/client/harness-client.d.ts.map +1 -1
- package/build/client/harness-client.js +32 -6
- package/build/client/harness-client.js.map +1 -1
- package/build/config.d.ts +10 -0
- package/build/config.d.ts.map +1 -1
- package/build/config.js +15 -0
- package/build/config.js.map +1 -1
- package/build/data/schemas/v0/pipeline.d.ts.map +1 -1
- package/build/data/schemas/v0/pipeline.js +545 -272
- package/build/data/schemas/v0/pipeline.js.map +1 -1
- package/build/data/schemas/v0/template.d.ts.map +1 -1
- package/build/data/schemas/v0/template.js +275 -2
- package/build/data/schemas/v0/template.js.map +1 -1
- package/build/data/schemas/v1/pipeline.d.ts.map +1 -1
- package/build/data/schemas/v1/pipeline.js +43 -29
- package/build/data/schemas/v1/pipeline.js.map +1 -1
- package/build/data/schemas/v1/template.d.ts.map +1 -1
- package/build/data/schemas/v1/template.js +43 -29
- package/build/data/schemas/v1/template.js.map +1 -1
- package/build/prompts/deploy-ai-agent.d.ts +3 -0
- package/build/prompts/deploy-ai-agent.d.ts.map +1 -0
- package/build/prompts/deploy-ai-agent.js +300 -0
- package/build/prompts/deploy-ai-agent.js.map +1 -0
- package/build/prompts/feature-flag-rollout.js +2 -2
- package/build/prompts/feature-flag-rollout.js.map +1 -1
- package/build/prompts/index.d.ts.map +1 -1
- package/build/prompts/index.js +2 -0
- package/build/prompts/index.js.map +1 -1
- package/build/registry/extractors.d.ts +69 -0
- package/build/registry/extractors.d.ts.map +1 -1
- package/build/registry/extractors.js +326 -0
- package/build/registry/extractors.js.map +1 -1
- package/build/registry/index.d.ts.map +1 -1
- package/build/registry/index.js +6 -2
- package/build/registry/index.js.map +1 -1
- package/build/registry/toolsets/feature-flags.d.ts.map +1 -1
- package/build/registry/toolsets/feature-flags.js +236 -30
- package/build/registry/toolsets/feature-flags.js.map +1 -1
- package/build/registry/toolsets/iacm.d.ts.map +1 -1
- package/build/registry/toolsets/iacm.js +194 -2
- package/build/registry/toolsets/iacm.js.map +1 -1
- package/build/registry/toolsets/pipelines.d.ts.map +1 -1
- package/build/registry/toolsets/pipelines.js +208 -5
- package/build/registry/toolsets/pipelines.js.map +1 -1
- package/build/registry/toolsets/release-management.d.ts +8 -0
- package/build/registry/toolsets/release-management.d.ts.map +1 -0
- package/build/registry/toolsets/release-management.js +783 -0
- package/build/registry/toolsets/release-management.js.map +1 -0
- package/build/registry/types.d.ts +2 -2
- package/build/registry/types.d.ts.map +1 -1
- package/build/resources/harness-schema.d.ts.map +1 -1
- package/build/resources/harness-schema.js +2 -1
- package/build/resources/harness-schema.js.map +1 -1
- package/build/tools/entity-schema/live.d.ts +6 -5
- package/build/tools/entity-schema/live.d.ts.map +1 -1
- package/build/tools/entity-schema/live.js +114 -10
- package/build/tools/entity-schema/live.js.map +1 -1
- package/build/tools/entity-schema/types.d.ts +7 -1
- package/build/tools/entity-schema/types.d.ts.map +1 -1
- package/build/tools/harness-list.d.ts.map +1 -1
- package/build/tools/harness-list.js +12 -0
- package/build/tools/harness-list.js.map +1 -1
- package/build/tools/harness-schema.d.ts +2 -1
- package/build/tools/harness-schema.d.ts.map +1 -1
- package/build/tools/harness-schema.js +10 -8
- package/build/tools/harness-schema.js.map +1 -1
- package/build/tools/index.js +1 -1
- package/build/tools/index.js.map +1 -1
- package/build/utils/url-parser.d.ts +2 -0
- package/build/utils/url-parser.d.ts.map +1 -1
- package/build/utils/url-parser.js +33 -0
- package/build/utils/url-parser.js.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import * as z from "zod/v4";
|
|
2
|
+
export function registerDeployAiAgentPrompt(server) {
|
|
3
|
+
server.registerPrompt("deploy-ai-agent", {
|
|
4
|
+
description: "End-to-end workflow: ship an AI agent from an IDE to a cloud agent runtime (Google Agent Runtime or AWS AgentCore) through Harness CD — get code into a repo, build & push the agent image, then create the AiAgent service, environment, infrastructure, and a build→deploy pipeline",
|
|
5
|
+
argsSchema: {
|
|
6
|
+
platform: z
|
|
7
|
+
.enum(["GoogleAgentRuntime", "AwsAgentCore"])
|
|
8
|
+
.describe("Target agent runtime: GoogleAgentRuntime (Vertex/GAR) or AwsAgentCore (Bedrock/ECR)")
|
|
9
|
+
.optional(),
|
|
10
|
+
repoUrl: z
|
|
11
|
+
.string()
|
|
12
|
+
.describe("Git repo URL of the agent code. Leave blank to create a Harness Code repo and push.")
|
|
13
|
+
.optional(),
|
|
14
|
+
projectId: z.string().describe("Harness project identifier").optional(),
|
|
15
|
+
executionRoleArn: z
|
|
16
|
+
.string()
|
|
17
|
+
.describe("AWS IAM execution role ARN (required for AwsAgentCore only)")
|
|
18
|
+
.optional(),
|
|
19
|
+
},
|
|
20
|
+
}, async ({ platform, repoUrl, projectId, executionRoleArn }) => ({
|
|
21
|
+
messages: [
|
|
22
|
+
{
|
|
23
|
+
role: "user",
|
|
24
|
+
content: {
|
|
25
|
+
type: "text",
|
|
26
|
+
text: `Ship the AI agent in this workspace to a Harness-managed cloud agent runtime.
|
|
27
|
+
|
|
28
|
+
${platform ? `Target platform: ${platform}` : "Target platform: ASK the user — GoogleAgentRuntime or AwsAgentCore"}
|
|
29
|
+
${repoUrl ? `Source repo: ${repoUrl}` : "Source repo: not provided — inspect the local workspace for a git remote"}
|
|
30
|
+
${projectId ? `Project: ${projectId}` : ""}
|
|
31
|
+
${executionRoleArn ? `AWS execution role ARN: ${executionRoleArn}` : ""}
|
|
32
|
+
|
|
33
|
+
IMPORTANT: Follow the phases IN ORDER. Present the full plan and every generated YAML for review BEFORE creating anything with an MCP tool. Do NOT create resources without explicit user confirmation. Reuse existing connectors / services / environments — never duplicate them.
|
|
34
|
+
|
|
35
|
+
KEY FACTS ABOUT AI AGENT DEPLOYMENT (do not deviate):
|
|
36
|
+
- The agent runs from a pre-built CONTAINER IMAGE. A build step is MANDATORY — there is no build-from-source path. The source discriminator value is the lowercase string \`container\` (not \`Container\`).
|
|
37
|
+
- The AiAgent service references the image by URI STRING at \`platform.spec.source.spec.image\` — NOT via an artifact-source connector. Do not add an artifact source.
|
|
38
|
+
- Chain the built image into the service with a shared tag expression: tag the image \`<+pipeline.sequenceId>\` in the build step, and set the service image to \`<registry-path>:<+pipeline.sequenceId>\`.
|
|
39
|
+
- AwsAgentCore additionally REQUIRES \`executionRoleArn\` on the platform spec.
|
|
40
|
+
- The deploy/shift/rollback steps read the agent image and identity from the SERVICE at runtime — do NOT put the agent image on the steps.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Phase A — Source: get the code into a Harness-reachable repo
|
|
45
|
+
|
|
46
|
+
### Step 1 — Check for a git remote (local)
|
|
47
|
+
- Run \`git remote -v\` in the workspace.
|
|
48
|
+
- **External remote exists** (GitHub/GitLab/Bitbucket): keep it. In Phase D create/confirm a Git connector to it.
|
|
49
|
+
- **No remote**: create a Harness Code repo with harness_create resource_type="repository"${projectId ? ` project_id="${projectId}"` : ""} (body: identifier, default_branch, description). Return the clone URL, then instruct the user to \`git remote add\` and \`git push\`. (Harness Code needs no Git connector — the platform clones natively via \`repoName\`.)
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Phase B — Target platform
|
|
54
|
+
|
|
55
|
+
### Step 2 — Confirm the platform
|
|
56
|
+
- Confirm ${platform ? platform : "the platform with the user"}. This choice drives everything downstream:
|
|
57
|
+
- **GoogleAgentRuntime** → GCP connector, image in Google Artifact Registry (GAR), \`BuildAndPushGAR\`, infra type \`GoogleAgentRuntime\`, steps \`Deploy/Shift/RollbackGoogleAgentRuntimeRevision\`.
|
|
58
|
+
- **AwsAgentCore** → AWS connector, image in ECR, \`BuildAndPushECR\`, infra type \`AwsAgentCore\`, steps \`Deploy/Shift/RollbackAwsAgentCoreRevision\`, plus \`executionRoleArn\`.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Phase C — Build the image (CI) — MANDATORY
|
|
63
|
+
|
|
64
|
+
### Step 3 — Check existing Harness resources
|
|
65
|
+
- harness_list resource_type="connector"${projectId ? ` project_id="${projectId}"` : ""} — find existing Git, GCP/AWS, and registry connectors.
|
|
66
|
+
- harness_list resource_type="service" / "environment" / "infrastructure" — check what already exists.
|
|
67
|
+
- harness_describe resource_type="pipeline" — confirm the pipeline schema.
|
|
68
|
+
|
|
69
|
+
### Step 4 — Gather build prerequisites (ASK the user)
|
|
70
|
+
- **Registry push connector**: GCP connector (for GAR) or AWS connector (for ECR).
|
|
71
|
+
- **Build infrastructure**: default to **Harness Cloud** (hosted, zero setup) unless the user has a Kubernetes build farm. Confirm before generating YAML.
|
|
72
|
+
|
|
73
|
+
### Step 5 — Generate the CI Build stage YAML
|
|
74
|
+
Build the agent image from the repo and push it to the registry, tagged \`<+pipeline.sequenceId>\`. Use the template for the chosen platform.
|
|
75
|
+
|
|
76
|
+
**GoogleAgentRuntime → BuildAndPushGAR:**
|
|
77
|
+
\`\`\`yaml
|
|
78
|
+
- step:
|
|
79
|
+
type: BuildAndPushGAR
|
|
80
|
+
name: Build and Push Agent Image
|
|
81
|
+
identifier: build_agent_image
|
|
82
|
+
spec:
|
|
83
|
+
connectorRef: <+input> # GCP connector
|
|
84
|
+
host: <+input> # e.g. us-docker.pkg.dev
|
|
85
|
+
projectID: <+input> # GCP project id
|
|
86
|
+
imageName: <+input> # e.g. my-repo/my-agent
|
|
87
|
+
tags:
|
|
88
|
+
- <+pipeline.sequenceId>
|
|
89
|
+
caching: true
|
|
90
|
+
\`\`\`
|
|
91
|
+
Resulting image URI: \`<host>/<projectID>/<imageName>:<+pipeline.sequenceId>\`.
|
|
92
|
+
|
|
93
|
+
**AwsAgentCore → BuildAndPushECR:**
|
|
94
|
+
\`\`\`yaml
|
|
95
|
+
- step:
|
|
96
|
+
type: BuildAndPushECR
|
|
97
|
+
name: Build and Push Agent Image
|
|
98
|
+
identifier: build_agent_image
|
|
99
|
+
spec:
|
|
100
|
+
connectorRef: <+input> # AWS connector
|
|
101
|
+
account: <+input> # AWS account id
|
|
102
|
+
region: <+input> # e.g. us-east-1
|
|
103
|
+
imageName: <+input> # e.g. my-agent
|
|
104
|
+
tags:
|
|
105
|
+
- <+pipeline.sequenceId>
|
|
106
|
+
caching: true
|
|
107
|
+
\`\`\`
|
|
108
|
+
Resulting image URI: \`<account>.dkr.ecr.<region>.amazonaws.com/<imageName>:<+pipeline.sequenceId>\`.
|
|
109
|
+
|
|
110
|
+
Present the CI stage YAML for review. Do NOT create it yet.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Phase D — Connectors
|
|
115
|
+
|
|
116
|
+
### Step 6 — Create any missing connectors (only after confirmation)
|
|
117
|
+
- Enumerate what's needed: cloud connector for CD infra (GCP or AWS), the registry push connector from Phase C (often the same GCP/AWS connector), and a Git connector if using an external SCM.
|
|
118
|
+
- Create missing ones with harness_create resource_type="connector" (show YAML first). Connectors MUST exist before the service/infra/pipeline reference them.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Phase E — AiAgent service (source side)
|
|
123
|
+
|
|
124
|
+
### Step 7 — Author the AiAgent service
|
|
125
|
+
- Confirm field shapes with harness_schema resource_type="service".
|
|
126
|
+
- Create with harness_create resource_type="service". The image is a STRING using the same tag expression as Step 5.
|
|
127
|
+
|
|
128
|
+
**GoogleAgentRuntime service:**
|
|
129
|
+
\`\`\`yaml
|
|
130
|
+
service:
|
|
131
|
+
name: <+input>
|
|
132
|
+
identifier: <+input>
|
|
133
|
+
serviceDefinition:
|
|
134
|
+
type: AiAgent
|
|
135
|
+
spec:
|
|
136
|
+
platform:
|
|
137
|
+
type: GoogleAgentRuntime
|
|
138
|
+
spec:
|
|
139
|
+
source:
|
|
140
|
+
type: container
|
|
141
|
+
spec:
|
|
142
|
+
image: <host>/<projectID>/<imageName>:<+pipeline.sequenceId>
|
|
143
|
+
\`\`\`
|
|
144
|
+
|
|
145
|
+
**AwsAgentCore service (executionRoleArn REQUIRED):**
|
|
146
|
+
\`\`\`yaml
|
|
147
|
+
service:
|
|
148
|
+
name: <+input>
|
|
149
|
+
identifier: <+input>
|
|
150
|
+
serviceDefinition:
|
|
151
|
+
type: AiAgent
|
|
152
|
+
spec:
|
|
153
|
+
platform:
|
|
154
|
+
type: AwsAgentCore
|
|
155
|
+
spec:
|
|
156
|
+
executionRoleArn: ${executionRoleArn ? executionRoleArn : "<+input>"}
|
|
157
|
+
source:
|
|
158
|
+
type: container
|
|
159
|
+
spec:
|
|
160
|
+
image: <account>.dkr.ecr.<region>.amazonaws.com/<imageName>:<+pipeline.sequenceId>
|
|
161
|
+
\`\`\`
|
|
162
|
+
|
|
163
|
+
Optional: an \`AgentConfig\` manifest (Git/Harness store) can carry the agent's config spec — add it only if the agent ships one. Present the service YAML for review before creating.
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Phase F — Environment + Infrastructure (target side)
|
|
168
|
+
|
|
169
|
+
### Step 8 — Environment
|
|
170
|
+
- Ask the user: reuse an existing environment or create a new one. Create with harness_create resource_type="environment" if needed.
|
|
171
|
+
|
|
172
|
+
### Step 9 — Infrastructure
|
|
173
|
+
- Confirm field shapes with harness_schema resource_type="infrastructure", then harness_create resource_type="infrastructure".
|
|
174
|
+
|
|
175
|
+
**GoogleAgentRuntime infrastructure:**
|
|
176
|
+
\`\`\`yaml
|
|
177
|
+
infrastructureDefinition:
|
|
178
|
+
name: <+input>
|
|
179
|
+
identifier: <+input>
|
|
180
|
+
environmentRef: <env-id>
|
|
181
|
+
deploymentType: AiAgent
|
|
182
|
+
type: GoogleAgentRuntime
|
|
183
|
+
spec:
|
|
184
|
+
connectorRef: <+input> # GCP connector
|
|
185
|
+
projectId: <+input>
|
|
186
|
+
location: <+input> # e.g. us-central1
|
|
187
|
+
\`\`\`
|
|
188
|
+
|
|
189
|
+
**AwsAgentCore infrastructure:**
|
|
190
|
+
\`\`\`yaml
|
|
191
|
+
infrastructureDefinition:
|
|
192
|
+
name: <+input>
|
|
193
|
+
identifier: <+input>
|
|
194
|
+
environmentRef: <env-id>
|
|
195
|
+
deploymentType: AiAgent
|
|
196
|
+
type: AwsAgentCore
|
|
197
|
+
spec:
|
|
198
|
+
connectorRef: <+input> # AWS connector
|
|
199
|
+
region: <+input>
|
|
200
|
+
\`\`\`
|
|
201
|
+
|
|
202
|
+
Present the environment and infrastructure YAML for review before creating.
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Phase G — Deploy stage + run
|
|
207
|
+
|
|
208
|
+
### Step 10 — Add the CD Deploy stage
|
|
209
|
+
Extend the pipeline (or create one) so it runs the CI Build stage from Phase C, then a CD stage of deployment type \`AiAgent\` referencing the service + environment/infrastructure. Use a Canary or Default strategy. Add the platform's Deploy → Shift Traffic → Rollback steps.
|
|
210
|
+
|
|
211
|
+
**GoogleAgentRuntime steps:**
|
|
212
|
+
\`\`\`yaml
|
|
213
|
+
- step:
|
|
214
|
+
type: DeployGoogleAgentRuntimeRevision
|
|
215
|
+
name: Deploy Agent
|
|
216
|
+
identifier: deploy_agent
|
|
217
|
+
spec:
|
|
218
|
+
waitReady: true
|
|
219
|
+
timeout: 10m
|
|
220
|
+
- step:
|
|
221
|
+
type: ShiftGoogleAgentRuntimeTraffic
|
|
222
|
+
name: Shift Traffic
|
|
223
|
+
identifier: shift_traffic
|
|
224
|
+
spec:
|
|
225
|
+
target:
|
|
226
|
+
revisionId: <+pipeline.stages.deploy.spec.execution.steps.deploy_agent.output.revisionId>
|
|
227
|
+
weight: 100
|
|
228
|
+
timeout: 10m
|
|
229
|
+
\`\`\`
|
|
230
|
+
Rollback (in the stage's \`rollbackSteps\`):
|
|
231
|
+
\`\`\`yaml
|
|
232
|
+
- step:
|
|
233
|
+
type: RollbackGoogleAgentRuntimeRevision
|
|
234
|
+
name: Rollback Agent
|
|
235
|
+
identifier: rollback_agent
|
|
236
|
+
spec: {}
|
|
237
|
+
timeout: 10m
|
|
238
|
+
\`\`\`
|
|
239
|
+
|
|
240
|
+
**AwsAgentCore steps:**
|
|
241
|
+
\`\`\`yaml
|
|
242
|
+
- step:
|
|
243
|
+
type: DeployAwsAgentCoreRevision
|
|
244
|
+
name: Deploy Agent
|
|
245
|
+
identifier: deploy_agent
|
|
246
|
+
spec:
|
|
247
|
+
waitReady: true
|
|
248
|
+
timeout: 10m
|
|
249
|
+
- step:
|
|
250
|
+
type: ShiftAwsAgentCoreTraffic
|
|
251
|
+
name: Shift Traffic
|
|
252
|
+
identifier: shift_traffic
|
|
253
|
+
spec:
|
|
254
|
+
target:
|
|
255
|
+
revisionId: <+pipeline.stages.deploy.spec.execution.steps.deploy_agent.output.revisionId>
|
|
256
|
+
weight: 100
|
|
257
|
+
timeout: 10m
|
|
258
|
+
\`\`\`
|
|
259
|
+
Rollback (in the stage's \`rollbackSteps\`):
|
|
260
|
+
\`\`\`yaml
|
|
261
|
+
- step:
|
|
262
|
+
type: RollbackAwsAgentCoreRevision
|
|
263
|
+
name: Rollback Agent
|
|
264
|
+
identifier: rollback_agent
|
|
265
|
+
spec: {}
|
|
266
|
+
timeout: 10m
|
|
267
|
+
\`\`\`
|
|
268
|
+
|
|
269
|
+
Present the full pipeline YAML for review. Do NOT create it yet.
|
|
270
|
+
|
|
271
|
+
### Step 11 — Create, execute, and monitor
|
|
272
|
+
- After confirmation, create the pipeline with harness_create resource_type="pipeline".
|
|
273
|
+
- Discover runtime inputs: harness_get resource_type="runtime_input_template" resource_id=<pipeline_id>.
|
|
274
|
+
- Execute: harness_execute resource_type="pipeline" action="run" resource_id=<pipeline_id>, passing required \`inputs\` (branch for the CI codebase, plus any \`<+input>\` values).
|
|
275
|
+
- Monitor with harness_status until the run completes or fails.
|
|
276
|
+
|
|
277
|
+
**FAILURE RETRY LOOP (up to 3 attempts):**
|
|
278
|
+
1. harness_get the execution details/logs and identify the root cause.
|
|
279
|
+
2. Fix: code/Dockerfile issues → edit + commit + push; pipeline/service/infra YAML issues → harness_update; connector/credential/role issues → flag to the user with a deep link.
|
|
280
|
+
3. Re-execute and monitor. Repeat up to 3 total attempts.
|
|
281
|
+
4. After 3 failures: summarize the failures and fixes, and provide Harness UI deep links to every created resource (pipeline, service, environment, infrastructure, connectors).
|
|
282
|
+
|
|
283
|
+
### Step 12 — Success: verify & report
|
|
284
|
+
- Confirm success via harness_status and harness_get.
|
|
285
|
+
- Report: image tag pushed, service/env/infra created, deploy + traffic-shift result, and Harness UI deep links to the pipeline execution, service, environment, and infrastructure.
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
CRITICAL RULES:
|
|
290
|
+
- Never create a resource without showing its YAML and getting confirmation first.
|
|
291
|
+
- Do not skip phases — finish each before the next.
|
|
292
|
+
- The agent image is a string on the service source (shared \`<+pipeline.sequenceId>\` tag) — never an artifact source, never on the steps.
|
|
293
|
+
- AwsAgentCore requires \`executionRoleArn\`.
|
|
294
|
+
- Reuse existing connectors/services/environments/infrastructure when present.`,
|
|
295
|
+
},
|
|
296
|
+
},
|
|
297
|
+
],
|
|
298
|
+
}));
|
|
299
|
+
}
|
|
300
|
+
//# sourceMappingURL=deploy-ai-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-ai-agent.js","sourceRoot":"","sources":["../../src/prompts/deploy-ai-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,UAAU,2BAA2B,CAAC,MAAiB;IAC3D,MAAM,CAAC,cAAc,CACnB,iBAAiB,EACjB;QACE,WAAW,EACT,uRAAuR;QACzR,UAAU,EAAE;YACV,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;iBAC5C,QAAQ,CAAC,qFAAqF,CAAC;iBAC/F,QAAQ,EAAE;YACb,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,CAAC,qFAAqF,CAAC;iBAC/F,QAAQ,EAAE;YACb,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE;YACvE,gBAAgB,EAAE,CAAC;iBAChB,MAAM,EAAE;iBACR,QAAQ,CAAC,6DAA6D,CAAC;iBACvE,QAAQ,EAAE;SACd;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7D,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE;;EAEhB,QAAQ,CAAC,CAAC,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAC,CAAC,oEAAoE;EAChH,OAAO,CAAC,CAAC,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC,CAAC,0EAA0E;EAChH,SAAS,CAAC,CAAC,CAAC,YAAY,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE;EACxC,gBAAgB,CAAC,CAAC,CAAC,2BAA2B,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;4FAkBqB,SAAS,CAAC,CAAC,CAAC,gBAAgB,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE;;;;;;;YAO7H,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAA4B;;;;;;;;;0CASpB,SAAS,CAAC,CAAC,CAAC,gBAAgB,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BA2FzD,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+EA0IC;iBACpE;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -17,7 +17,7 @@ export function registerFeatureFlagRolloutPrompt(server) {
|
|
|
17
17
|
: `org_id="${orgId}", project_id="${projectId}"`;
|
|
18
18
|
const nativeModeCaveat = workspaceId
|
|
19
19
|
? ""
|
|
20
|
-
: "\n\nNote: in Harness-native mode (org_id/project_id),
|
|
20
|
+
: "\n\nNote: in Harness-native mode (org_id/project_id), fme_rollout_status is not yet implemented server-side and will error — step 4 only works today with workspace_id (legacy mode). Steps 3 and 7 work with org_id+project_id.";
|
|
21
21
|
return {
|
|
22
22
|
messages: [{
|
|
23
23
|
role: "user",
|
|
@@ -38,7 +38,7 @@ Steps:
|
|
|
38
38
|
6. **Safety gates**: Identify metrics or health checks between each phase
|
|
39
39
|
7. **Rollback plan**: Use kill action to immediately turn off the flag if issues arise
|
|
40
40
|
|
|
41
|
-
Present the rollout plan for review. Use harness_execute with resource_type="fme_feature_flag", action="kill" or action="restore", ${scopeArgs}, feature_flag_name="${featureFlagName}", environment_id=<env_id> to execute each phase after user approval
|
|
41
|
+
Present the rollout plan for review. Use harness_execute with resource_type="fme_feature_flag", action="kill" or action="restore", ${scopeArgs}, feature_flag_name="${featureFlagName}", environment_id=<env_id> to execute each phase after user approval.`,
|
|
42
42
|
},
|
|
43
43
|
}],
|
|
44
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-flag-rollout.js","sourceRoot":"","sources":["../../src/prompts/feature-flag-rollout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,UAAU,gCAAgC,CAAC,MAAiB;IAChE,MAAM,CAAC,cAAc,CACnB,sBAAsB,EACtB;QACE,WAAW,EAAE,6EAA6E;QAC1F,UAAU,EAAE;YACV,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACrE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC,CAAC,QAAQ,EAAE;YAC9G,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC,QAAQ,EAAE;YAC9F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC,QAAQ,EAAE;SACnG;KACF,EACD,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;QAC3D,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,SAAS,GAAG,WAAW;YAC3B,CAAC,CAAC,iBAAiB,WAAW,GAAG;YACjC,CAAC,CAAC,WAAW,KAAK,kBAAkB,SAAS,GAAG,CAAC;QAEnD,MAAM,gBAAgB,GAAG,WAAW;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"feature-flag-rollout.js","sourceRoot":"","sources":["../../src/prompts/feature-flag-rollout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,UAAU,gCAAgC,CAAC,MAAiB;IAChE,MAAM,CAAC,cAAc,CACnB,sBAAsB,EACtB;QACE,WAAW,EAAE,6EAA6E;QAC1F,UAAU,EAAE;YACV,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACrE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC,CAAC,QAAQ,EAAE;YAC9G,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC,QAAQ,EAAE;YAC9F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC,QAAQ,EAAE;SACnG;KACF,EACD,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;QAC3D,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,SAAS,GAAG,WAAW;YAC3B,CAAC,CAAC,iBAAiB,WAAW,GAAG;YACjC,CAAC,CAAC,WAAW,KAAK,kBAAkB,SAAS,GAAG,CAAC;QAEnD,MAAM,gBAAgB,GAAG,WAAW;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,kOAAkO,CAAC;QAEvO,OAAO;YACL,QAAQ,EAAE,CAAC;oBACT,IAAI,EAAE,MAAe;oBACrB,OAAO,EAAE;wBACP,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,oDAAoD,eAAe,MAAM,SAAS;;;sGAGE,eAAe,MAAM,SAAS;oFAChD,SAAS;0JAC6D,eAAe,MAAM,SAAS;4FAC5F,SAAS;;;;;;;;;qIASgC,SAAS,wBAAwB,eAAe,uEAAuE;qBACjP;iBACF,CAAC;SACH,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsDzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqD1D"}
|
package/build/prompts/index.js
CHANGED
|
@@ -34,6 +34,7 @@ import { registerBranchCleanupPrompt } from "./branch-cleanup.js";
|
|
|
34
34
|
import { registerPendingApprovalsPrompt } from "./pending-approvals.js";
|
|
35
35
|
// Deployment workflow prompts
|
|
36
36
|
import { registerBuildDeployAppPrompt } from "./build-deploy-app.js";
|
|
37
|
+
import { registerDeployAiAgentPrompt } from "./deploy-ai-agent.js";
|
|
37
38
|
// Pipeline summarizer
|
|
38
39
|
import { registerSummarizePipelinePrompt } from "./summarize-pipeline.js";
|
|
39
40
|
// AI Evals
|
|
@@ -78,6 +79,7 @@ export function registerAllPrompts(server) {
|
|
|
78
79
|
registerPendingApprovalsPrompt(server);
|
|
79
80
|
// Deployment workflows
|
|
80
81
|
registerBuildDeployAppPrompt(server);
|
|
82
|
+
registerDeployAiAgentPrompt(server);
|
|
81
83
|
// Pipeline summarizer
|
|
82
84
|
registerSummarizePipelinePrompt(server);
|
|
83
85
|
// AI Evals (harness-evals + ai-evals API)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAEpE,iBAAiB;AACjB,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAE5E,iBAAiB;AACjB,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,mCAAmC,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;AAE/E,oBAAoB;AACpB,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,mCAAmC,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAE7E,uBAAuB;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAElE,mBAAmB;AACnB,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAExE,8BAA8B;AAC9B,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PreflightContext } from "./types.js";
|
|
1
2
|
/** Extract `data` from standard NG API responses: `{ status, data, ... }` */
|
|
2
3
|
export declare const ngExtract: (raw: unknown) => unknown;
|
|
3
4
|
/**
|
|
@@ -15,6 +16,14 @@ export declare const pageExtract: (raw: unknown) => {
|
|
|
15
16
|
items: unknown[];
|
|
16
17
|
total: number;
|
|
17
18
|
};
|
|
19
|
+
/**
|
|
20
|
+
* Spring Data page at the response root (no NG `{ data }` envelope):
|
|
21
|
+
* `{ content, totalElements }`. Used by Release Management (RMG) list APIs.
|
|
22
|
+
*/
|
|
23
|
+
export declare const springPageExtract: (raw: unknown) => {
|
|
24
|
+
items: unknown[];
|
|
25
|
+
total: number;
|
|
26
|
+
};
|
|
18
27
|
/** Extract `data` from NG API and wrap primitive values in an object for structuredContent compatibility. */
|
|
19
28
|
export declare const countExtract: (raw: unknown) => {
|
|
20
29
|
count: number;
|
|
@@ -404,8 +413,68 @@ export declare const sdPageExtract: (raw: unknown) => {
|
|
|
404
413
|
* Enables deep link templates to reference `trafficTypeId` directly.
|
|
405
414
|
*/
|
|
406
415
|
export declare function flattenTrafficType(item: Record<string, unknown>): void;
|
|
416
|
+
/**
|
|
417
|
+
* Public v4 paginated lists (`EnvironmentListResponse`, `TrafficTypeListResponse` / `RolloutStatusListResponse`):
|
|
418
|
+
* `{ data, limit, offset, totalCount }`. Promote `data`→`items` and `totalCount`→`total`
|
|
419
|
+
* so harness_list compact/output schema see a full total, not the current page length.
|
|
420
|
+
*/
|
|
421
|
+
export declare const fmeV4PaginatedListExtract: (raw: unknown) => unknown;
|
|
407
422
|
/** Extract FME feature flag list — passthrough with trafficType.id flattened on each item. */
|
|
408
423
|
export declare const fmeListExtract: (raw: unknown) => unknown;
|
|
409
424
|
/** Extract FME feature flag single item — passthrough with trafficType.id flattened. */
|
|
410
425
|
export declare const fmeGetExtract: (raw: unknown) => unknown;
|
|
426
|
+
export declare const RMG_DEFAULT_DAYS_BACK = 30;
|
|
427
|
+
export declare const RMG_MAX_DAYS_BACK = 365;
|
|
428
|
+
/** Days of look-ahead included in the window so scheduled releases stay visible. */
|
|
429
|
+
export declare const RMG_DAYS_FORWARD = 7;
|
|
430
|
+
export declare const RMG_DEFAULT_TASK_LIMIT = 50;
|
|
431
|
+
export declare const RMG_MAX_TASK_LIMIT = 100;
|
|
432
|
+
/**
|
|
433
|
+
* Copy HARNESS_ORG / HARNESS_PROJECT into input when scopeOptional resources
|
|
434
|
+
* omit explicit org_id/project_id (same pattern as release list preflight).
|
|
435
|
+
*/
|
|
436
|
+
export declare function releaseFillScopeFromConfig({ input, registry }: PreflightContext): Promise<void>;
|
|
437
|
+
/**
|
|
438
|
+
* Resolve the effective scope and time window before the body/query are built.
|
|
439
|
+
* The registry only merges HARNESS_ORG/HARNESS_PROJECT into `input` when the
|
|
440
|
+
* caller passes `resource_scope`, but the body always needs them.
|
|
441
|
+
*/
|
|
442
|
+
export declare function releaseListPreflight(ctx: PreflightContext): Promise<void>;
|
|
443
|
+
/** POST /api/release/list — scope travels in the body as `scopes`, not as query params. */
|
|
444
|
+
export declare function releaseListBody(input: Record<string, unknown>): Record<string, unknown>;
|
|
445
|
+
/**
|
|
446
|
+
* Normalize the list payload and apply the optional status filter client-side
|
|
447
|
+
* (the endpoint takes no status param). Status matching is case-insensitive
|
|
448
|
+
* because RMG returns both `Running` and `RUNNING` depending on the field.
|
|
449
|
+
*/
|
|
450
|
+
export declare function releaseListExtract(raw: unknown, input?: Record<string, unknown>): unknown;
|
|
451
|
+
/** Flatten GET /api/release/{id} → { release: releaseInfo, ... }. */
|
|
452
|
+
export declare function releaseGetExtract(raw: unknown): unknown;
|
|
453
|
+
/** Normalize sort/status/type filters before query param mapping (GET list). */
|
|
454
|
+
export declare function normalizeReleaseActivityExecutionInput(input: Record<string, unknown>): void;
|
|
455
|
+
export declare function normalizeReleaseTaskLimit(input: Record<string, unknown>): void;
|
|
456
|
+
/** GET /api/release/{id}/tasks → standard list envelope with cursor pagination. */
|
|
457
|
+
export declare function releaseTaskListExtract(raw: unknown, input?: Record<string, unknown>): unknown;
|
|
458
|
+
/** GET /api/release/{id}/execution/activities — Spring page at root. */
|
|
459
|
+
export declare function releaseActivityExecutionListExtract(raw: unknown): unknown;
|
|
460
|
+
export declare function releaseExecutionPhaseOutputPath(input: Record<string, unknown>): string;
|
|
461
|
+
export declare function releaseExecutionPhaseInputPath(input: Record<string, unknown>): string;
|
|
462
|
+
export declare function releaseExecutionActivityOutputPath(input: Record<string, unknown>): string;
|
|
463
|
+
export declare function releasePhaseOutputGetExtract(raw: unknown, input?: Record<string, unknown>): unknown;
|
|
464
|
+
export declare function releasePhaseInputGetExtract(raw: unknown, input?: Record<string, unknown>): unknown;
|
|
465
|
+
export declare function releaseActivityOutputGetExtract(raw: unknown, input: Record<string, unknown> | undefined): unknown;
|
|
466
|
+
export declare function releaseActivityInputGetExtract(raw: unknown): unknown;
|
|
467
|
+
export declare function releaseInputGetExtract(raw: unknown): unknown;
|
|
468
|
+
/** GET /api/orchestration/execution/{id}/phases → standard list envelope. */
|
|
469
|
+
export declare function releasePhaseListExtract(raw: unknown): {
|
|
470
|
+
items: unknown[];
|
|
471
|
+
total: number;
|
|
472
|
+
release_id?: string;
|
|
473
|
+
total_running_phases?: number;
|
|
474
|
+
};
|
|
475
|
+
/** Project RMG process/activity YAML entity responses to a stable agent shape. */
|
|
476
|
+
export declare function rmgYamlEntityExtract(raw: unknown): unknown;
|
|
477
|
+
/** Normalize RMG delete responses to a stable confirmation shape. */
|
|
478
|
+
export declare function rmgYamlEntityDeleteExtract(raw: unknown): unknown;
|
|
479
|
+
export declare function yamlWriteBody(input: Record<string, unknown>): Record<string, unknown>;
|
|
411
480
|
//# sourceMappingURL=extractors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractors.d.ts","sourceRoot":"","sources":["../../src/registry/extractors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extractors.d.ts","sourceRoot":"","sources":["../../src/registry/extractors.ts"],"names":[],"mappings":"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"}
|