131 lines
5.1 KiB
TOML
131 lines
5.1 KiB
TOML
# =====================================================================
|
|
# Which tools the assistant can see.
|
|
#
|
|
# `false` does not hide a tool, it REMOVES it: the operation is dropped
|
|
# from the OpenAPI spec, so the model is never told it exists, and the
|
|
# endpoint stops answering. Both halves matter. Every tool's schema is
|
|
# paid on every turn of every conversation - the full set is roughly
|
|
# 9,700 tokens - so a tool you will not use is a standing tax on every
|
|
# message, and one that is described but broken is worse than absent.
|
|
#
|
|
# AFTER EDITING THIS FILE:
|
|
#
|
|
# docker compose restart api
|
|
# then re-save the tool connection in Open WebUI
|
|
# (Admin -> Settings -> Integrations -> the owuitools connection -> Save)
|
|
#
|
|
# Both are needed. The spec is built once per process here, and Open WebUI
|
|
# caches what it fetched when the connection was saved.
|
|
#
|
|
# A tool listed here that the server does not have is reported at startup
|
|
# and ignored - usually a typo. A tool the server has and this file does
|
|
# not mention stays ON, so an older config never silently removes tools.
|
|
# =====================================================================
|
|
|
|
[tools]
|
|
|
|
# --- Web and research -------------------------------------------------
|
|
|
|
# Searches through the SearXNG container in this compose file, which is
|
|
# reachable only inside the guarded namespace. Nothing to sign up for.
|
|
# Setup: docs/setup/searxng.md
|
|
web_search = true
|
|
|
|
# Reads a web page or PDF and returns it as text. Goes out through squid,
|
|
# which refuses private addresses however it is asked. No setup.
|
|
fetch_page = true
|
|
|
|
# Wikipedia via the Wikimedia REST API. REQUIRES a descriptive contact in
|
|
# OWUITOOLS_CONTACT - Wikimedia returns 403 to a blank or generic
|
|
# User-Agent, so this one fails hard rather than slowly if it is unset.
|
|
# Setup: docs/setup/contact.md
|
|
wikipedia_lookup = true
|
|
|
|
# Stack Exchange search. Works with no key at 300 requests/day for the
|
|
# whole stack's IP; a free key takes it to 10,000.
|
|
# Setup: docs/setup/stackexchange.md
|
|
search_stackexchange = true
|
|
|
|
# Academic papers through OpenAlex. Sends OWUITOOLS_CONTACT to get into
|
|
# the polite pool, which is markedly faster. Works without it.
|
|
# Setup: docs/setup/contact.md
|
|
search_papers = true
|
|
|
|
# --- IT and reference -------------------------------------------------
|
|
|
|
# IETF RFCs, read or searched. No key, no setup.
|
|
lookup_rfc = true
|
|
|
|
# CVE lookup: CIRCL first, MITRE as fallback, NVD for CVSS and CPE detail.
|
|
# Keyless NVD is throttled to 5 requests per 30 seconds; a free key lifts
|
|
# that. Only matters if you lean on the CVSS breakdown.
|
|
# Setup: docs/setup/nvd.md
|
|
lookup_cve = true
|
|
|
|
# Linux manual pages from man.archlinux.org. No setup.
|
|
read_man_page = true
|
|
|
|
# Current version of a package across PyPI, npm, crates.io, Docker Hub,
|
|
# GitHub releases and Debian. Unauthenticated GitHub is 60 requests/hour
|
|
# for the WHOLE stack's IP, which a single conversation can exhaust; a
|
|
# read-only token takes it to 5,000.
|
|
# Setup: docs/setup/github-token.md
|
|
lookup_package = true
|
|
|
|
# --- Networking -------------------------------------------------------
|
|
# The four probe tools below reach out and touch a host the user named.
|
|
# They share a per-user hourly budget, OWUITOOLS_PROBE_RATE_PER_HOUR.
|
|
# Turning them off is the blunt version of setting that to zero.
|
|
|
|
# Pure arithmetic on a prefix. Offline, no limit, nothing to set up.
|
|
subnet_calc = true
|
|
|
|
dns_lookup = true
|
|
inspect_tls = true
|
|
http_headers = true
|
|
lookup_ip_or_asn = true
|
|
|
|
# MAC vendor, port number and HTTP status lookups, from datasets baked
|
|
# into the image at build time. Offline and unlimited. If the build could
|
|
# not download them the tool says so rather than guessing.
|
|
network_reference = true
|
|
|
|
# --- Electronics ------------------------------------------------------
|
|
# All four are deterministic arithmetic with no network access at all.
|
|
# They are also the cheapest ones to turn off if you never do electronics
|
|
# and want the context back.
|
|
|
|
ohms_law_power = true
|
|
component_calc = true
|
|
pcb_calc = true
|
|
wiring_calc = true
|
|
|
|
# Datasheet search. Uses SearXNG with a PDF-scoped query, so it needs the
|
|
# same container web_search does.
|
|
# Setup: docs/setup/searxng.md
|
|
find_datasheet = true
|
|
|
|
# --- Code execution ---------------------------------------------------
|
|
|
|
# Runs MATLAB/Octave code in a network-less sandbox container and reports
|
|
# output, errors and MATLAB-vs-Octave compatibility. Needs the
|
|
# owuitools-octave image built, which `docker compose up -d --build` does.
|
|
# Setup: docs/setup/octave.md
|
|
matlab_run = true
|
|
|
|
# --- The VM sub-agent -------------------------------------------------
|
|
|
|
# Hands a task to a second model driving a real throwaway Ubuntu or
|
|
# Windows machine, and returns what actually happened.
|
|
#
|
|
# This is the one tool with substantial setup. It needs KVM, a ZFS pool,
|
|
# the host daemon installed by vm/host/install.sh, a built base image
|
|
# (~25 minutes unattended for Ubuntu), and a Gitea bot to publish results
|
|
# to. Without the Gitea half a session still runs and keeps its files, it
|
|
# just returns no link.
|
|
#
|
|
# It is also removed automatically when the VM job volume is not mounted,
|
|
# so on a host without the VM stack this setting does nothing.
|
|
# Setup: docs/setup/vm-agent.md
|
|
vm_agent = true
|