Quick Start
How It Works
Tools Guides
Learn how to create, configure, debug, and manage tools in PraisonAI.Create Custom Tools
Build your own tools from scratch
Assign Tools to Templates
Configure tools for templates
Debug Tools
Troubleshoot tool issues
Different Ways to Create
Explore all tool creation methods
Remote Tools from GitHub
Use tools from GitHub and remote URLs
Quick Reference
| Task | Command |
|---|---|
| List tools | praisonai tools list |
| Add package | praisonai tools add pandas |
| Add file | praisonai tools add ./my_tools.py |
| Add from GitHub | praisonai tools add github:user/repo |
| Add source | praisonai tools add-sources <source> |
| Get info | praisonai tools info <name> |
| Search | praisonai tools search <query> |
| Doctor | praisonai tools doctor |
| Resolve | praisonai tools resolve <name> |
| Discover | praisonai tools discover |
| Show sources | praisonai tools show-sources |
Best Practices
Decorate functions with @tool
Decorate functions with @tool
@tool registers a function as agent-callable and reads its type hints and docstring to build the schema — the fastest path to a working tool.Type-hint every parameter and return
Type-hint every parameter and return
The model relies on type hints to call tools correctly. Include them, plus a JSON-serializable return type.
Verify with tools doctor before shipping
Verify with tools doctor before shipping
praisonai tools doctor walks the full resolver chain, so it confirms a tool is reachable before an agent tries to call it.
