-
Notifications
You must be signed in to change notification settings - Fork 1
Tool Reference
White-Ops ships with 55 tools organized into 10 categories. Tools are automatically discovered by the worker's ToolRegistry and made available to agents based on their configuration.
Each tool extends the BaseTool class and implements an async execute() method. Tools are assigned to agents during creation and can be overridden per-task.
- Office (6 tools)
- Communication (5 tools)
- Research (6 tools)
- Data (6 tools)
- Filesystem (5 tools)
- Business (8 tools)
- Technical (6 tools)
- Finance (3 tools)
- HR (3 tools)
- Integrations (7 tools)
Tools for creating and manipulating office documents.
Source: worker/agent/tools/office/word.py
Create, read, and edit Microsoft Word documents (.docx).
| Action | Parameters | Description |
|---|---|---|
create |
filename, content, template
|
Create a new Word document |
read |
filename |
Extract text from a Word file |
edit |
filename, changes
|
Apply edits to an existing document |
convert |
filename, format
|
Convert to PDF or other formats |
Example use case: An agent generating a weekly status report as a formatted Word document.
Source: worker/agent/tools/office/excel.py
Create, read, and manipulate Excel spreadsheets (.xlsx).
| Action | Parameters | Description |
|---|---|---|
create |
filename, sheets
|
Create a new workbook |
read |
filename, sheet, range
|
Read cell data |
write |
filename, sheet, data
|
Write data to cells |
formula |
filename, sheet, cell, formula
|
Insert formulas |
chart |
filename, sheet, type, data_range
|
Create charts |
Example use case: A data analyst agent summarizing sales figures into a multi-sheet workbook with charts.
Source: worker/agent/tools/office/pdf.py
Read, create, merge, and manipulate PDF files.
| Action | Parameters | Description |
|---|---|---|
read |
filename |
Extract text from PDF |
create |
filename, content, options
|
Generate a PDF from HTML/Markdown |
merge |
filenames, output
|
Merge multiple PDFs |
split |
filename, pages, output
|
Split PDF by page range |
Example use case: Merging multiple report PDFs into a single consolidated document.
Source: worker/agent/tools/office/powerpoint.py
Create and edit PowerPoint presentations (.pptx).
| Action | Parameters | Description |
|---|---|---|
create |
filename, slides
|
Create a new presentation |
read |
filename |
Extract slide content |
add_slide |
filename, layout, content
|
Add a slide |
edit_slide |
filename, slide_number, changes
|
Edit an existing slide |
Example use case: Auto-generating a quarterly review presentation from analytics data.
Source: worker/agent/tools/office/notes.py
Create and manage text notes in the knowledge base.
| Action | Parameters | Description |
|---|---|---|
create |
title, content, tags
|
Create a new note |
read |
note_id or title
|
Read a note |
update |
note_id, content
|
Update note content |
list |
tags, search
|
List and search notes |
delete |
note_id |
Delete a note |
Example use case: An agent saving research findings as organized, tagged notes for later reference.
Source: worker/agent/tools/office/form_builder.py
Create structured forms and surveys.
| Action | Parameters | Description |
|---|---|---|
create |
title, fields
|
Create a form definition |
render |
form_id, format
|
Render form to HTML or PDF |
collect |
form_id, responses
|
Store form responses |
Example use case: Building an employee feedback survey and exporting it as a PDF.
Tools for email, messaging, and notifications.
Source: worker/agent/tools/communication/email_int.py
Send and receive emails through the internal mail server.
| Action | Parameters | Description |
|---|---|---|
send |
to, subject, body, attachments
|
Send internal email |
read |
folder, count
|
Read inbox messages |
search |
query, folder
|
Search emails |
reply |
message_id, body
|
Reply to an email |
Example use case: Agent A emailing Agent B with task results for further processing.
Source: worker/agent/tools/communication/email_ext.py
Send and receive emails via external SMTP/IMAP servers.
| Action | Parameters | Description |
|---|---|---|
send |
to, subject, body, cc, bcc, attachments
|
Send external email |
read |
folder, count, unread_only
|
Read from IMAP inbox |
search |
query, folder, date_range
|
Search external mailbox |
reply |
message_id, body
|
Reply to an email |
Example use case: Sending a completed report to an external stakeholder.
Source: worker/agent/tools/communication/calendar.py
Manage calendar events and scheduling.
| Action | Parameters | Description |
|---|---|---|
create_event |
title, start, end, attendees, description
|
Create a calendar event |
list_events |
date_range, calendar
|
List upcoming events |
update_event |
event_id, changes
|
Modify an event |
delete_event |
event_id |
Cancel an event |
find_free_time |
attendees, duration, date_range
|
Find available time slots |
Example use case: Scheduling a follow-up meeting after completing a project milestone.
Source: worker/agent/tools/communication/notification.py
Send system notifications to users and other agents.
| Action | Parameters | Description |
|---|---|---|
send |
recipient, title, message, priority
|
Send a notification |
broadcast |
title, message
|
Send to all users |
Example use case: Alerting an admin when a critical task fails.
Source: worker/agent/tools/communication/sms.py
Send SMS messages via configured provider.
| Action | Parameters | Description |
|---|---|---|
send |
phone_number, message
|
Send an SMS |
send_bulk |
recipients, message
|
Send to multiple recipients |
Example use case: Sending an urgent alert to an on-call team member.
Tools for searching, scraping, and analyzing web content.
Source: worker/agent/tools/research/search.py
Search the web using search engine APIs.
| Action | Parameters | Description |
|---|---|---|
search |
query, num_results, region
|
Perform a web search |
news |
query, date_range
|
Search recent news |
images |
query, num_results
|
Search for images |
Example use case: Researching competitor products before generating a market analysis.
Source: worker/agent/tools/research/browser.py
Navigate and interact with web pages programmatically.
| Action | Parameters | Description |
|---|---|---|
navigate |
url |
Open a URL |
get_text |
url |
Extract page text content |
screenshot |
url |
Take a screenshot |
click |
selector |
Click an element |
fill |
selector, value
|
Fill a form field |
Example use case: Navigating to a web application to extract pricing data.
Source: worker/agent/tools/research/scraper.py
Extract structured data from web pages.
| Action | Parameters | Description |
|---|---|---|
scrape |
url, selectors
|
Extract data using CSS selectors |
scrape_table |
url, table_index
|
Extract table data |
scrape_links |
url, pattern
|
Extract matching links |
scrape_all |
urls, selectors
|
Batch scrape multiple pages |
Example use case: Extracting product listings from an e-commerce page.
Source: worker/agent/tools/research/summarizer.py
Summarize long text content using the LLM.
| Action | Parameters | Description |
|---|---|---|
summarize |
text, max_length, style
|
Summarize text |
key_points |
text, count
|
Extract key points |
compare |
texts |
Compare multiple texts |
Example use case: Summarizing a lengthy research paper into a concise executive brief.
Source: worker/agent/tools/research/translator.py
Translate text between languages.
| Action | Parameters | Description |
|---|---|---|
translate |
text, source_lang, target_lang
|
Translate text |
detect |
text |
Detect the language |
batch |
texts, target_lang
|
Translate multiple texts |
Example use case: Translating a customer support document from English to Spanish.
Source: worker/agent/tools/research/rss.py
Read and parse RSS/Atom feeds.
| Action | Parameters | Description |
|---|---|---|
fetch |
feed_url, count
|
Fetch latest feed entries |
search |
feed_url, query
|
Search within a feed |
monitor |
feed_urls, keywords
|
Monitor feeds for keywords |
Example use case: Monitoring industry news feeds for mentions of specific topics.
Tools for data analysis, transformation, and visualization.
Source: worker/agent/tools/data/analysis.py
Perform statistical analysis on datasets.
| Action | Parameters | Description |
|---|---|---|
describe |
data, columns
|
Generate descriptive statistics |
correlate |
data, columns
|
Compute correlation matrix |
group_by |
data, by, agg
|
Aggregate data |
filter |
data, conditions
|
Filter rows |
pivot |
data, index, columns, values
|
Create pivot table |
Example use case: Analyzing sales data to identify top-performing regions.
Source: worker/agent/tools/data/cleaning.py
Clean and normalize datasets.
| Action | Parameters | Description |
|---|---|---|
deduplicate |
data, columns
|
Remove duplicate rows |
fill_missing |
data, strategy
|
Handle missing values |
normalize |
data, columns, method
|
Normalize column values |
validate |
data, rules
|
Validate against rules |
Example use case: Cleaning a CSV of customer records before import.
Source: worker/agent/tools/data/converter.py
Convert between data formats.
| Action | Parameters | Description |
|---|---|---|
csv_to_json |
input, output
|
Convert CSV to JSON |
json_to_csv |
input, output
|
Convert JSON to CSV |
excel_to_csv |
input, output
|
Convert Excel to CSV |
xml_to_json |
input, output
|
Convert XML to JSON |
yaml_to_json |
input, output
|
Convert YAML to JSON |
Example use case: Converting an XML export to JSON for API consumption.
Source: worker/agent/tools/data/database.py
Execute queries against databases.
| Action | Parameters | Description |
|---|---|---|
query |
connection, sql
|
Execute a SELECT query |
execute |
connection, sql
|
Execute INSERT/UPDATE/DELETE |
schema |
connection, table
|
Get table schema |
tables |
connection |
List all tables |
Example use case: Querying a reporting database to generate a weekly summary.
Source: worker/agent/tools/data/reporter.py
Generate formatted reports from data.
| Action | Parameters | Description |
|---|---|---|
generate |
data, template, format
|
Generate a report (HTML, PDF, DOCX) |
table |
data, headers, title
|
Create a formatted table |
section |
title, content, level
|
Create a report section |
Example use case: Generating a monthly performance report with charts and tables.
Source: worker/agent/tools/data/visualization.py
Create charts and data visualizations.
| Action | Parameters | Description |
|---|---|---|
bar_chart |
data, x, y, title
|
Create a bar chart |
line_chart |
data, x, y, title
|
Create a line chart |
pie_chart |
data, labels, values, title
|
Create a pie chart |
scatter |
data, x, y, title
|
Create a scatter plot |
heatmap |
data, title
|
Create a heatmap |
save |
chart, filename, format
|
Export chart to file |
Example use case: Creating a dashboard visualization of website traffic trends.
Tools for file management and processing.
Source: worker/agent/tools/filesystem/file_manager.py
Basic file operations within the MinIO storage.
| Action | Parameters | Description |
|---|---|---|
list |
path, pattern
|
List files |
read |
path |
Read file content |
write |
path, content
|
Write file content |
copy |
source, destination
|
Copy a file |
move |
source, destination
|
Move/rename a file |
delete |
path |
Delete a file |
info |
path |
Get file metadata |
Example use case: Organizing output files into categorized folders after task completion.
Source: worker/agent/tools/filesystem/image.py
Image processing and manipulation.
| Action | Parameters | Description |
|---|---|---|
resize |
input, width, height
|
Resize an image |
crop |
input, box
|
Crop an image |
convert |
input, format
|
Convert image format |
compress |
input, quality
|
Compress an image |
metadata |
input |
Read EXIF metadata |
Example use case: Resizing product images for web optimization.
Source: worker/agent/tools/filesystem/ocr.py
Extract text from images and scanned documents.
| Action | Parameters | Description |
|---|---|---|
extract |
image, language
|
Extract text from image |
extract_pdf |
pdf, pages
|
OCR a scanned PDF |
extract_table |
image |
Extract tabular data from image |
Example use case: Digitizing scanned invoices for data entry.
Source: worker/agent/tools/filesystem/backup.py
Create and manage file backups.
| Action | Parameters | Description |
|---|---|---|
create |
paths, destination
|
Create a backup archive |
restore |
archive, destination
|
Restore from backup |
list |
archive |
List backup contents |
schedule |
paths, cron
|
Schedule automatic backups |
Example use case: Backing up critical reports to a separate storage location nightly.
Source: worker/agent/tools/filesystem/cloud_storage.py
Interface with external cloud storage providers.
| Action | Parameters | Description |
|---|---|---|
upload |
local_path, remote_path, provider
|
Upload to cloud |
download |
remote_path, local_path, provider
|
Download from cloud |
list |
remote_path, provider
|
List remote files |
delete |
remote_path, provider
|
Delete remote file |
Example use case: Uploading generated reports to an S3 bucket for external access.
Tools for business operations and project management.
Source: worker/agent/tools/business/crm.py
Customer relationship management operations.
| Action | Parameters | Description |
|---|---|---|
create_contact |
name, email, company, phone
|
Add a contact |
get_contact |
contact_id or email
|
Retrieve contact details |
update_contact |
contact_id, fields
|
Update contact info |
search |
query, filters
|
Search contacts |
create_deal |
contact_id, title, value, stage
|
Create a deal |
list_deals |
stage, contact_id
|
List deals |
Example use case: Logging a new lead from a web form submission into the CRM.
Source: worker/agent/tools/business/invoice.py
Generate and manage invoices.
| Action | Parameters | Description |
|---|---|---|
create |
client, items, due_date, currency
|
Create an invoice |
send |
invoice_id, email
|
Email the invoice |
list |
status, client, date_range
|
List invoices |
mark_paid |
invoice_id, payment_date
|
Mark as paid |
Example use case: Auto-generating monthly invoices for recurring clients.
Source: worker/agent/tools/business/expense_report.py
Create and manage expense reports.
| Action | Parameters | Description |
|---|---|---|
create |
title, items, period
|
Create an expense report |
add_item |
report_id, description, amount, category, receipt
|
Add expense line |
submit |
report_id, approver
|
Submit for approval |
list |
status, date_range
|
List reports |
Example use case: Compiling monthly team expenses from receipt images.
Source: worker/agent/tools/business/project_tracker.py
Track projects, milestones, and deliverables.
| Action | Parameters | Description |
|---|---|---|
create_project |
name, description, deadline
|
Create a project |
add_milestone |
project_id, name, date
|
Add a milestone |
update_status |
project_id, status
|
Update project status |
get_summary |
project_id |
Get project summary |
list |
status, owner
|
List projects |
Example use case: Tracking a product launch with milestones and status updates.
Source: worker/agent/tools/business/task_tracker.py
Lightweight task/to-do tracking.
| Action | Parameters | Description |
|---|---|---|
create |
title, description, assignee, due_date
|
Create a task |
update |
task_id, status, notes
|
Update task status |
list |
assignee, status, project
|
List tasks |
complete |
task_id |
Mark complete |
Example use case: Breaking down a project milestone into actionable sub-tasks.
Source: worker/agent/tools/business/time_tracker.py
Track time spent on tasks and projects.
| Action | Parameters | Description |
|---|---|---|
start |
task_id, description
|
Start a timer |
stop |
timer_id |
Stop a timer |
log |
task_id, hours, description, date
|
Log time manually |
report |
user, date_range, project
|
Generate time report |
Example use case: Generating a weekly time report for client billing.
Source: worker/agent/tools/business/inventory.py
Manage product inventory levels.
| Action | Parameters | Description |
|---|---|---|
add |
sku, name, quantity, location
|
Add inventory item |
update |
sku, quantity_change, reason
|
Update stock level |
check |
sku |
Check current stock |
low_stock |
threshold |
List low-stock items |
report |
date_range |
Generate inventory report |
Example use case: Checking stock levels and generating a reorder list for items below threshold.
Source: worker/agent/tools/business/contract_generator.py
Generate contracts and legal documents from templates.
| Action | Parameters | Description |
|---|---|---|
generate |
template, variables, format
|
Generate a contract |
list_templates |
-- | List available templates |
review |
contract_id |
Get contract summary |
Example use case: Generating a service agreement from a template with client-specific details.
Tools for software development and infrastructure operations.
Source: worker/agent/tools/technical/shell.py
Execute shell commands in a sandboxed environment.
| Action | Parameters | Description |
|---|---|---|
run |
command, timeout, cwd
|
Execute a shell command |
script |
script, interpreter
|
Run a multi-line script |
Restrictions: Commands run inside a restricted sandbox. Network access, file system writes outside the workspace, and system-modifying commands are blocked. See Security#code-sandbox-restrictions.
Example use case: Running a data processing script on uploaded CSV files.
Source: worker/agent/tools/technical/code_exec.py
Execute Python code in a sandboxed environment.
| Action | Parameters | Description |
|---|---|---|
run |
code, timeout
|
Execute Python code |
install |
packages |
Install pip packages (allowlisted) |
Example use case: Running a custom data transformation script.
Source: worker/agent/tools/technical/code_review.py
Review code for quality, bugs, and style.
| Action | Parameters | Description |
|---|---|---|
review |
code, language, focus
|
Review code |
suggest |
code, language
|
Suggest improvements |
explain |
code, language
|
Explain code logic |
Example use case: Reviewing a pull request for potential security issues.
Source: worker/agent/tools/technical/git_ops.py
Git repository operations.
| Action | Parameters | Description |
|---|---|---|
clone |
url, branch
|
Clone a repository |
status |
repo_path |
Check repo status |
diff |
repo_path, ref
|
Get diff |
log |
repo_path, count
|
View commit history |
commit |
repo_path, message, files
|
Commit changes |
push |
repo_path, remote, branch
|
Push commits |
Example use case: Cloning a repo, reviewing recent changes, and generating a changelog.
Source: worker/agent/tools/technical/docker_ops.py
Docker container management.
| Action | Parameters | Description |
|---|---|---|
ps |
all |
List containers |
logs |
container, tail
|
View container logs |
stats |
container |
View resource usage |
exec |
container, command
|
Execute command in container |
restart |
container |
Restart a container |
Example use case: Checking container health and restarting a failed service.
Source: worker/agent/tools/technical/api_caller.py
Make HTTP API requests.
| Action | Parameters | Description |
|---|---|---|
get |
url, headers, params
|
HTTP GET request |
post |
url, headers, body
|
HTTP POST request |
put |
url, headers, body
|
HTTP PUT request |
delete |
url, headers
|
HTTP DELETE request |
graphql |
url, query, variables
|
GraphQL query |
Example use case: Fetching data from a third-party REST API and processing the response.
Tools for financial operations.
Source: worker/agent/tools/finance/bookkeeping.py
Record and categorize financial transactions.
| Action | Parameters | Description |
|---|---|---|
record |
date, description, amount, category, account
|
Record a transaction |
list |
account, date_range, category
|
List transactions |
balance |
account, date
|
Get account balance |
report |
type, date_range
|
Generate financial report (P&L, balance sheet) |
Example use case: Recording daily transactions and generating a monthly profit/loss statement.
Source: worker/agent/tools/finance/currency.py
Currency conversion and exchange rate lookups.
| Action | Parameters | Description |
|---|---|---|
convert |
amount, from, to
|
Convert between currencies |
rate |
from, to
|
Get current exchange rate |
historical |
from, to, date
|
Get historical rate |
Example use case: Converting invoice amounts from EUR to USD at the current rate.
Source: worker/agent/tools/finance/tax_calculator.py
Calculate taxes based on configurable rules.
| Action | Parameters | Description |
|---|---|---|
calculate |
income, deductions, jurisdiction
|
Calculate tax liability |
estimate |
quarterly_income, jurisdiction
|
Estimate quarterly taxes |
rates |
jurisdiction |
Get current tax rates |
Example use case: Estimating quarterly tax payments based on current revenue.
Tools for human resources management.
Source: worker/agent/tools/hr/employee_directory.py
Manage employee records and organizational structure.
| Action | Parameters | Description |
|---|---|---|
search |
query, department
|
Search employees |
get |
employee_id |
Get employee details |
add |
name, email, department, role, start_date
|
Add employee |
update |
employee_id, fields
|
Update employee info |
org_chart |
department |
Get org chart data |
Example use case: Looking up a team member's contact info and reporting structure.
Source: worker/agent/tools/hr/leave_manager.py
Manage employee leave requests and balances.
| Action | Parameters | Description |
|---|---|---|
request |
employee_id, type, start_date, end_date, reason
|
Submit leave request |
approve |
request_id |
Approve a leave request |
deny |
request_id, reason
|
Deny a leave request |
balance |
employee_id, type
|
Check leave balance |
calendar |
department, date_range
|
View team leave calendar |
Example use case: Processing a batch of pending leave requests and updating the team calendar.
Source: worker/agent/tools/hr/payroll.py
Payroll calculations and processing.
| Action | Parameters | Description |
|---|---|---|
calculate |
employee_id, period
|
Calculate pay for a period |
run |
period, department
|
Run payroll for a department |
payslip |
employee_id, period
|
Generate a payslip |
report |
period, type
|
Generate payroll report |
Example use case: Running monthly payroll and generating payslips for all employees.
Tools for connecting with third-party services.
Source: worker/agent/tools/integrations/github_integration.py
Interact with GitHub repositories, issues, and pull requests.
| Action | Parameters | Description |
|---|---|---|
list_repos |
org |
List repositories |
create_issue |
repo, title, body, labels
|
Create an issue |
list_issues |
repo, state, labels
|
List issues |
create_pr |
repo, title, body, head, base
|
Create a pull request |
list_prs |
repo, state
|
List pull requests |
get_pr_diff |
repo, pr_number
|
Get PR diff |
Example use case: Creating GitHub issues from a spreadsheet of bug reports.
Source: worker/agent/tools/integrations/jira.py
Interact with Jira projects and issues.
| Action | Parameters | Description |
|---|---|---|
create_issue |
project, type, summary, description
|
Create a Jira issue |
get_issue |
issue_key |
Get issue details |
update_issue |
issue_key, fields
|
Update an issue |
search |
jql |
Search with JQL |
transition |
issue_key, status
|
Change issue status |
Example use case: Syncing task statuses between White-Ops and Jira.
Source: worker/agent/tools/integrations/slack.py
Send messages and interact with Slack workspaces.
| Action | Parameters | Description |
|---|---|---|
send_message |
channel, text, blocks
|
Send a message |
list_channels |
-- | List available channels |
read_messages |
channel, count
|
Read recent messages |
upload_file |
channel, file_path, message
|
Upload a file |
create_thread |
channel, text
|
Start a thread |
Example use case: Posting a daily standup summary to a Slack channel.
Source: worker/agent/tools/integrations/notion.py
Interact with Notion databases and pages.
| Action | Parameters | Description |
|---|---|---|
create_page |
parent_id, title, content
|
Create a Notion page |
update_page |
page_id, content
|
Update a page |
query_database |
database_id, filter, sort
|
Query a database |
add_row |
database_id, properties
|
Add a database row |
search |
query |
Search across workspace |
Example use case: Syncing meeting notes to a Notion workspace.
Source: worker/agent/tools/integrations/google_workspace.py
Interact with Google Workspace (Drive, Docs, Sheets).
| Action | Parameters | Description |
|---|---|---|
list_files |
folder_id, query
|
List Drive files |
upload |
file_path, folder_id
|
Upload to Drive |
download |
file_id, local_path
|
Download from Drive |
create_doc |
title, content
|
Create a Google Doc |
create_sheet |
title, data
|
Create a Google Sheet |
Example use case: Uploading generated reports to a shared Google Drive folder.
Source: worker/agent/tools/integrations/telegram.py
Send and receive Telegram messages via bot API.
| Action | Parameters | Description |
|---|---|---|
send_message |
chat_id, text
|
Send a message |
send_document |
chat_id, file_path, caption
|
Send a document |
get_updates |
offset, limit
|
Get recent messages |
Example use case: Sending task completion alerts to a Telegram group.
Source: worker/agent/tools/integrations/webhook.py
Send and receive webhooks.
| Action | Parameters | Description |
|---|---|---|
send |
url, method, payload, headers
|
Send a webhook |
register |
event, url, secret
|
Register an incoming webhook |
list |
-- | List registered webhooks |
delete |
webhook_id |
Remove a webhook |
Example use case: Triggering an external CI/CD pipeline when a code review task completes.