Skip to main content
The package ships a set of function-calling tools you can add to an agent without writing any code. Each one is a container-managed class. Import it, add it to getTools (or pass it per request), and the agent can call it.
Each tool is imported from its own subpath, @talosjs/ai/tools/<ToolName>, so you only pull in the SDK a tool needs when you use it. API keys are read from the environment (via AppEnv) and clients are created lazily on first call, so registering a tool never requires its key. ExaSearchTool returns the most relevant pages with title, URL, published date, author, relevance score, and highlighted snippets. The model can bias the search by type (auto, fast, deep, …), category (e.g. research paper, news), or include/exclude specific domains. FirecrawlSearchTool returns pages, news, and images with URL, title, description, and (for news and images) date and image URL. The model can restrict the sources, filter domains, or localize by location. BrightDataSearchTool returns the top Google organic results with title, URL, description, and rank, optionally localized by country and language.

Knowledge sources

WikipediaSearchTool returns the most relevant articles with title, a plain-text snippet, word count, and URL. The model can pick a language edition (e.g. en, fr). No API key is required. PubMedSearchTool accepts PubMed query syntax (field tags, boolean operators) and returns articles with PMID, title, authors, journal, publication date, DOI, and PubMed URL, sorted by relevance or publication date. A key raises the rate limit but is optional.

Linear

Tools for reading and managing Linear issues. They use the configured @talosjs/linear client. LinearSearchTool returns each matching issue’s identifier, title, status, assignee, and labels. The create and update tools accept a description, assignee, project, priority (0=none, 1=urgent, 2=high, 3=normal, 4=low), workflow state, and labels, and return the resulting issue.
LinearIssueDeleteTool is irreversible. Its description tells the model to call it only when a user has clearly asked to delete an issue. Pair it with a tool onBeforeCall hook or a permission check if you expose it in an agent that acts autonomously.

Combining tools

An agent can hold any mix of built-in and custom tools, and the model picks the right one per step:
To build your own, see Tools.