picgo-plugin-immich-up
v1.0.2
Published
PicList/PicGo plugin for uploading images to Immich self-hosted photo management
Maintainers
Readme
picgo-plugin-immich-up
PicList/PicGo 插件,用于将图片上传到 Immich 自托管照片管理系统。
功能
- 上传图片到 Immich 服务器
- 自动创建分享链接,用于图库缩略图显示
- 上传到回收站中的重复文件时自动恢复
- 上传后自动加入指定相册
- 图库删除时同步删除 Immich 资源(通过 PicList 脚本系统)
安装
通过 PicList/PicGo 插件管理器
- 打开 PicList 设置 -> 插件
- 搜索
immich - 点击安装
通过命令行
npm install picgo-plugin-immich-up配置
| 配置项 | 类型 | 必填 | 说明 |
|-----------|---------|-----|---------------------|
| url | string | 是 | Immich 服务器地址(如 https://immich.example.com) |
| token | string | 是 | API Key(在 Immich Account Settings -> API Keys 中创建) |
| albumId | string | 否 | 目标相册 ID(填写后上传的图片会自动加入该相册) |
使用
- 安装插件并重启 PicList
- 在插件设置中配置 Immich 服务器地址和 API Key
- 选择 Immich 为默认图床
- 上传图片,图片会自动同步到 Immich
工作原理
- 计算文件 SHA-1 校验和(用于 Immich 去重)
- 通过
POST /api/assets上传文件 - 如果文件在回收站中(返回
duplicate),自动恢复 - 创建分享链接获取缩略图 key
- 设置
imgUrl为带认证的缩略图 URL,用于 PicList 图库显示 - 如果配置了相册 ID,将资产加入相册
删除
PicList 的内置云删除不支持自定义图床类型。本插件通过 PicList 脚本系统实现删除:
安装后,删除功能自动生效。当在 PicList 图库中删除图片时,脚本会调用 Immich API 同步删除云端资源。
脚本位置:~/.piclist/scripts/onGalleryRemove/immich-delete.js
开发
# 打包
npm pack
# 安装到 PicList 测试
cd ~/Library/Application\ Support/piclist
npm install /path/to/picgo-plugin-immich-up-1.0.0.tgz
# 重启 PicList许可证
MIT
