Skip to content
Plugin Tools

Plugin Tools

Projects can add tools through plugins. When a project has a tool plugin configured, its tools become available to any assistant linked to that project.

Available Plugin Tools

ToolSource PluginDescription
generate_imageOpenAI ImagingGenerate images using DALL-E with project guidelines
search_unsplashUnsplashSearch for stock photos
select_unsplash_photoUnsplashAttach a stock photo to a deliverable
lookup_unsplash_photoUnsplashLook up a specific Unsplash photo by URL or ID
publish_to_wordpressWordPressPublish a blog post deliverable to WordPress
get_analyticsUmamiFetch website analytics data

Plugin tools appear alongside built-in tools in the assistant’s Tools tab and can be toggled on or off in the same way.

Creating Plugin Tools

To create your own tool plugins, see Tool Plugins in the Extending TeamWeb AI section.

Plugin tools can also define per-assistant configuration via a config_schema on the tool class. When a plugin tool supports configuration, a Configure badge appears next to it in the assistant’s Tools tab. See Tool Configuration for details.

Technical Details

Plugin tool discovery — At application startup, the plugin registry scans both the built-in system plugins directory and the user plugins directory (set via the PLUGIN_DIR environment variable). Each plugin’s tools.py file is inspected for tool class definitions, and each tool is registered individually in the registry. A single plugin can provide multiple tools.

Sandboxed execution — All plugin tools run inside isolated Docker containers rather than in the main application process. In sandbox mode, the tool receives a lightweight context with plain dictionary data instead of live database sessions and service objects. The plugin directory is mounted read-only in the container. This provides security isolation by default. Network access and file mounts for each tool can be configured from the Sandbox settings page.