Skip to content

Commit c140ce1

Browse files
authored
Merge pull request #14166 from nextcloud/backport/14164/stable33
[stable33] feat(ContextAgent): Document more tools
2 parents 1cacac5 + 603953c commit c140ce1

File tree

1 file changed

+272
-49
lines changed

1 file changed

+272
-49
lines changed

admin_manual/ai/app_context_agent.rst

Lines changed: 272 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -9,109 +9,321 @@ The *context_agent* app is the app that provides AI agent functionality in Nextc
99
When the Context Agent app is installed the AI Chat in Nextcloud Assistant will be able to interact with your Nextcloud apps via virtual integrations that are called "tools". They allow the Assistant to perform actions in your Nextcloud upon sending instructions in a chat message.
1010
Tool groups are only available if their requirements are met. They can be en- and disabled in the AI admin settings.
1111

12-
Currently implemented tools:
12+
Currently implemented tools
13+
---------------------------
14+
15+
Artificial intelligence tools
16+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17+
18+
* Ask a question to context chat (requires :ref:`Context Chat<ai-app-context_chat>`)
19+
20+
* Example prompt: *"What is the company's sick leave process?"*
21+
22+
* Transcribe a media file (requires Transcribe audio task type enabled)
23+
24+
* Example prompt: *"Can you transcribe the following file? https://mycloud.com/f/9825679"* (Can be selected via smart picker.)
25+
26+
* Generate documents (requires `Nextcloud Office <https://apps.nextcloud.com/apps/richdocuments>`_)
27+
28+
* Example prompt: *"Can you generate me a slide deck for my presentation about cats?"*
29+
* Example prompt: *"Can you generate me a spreadsheet with some plausible numbers for countries and their population count?"*
30+
* Example prompt: *"Can you generate me a pdf with an outline about what to see in Berlin?"*
31+
32+
* Generate images (requires Image generation task type enabled)
33+
34+
* Example prompt: *"Can you generate me an image of a cartoon drawing of a roman soldier typing something on a laptop?"*
35+
36+
Calendar tools
37+
~~~~~~~~~~~~~~
1338

1439
* List the user's calendars
1540

1641
* Example prompt: *"List my calendars"*
1742

18-
* List the user's talk conversations (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
43+
* Schedule an event in the user's calendar
1944

20-
* Example prompt: *"List my talk conversations"*
45+
* Example prompt: *"Schedule an event with Andrew tomorrow at noon."*
2146

22-
* List messages in a talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
47+
* Find free times in users' calendar
2348

24-
* Example prompt: *"List the latest messages in my conversation with Andrew"*
49+
* Example prompt: *"Find a free 1-hour slot for a meeting with me and Marco next week."*
2550

26-
* Send a message to a talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
51+
Tasks tools
52+
~~~~~~~~~~~
2753

28-
* Example prompt: *"Can you send a joke to Andrew in talk?"*
54+
* Create a task
2955

30-
* Create a public talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
56+
* Example prompt: *"Create a task for grocery shopping with due date tomorrow."*
3157

32-
* Example prompt: *"Can you create a new public talk conversation titled 'Press conference'?"*
58+
* List tasks
59+
60+
* Example prompt: *"List my outstanding tasks"*
61+
62+
* Complete a task
63+
64+
* Example prompt: *"Mark the grocery shopping task as completed."*
65+
66+
* Update a task's details
67+
68+
* Example prompt: *"Change the priority of the grocery shopping task to the highest possible priority."*
69+
* Example prompt: *"Change the due date of my work report task to the beginning of next week."*
70+
71+
* Delete a task
72+
73+
* Example prompt: *"Delete the grocery shopping task in my tasks."*
74+
75+
76+
Circles/teams tools
77+
~~~~~~~~~~~~~~~~~~~
78+
79+
* List circles
80+
81+
* Example prompt: *"List all my teams."*
3382

34-
* Find a person in the user's contacts
83+
* List circle members
3584

36-
* Example prompt: *"What is Andrew's Email address?"*
85+
* Example prompt: *"List all members of my Content Marketing team."*
86+
87+
* Create new circle
88+
89+
* Example prompt: *"Create a new team called 'Hiking group'."*
90+
91+
* Add members to circles
92+
93+
* Example prompt: *"Add Ralph to the Hiking group team."*
94+
95+
* Remove members from circles
96+
97+
* Example prompt: *"Remove ralph from the Hiking group team."*
98+
99+
* Change circle details
100+
101+
* Example prompt: *"Change the name of the Hiking group team to 'Outdoor group'."*
102+
* Example prompt: *"Add the following description to the Hiking group team: We go hiking together once a month. Come join us."*
103+
104+
* Delete a circle
105+
106+
* Example prompt: *"Delete the Hiking group team."*
107+
108+
* Share a file with a circle
109+
110+
* Example prompt: *"Share my Hiking plans.md file with the Hiking group team."*
111+
112+
113+
Contacts tools
114+
~~~~~~~~~~~~~~
115+
116+
* Find a contact
117+
118+
* Example prompt: *"What is Anna's email address?"*
119+
120+
* Find a user's ID
121+
122+
* Example prompt: *"What is Ralph's userID?"*
37123

38124
* Find the current user's details
39125

40126
* Example prompt: *"Where do I live?"*
41127

42-
* Ask a question to context chat (requires :ref:`Context Chat<ai-app-context_chat>`)
128+
Cookbook tools
129+
~~~~~~~~~~~~~~
43130

44-
* Example prompt: *"What is the company's sick leave process?"*
131+
* List recipes
45132

46-
* Transcribe a media file (requires Transcribe audio task type enabled)
133+
* Example prompt: *"List my recipes."*
47134

48-
* Example prompt: *"Can you transcribe the following file? https://mycloud.com/f/9825679"* (Can be selected via smart picker.)
135+
* Search for recipes
49136

50-
* Generate documents (requires `Nextcloud Office <https://apps.nextcloud.com/apps/richdocuments>`_)
137+
* Example prompt: *"Do I have any Spaghetti recipes?"*
51138

52-
* Example prompt: *"Can you generate me a slide deck for my presentation about cats?"*
53-
* Example prompt: *"Can you generate me a spreadsheet with some plausible numbers for countries and their population count?"*
54-
* Example prompt: *"Can you generate me a pdf with an outline about what to see in Berlin?"*
139+
* Get recipe details
55140

56-
* Generate images (requires Image generation task type enabled)
141+
* Example prompt: *"Can you give me the details of my Spaghetti Carbonara recipe?"*
57142

58-
* Example prompt: *"Can you generate me an image of a cartoon drawing of a roman soldier typing something on a laptop?"*
143+
* Create a new recipe
59144

60-
* Get coordinates for an Address from Open Street Maps Nomatim
145+
* Example prompt: *"Create a recipe for Guacamole in my cookbook."*
61146

62-
* Example prompt: *"What are the coordinates for Berlin, Germany?"*
147+
* Delete a recipe
63148

64-
* Get the URL for a map of a location using Open Street Maps
149+
* Example prompt: *"Remove the Guacamole recipe from my cookbook."*
65150

66-
* Example prompt: *"Can you show me a map of New York, please"*
151+
* List recipe categories
67152

68-
* Get the current weather at a location
153+
* Example prompt: *"Which recipe categories do I have in my cookbook?"*
69154

70-
* Example prompt: *"How is the weather in Berlin?"*
155+
Deck tools
156+
~~~~~~~~~~
71157

72-
* Schedule an event in the user's calendar
158+
* List deck boards
73159

74-
* Example prompt: *"Schedule an event with Andrew tomorrow at noon."*
160+
* Example prompt: *"List the deck boards I have access to."*
75161

76-
* Find free times in users' calendar
162+
* Add a new card
77163

78-
* Example prompt: *"Find a free 1-hour slot for a meeting with me and Marco next week."*
164+
* Example prompt: *"Can you add a card with title 'Repair kitchen sink' to my Personal deck board?"*
79165

80-
* Create a deck card (requires `Deck <https://apps.nextcloud.com/apps/deck>`_)
166+
* Add a label to a card
81167

82-
* Example prompt: *"Create a deck card for 'Buy Groceries' in my Personal board."*
168+
* Example prompt: *"Can you add the label 'Urget' to the 'repair kitchen sink' card in my personal deck board?"*
83169

84-
* Access information in deck boards (requires `Deck <https://apps.nextcloud.com/apps/deck>`_)
170+
* Assign a card to a user
85171

86-
* Example prompt: *"Which deck cards are currently in the To do list in my Personal board?"*
172+
* Example prompt: *"Can you assign the 'Repair kitchen sink' card in my Personal deck board to Andrew?"*
87173

88-
* Create a task
174+
* Delete a card
89175

90-
* Example prompt: *"Create a task for 'Renovate flat' in my Personal calendar. The task should be due Monday next week."*
176+
* Example prompt: *"Delete the 'Repair kitchen sink' card in my Personal deck board."*
91177

92-
* Search for youtube videos
178+
Files tools
179+
~~~~~~~~~~~
93180

94-
* Example prompt: *"Show me the youtube video of the Nextcloud hub 10 launch."*
181+
* Get contents of a file
95182

96-
* Search Duckduckgo
183+
* Example prompt: *"Can you fetch the following file in my documents? Design/Planning.md"*
184+
* Example prompt: *"Can you fetch the following file in my documents? https://mycloud.com/f/98543234"*
97185

98-
* Example prompt: *"Show me search results for quick pasta recipes, please."*
186+
* Retrieve folder tree
99187

100-
* Send an email via Nextcloud Mail (requires `Mail <https://apps.nextcloud.com/apps/mail>`_)
188+
* Example prompt: *"List my files."*
101189

102-
* Example prompt: *"Send a test email from my carry@company.com account to Andrew@company.com"*
190+
* Create a public link for a file or folder
103191

104-
* Get contents of a file
192+
* Example prompt: *"Create a public link for the following file: Design/Planning.md"*
193+
194+
* Create a new file
195+
196+
* Example prompt: *"Create a new file Ideas.md in my files and fill it with ideas for hiking destinations in the black forest."*
197+
198+
* Create a new folder
199+
200+
* Example prompt: *"Create a new folder 'Hiking plans' in my files."*
201+
202+
* Move a file
203+
204+
* Example prompt: *"Move the Ideas.md file into the Hiking plans folder."*
205+
206+
* Copy a file
207+
208+
* Example prompt: *"Copy the Ideas.md file into my Notes folder."*
209+
210+
* Delete a file
211+
212+
* Example prompt: *"Delete the Ideas.md file."*
213+
214+
Forms tools
215+
~~~~~~~~~~~
216+
217+
* List all forms
218+
219+
* Example prompt: *"List all the forms I have access to."*
220+
221+
* Get details of a form
222+
223+
* Example prompt: *"Can you give me all details about the Retreat signup form?"*
224+
225+
* Add a question to a form
226+
227+
* Example prompt: *"Add the following question to the retreat signup form: 'Number of days attending'."*
228+
229+
* Retrieve all responses of a form
230+
231+
* Example prompt: *"List all responses to the Retreat signup form."*
105232

106-
* Example prompt: *"Can you summarize the following file in my documents? Design/Planning.md"*
233+
* Update form settings
107234

108-
* Generate a public share link for a file
235+
* Example prompt: *"Make the Retreat signup form expire end of next week."*
109236

110-
* Example prompt: *"Can create a share link for the following file in my documents? Design/Planning.md"*
237+
* Delete a form
111238

112-
* Get the folder tree of the user's files
239+
* Example prompt: *"Delete the Retreat signup form."*
113240

114-
* Example prompt: *"Can you show me the folder tree of my files?"*
241+
Search tools
242+
~~~~~~~~~~~~
243+
All search providers in Nextcloud are also automatically available as tools.
244+
245+
* Search for files
246+
247+
* Example prompt: *"List all the powerpoint presentations in my files with file ending pptx."*
248+
249+
Share tools
250+
~~~~~~~~~~~
251+
252+
* List shares
253+
254+
* Example prompt: *"List all files that were shared with me."*
255+
* Example prompt: *"List the shares of the Design/Ideas.md file."*
256+
257+
* Share a file or folder with a user
258+
259+
* Example prompt: *"Share the Design/Ideas.md file with the user martin."*
260+
261+
* Share a file or folder with a group
262+
263+
* Example prompt: *"Share the Design/Ideas.md file with the group Designers."*
264+
265+
* Update a share's permissions
266+
267+
* Example prompt: *"Only allow martin read only access on the share of the Design/Ideas.md file."*
268+
269+
* Delete a share
270+
271+
* Example prompt: *"Remove the share of the Design/Ideas.md file with martin."*
272+
273+
* List user groups
274+
275+
* Example prompt: *"Which user groups are there?"*
276+
277+
* Retrieve share details
278+
279+
* Example prompt: *"Does martin have write access to the Design/Ideas.md file I shared with him?"*
280+
281+
282+
Talk tools
283+
~~~~~~~~~~
284+
285+
* List the user's talk conversations (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
286+
287+
* Example prompt: *"List my talk conversations"*
288+
289+
* List messages in a talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
290+
291+
* Example prompt: *"List the latest messages in my conversation with Andrew"*
292+
293+
* Send a message to a talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
294+
295+
* Example prompt: *"Can you send a joke to Andrew in talk?"*
296+
297+
* Create a public talk conversation (requires `Talk <https://apps.nextcloud.com/apps/spreed>`_)
298+
299+
* Example prompt: *"Can you create a new public talk conversation titled 'Press conference'?"*
300+
301+
Miscellaneous tools
302+
~~~~~~~~~~~~~~~~~~~
303+
304+
* Get coordinates for an Address from Open Street Maps Nomatim
305+
306+
* Example prompt: *"What are the coordinates for Berlin, Germany?"*
307+
308+
* Get the URL for a map of a location using Open Street Maps
309+
310+
* Example prompt: *"Can you show me a map of New York, please"*
311+
312+
* Get the current weather at a location
313+
314+
* Example prompt: *"How is the weather in Berlin?"*
315+
316+
* Search for youtube videos
317+
318+
* Example prompt: *"Show me the youtube video of the Nextcloud hub 10 launch."*
319+
320+
* Search Duckduckgo
321+
322+
* Example prompt: *"Show me search results for quick pasta recipes, please."*
323+
324+
* Send an email via Nextcloud Mail (requires `Mail <https://apps.nextcloud.com/apps/mail>`_)
325+
326+
* Example prompt: *"Send a test email from my carry@company.com account to Andrew@company.com"*
115327

116328
* Determine public transport routes (requires a `HERE <https://www.here.com/>`_ API key configured in the admin settings)
117329

@@ -129,6 +341,9 @@ Currently implemented tools:
129341
* Example prompt: *"Create a work package called 'Publish release video' in the 'Product launch' project in OpenProject"*
130342

131343

344+
Combining tools
345+
---------------
346+
132347
These tools can also be combined by the agent to fulfil tasks like the following:
133348

134349
* *"How is the weather where Andrew lives?"*
@@ -143,6 +358,14 @@ These tools can also be combined by the agent to fulfil tasks like the following
143358

144359
* Uses contacts to look up Andrew's email and then sends an email
145360

361+
* *"Which of my files are from Anna?"*
362+
363+
* Looks up Anna's userID and searches for files that belong to her
364+
365+
* *"Send the content of my draft.md file to Andrew in Talk"*
366+
367+
* Gets the content of the file and sends it in a 1-1 Talk conversation with Andrew
368+
146369
Custom Tools using MCP
147370
-----------------------
148371

0 commit comments

Comments
 (0)