Skip to main content
Skills and Tools are two distinct capability systems in PraisonAI that serve different purposes and operate at different levels.
The user submits a task; skills supply knowledge while tools execute concrete actions.

Quick Start

1

Skills: Load Knowledge

Create a skill to provide specialized knowledge to agents:
2

Tools: Execute Actions

Create a tool to perform runtime actions:

Conceptual Difference

Comparison Table

DimensionSkillsTools
ArtifactSKILL.md filePython function
PurposeProvide knowledge & contextExecute actions
InvocationLoad into system promptLLM function calls
TimingLoad time (progressive)Runtime on-demand
CostToken usageExecution time
StorageFile systemCode registry
SafetyStatic allowlistsRuntime validation
Portabilityagentskills.io standardFramework-specific

Skills: Declarative Knowledge Packages

Skills are SKILL.md files that provide specialized knowledge and instructions to agents without bloating the system prompt.

Skills in PraisonAI

SKILL.md Format


Tools: Executable Functions

Tools are Python functions that agents can call to perform actions and interact with external systems.

Tools in PraisonAI

Tool Categories

CategoryExamplesPurpose
Searchtavily, web_search, exaFind information
File Operationsread_file, write_file, list_filesManage files
Code Analysisast_grep_search, execute_codeAnalyze code
Data Processingpandas_tools, csv_toolsProcess data
Systemshell_tools, execute_commandSystem operations
Screen Controlcomputer_screenshot, computer_click, computer_typeTake screenshots and drive mouse/keyboard

PraisonAI Integration Paths

Discovery & Invocation

FeatureSkillsTools
DiscoveryFile system scanImport registry
Activation/skill slash commandsAgent assignment
ExecutionPrompt injectionFunction calls
Controlallowed-tools hintstool_choice parameter

CLI Commands


When to Use Each

Use Skills When:

  • Providing specialized knowledge
  • Sharing best practices
  • Template instructions
  • Domain-specific guidance
  • Static reference material

Use Tools When:

  • Executing dynamic actions
  • Interacting with APIs
  • Processing data
  • File operations
  • Real-time information

Best Practices

Write skills that provide specific, actionable knowledge. Use progressive disclosure - put essential info in SKILL.md, detailed references in references/ folder.
Create tools with clear interfaces, proper error handling, and type hints. Each tool should have a single responsibility.
Skills: Don’t put secrets in SKILL.md files. Use environment variables for sensitive data.Tools: Always validate inputs and sanitize outputs. Use approval decorators for high-risk operations.

Agent Skills

Load declarative knowledge from SKILL.md files

Toolsets

Add callable Python functions as agent tools