From 4f30f272a0618d2d1051cf258cfa7b2e6b95a2c4 Mon Sep 17 00:00:00 2001 From: Jana Peper Date: Fri, 18 Jul 2025 14:25:15 +0200 Subject: [PATCH 1/3] fix: link generation Signed-off-by: Jana Peper --- ex_app/lib/all_tools/doc-gen.py | 6 ++++-- ex_app/lib/all_tools/image_gen.py | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ex_app/lib/all_tools/doc-gen.py b/ex_app/lib/all_tools/doc-gen.py index 4106f1d..b4eac17 100644 --- a/ex_app/lib/all_tools/doc-gen.py +++ b/ex_app/lib/all_tools/doc-gen.py @@ -18,6 +18,8 @@ def generate_document(input: str, format: str) -> str: :param format: the format of the generated file, allowed values are "text document", "pdf", "spreadsheet", "excel spreadsheet" and "slides" :return: a download link to the generated document """ + url = nc.ocs('GET', '/ocs/v2.php/apps/app_api/api/v1/info/nextcloud_url/absolute', json={'url': 'ocs/v2.php/apps/assistant/api/v1/task'}) + match format: case "text document": tasktype = "richdocuments:text_to_text_document" @@ -53,10 +55,10 @@ def generate_document(input: str, format: str) -> str: 'text': input, } task = run_task(nc, tasktype, task_input) - return f"https://nextcloud.local/ocs/v2.php/apps/assistant/api/v1/task/{task.id}/output-file/{task.output['slide_deck']}/download" + return f"{url}/{task.id}/output-file/{task.output['slide_deck']}/download" task = run_task(nc, tasktype, task_input) - return f"https://nextcloud.local/ocs/v2.php/apps/assistant/api/v1/task/{task.id}/output-file/{task.output['file']}/download" + return f"{url}/{task.id}/output-file/{task.output['file']}/download" return [ generate_document, diff --git a/ex_app/lib/all_tools/image_gen.py b/ex_app/lib/all_tools/image_gen.py index f7f99c6..595eec8 100644 --- a/ex_app/lib/all_tools/image_gen.py +++ b/ex_app/lib/all_tools/image_gen.py @@ -24,8 +24,8 @@ def generate_image(input: str) -> str: 'numberOfImages': 1, } task = run_task(nc, tasktype, task_input) - - return f"https://nextcloud.local/ocs/v2.php/apps/assistant/api/v1/task/{task.id}/output-file/{task.output['images'][0]}/download" + url = nc.ocs('GET', '/ocs/v2.php/apps/app_api/api/v1/info/nextcloud_url/absolute', json={'url': 'ocs/v2.php/apps/assistant/api/v1/task'}) + return f"{url}/{task.id}/output-file/{task.output['images'][0]}/download" return [ generate_image, From 73834c723ad1fcba0da374539e548d7db4d50d3a Mon Sep 17 00:00:00 2001 From: Jana Peper Date: Fri, 18 Jul 2025 14:25:47 +0200 Subject: [PATCH 2/3] fix: adapt prompt to get link returned Signed-off-by: Jana Peper --- ex_app/lib/agent.py | 1 + 1 file changed, 1 insertion(+) diff --git a/ex_app/lib/agent.py b/ex_app/lib/agent.py index 5b0748f..60d03a2 100644 --- a/ex_app/lib/agent.py +++ b/ex_app/lib/agent.py @@ -72,6 +72,7 @@ def call_model( you can find out a user's email address and location by using the find_person_in_contacts tool. you can find out the current user's location by using the find_details_of_current_user tool. If an item should be added to a list, check list_calendars for a fitting calendar and add the item as a task there. +If you get a link as a tool output, always add the link to your response. """.replace("{CURRENT_DATE}", current_date) ) From e354d12407757bb1e0e255fe19b62edca14a0537 Mon Sep 17 00:00:00 2001 From: Jana Peper Date: Fri, 18 Jul 2025 14:26:52 +0200 Subject: [PATCH 3/3] chore: bump min NC version to 31.0.8 Signed-off-by: Jana Peper --- appinfo/info.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appinfo/info.xml b/appinfo/info.xml index 06b9367..abde70e 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -38,7 +38,7 @@ Positive: https://github.com/nextcloud/context_agent/blob/main/img/screenshot.png?raw=true https://github.com/nextcloud/context_agent - +