You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SetText(`When calling get_ccm_overview, ensure you have: accountIdentifier, groupBy, startDate, and endDate.
18
-
- If any are missing, ask the user for the specific value(s).
19
-
- Always send startDate and endDate in the following format: 'MM/DD/YYYY' (e.g. '10/30/2025')
20
-
- If no dates are supplied, default startDate to 60 days ago and endDate to now.`).
17
+
SetText(`{"standard": "When calling get_ccm_overview, ensure you have: accountIdentifier, groupBy, startDate, and endDate.\n\t\t\t\t\t- If any are missing, ask the user for the specific value(s).\n\t\t\t\t\t- Always send startDate and endDate in the following format: 'MM/DD/YYYY' (e.g. '10/30/2025')\n\t\t\t\t\t- If no dates are supplied, default startDate to 60 days ago and endDate to now."}`).
SetDescription("Ensure that Update or Delete operations are executed ONLY after user confirmation.").
26
23
SetResultDescription("Execute operation if user input 'yes', cancel otherwise.").
27
-
SetText(`
28
-
**Confirmation Policy**:
29
-
When a function/tool description contains the tag <INSERT_TOOL>, <UPDATE_TOOL> or <DELETE_TOOL>, **BEFORE** calling it you **ALWAYS** must:
30
-
31
-
- Present a clear, minimal summary of the impending change (show key fields/values).
32
-
- Ask: 'Please confirm to proceed (yes/no).'
33
-
- **ONLY** invoke the tool if the user’s next message is exactly “yes” (case-insensitive).
34
-
- If the user’s answer is anything other than “yes”, do not call the tool; instead, offer to adjust or cancel.
35
-
- Never assume consent; always re-ask if the context is ambiguous or stale.
36
-
`).
24
+
SetText(`{"standard": "**Confirmation Policy**:\nWhen a function/tool description contains the tag <INSERT_TOOL>, <UPDATE_TOOL> or <DELETE_TOOL>, **BEFORE** calling it you **ALWAYS** must:\n\n- Present a clear, minimal summary of the impending change (show key fields/values).\n- Ask: 'Please confirm to proceed (yes/no).'\n- **ONLY** invoke the tool if the user's next message is exactly \"yes\" (case-insensitive).\n- If the user's answer is anything other than \"yes\", do not call the tool; instead, offer to adjust or cancel.\n- Never assume consent; always re-ask if the context is ambiguous or stale."}`).
37
25
Build())
38
26
39
27
// Pipeline summarization prompt
40
28
prompts.Append(
41
29
p.NewPrompt().SetName("pipeline_summarizer").
42
30
SetDescription("Summarize a Harness pipeline's structure, purpose, and behavior.").
43
31
SetResultDescription("Comprehensive pipeline summary with key details.").
44
-
SetText(`I need you to summarise the pipeline with the input pipeline identifier.
45
-
46
-
1. **What to do?**
47
-
- Fetch any required metadata or definitions for the pipeline.
48
-
- Analyze its configuration and structure.
49
-
- Make the necessary tool calls to get the pipeline related details.
50
-
- Produce a concise, accurate summary of the pipeline's design and behavior.
51
-
52
-
2. **What tools to call?**
53
-
- get_pipeline
54
-
- list_pipelines
55
-
- get_environment
56
-
- get_service
57
-
58
-
3. **Must-have details in the output** (acceptance criteria):
59
-
- **Purpose and Objective**: What this pipeline is designed to accomplish (e.g. "Builds and deploys a Node.js microservice to staging and production.")
60
-
- **High-Level Architecture**: Major components and phases (build, test, security scanning, deployment).
61
-
- **Environment Flow**: How the execution moves through environments.
62
-
- **Key Technologies**: Languages, frameworks, deployment targets, and tools used.
63
-
- **Trigger Conditions**: What events start the pipeline (Git commits, manual triggers, schedules).
64
-
- **Approval Gates**: Any manual approvals required, and who must sign off.
65
-
- **Dependencies**: External dependencies such as environments, infrastructures, connectors, services, other pipelines this one relies on, etc with their ids if available.
66
-
- **Success Criteria**: What defines a successful run.
67
-
68
-
4. **Output format**
69
-
Return the following data ONLY in a markdown format, DO NOT use JSON literals:
70
-
{
71
-
"purpose": string,
72
-
"architecture": string,
73
-
"environment": string,
74
-
"technologies": string[],
75
-
"triggers": string[],
76
-
"approvals": string[],
77
-
"dependencies": string[],
78
-
"success_criteria": string
79
-
}`).
32
+
SetText(`{"standard": "I need you to summarise the pipeline with the input pipeline identifier.\n\n1. **What to do?**\n - Fetch any required metadata or definitions for the pipeline.\n - Analyze its configuration and structure.\n - Make the necessary tool calls to get the pipeline related details.\n - Produce a concise, accurate summary of the pipeline's design and behavior.\n\n2. **Tools to call to get a complete overview of pipeline**\n - get_pipeline\n - get_pipeline_summary\n - list_pipelines\n - get_environment\n - get_service\n - list_settings (with category as NOTIFICATIONS)\n - get_secret\n - list_triggers\n\n3. **Must-have details in the output** (acceptance criteria):\n - **Purpose and Objective**: What this pipeline is designed to accomplish (e.g. \"Builds and deploys a Node.js microservice to staging and production.\")\n - **High-Level Architecture**: Major components and phases (build, test, security scanning, deployment).\n - **Environment Flow**: How the execution moves through environments.\n - **Key Technologies**: Languages, frameworks, deployment targets, and tools used.\n - **Trigger Conditions**: What events start the pipeline (Git commits, manual triggers, schedules).\n - **Approval Gates**: Any manual approvals required, and who must sign off.\n - **Dependencies**: External dependencies such as environments, infrastructures, connectors, services, other pipelines this one relies on, etc with their ids if available.\n - **Success Criteria**: What defines a successful run.\n\n4. **Output format**\n Return the following data ONLY in a markdown format, DO NOT use JSON literals:\n {\n \"purpose\": string,\n \"architecture\": string,\n \"environment\": string,\n \"technologies\": string[],\n \"triggers\": string[],\n \"approvals\": string[],\n \"dependencies\": string[],\n \"success_criteria\": string,\n \"past_execution_details\": string[]\n }"}`).
0 commit comments