将任意本地文件或目录上传至 PinMe(pinme.eth.limo),立即获得一个简短、可分享的 URL(*.pinit.eth.limo)。支持所有文件类型:HTML 页面、PDF、图片、音频、视频、文档,甚至完整目录。PinMe 使用公共 IPFS —— 上传的内容默认公开可访问;请勿上传内部/私有/含凭证的数据。AppKey 持久化存储于 `~/.local/share/pinme-share/appkey.json`(符合 XDG 规范),可通过环境变量 `PINME_APPKEY` 或命令行参
pinme-share.
功能概述
pinme-share.是一项面向实际任务的技能,主要用于Upload any file 或目录 to PinMe(公共IPFS)并获取一个短的:.pinit.是一项面向实际任务的技能,主要用于Version:1.0.1.;License: MIT. 授权: Evan Song ^ github.com/ Songhonglei.;
核心要点
- Repositor: htt;
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
使用与执行
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
结果检查与注意事项
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
pinme-share
将任意文件或目录上传至 PinMe(公共 IPFS),并获取一个简短的 *.pinit.eth.limo URL。
- 版本: 1.0.1
- 许可证: MIT
- 作者: Evan Song · github.com/Songhonglei
- 代码仓库: https://github.com/Songhonglei/html-tool-suite
⚠️ 公共数据警告 — 首次使用前请务必阅读
- PinMe 运行于公共 IPFS 上:您上传的任何内容均为全球可读;任何人只要持有该 URL 即可访问。
- CID 实质上不可删除:IPFS 节点会缓存内容;
--rm仅从您的账户中移除 pin 引用 — 第三方节点上的副本仍可能持续存在。 - 🚫 切勿上传:公司内部文档 / 客户数据 / 凭据 / 私人信息 / 尚未发布的材料。
- 每次执行
upload均会在 stderr 输出一条警告;在自动化流程中可通过传入--yes跳过该提示。
🔑 首次配置 — 设置您的 AppKey
PinMe v2.x 需要身份认证。AppKey 查找顺序如下:
PINME_APPKEY环境变量(最高优先级,不持久化 — 适用于 CI 或一次性任务)pinmeCLI 已配置 AppKey → 直接复用- 本地文件
~/.local/share/pinme-share/appkey.json存在 → 自动应用于pinmeCLI - 否则 → 脚本返回
error_type: auth_required,并提示用户前往 https://pinme.eth.limo 获取 AppKey
配置 / 替换 AppKey(持久化)
python3 scripts/upload_to_pinme.py --set-appkey
该命令将密钥同时写入 pinme CLI 和 ~/.local/share/pinme-share/appkey.json(权限为 0600)。
该本地文件绝不会被提交至 Git 或随发布的 skill bundle 分发。
自定义存储路径(高级)
export PINME_APPKEY_FILE=/custom/path/appkey.json # 或自动适配 $XDG_DATA_HOME: export XDG_DATA_HOME=$HOME/my-xdg-data # → $HOME/my-xdg-data/pinme-share/appkey.json
查看当前配置
python3 scripts/upload_to_pinme.py --show-appkey
📤 上传
# 任意单个文件 python3 scripts/upload_to_pinme.py /path/to/file.html python3 scripts/upload_to_pinme.py /path/to/report.pdf # 整个目录(无需 index.html) python3 scripts/upload_to_pinme.py /path/to/dist/ # 添加 --verbose 查看大文件上传进度 python3 scripts/upload_to_pinme.py /path/to/video.mp4 --verbose # 跳过隐私警告(适用于 cron / 自动化流水线) python3 scripts/upload_to_pinme.py /path/to/file.html --yes # 自定义超时时间(默认:60s + 每 MB 2s,下限 180s,上限 1800s) python3 scripts/upload_to_pinme.py /path/to/big.zip --timeout 900
输出格式 — stdout 最后一行始终为单个 JSON 对象:
{"success": true, "url": "https://xxxx.pinit.eth.limo", "size_bytes": 12345, "timeout_used": 180}
📜 浏览上传历史
python3 scripts/upload_to_pinme.py --list python3 scripts/upload_to_pinme.py --list --limit 5 python3 scripts/upload_to_pinme.py --list --raw # 不解析;直接返回原始 CLI 文本
结构化输出示例:
{"success": true, "count": 3, "history": [
{"name": "foo.html", "cid": "Qm...", "url": "https://xxxx.pinit.eth.limo", "size": "12 KB", "time": "2026-05-21 09:30"}
]}
🗑️ 取消 pin(从您的 pin 列表中移除)
python3 scripts/upload_to_pinme.py --rm
⚠️ 公共 IPFS 上的副本无法真正删除;此操作仅从您的账户中移除 pin 引用。
💰 钱包 / 配额
python3 scripts/upload_to_pinme.py --wallet
PinMe 提供免费配额(约 500 次上传)。超出后可能产生费用 — 详见 https://pinme.eth.limo 控制台。
🚪 注销
python3 scripts/upload_to_pinme.py --logout
清除 pinme CLI 的会话状态及 ~/.local/share/pinme-share/appkey.json 文件。
🧰 stdout / stderr 接口约定
| 流 | 用途 |
|---|---|
| stdout | 最后一行始终为且仅为一个 JSON 对象 — 可安全通过管道传递给 jq |
| stderr | 进度信息、隐私警告、调试输出 — 绝不影响 JSON 解析 |
示例:
URL=$(python3 scripts/upload_to_pinme.py /tmp/foo.html | jq -r '.url')
📋 错误码参考(用于 agent 路由)
error_type |
触发条件 | 建议处理方式 |
|---|---|---|
auth_required |
缺失 AppKey / pinme 报告登录失败 |
提示用户运行 --set-appkey 或前往获取 AppKey |
invalid_path |
路径不存在 / 不可读 | 请用户确认路径是否正确 |
oversize |
单个文件 > 200 MB 或目录 > 1 GB | 拆分文件或改用其他存储方案 |
cli_missing |
pinme CLI 安装失败 / 未找到 |
检查 Node.js / 网络连接 / npm 权限 |
network |
超时 / DNS 失败 / 连接被拒 / 5xx 错误 | 重试或验证出站网络连通性 |
quota_exceeded |
PinMe 配额耗尽 / 钱包余额不足 | 通过 PinMe 控制台充值或切换账户 |
url_not_found |
上传成功但未能解析出有效 URL | 检查原始输出(CLI 格式可能已变更) |
usage |
未指定任何操作 | 显示 --help 并询问用户意图 |
invalid_appkey |
传入 --set-appkey 的 AppKey 格式异常(长度 < 20) |
请用户重新核对并输入 |
conflicting_args |
同时传入多个互斥操作(例如同时指定路径和 --list) |
请分别调用,每次仅执行一个操作 |
unknown |
兜底错误类型 | error 字段包含原始 stderr 内容 |
退出码说明:0 表示成功 / 1 表示通用失败 / 2 表示结构化失败(需解析 JSON 中的 error_type)。
📦 约束条件与依赖项
- 单个文件 ≤ 200 MB,目录 ≤ 1 GB(PinMe 服务端限制)
- 仅支持静态文件(不支持服务端处理)
- Node.js ≥ 16.13.0(自动校验)
pinmeCLI(如缺失则自动通过npm install -g pinme安装)- PinMe AppKey(必需)
🛠️ 粘贴内容工作流
若用户直接在聊天窗口中粘贴 HTML 内容,agent 应执行以下步骤:
- 将其写入
/tmp/pinme_user_.html - 以该路径调用本脚本
- 返回生成的 URL
🔧 环境变量
| 变量 | 用途 | 示例 |
|---|---|---|
PINME_APPKEY |
一次性 / CI 覆盖(最高优先级,不持久化) | export PINME_APPKEY=abc123... |
PINME_APPKEY_FILE |
覆盖 AppKey 存储路径 | export PINME_APPKEY_FILE=$HOME/.config/pinme/key.json |
XDG_DATA_HOME |
用于确定默认存储路径(遵循 XDG Base Directory 规范) | export XDG_DATA_HOME=$HOME/my-xdg-data |
默认存储路径:${XDG_DATA_HOME:-$HOME/.local/share}/pinme-share/appkey.json。
🪪 致谢
- 感谢 PinMe 提供 IPFS 固定服务及
pinmeCLI 工具 - 本工具属于 html-tool-suite 项目的一部分 —— 专注于 HTML 生成、发布与共享能力
更新日志
v1.0.1
- 修复(静默失败):当同时传入多个互斥操作(例如
+--list)时,不再静默执行首个匹配分支并丢弃其余参数,而是返回conflicting_args错误。 - 修复(安全性):当使用
--set-appkey传入过短的密钥时,不再将密钥片段(key[:20])回显至错误输出;现仅报告密钥长度。
v1.0.0
- 首次开源发布(符合 XDG 规范的存储路径、英文文档、全英文 CLI)。
热门AI工具
相关专题
本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。
0
2026.11.12
本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。
0
2026.11.12
本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。
0
2026.11.12
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章