https://github.com/soakedcardinal/owuinc
OpenWebUI → Nextcloud integration
https://github.com/soakedcardinal/owuinc
integration nextcloud openwebui self-hosted
Last synced: 2 months ago
JSON representation
OpenWebUI → Nextcloud integration
- Host: GitHub
- URL: https://github.com/soakedcardinal/owuinc
- Owner: Soakedcardinal
- License: mit
- Created: 2026-02-12T01:56:52.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-02-16T22:42:47.000Z (4 months ago)
- Last Synced: 2026-02-17T08:58:25.837Z (4 months ago)
- Topics: integration, nextcloud, openwebui, self-hosted
- Language: Python
- Homepage:
- Size: 31.3 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Roadmap: ROADMAP.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# owuinc
Connect OpenWebUI Models to Nextcloud.
## Features
### File Operations
* `mkdir`, `ls`, `mv`, `cp`, `rm`
* `write_file`, `cat`, `append_file`
### Task Management
* Create, read, edit, & delete tasks
* Support sub-tasks
### Calendar Events
* Create, read, edit, & delete events
* Support for recurring events
* Support Alarms
## Security
* **Configurable Sandbox**: Prevent the model from accessing unauthorized directories.
## Setup
Pick an existing model, or create one to use. For this example, we will set up an agent named `bot`.
### 1. Add to OpenWebUI
* Navigate to Tools > + New Tool
* Enter Name and description e.g. `owuinc_bot`
* Paste the contents of [`owuinc.py`](./owuinc/owuinc.py)
* Click Save > Confirm
### 2. Create Calendar/Task Lists
* NextCloud Calendar app > `+` > New calendar with task list > call it `bot`
### 3. Configure Valves
* In NextCloud Files app > Files settings
* Identify your `` from the WebDAV URL `https://your-nextcloud-domain.com/remote.php/dav/files/`
* Under Profile Icon > Personal Settings > Security, create an app password e.g. `owuinc_bot`
* In OpenWebUI > gear icon next to `owuinc_bot` tool > fill in the Valves
* `Webdav Username` ( from WebDAV URL)
* `Nextcloud Base URL` (nextcloud server address)
* `Nextcloud Username` (shown next to app password)
* `Nextcloud App Password`
* Set `Sandbox Dir` to `bot`
* Set `Default Calendar` to `bot`
* Set `Default Task List` to `bot`
* Set `Calendar Whitelist` to `bot`
* Set `Task List Whitelist` to `bot`
* Press save
IMPORTANT: Calendars and task lists are ONLY accessible if explicitly listed in the respective whitelist. Both the whitelist AND default values must be configured for operations to work.
### 4. Configure Model
* OpenWebUI > Workspace > Models > `bot`
* Add to the system prompt
```text
Task Priorities: 1 = high, 9 = low, 0 = none
Task/Event operations: Only use Uids internally; never include them in responses.
Calendar Functions: Provide `start` and `end` arguments as an ISO 8601-style string without a timezone offset, e.g. `2026-02-01T15:30`.
Default `calendar_name`: `bot`
Default `list_name`: `bot`
```
IMPORTANT: update the defaults to match your chosen task list / calendar.
* Ensure Advanced Params > Show > Function Calling is set to `Native`
* Under Tools, tick the checkbox to enable the `owuinc_bot` tool
* Press Save & Update