Skip to main content
Spaceduck’s agent loop can call tools automatically during a conversation. When the assistant needs external information or wants to take an action, it invokes a tool, reads the result, and continues the conversation.

Available tools

Browser

Navigate web pages, click elements, fill forms, execute JavaScript, and take snapshots using a headless Chromium browser.

Web Search

Search the web via Brave or SearXNG, and get AI-synthesized answers via Perplexity Sonar.

Web Fetch

Fetch any URL and convert HTML to clean text. Fast alternative to the browser for static pages.

Document Scanning

Convert uploaded PDFs to markdown using Marker. Drag and drop in the chat UI.

Charts

Render interactive bar, line, area, and pie charts directly in the conversation.

How tools work

The assistant decides when to use a tool based on the conversation. You don’t need to invoke tools manually — the agent loop handles it:
  1. You ask a question or make a request
  2. The assistant determines a tool would help
  3. The tool runs and returns a text result
  4. The assistant reads the result and responds
Tools can chain — the assistant might search the web, then fetch a specific page, then summarize the content. This happens automatically across multiple rounds.

Tool results are text

All tool results are plain strings that the LLM can read — including errors. There are no structured schemas or silent failures. If a tool fails, the assistant sees the error message and can explain what went wrong.

Configuration

Tools are configured in Settings > Tools. Some tools require external dependencies to be installed before they appear.
ToolRequiresAuto-registered
BrowserPlaywright + ChromiumYes (if installed)
Web SearchBrave API key or SearXNG URLYes (if configured)
Web FetchNothingAlways available
Document Scanningmarker_single on PATHYes (if installed)
ChartsNothingAlways available
The assistant also has built-in tools for reading and updating configuration (config_get, config_set) — you can ask it to change settings during a conversation.