Skip to main content

Overview

When an agent uses agent reasoning mode, it has access to BoostGPT built-in tools for knowledge, memory, files, planning, communication, CRM, calendar, automation, workspace delivery, and platform operations.
File tools (write, read, edit, grep, delete, ls) and the command tool require the agent’s Workspace setting to be enabled. Planning tools (create_plan, update_plan, read_plan, accept_plan) require plan mode (chat_mode: 'plan'), which also requires workspace.

Approval Levels

LevelBehaviorDescription
AutoExecutes without user interactionRead-only and low-risk operations
InputWaits for visitor interactionUser-facing tools such as booking cards
ConditionalConfigurable per agentWrite operations that modify workspace files
AlwaysAlways requires user approvalActions that need explicit user consent

Summary

ToolCategoryApprovalDescription
search_memoryKnowledgeAutoVector search through knowledge base
screenshotKnowledgeAutoCapture web page screenshot
web_fetchKnowledgeAutoExtract page content as markdown
rememberMemoryAutoSave to user long-term memory
recallMemoryAutoSearch user memories
list_memoriesMemoryAutoList all user memories
forgetMemoryAutoRemove a user memory
writeFilesConditionalCreate or overwrite a file
readFilesAutoRead file content
editFilesConditionalExact string replacement
grepFilesAutoRegex search across files
deleteFilesConditionalSoft-delete a file
create_planPlanningAutoRegister a plan
update_planPlanningAutoModify plan or advance todos
read_planPlanningAutoRead current plan state
accept_planPlanningAlwaysSubmit plan for user approval
ask_userCommunicationAlwaysAsk structured questions
calendar_request_bookingCalendarAuto/InputRender an interactive booking card and wait for slot selection
notify_userCommunicationAutoSend proactive notification
message_agentCommunicationAutoMessage another agent
calendar_check_availabilityCalendarAutoFind available meeting slots
calendar_create_eventCalendarAutoCreate an event and send confirmation email
calendar_reschedule_eventCalendarAutoMove an existing event
calendar_cancel_eventCalendarAutoCancel an existing event
create_crm_contactCRMAutoCapture a contact record
schedule_taskAutomationAutoCreate recurring task
commandExecutionConditionalRun code/commands in sandbox
thinkUtilityAutoInternal reasoning

search_memory

Search through the bot’s knowledge base and uploaded documents using vector similarity.
ParameterTypeRequiredDescription
querystringYesThe search query to find relevant information
topintegerNoNumber of results to return (default: 10)

screenshot

Capture a visual screenshot of a web page. Returns an image URL for vision-capable AI analysis.
ParameterTypeRequiredDescription
urlstringYesURL of the web page to screenshot
widthintegerNoViewport width in pixels (default: 1920)
heightintegerNoViewport height in pixels (default: 1080)
fullPagebooleanNoCapture full scrollable page (default: false)
devicestringNoDevice preset (e.g., iphone-15, ipad-pro-12.9, pixel-7, desktop-1080p)
themestringNoColor scheme: light or dark (default: light)
qualityintegerNoJPEG quality 1-100 (default: 80)
formatstringNoOutput format: jpg or png (default: jpg)
blockCookieBannersbooleanNoBlock cookie consent banners (default: false)
blockAdsbooleanNoBlock advertisements (default: false)
blockChatWidgetsbooleanNoBlock chat widgets (default: false)
blockPopupsbooleanNoBlock popups and modals (default: false)
hideSelectorsarrayNoCSS selectors to hide before capture
clickSelectorsarrayNoCSS selectors to click before capture
timeoutintegerNoPage load timeout in ms (default: 30000)

web_fetch

Extract the content of a web page as structured markdown with metadata (title, description, word count). Unlike screenshot which captures a visual image, web_fetch returns the page’s text content.
ParameterTypeRequiredDescription
urlstringYesURL of the web page to extract content from

User Memory

User Memory must be enabled on the agent. Enable it in Settings → Features & Options → Access to Memory, or set memory: true via the Bot Management API.

remember

Save or update information in long-term memory for the current user. Automatically detects whether to create a new memory or update an existing one.
ParameterTypeRequiredDescription
contentstringYesThe information to remember
typestringNoMemory type: semantic, episodic, or procedural (default: semantic)
tagsarrayNoTags for categorization

recall

Search through saved memories for the current user.
ParameterTypeRequiredDescription
querystringYesWhat to search for in memories
typestringNoFilter by type: semantic, episodic, procedural, or all (default: all)
topintegerNoNumber of results to return (default: 5)

list_memories

List all saved memories for the current user, ordered by most recent.
ParameterTypeRequiredDescription
typestringNoFilter by type: semantic, episodic, procedural, or all (default: all)
limitintegerNoMax memories to return (default: 10)

forget

Remove a specific memory about the current user.
ParameterTypeRequiredDescription
querystringYesDescription of the memory to forget

File Operations

File tools operate on the agent’s sandbox Workspace. See the Workspaces documentation for full details including REST API endpoints.
ToolApprovalDescription
writeConditionalCreate or overwrite a file — params: file_path, content, language
readAutoRead file content — params: file_path, start_line, end_line
editConditionalExact string replacement — params: file_path, old_string, new_string
grepAutoRegex search across files — params: pattern, file_path, include
deleteConditionalSoft-delete a file — params: file_path

Planning

Planning tools enable agents to create structured plans, track progress through todos, and get user approval before executing.

create_plan

Register a plan after writing the plan document to a workspace file. First use write to create the plan file at /.plans/{title}.md, then call this tool.
ParameterTypeRequiredDescription
titlestringYesA concise title for the plan
plan_file_pathstringYesPath to the plan .md file (e.g., /.plans/add-dark-mode.md)
todosarrayNoTodo descriptions (in plan mode, typically added after acceptance)

update_plan

Update the active plan. Can modify title, replace todos, change status, or advance to the next todo.
ParameterTypeRequiredDescription
titlestringNoNew title for the plan
todosarrayNoReplacement todos array (replaces all todos, resets status to pending)
statusstringNoSet status: cancelled or completed
advance_todobooleanNoMark current todo complete and advance to next
todo_resultstringNoSummary of what was accomplished (used with advance_todo)
Setting todos replaces the entire todo list and resets all statuses to pending. Use advance_todo: true to mark individual todos as completed.

read_plan

Read the current active plan. Returns title, status, todos with completion state, and current todo index. No parameters.

accept_plan

Submit the current draft plan for user approval. No parameters. Always requires user approval before proceeding.
After a plan is accepted, the agent typically adds execution todos via update_plan and then works through them step by step.

Communication

ask_user

Ask the user 1-4 structured questions with selectable options. Always requires approval — the user sees the questions and picks answers.
ParameterTypeRequiredDescription
questionsarrayYesArray of 1-4 question objects
Each question object:
FieldTypeRequiredDescription
questionstringYesThe question to ask
optionsarrayYes2-4 answer options (strings)

notify_user

Send a proactive notification to the user when something needs their attention.
ParameterTypeRequiredDescription
titlestringYesShort notification title
messagestringYesDetailed notification message
prioritystringNoPriority: low, normal, or urgent (default: normal)
action_urlstringNoURL the user can click to take action

message_agent

Send a message to another agent in the same project. Delivered asynchronously.
ParameterTypeRequiredDescription
target_agentstringYesName or UUID of the target agent
messagestringYesThe message to send
contextstringNoAdditional context to include

Calendar

Calendar tools require the agent’s Calendar feature to be enabled. They are designed for booking flows inside chat, including the interactive booking card.

calendar_check_availability

Find available meeting slots for a duration and date range.
ParameterTypeRequiredDescription
date_fromstringNoStart date or datetime to search from
date_tostringNoEnd date or datetime to search until
timezonestringNoIANA timezone for the visitor, e.g. Africa/Lagos
duration_minutesintegerNoMeeting duration
limitintegerNoMaximum slots to return (default: 12)
If this tool returns slots, the agent should show them with calendar_request_booking. It should not say no slots are available.

calendar_request_booking

Render an interactive booking card so the visitor can choose a slot. This waits for user input; it is not an approval step.
ParameterTypeRequiredDescription
titlestringNoBooking card title
slotsarrayNoAvailable slots from calendar_check_availability
timezonestringNoIANA timezone
duration_minutesintegerNoMeeting duration
attendee_namestringNoAttendee name
attendee_emailstringNoAttendee email
attendee_phonestringNoAttendee phone
selected_slotobjectNoSlot selected by the visitor through the booking card
skippedbooleanNoTrue when the visitor skips booking
After this tool returns a selected slot, call calendar_create_event when attendee details are available.

calendar_create_event

Create a confirmed calendar event. When attendee_email is provided, BoostGPT sends a booking confirmation email with an .ics file and calendar links.
ParameterTypeRequiredDescription
titlestringNoEvent title
descriptionstringNoEvent description
start_atstringNoEvent start datetime; optional when selected_slot is supplied
end_atstringNoEvent end datetime
selected_slotobjectNoSlot returned by calendar_request_booking
timezonestringNoIANA timezone
duration_minutesintegerNoMeeting duration
locationstringNoMeeting location or link
contact_idstringNoCRM contact id
attendee_namestringNoAttendee name
attendee_emailstringNoAttendee email
attendee_phonestringNoAttendee phone
notesstringNoInternal notes
metadataobjectNoAdditional metadata
send_confirmationbooleanNoSet false only when you intentionally do not want to email the attendee
Do not use notify_user as a calendar invite after calendar_create_event unless the visitor asks for a separate follow-up notification. In final answers, use the returned display_time when available because stored start_at values are UTC.

calendar_reschedule_event

Move an existing calendar event. Sends an updated confirmation email with an .ics attachment when attendee email exists on the event.
ParameterTypeRequiredDescription
event_idstringYesCalendar event id
start_atstringNoNew start datetime
end_atstringNoNew end datetime
selected_slotobjectNoSelected replacement slot
timezonestringNoIANA timezone
send_confirmationbooleanNoSet false only when you intentionally do not want to email the attendee

calendar_cancel_event

Cancel an existing calendar event. Sends a cancellation email with a cancellation .ics attachment when attendee email exists on the event.
ParameterTypeRequiredDescription
event_idstringYesCalendar event id
reasonstringNoCancellation reason
send_confirmationbooleanNoSet false only when you intentionally do not want to email the attendee

CRM

CRM tools require the agent’s CRM feature to be enabled. The exact CRM tool set may include contact, deal, status, pipeline, note, and follow-up task actions depending on the agent configuration. Common CRM tools include:
ToolApprovalDescription
create_crm_contactAutoCapture a contact from chat details such as name, email, phone, source, and status
update_crm_contactAutoUpdate contact details as the conversation develops
create_crm_dealAutoCreate a deal in a pipeline after qualified intent
create_crm_taskAutoCreate a follow-up task tied to a contact or deal
Use CRM tools before booking when you need a persistent lead record, and update the record after booking if the meeting changes the lead status.

Boost Platform Tools

Boost platform tools are internal tools used by the official dashboard assistant, Boost. They are user-scoped and intended for configuring the authenticated user’s BoostGPT projects and agents. Read-only tools:
ToolDescription
boost_list_agentsList manageable projects and agents
boost_get_agent_setup_statusInspect launch readiness across hosted page, widget, CRM, calendar, workflows, workspace, and connectors
boost_check_plan_limitsCheck plan gates and usage limits
boost_list_connectorsList predefined connectors and enabled connector state
boost_run_test_conversationPrepare a hosted test URL and prompt
boost_export_agent_templateExport a sanitized .boostgpt template
Change-making tools require confirmation because they can alter user-facing behavior:
ToolDescription
boost_create_agent_from_use_caseCreate an agent from a business outcome
boost_update_agent_settingsPatch agent switches such as CRM, calendar, workspace, publishing, reasoning, or chat mode
boost_apply_crm_templateApply a CRM template and enable CRM
boost_apply_workflow_templateCreate a workflow from a template
boost_publish_agentPublish or unpublish the hosted agent page
boost_configure_widgetEnable or disable the website widget
boost_configure_calendarEnable calendar booking and save booking defaults
boost_configure_agent_emailConfigure the agent email channel
boost_add_predefined_connectorAdd a predefined connector to an agent
boost_create_workspace_fileCreate or overwrite a workspace file
boost_publish_workspacePublish or unpublish a workspace URL
If a Boost platform tool is unavailable in a given environment, Boost should give exact UI steps instead of pretending it acted.

Automation

schedule_task

Create a recurring scheduled task that runs automatically.
ParameterTypeRequiredDescription
namestringYesShort descriptive name for the task
promptstringYesThe instruction to execute on each run
schedule_typestringNoFrequency: interval, daily, weekly, or once (default: interval)
schedule_configobjectNoSchedule details (varies by schedule_type)
descriptionstringNoLonger description of the task
timezonestringNoTimezone for schedule (default: UTC)
max_executionsintegerNoMaximum number of runs (null = unlimited)

Code Execution

command

Run code or shell commands in an isolated sandbox environment. The sandbox has access to all workspace files under /workspace and has network access. Requires both Workspace and Code Sandbox to be enabled on the agent.
ParameterTypeRequiredDescription
commandstringYesThe shell command to run (e.g., python main.py, npm install express, node server.js, curl https://example.com)
The sandbox auto-detects the runtime (Python or Node.js) based on workspace file extensions. Files modified by the command are automatically synced back to the workspace. Each execution has a 30-second timeout.

Utility

think

Reason aloud and plan next steps without producing any user-visible output. Useful for the agent to organize its thoughts before acting.
ParameterTypeRequiredDescription
thoughtstringYesReasoning, analysis, or planning thoughts

Next Steps

Workspaces

File tools details and REST API

User Memory

Memory management REST API

Chat API

Send messages and receive AI responses

Heartbeat API

Autonomous agent schedules