-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelix.yaml
123 lines (104 loc) · 5.46 KB
/
helix.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
name: Confluence Bot
description: "Connect to Confluence and search and retrieve documents using natural language queries"
avatar: https://logowik.com/content/uploads/images/592_confluence.jpg
image: https://logowik.com/content/uploads/images/592_confluence.jpg
assistants:
- apis:
- name: Confluence API
description: Connect to Confluence and search and retrieve documents using natural language queries
url: ${JIRA_HOSTNAME}
schema: ./oas/confluence-search.yaml
headers:
Authorization: Basic ${AUTH_STRING}
query: {}
request_prep_template: |
Your output must be a valid json, without any commentary or additional formatting.
Examples:
**User Input:** Get project prj_1234 details
**OpenAPI schema path:** /projects/{projectId}
**Verdict:** response should be {"projectId": "prj_1234"}
**User Input:** List all users with status "active"
**OpenAPI schema path:** /users/findByStatus
**OpenAPI schema parameters:** [
{
"name": "status",
"in": "query",
"description": "Status values that need to be considered for filter",
"required": true,
"type": "array",
"items": {
"type": "string",
"enum": ["active", "pending", "sold"],
"default": "available"
}
}
]
**Verdict:** response should be:
```json
{
"status": "active"
}
```
**Response Format:** Always respond with JSON without any commentary, wrapped in markdown json tags, for example:
```json
{
"parameterName": "parameterValue",
"parameterName2": "parameterValue2"
}
```
===END EXAMPLES===
OpenAPI schema:
{{.Schema}}
===END OPENAPI SCHEMA===
Based on conversation so far, construct a valid JSON object. In cases where user input does not contain information for a query, DO NOT add that specific query parameter to the output. If a user doesn't provide a required parameter, use sensible defaults for required params, and leave optional params out.
ONLY use search parameters from the user messages above - do NOT use search parameters provided in the examples.
Examples of how to specify cql:
- "of type page and contains text event" -> "type = 'page' and text ~ 'event'"
- "with label performance and type blogpost" -> "label = 'performance' and type = 'blogpost'"
- "with title performance and type blogpost" -> "title = 'performance' and type = 'blogpost'"
- "by user bob" -> "user.fullname ~ 'bob'"
- "by contributor bob marley" -> "contributor.fullname ~ 'bob marley'"
- "edited on 30th Nov 2024" -> "LastModified >= '2024-11-30'"
response_success_template: |
Present the key information in a concise manner and perform any actions requested by the user.
Include relevant details, references, and links if present. Format the summary in Markdown for clarity and readability where appropriate, but don't mention formatting in your response unless it's relevant to the user's query.
Make sure to NEVER mention technical terms like "APIs, JSON, Request, etc..." and use first person pronoun (say it as if you performed the action)
Issues and tasks mean the same thing.
IMPORTANT: If the user asks you to write code, you MUST write code. Start by describing the task described in the issue, and then write the code to perform the task.
response_error_template: |
As an AI chat assistant, your job is to help the user understand and resolve API error messages.
When offering solutions, You will clarify without going into unnecessary detail. You must respond in less than 100 words.
You should commence by saying "An error occurred while trying to process your request ..." also, if you think it's auth error, ask the user to read this doc https://docs.helix.ml/helix/develop/helix-tools/ (format as markdown)
model: llama3.1:8b-instruct-q8_0
name: "Confluence Bot"
description: "Connect to Confluence and search and retrieve documents"
avatar: "https://logowik.com/content/uploads/images/592_confluence.jpg"
image: "https://logowik.com/content/uploads/images/592_confluence.jpg"
provider: ""
type: text
system_prompt: ""
rag_source_id: ""
lora_id: ""
knowledge: []
is_actionable_template: ""
gptscripts: []
zapier: []
# Tests for this assistant
tests:
- name: Test Confluence recent activity
steps:
- prompt: Are there any posts on confluence about Event-Based Systems?
expected_output: Responds with some activity on confluence, specifically a page about "Event-Based System Architecture Design for Order Management System".
- name: List content from a specific user
steps:
- prompt: Search for content that Testy McTestface contributed to
expected_output: Responds with a list of pages that Testy McTestface contributed to, including one page called "Event-Based System Architecture Design for Order Management System".
- name: Search for pages with specific labels
steps:
- prompt: Search for pages with the label soa
expected_output: Responds with a single result describing a page about Service-Oriented Architecture (SOA)
- name: Search for content edited on a specific date
steps:
- prompt: Search for content edited on 30th Nov 2024
expected_output: Responds with two results, one describing a page about event-based systems and another about design.
triggers: []