Swarms CLI Reference¶
The Swarms CLI is a comprehensive command-line interface for managing and executing Swarms agents and multi-agent architectures. This reference documents all available commands, arguments, and features.
Table of Contents¶
Installation¶
The CLI is included with the Swarms package installation:
Basic Usage¶
Commands Reference¶
Core Commands¶
| Command | Description | Required Arguments | 
|---|---|---|
onboarding | 
Start interactive onboarding process | None | 
help | 
Display help message | None | 
get-api-key | 
Open API key portal in browser | None | 
check-login | 
Verify login status and initialize cache | None | 
run-agents | 
Execute agents from YAML configuration | --yaml-file | 
load-markdown | 
Load agents from markdown files | --markdown-path | 
agent | 
Create and run custom agent | --name, --description, --system-prompt, --task | 
auto-upgrade | 
Update Swarms to latest version | None | 
book-call | 
Schedule strategy session | None | 
autoswarm | 
Generate and execute autonomous swarm | --task, --model | 
setup-check | 
Run comprehensive environment setup check | None | 
Global Arguments¶
All commands support these global options:
| Argument | Type | Default | Description | 
|---|---|---|---|
--verbose | 
bool | 
False | 
Enable verbose output | 
--help, -h | 
bool | 
False | 
Show help message | 
Command-Specific Arguments¶
run-agents Command¶
Execute agents from YAML configuration files.
| Argument | Type | Default | Required | Description | 
|---|---|---|---|---|
--yaml-file | 
str | 
"agents.yaml" | 
No | Path to YAML configuration file | 
Example:
load-markdown Command¶
Load agents from markdown files with YAML frontmatter.
| Argument | Type | Default | Required | Description | 
|---|---|---|---|---|
--markdown-path | 
str | 
None | 
Yes | Path to markdown file or directory | 
--concurrent | 
bool | 
True | 
No | Enable concurrent processing for multiple files | 
Example:
agent Command¶
Create and run a custom agent with specified parameters.
Required Arguments¶
| Argument | Type | Description | 
|---|---|---|
--name | 
str | 
Name of the custom agent | 
--description | 
str | 
Description of the custom agent | 
--system-prompt | 
str | 
System prompt for the custom agent | 
--task | 
str | 
Task for the custom agent to execute | 
Optional Arguments¶
| Argument | Type | Default | Description | 
|---|---|---|---|
--model-name | 
str | 
"gpt-4" | 
Model name for the custom agent | 
--temperature | 
float | 
None | 
Temperature setting (0.0-2.0) | 
--max-loops | 
int | 
None | 
Maximum number of loops for the agent | 
--auto-generate-prompt | 
bool | 
False | 
Enable auto-generation of prompts | 
--dynamic-temperature-enabled | 
bool | 
False | 
Enable dynamic temperature adjustment | 
--dynamic-context-window | 
bool | 
False | 
Enable dynamic context window | 
--output-type | 
str | 
None | 
Output type (e.g., 'str', 'json') | 
--verbose | 
bool | 
False | 
Enable verbose mode for the agent | 
--streaming-on | 
bool | 
False | 
Enable streaming mode for the agent | 
--context-length | 
int | 
None | 
Context length for the agent | 
--retry-attempts | 
int | 
None | 
Number of retry attempts for the agent | 
--return-step-meta | 
bool | 
False | 
Return step metadata from the agent | 
--dashboard | 
bool | 
False | 
Enable dashboard for the agent | 
--autosave | 
bool | 
False | 
Enable autosave for the agent | 
--saved-state-path | 
str | 
None | 
Path for saving agent state | 
--user-name | 
str | 
None | 
Username for the agent | 
--mcp-url | 
str | 
None | 
MCP URL for the agent | 
Example:
swarms agent \
  --name "Trading Agent" \
  --description "Advanced trading agent for market analysis" \
  --system-prompt "You are an expert trader..." \
  --task "Analyze market trends for AAPL" \
  --model-name "gpt-4" \
  --temperature 0.1 \
  --max-loops 5
autoswarm Command¶
Generate and execute an autonomous swarm configuration.
| Argument | Type | Default | Required | Description | 
|---|---|---|---|---|
--task | 
str | 
None | 
Yes | Task description for the swarm | 
--model | 
str | 
None | 
Yes | Model name to use for the swarm | 
Example:
setup-check Command¶
Run a comprehensive environment setup check to verify your Swarms installation and configuration.
Arguments:
- --verbose: Enable detailed debug output showing version detection methods
This command performs the following checks: - Python Version: Verifies Python 3.10+ compatibility - Swarms Version: Checks current version and compares with latest available - API Keys: Verifies presence of common API keys in environment variables - Dependencies: Ensures required packages are available - Environment File: Checks for .env file existence and content - Workspace Directory: Verifies WORKSPACE_DIR environment variable
Examples:
# Basic setup check
swarms setup-check
# Verbose setup check with debug information
swarms setup-check --verbose
Expected Output:
🔍 Running Swarms Environment Setup Check
┌─────────────────────────────────────────────────────────────────────────────┐
│ Environment Check Results                                                  │
├─────────┬─────────────────────────┬─────────────────────────────────────────┤
│ Status  │ Check                   │ Details                                │
├─────────┼─────────────────────────┼─────────────────────────────────────────┤
│ ✓       │ Python Version          │ Python 3.11.5                          │
│ ✓       │ Swarms Version          │ Current version: 8.1.1                 │
│ ✓       │ API Keys                │ API keys found: OPENAI_API_KEY         │
│ ✓       │ Dependencies            │ All required dependencies available     │
│ ✓       │ Environment File        │ .env file exists with 1 API key(s)     │
│ ✓       │ Workspace Directory     │ WORKSPACE_DIR is set to: /path/to/ws   │
└─────────┴─────────────────────────┴─────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ Setup Check Complete                                                       │
├─────────────────────────────────────────────────────────────────────────────┤
│ 🎉 All checks passed! Your environment is ready for Swarms.               │
└─────────────────────────────────────────────────────────────────────────────┘
Error Handling¶
The CLI provides comprehensive error handling with formatted error messages:
Error Types¶
| Error Type | Description | Resolution | 
|---|---|---|
FileNotFoundError | 
Configuration file not found | Check file path and permissions | 
ValueError | 
Invalid configuration format | Verify YAML/markdown syntax | 
SwarmCLIError | 
Custom CLI-specific errors | Check command arguments and API keys | 
API Key Error | 
Authentication issues | Verify API key configuration | 
Context Length Error | 
Model context exceeded | Reduce input size or use larger model | 
Error Display Format¶
Errors are displayed in formatted panels with:
- 
Error Title: Clear error identification
 - 
Error Message: Detailed error description
 - 
Help Text: Suggested resolution steps
 - 
Color Coding: Red borders for errors, yellow for warnings
 
Examples¶
Basic Agent Creation¶
# Create a simple agent
swarms agent \
  --name "Code Reviewer" \
  --description "AI code review assistant" \
  --system-prompt "You are an expert code reviewer..." \
  --task "Review this Python code for best practices" \
  --model-name "gpt-4" \
  --temperature 0.1
Loading Multiple Agents¶
# Load agents from markdown directory
swarms load-markdown \
  --markdown-path ./my_agents/ \
  --concurrent
Running YAML Configuration¶
Autonomous Swarm Generation¶
# Generate swarm for complex task
swarms autoswarm \
  --task "Create a comprehensive market analysis report for tech stocks" \
  --model "gpt-4"
Configuration¶
YAML Configuration Format¶
For run-agents command, use this YAML structure:
agents:
  - name: "Research Agent"
    description: "Research and analysis specialist"
    model_name: "gpt-4"
    system_prompt: "You are a research specialist..."
    temperature: 0.1
    max_loops: 3
  - name: "Analysis Agent"
    description: "Data analysis expert"
    model_name: "gpt-4"
    system_prompt: "You are a data analyst..."
    temperature: 0.2
    max_loops: 5
Markdown Configuration Format¶
For load-markdown command, use YAML frontmatter:
---
name: Research Agent
description: AI research specialist
model_name: gpt-4
temperature: 0.1
max_loops: 3
---
You are an expert research agent specializing in...
Advanced Features¶
Progress Indicators¶
The CLI provides rich progress indicators for long-running operations:
- 
Spinner Animations: Visual feedback during execution
 - 
Progress Bars: For operations with known completion states
 - 
Status Updates: Real-time operation status
 
Concurrent Processing¶
Multiple markdown files can be processed concurrently:
- 
Parallel Execution: Improves performance for large directories
 - 
Resource Management: Automatic thread management
 - 
Error Isolation: Individual file failures don't affect others
 
Auto-upgrade System¶
Automatically updates Swarms to the latest version with:
- 
Version checking
 - 
Dependency resolution
 - 
Safe update process
 
Interactive Onboarding¶
Guided setup process including:
- 
API key configuration
 - 
Environment setup
 - 
Basic agent creation
 - 
Usage examples
 
Troubleshooting¶
Common Issues¶
- API Key Not Set
 
- 
File Permissions
 - 
Model Not Available
 - 
Verify model name spelling
 - 
Check API key permissions
 - 
Ensure sufficient quota
 
Debug Mode¶
Enable verbose output for debugging:
Integration¶
CI/CD Integration¶
The CLI can be integrated into CI/CD pipelines:
# GitHub Actions example
- name: Run Swarms Agents
  run: |
    swarms run-agents --yaml-file ci_agents.yaml
Scripting¶
Use in shell scripts:
#!/bin/bash
# Run multiple agent configurations
swarms run-agents --yaml-file agents1.yaml
swarms run-agents --yaml-file agents2.yaml
Performance Considerations¶
| Consideration | Recommendation | 
|---|---|
| Concurrent Processing | Use --concurrent for multiple files | 
| Model Selection | Choose appropriate models for task complexity | 
| Context Length | Monitor and optimize input sizes | 
| Rate Limiting | Respect API provider limits | 
Security¶
| Security Aspect | Recommendation | 
|---|---|
| API Key Management | Store keys in environment variables | 
| File Permissions | Restrict access to configuration files | 
| Input Validation | CLI validates all inputs before execution | 
| Error Sanitization | Sensitive information is not exposed in errors | 
Support¶
For additional support:
| Support Option | Link | 
|---|---|
| Community | Discord | 
| Issues | GitHub Issues | 
| Strategy Sessions | Book a Call |