通过 JSON‑RPC 2.0 与 aria2 下载管理器交互,使用自然语言命令管理下载、查询状态并控制任务。适用于 aria2、下载管理或种子操作。
此技能是否有效是一项面向实际任务的技能,主要用于此技能允许您通过自然语言命令控制 aria2 下载管理器;下载文件( HTTP/ HTTP/ FTP/ Magnet/ Torrent/ Metalink).;
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
该技能支持您通过自然语言指令控制 aria2 下载管理器:
⚠️ 关键提示:切勿手动构造 JSON-RPC 请求。
✅ 务必使用 scripts/ 目录下的 Python 脚本。
⚠️ 重要提示:请使用 python3 命令,而非 python(尤其在 macOS 上,python 符号链接通常不存在)
步骤 1:检查配置状态
执行任何 aria2 命令前,务必先验证配置是否就绪:
python3 scripts/config_loader.py test
步骤 2:初始化配置(如需)
若连接测试失败,请引导用户完成配置初始化:
# 推荐方式:用户级配置(可抵御技能更新影响) python3 scripts/config_loader.py init --user # 替代方式:本地配置(项目专属) python3 scripts/config_loader.py init --local
随后指导用户编辑生成的配置文件,填入其 aria2 服务端详细信息。
步骤 3:执行用户指令
配置就绪后,即可执行用户请求的 aria2 操作。
用户:“下载 http://example.com/file.zip”
您执行:
# 1. 检查配置 python3 scripts/config_loader.py test
若测试通过:
# 2. 执行下载命令 python3 scripts/rpc_client.py aria2.addUri '["http://example.com/file.zip"]'
您响应:“✓ 下载已启动!GID: 2089b05ecca3d829”
若测试失败:
配置尚未就绪。请按以下步骤初始化: 1. 运行:python3 scripts/config_loader.py init --user 2. 编辑 ~/.config/aria2-skill/config.json,填入您的 aria2 服务端信息 3. 运行:python3 scripts/config_loader.py test(用于验证)
详细执行说明请参阅:
aria2 方法参考请参阅:
| 用户意图 | 命令示例 |
|---|---|
| 下载单个文件 | python3 scripts/rpc_client.py aria2.addUri '["http://example.com/file.zip"]' |
| 查询任务状态 | python3 scripts/rpc_client.py aria2.tellStatus |
| 列出当前活跃下载任务 | python3 scripts/rpc_client.py aria2.tellActive |
| 列出已停止下载任务 | python3 scripts/rpc_client.py aria2.tellStopped 0 100 |
| 暂停下载任务 | python3 scripts/rpc_client.py aria2.pause |
| 恢复下载任务 | python3 scripts/rpc_client.py aria2.unpause |
| 显示全局统计信息 | python3 scripts/rpc_client.py aria2.getGlobalStat |
| 显示版本信息 | python3 scripts/rpc_client.py aria2.getVersion |
| 清空下载结果 | python3 scripts/rpc_client.py aria2.purgeDownloadResult |
更多用法及完整命令列表,请查阅 execution-guide.md。
scripts/rpc_client.py —— RPC 调用主接口scripts/examples/list-downloads.py —— 格式化输出下载任务列表scripts/examples/pause-all.py —— 暂停全部下载任务scripts/examples/add-torrent.py —— 添加 Torrent 下载任务scripts/examples/monitor-downloads.py —— 实时监控下载状态scripts/examples/set-options.py —— 修改 aria2 配置选项脚本会按以下优先级顺序自动加载配置(由高到低):
环境变量(最高优先级 —— 临时覆盖)
ARIA2_RPC_HOST、ARIA2_RPC_PORT、ARIA2_RPC_PATH 等技能目录配置(项目专属配置)
skills/aria2-json-rpc/config.jsonnpx skills add 更新技能时该配置将丢失用户配置目录(全局回退配置,安全更新)🆕
~/.config/aria2-skill/config.jsonnpx skills add 更新技能时可保留默认值(localhost:6800)
localhost)6800)null)。标准 aria2 可设为 /jsonrpc;反向代理场景下可指定自定义路径null)false)30000)重要提示:始终使用 Python 脚本管理配置,切勿直接执行 shell 命令。
步骤 1:检查当前配置状态
python3 scripts/config_loader.py show
步骤 2:如有需要,初始化配置
用户配置(推荐 —— 抵御更新影响):
python3 scripts/config_loader.py init --user
本地配置(项目专属):
python3 scripts/config_loader.py init --local
步骤 3:引导用户编辑配置文件
初始化完成后,工具将输出配置文件路径。请指导用户编辑该文件,并填入 aria2 服务端信息(host、port、secret 等)。
步骤 4:验证配置
python3 scripts/config_loader.py test
配置文件内容示例:
{
"host": "localhost",
"port": 6800,
"secret": "your-secret-token",
"secure": false,
"timeout": 30000
}
可用于配置管理的 Python 脚本:
# 查看当前配置及其来源 python3 scripts/config_loader.py show # 初始化用户配置(推荐 —— 安全更新) python3 scripts/config_loader.py init --user # 初始化本地配置(项目专属) python3 scripts/config_loader.py init --local # 测试与 aria2 服务端的连接 python3 scripts/config_loader.py test
AI Agent 配置建立工作流:
python3 scripts/config_loader.py showpython3 scripts/config_loader.py init --userpython3 scripts/config_loader.py test反向代理配置:
对于类似 https://example.com:443/jsonrpc 的反向代理场景,配置文件应如下所示:
{
"host": "example.com",
"port": 443,
"path": "/jsonrpc",
"secret": "your-secret-token",
"secure": true
}
环境变量(仅作参考):
配置亦可通过环境变量覆盖:
ARIA2_RPC_HOST:主机名ARIA2_RPC_PORT:端口号ARIA2_RPC_PATH:URL 路径ARIA2_RPC_SECRET:密钥令牌ARIA2_RPC_SECURE:取值为 "true" 或 "false"注意:配置管理请统一使用 Python 脚本。环境变量仅在此处提供参考,不作为推荐方式。
python3(非 python)python3 scripts/config_loader.py testconfig_loader.py init、config_loader.py show 等相关专题
热门下载
相关下载
精品课程
共39课时 | 5.3万人学习
共101课时 | 20.6万人学习
共39课时 | 4.7万人学习