Built-in Tools
TeamWeb AI ships with a comprehensive set of built-in tools organised into categories. These tools are available to all assistants by default and can be toggled on or off per assistant from the assistant’s Tools tab.
Content & Canvas
| Tool | Description |
|---|---|
| show | Display a visual card on the canvas with a title, markdown body, and optional image |
| save_content | Save a deliverable (blog post, report, file, etc.) with a shareable URL |
| get_deliverable | Retrieve the full content of an existing deliverable |
| list_deliverables | List deliverables filtered by status or content type |
| search_deliverables | Search deliverable titles and bodies |
Knowledge & Research
| Tool | Description |
|---|---|
| search_knowledge | Search the project’s knowledge base using semantic search |
| read_code_file | Read the full source code of an indexed repository file |
| add_knowledge | Add a new fact or URL to the knowledge base |
| web_search | Search the web for current information |
Notes
| Tool | Description |
|---|---|
| save_note | Save a persistent note for future reference. Set about_user to save a personal memory about the person you’re speaking with. |
| get_notes | Retrieve previously saved notes, optionally filtered by query or tags. Set about_user to retrieve only memories about the current person. |
| update_note | Update an existing note’s title, content, or tags |
| delete_note | Delete a note |
User Memories
Notes support an optional per-user scoping mode. When an assistant calls save_note or get_notes with about_user: true, the note is tied to the specific person the assistant is currently speaking with — whether that’s a registered user or an external contact.
This lets assistants build up personal memory about individuals across conversations. For example, an assistant might remember a customer’s preferred communication style, project context, or previous requests.
How it works:
- Saving —
save_notewithabout_user: truecreates a note scoped to the current person. If a note with the same title already exists for that person, the content is updated instead of creating a duplicate. - Retrieving —
get_noteswithabout_user: truereturns only notes about the current person. Without the flag (orabout_user: false), only general assistant notes are returned. - Auto-injection — The 5 most recently updated user memories are automatically included in the assistant’s system prompt at the start of each conversation turn, so the assistant doesn’t need to explicitly retrieve them.
- Promotion — When a contact is promoted to a registered user, their memories are automatically transferred to the new user account.
User memories can be viewed and managed from the Notes tab on the assistant detail page (admin), the staff chat memories view, or the contact detail page.
Collaboration
| Tool | Description |
|---|---|
| delegate_task | Delegate a task to another assistant with full tool access |
| proofread | Proofread text with feedback and revision suggestions |
| send_email | Send an email to the current user |
Technical Details — Delegation
How delegation works — The delegate_task tool creates a full child conversation where the target assistant runs its own independent agent loop with its own personality, tools, skills, and knowledge. The delegating assistant provides a task description, the target assistant executes it autonomously, and the result — including a summary of all tools used and the final response — is returned to the calling assistant.
Safety guardrails — Delegation has multiple layers of protection against runaway execution:
- Max depth of 3 — Assistant A can delegate to B, B to C, C to D, but no further. This prevents unbounded chains.
- Cycle detection — The system tracks the full delegation chain (which assistants have been involved). If A delegates to B and B tries to delegate back to A, it is blocked.
- Self-delegation blocked — An assistant cannot delegate to itself.
- Project isolation — An assistant can only delegate to other assistants in the same project.
- Scaled iteration limits — Deeper delegations get progressively fewer LLM iterations to prevent resource exhaustion. A top-level agent gets up to 100 iterations, but a delegation at depth 1 gets 20, depth 2 gets 10, and depth 3 gets the minimum of 10.
Project Management
| Tool | Description |
|---|---|
| list_projects | List available projects and their integrations |
| select_project | Link a project to the current conversation |
| get_project_state | Read shared key-value state for the project |
| update_project_state | Update shared project state |
Tasks & Scheduling
| Tool | Description |
|---|---|
| create_task | Create a reusable task definition |
| list_tasks | List task definitions |
| update_task | Update a task definition |
| cancel_task | Deactivate a task |
| list_schedules | List task schedules |
| create_schedule | Create a cron schedule for a task |
| update_schedule | Update a schedule |
Conversations
| Tool | Description |
|---|---|
| list_conversations | List past conversations in the project |
| get_conversation_summary | Get a summary of a past conversation |
Code Execution
| Tool | Description |
|---|---|
| execute_code | Run code in a sandboxed Docker container. Supports Python, JavaScript, Java, C++, Go, and R. Optional library installation for Python. |
Skills
| Tool | Description |
|---|---|
| activate_skill | Activate a skill for the current conversation |
| read_skill_resource | Read a file from an activated skill |