bdpan-storage

安装量: 228
排名: #15458

安装

npx skills add https://github.com/baidu-netdisk/bdpan-storage --skill bdpan-storage

百度网盘存储 Skill 百度网盘文件管理工具,支持上传、下载、转存、分享、列表查询。所有操作限制在 /apps/bdpan/ 目录内。 适配产品: OpenClaw, Claude Code, DuClaw, KimiClaw, Manus 等。 内测阶段,使用注意事项详见 reference/notes.md 触发规则 同时满足以下两个条件才执行: 用户明确提及百度网盘 ——消息中包含 "百度网盘"、"bdpan"、"网盘" 等关键词 操作意图明确 ——能确定是以下操作之一:上传、下载、转存、分享、列表查看、登录、注销 不满足时,不执行任何 bdpan 命令。 前置检查 每次 Skill 被触发时, 按顺序 执行以下检查: 自动更新检查 (每次触发时静默执行) Skill 更新: bash @skills/bdpan-storage/scripts/update.sh --yes CLI 更新: bdpan update 更新过程中的输出直接展示给用户,无需额外确认 如果更新失败,不阻塞后续操作,继续执行用户请求的任务 bdpan whoami 检查登录状态,未登录则引导执行 bash @skills/bdpan-storage/scripts/login.sh 验证路径合法性(禁止 ../ ,禁止 /apps/bdpan 以外的绝对路径) 确认规则 以下场景 必须先向用户确认 ,不得直接执行: 场景 说明 路径不明确 用户未指定具体文件路径或目标路径 远程路径已存在 上传目标位置有同名文件,询问:覆盖/重命名/取消 本地路径已存在 下载目标位置有同名文件,询问:覆盖/重命名/取消 操作意图模糊 "处理文件"→确认上传还是下载;"同步"→确认方向;"备份"→确认方向 确认时使用以下格式: 操作类型: [上传/下载/转存/分享/列表] 源路径: [路径] 目标路径: [路径] 请确认是否执行? 核心功能 查看状态 (whoami) bdpan whoami 显示当前登录状态、用户名和 Token 有效期。用于前置检查和用户主动查询。 列表查询 (ls) bdpan ls

根目录

bdpan ls < 目录路径

指定目录

bdpan ls --json

JSON 输出

上传 (upload) bdpan upload < 本地路径

< 远端路径

单文件上传——远端路径必须是文件名,不能以 / 结尾: bdpan upload ./report.pdf report.pdf

上传到根目录

bdpan upload ./data.csv backup/data.csv

上传到子目录

❌ bdpan upload ./report.pdf reports/ # 单文件远端路径禁止以 / 结尾

文件夹上传——本地和远端路径都带 / 或都不带: bdpan upload ./project/ project/

上传文件夹

bdpan upload ./project project

也可以都不带 /

❌ bdpan upload ./project/ project # 本地带 / 远端不带,行为不确定

步骤:确认本地路径存在 → 确认远端路径 → 用 bdpan ls 检查远端是否已存在 → 执行上传 下载 (download) 直接下载(网盘文件 → 本地) bdpan download < 远端路径

< 本地路径

bdpan download report.pdf ./report.pdf bdpan download backup/ ./backup/

文件夹需加 /

步骤:用 bdpan ls 确认云端路径存在 → 确认本地路径 → 检查本地是否已存在 → 执行下载 分享链接下载(先转存再下载到本地)

链接中含提取码

bdpan download "https://pan.baidu.com/s/1xxxxx?pwd=abcd" ./downloaded/

单独传入提取码

bdpan download "https://pan.baidu.com/s/1xxxxx" ./downloaded/ -p abcd

指定转存目录(默认转存到 /apps/bdpan/{日期}/)

bdpan download "https://pan.baidu.com/s/1xxxxx?pwd=abcd" ./downloaded/ -t my-folder 步骤:验证链接格式 → 确认有提取码 → 确认本地保存路径 → 执行下载 转存 (transfer) 将分享链接中的文件转存到自己的网盘, 不下载到本地 。

基本用法 - 转存到应用根目录 /apps/bdpan/

bdpan transfer "https://pan.baidu.com/s/1xxxxx" -p abcd

提取码在链接中

bdpan transfer "https://pan.baidu.com/s/1xxxxx?pwd=abcd"

指定目标目录

bdpan transfer "https://pan.baidu.com/s/1xxxxx" -p abcd -d my-folder/

JSON 输出

bdpan transfer "https://pan.baidu.com/s/1xxxxx" -p abcd --json 与 download 的区别: transfer :分享文件 → 自己的网盘(不下载到本地) download (分享链接模式):分享文件 → 自己的网盘 → 本地 步骤:验证链接格式 → 确认有提取码 → 确认目标目录 → 执行转存 转存成功后的展示: 只展示本次转存的文件/文件夹(而非整个目录) 显示转存数量和目标目录 如转存的是单个文件,显示具体文件名 如转存的是文件夹,显示文件夹名称和内部文件数 分享 (share) bdpan share < 远端路径

bdpan share < 路径 1

< 路径 2

多文件分享

bdpan share --json report.pdf

JSON 输出

输出格式: 分享链接创建成功! 链接: https://pan.baidu.com/s/1xxxxxxx 提取码: abcd 有效期: 7 天 注意:分享接口为付费接口,需在百度网盘开放平台购买服务。 管理功能 安装 (install.sh) bash @skills/bdpan-storage/scripts/install.sh bash @skills/bdpan-storage/scripts/install.sh --yes

非交互式安装

自动检测平台架构,下载对应的 bdpan CLI 安装器并执行安装。支持 SHA256 完整性校验。 登录 (login.sh) 必须使用登录脚本执行登录: bash @skills/bdpan-storage/scripts/login.sh 强制要求: 必须使用 @skills/bdpan-storage/scripts/login.sh 脚本 禁止 直接使用 bdpan login (即使在 GUI 环境) 禁止 直接调用 bdpan login --get-auth-url 、 bdpan login --set-code 登录脚本内置了完整的安全免责声明和授权流程,确保用户知情同意。 注销 (logout) bdpan logout 卸载 (uninstall.sh) bash @skills/bdpan-storage/scripts/uninstall.sh 完全卸载 bdpan CLI,包括: 注销登录并清除授权信息 删除配置目录( ~/.config/bdpan/ ) 删除 bdpan 二进制文件 支持 --yes 参数跳过确认(自动化场景)。 Skill 更新 (update.sh) 自动触发: 每次 Skill 被触发时,前置检查会自动执行 update.sh --yes 。通常无需手动运行。 bash @skills/bdpan-storage/scripts/update.sh

手动检查并更新 Skill

bash @skills/bdpan-storage/scripts/update.sh --check

仅检查更新,不执行

bash @skills/bdpan-storage/scripts/update.sh --yes

跳过确认,自动更新

CLI 更新 (bdpan update) 自动触发: 每次 Skill 被触发时,前置检查会自动执行 bdpan update 。通常无需手动运行。 bdpan update

手动检查并更新 CLI 到最新版本

bdpan update check

仅检查是否有新版本

bdpan update list

列出已安装的版本

bdpan update rollback

回滚到上一版本

路径规则 远端路径有三层含义,必须区分清楚: 层次 说明 格式 示例 ① 命令参数 bdpan 命令中使用的路径 相对路径(相对于 /apps/bdpan/ ) bdpan upload ./f.txt docs/f.txt ② CLI 内部 CLI 自动拼接完整 API 路径 /apps/bdpan/ + 相对路径 /apps/bdpan/docs/f.txt ③ 展示给用户 JSON 输出和用户可见的路径 中文名(CLI 自动转换) 我的应用数据/bdpan/docs/f.txt 映射关系: 我的应用数据 ↔ /apps 规则总结: 写命令时 :使用相对路径,如 docs/f.txt JSON 输出中 :路径字段会显示中文名,如 "path": "我的应用数据/bdpan/docs/f.txt" 展示给用户时 :使用中文名,如 "已上传到:我的应用数据/bdpan/docs/f.txt" 禁止: 命令中使用中文路径( 我的应用数据/bdpan/... ) 展示时暴露 API 路径( /apps/bdpan/... ) 路径包含 .. 或 ~ 绝对路径不在 /apps/bdpan 下 授权码处理 当用户在对话中发送 32 位十六进制字符串且上下文与百度网盘登录相关时,将其作为授权码处理,执行 bash @skills/bdpan-storage/scripts/login.sh --yes 。 如果上下文不明确,先向用户确认:"这是百度网盘授权码吗?" 参考文档 详细信息参见 reference 目录(遇到对应问题时查阅): 文档 何时查阅 bdpan-commands.md 需要完整命令参数、选项、JSON 输出格式时 authentication.md 登录认证流程细节、配置文件位置、Token 管理时 examples.md 需要更多使用示例(批量上传、自动备份脚本等)时 troubleshooting.md 遇到错误需要排查时

返回排行榜