Official plugin registry for AeroFTP AeroAgent.
| Plugin | Description | Category |
|---|---|---|
| File Hasher | Calculate MD5, SHA-1, SHA-256, SHA-512 hashes | File Management |
| CSV Stats | Analyze CSV files with row/column stats | AI Tools |
| Image Info | Extract image dimensions, format, metadata | File Management |
- Open AeroFTP > AeroTools > AI Settings > Plugins tab
- Click "Browse Plugins"
- Find a plugin and click "Install"
Plugins are downloaded, SHA-256 verified, and installed to ~/.config/aeroftp/plugins/.
A plugin is a directory with a plugin.json manifest and one or more scripts.
my-plugin/
plugin.json # Manifest (required)
run.sh # Script (bash, python, etc.)
{
"id": "my-plugin",
"name": "My Plugin",
"version": "1.0.0",
"author": "Your Name",
"enabled": true,
"tools": [
{
"name": "my_tool",
"description": "What the tool does",
"parameters": [
{
"name": "input",
"type": "string",
"description": "Input value",
"required": true
}
],
"dangerLevel": "medium",
"command": "bash run.sh"
}
],
"hooks": []
}- AeroAgent calls the tool with JSON arguments on stdin
- Your script reads stdin, processes the request
- Output JSON result to stdout
#!/bin/bash
INPUT=$(cat)
VALUE=$(echo "$INPUT" | python3 -c "import sys,json; print(json.load(sys.stdin).get('input',''))")
echo "{\"result\": \"processed: $VALUE\"}"#!/usr/bin/env python3
import json, sys
args = json.load(sys.stdin)
result = {"output": args.get("input", "")}
print(json.dumps(result))Plugins can react to events:
| Event | When |
|---|---|
file:created |
Local file created |
file:deleted |
Local file deleted |
transfer:complete |
File transfer finished |
sync:complete |
AeroSync completed |
- All plugin tools require user approval before execution
- Scripts run in an isolated environment (env cleared)
- SHA-256 integrity verification at install and execution
- 30-second timeout, 1 MB output limit
- No shell metacharacters allowed in commands
- Fork this repository
- Create a directory under
plugins/with your plugin - Add your plugin to
registry.json - Submit a pull request
Plugins in this repository are licensed under GPL-3.0 unless otherwise specified.