Skip to main content
The tools command helps you discover, explore, and manage the tools available for your agents.
The same resolver chain used by praisonai tools list also powers praisonai tools doctor, praisonai tools discover, --rewrite-tools, --expand-tools, and praisonai research --tools. Any name shown by praisonai tools list is accepted by all of them. As of PR #2642, the diagnostics commands walk the full resolver source list instead of a TOOL_MAPPINGS subset. See Tool Resolution for the full resolution order.

Quick Start

List available tools example
Discover and Manage Available Tools Trust All Tools

Commands

List Tools

Each tool is attributed to one of four source categories β€” builtin, local, external, or registered β€” reflecting the exact source that resolve() would use at run time. The same resolver-backed enumeration now powers praisonai tools doctor and template dependency checking β€” see Tools Doctor and Strict Tools Mode.
Filter by source using --source (or -s):
Expected Output:
Source categories:

Get Tool Info

Expected Output:
Returns: List of dictionaries with keys: title, url, snippet
Expected Output:
Add --verbose (or -v) to include the description column:
When nothing matches, the command prints No tools matching '<query>'. followed by the hint Run 'praisonai tools list' to see all available tools.

Validate Tools

Check that a tool is discoverable and will resolve correctly:
Validation uses the same discovery path as list and info, so a tool that passes validation will also be visible in tools list and resolvable at agent run time.

Diagnostics

praisonai tools doctor and praisonai tools discover surface every tool the resolver would find β€” builtin + local + external + registered β€” rather than just the TOOL_MAPPINGS subset. As of PR #2642, the doctor reports the full ~151 built-in tools, and discover also lists entry-point plugin tools.
The same source-category table (builtin / local / external / registered) applies to tools doctor and tools discover output. See Tools Doctor and Tools Discover.

Help

Expected Output:

Tool Categories

Search Tools

  • internet_search
  • wikipedia_search
  • arxiv_search
  • tavily_search
  • duckduckgo

File Tools

  • read_file
  • write_file
  • list_files
  • csv_read
  • json_read
  • yaml_read

Code Tools

  • execute_code
  • shell_command
  • calculator
  • python_repl

Data Tools

  • pandas_query
  • duckdb_query
  • yfinance
  • excel_read

Web Tools

  • crawl4ai
  • trafilatura
  • newspaper
  • spider

API Tools

  • rest_api
  • graphql
  • webhook

Using Tools with Prompts

Built-in Tools by Name

Tools from File

Example tools.py:

Tool Dependencies

Some tools require additional packages: Install missing dependencies:

Creating Custom Tools

Use with CLI:

Best Practices

Use praisonai tools info <name> to understand a tool’s parameters before using it.

Right Tool

Choose tools appropriate for the task

Dependencies

Install required packages before using tools

Custom Tools

Create custom tools for domain-specific needs

Documentation

Add docstrings to custom tools for better agent understanding
When a --tools name doesn’t resolve, PraisonAI prints Unknown tool 'X'. Run 'praisonai tools list' to see available tools. If a local tools.py is present but PRAISONAI_ALLOW_LOCAL_TOOLS is unset, it prints Skipped 'X': set PRAISONAI_ALLOW_LOCAL_TOOLS=true to load local tools.