forked from Beyond-Imagination/DocuLink
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmanifest.yml
More file actions
137 lines (122 loc) · 4.23 KB
/
manifest.yml
File metadata and controls
137 lines (122 loc) · 4.23 KB
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
modules:
confluence:globalPage:
- key: DocuLink
resource: main
resolver:
function: resolver
title: DocuLink
route: doculink
function:
- key: resolver
handler: index.handler
- key: keywordTrigger
handler: index.keywordTrigger
- key: hierarchyTrigger
handler: index.hierarchyTrigger
- key: nodesTrigger
handler: index.nodesTrigger
- key: labelsTrigger
handler: index.labelsTrigger
- key: fetchConfluencePages
handler: index.fetchConfluencePages
- key: registerKeywords
handler: index.registerKeywords
scheduledTrigger:
- key: keyword-scheduled-trigger
function: keywordTrigger
interval: hour # Runs hourly
- key: hierarchy-scheduled-trigger
function: hierarchyTrigger
interval: hour # Runs hourly
- key: nodes-scheduled-trigger
function: nodesTrigger
interval: hour # Runs hourly
- key: labels-scheduled-trigger
function: labelsTrigger
interval: hour # Runs hourly
rovo:agent:
- key: keyword-extractor-agent
name: Keyword Extractor Agent
description: >
An agent for extracting key keywords from Confluence pages.
prompt: >
Role: You are responsible for analyzing documents and extracting key keywords to help users easily understand the content.
I'll separate the instructions for each job with a '---' on a new line, followed by the job title.
You can perform the following jobs based on the user's request:
a. Extract keywords from a list of Confluence pages
b. Register keywords
---
a. Extract keywords from a list of Confluence pages
To do this, follow these steps:
1. Fetch the text of the Confluence pages from all Confluence pages using the 'fetch-confluence-pages' action.
2. Extract the keywords from the text of all Confluence pages according to the user's request.
3. Structure your response as follows:
- Response should be in JSON format. Json should have "documents" field. "documents" field should have "id" and "keywords" fields. JSON format should be following format:
```JSON
{
"documents": [
{
"id": Page Id,
"keywords": [Extracted Keywords],
},
...
]
}
```
- Follow these rules:
- Do not mention specific issue details unless asked by the user.
4. Return the response to the user.
----
b. Register keywords
To do this, follow these steps:
1. Perform the 'register-keywords' action to register each of the Confluence page ID and keywords created in the previous step according to the user's request.
2. Return the result to the user.
----
conversationStarters:
- Extract and register keywords for all Confluence pages for JSON format
actions:
- fetch-confluence-pages
- register-keywords
action:
- key: fetch-confluence-pages
name: fetch-confluence-pages
function: fetchConfluencePages
actionVerb: GET
description: >
This action fetches the text of Confluence pages.
- key: register-keywords
name: register-keywords
function: registerKeywords
actionVerb: CREATE
description: >
This action registers keywords.
inputs:
documents:
title: Documents
type: string
required: true
description: |
"The list of the all Confluence pages with page id and keywords"
resources:
- key: main
path: src/fe/build
app:
runtime:
name: nodejs20.x
id: ari:cloud:ecosystem::app/4b9676c8-ccca-4066-9faa-8192bbf3f900
permissions:
scopes:
- write:confluence-content
- read:confluence-content.all
- read:content.metadata:confluence
- read:confluence-content.summary
- search:confluence
- read:page:confluence
- read:space:confluence
- read:label:confluence
- storage:app
- manage:confluence-configuration
- read:confluence-user
content:
styles:
- 'unsafe-inline'