Find answers to common questions about Axle CLI
Axle is a modular CLI platform for running Python microtools from a shared tools directory. It provides:
Think of it as a platform where anyone can add tools without modifying core code.
The easiest way is to install directly from GitHub:
pip install git+https://github.com/skpaul82/axle-cli.git
For manual installation, see the documentation.
You can run tools by number or by name:
# Run by number
axle run 1 "your prompt"
# Run by name
axle run seo_keyword_checker "your prompt"
Use axle list to see all available tools with their numbers.
Axle comes with built-in tools:
Plus, you can easily add your own tools!
Before ANY tool executes, Axle scans it for:
If issues are found, execution is blocked based on your security policy.
There are three security policies:
Set the policy with:
export AXLE_SECURITY_POLICY=strict
Automatic code review is a feature that helps you maintain high code quality by checking your tools for common issues before they reach CI/CD pipelines. It runs automatically during tool execution and can fix many issues for you.
The system checks for:
Issues are categorized by severity: 🔴 CRITICAL, 🟠 HIGH, 🟡 MEDIUM, 🟢 LOW
Axle provides several code review commands:
# Review a specific tool
axle review my_tool
# Review all tools
axle review --all
# Review with automatic fixes
axle review my_tool --fix
# Preview changes without applying
axle review my_tool --fix --dry-run
Code review also runs automatically during tool execution in "auto" mode (the default).
Auto-fixable issues:
Manual fixes needed:
The system includes safety features like backup creation and validation to ensure fixes don't break your code.
You can configure code review behavior using environment variables:
# When to run code review: always, auto (default), or never
export AXLE_CODE_REVIEW=auto
# Automatically fix issues without asking
export AXLE_AUTO_FIX=false
# Enable detailed output
export AXLE_CODE_REVIEW_VERBOSE=false
Recommended settings:
AXLE_AUTO_FIX=true for seamless experienceAXLE_CODE_REVIEW=auto to review changed filesAXLE_CODE_REVIEW=always to fail on any issuesAdding tools is easy!
axle path04_my_tool.py)def get_description() -> str:
return "Brief description"
def main(prompt: str) -> None:
# Your logic here
pass
axle run my_tool "prompt"That's it! No changes to core code required.
Absolutely! Simply share your Python file and others can drop it into their tools directory. We also welcome contributions to the main repository. Check out our community page for details on contributing.
Here are a few tools source:
You can mix and match tools from different sources seamlessly.
Use the built-in update command:
# Update to latest version
axle update
# Check for updates without installing
axle update --check
The update command will:
Safety features:
The update command includes safety checks and will stop if you have uncommitted changes:
⚠️ You have uncommitted changes:
M CLAUDE.md
M README.md
M axle/axle.py
💡 Please commit or stash your changes before updating.
git stash
axle update
git stash pop
This prevents accidental data loss. You can either:
The tool metadata system helps you discover and explore tools without reading source code. It extracts and caches information about:
Common commands:
axle metadata scan # Build metadata cache
axle metadata list # List all tools
axle metadata show # Show tool details
axle metadata search # Search tools
Use the metadata search command to find tools by name, function, or description:
# Search by keyword
axle metadata search keyword
# Search by function name
axle metadata search extract
# Search by description
axle metadata search "meta tag"
The search matches against:
Example output:
🔍 Search Results for 'keyword':
📋 01_seo_keyword_checker
Analyze text for SEO keyword density...
Matching functions: extract_keywords
Starting with v1.2.0, security validation and code review are disabled by default for better performance:
To enable them:
# Per-run (one time)
axle run 1 "prompt" --security --code-review
# Persistent (all runs)
axle security --enable
axle review --enable
Configuration storage: Settings are stored in ~/.axle/config.json for persistent configuration across sessions.
Use the enable commands to persistently activate security and code review:
# Enable security validation by default
axle security --enable
# Enable code review by default
axle review --enable
# Check current configuration
axle security --show
axle review --show
Configuration file:
# View config file
cat ~/.axle/config.json
# Example output:
{
"security": "enabled",
"code_review": "enabled"
}
To disable, use the disable commands: axle security --disable or axle review --disable.
Try these solutions:
pip show axle-clipython -m axle.axle listpip install -e .Your tool was blocked by the security policy. You'll see a message explaining why. Options:
export AXLE_SECURITY_POLICY=permissiveAXLE_SECURITY_POLICY=permissive axle run toolWe welcome contributions! Here's how:
See the contributing guide for details.
Depending on how you want to contribute:
Everyone can contribute! Even reporting bugs helps immensely.
Try different search terms or select a different category.