Repository navigation
English
Breaking changes
- Go SDK: Replace removed
XxxDTOtypes andToXxxDTOconverters with the public entity models, which now serialize directly. ReplaceAddBookmark/RemoveBookmarkwithAddArtworkBookmark/RemoveArtworkBookmark;SetAIArtworkVisibilityis removed. ReplaceArtwork.Kind/RawKindandArtworkKindwithArtwork.ContentTypeandContentType(illust,manga,ugoira); unknown upstream values are preserved. Empty tag translations and absent profile/cover images are omitted from JSON. (#170, #271) - CLI JSON and NDJSON: Content lists use
{records, pagination}with string IDs. Artwork records usetype:"artwork"; select subtypes throughcontent_type.recommended --type allgroups results intoartworks,novels, andusers. Pipeline diagnostics dropkind:"record_error". Update scripts consuming these outputs. (#271) - MCP and FANBOX selectors: MCP entity selectors change from
kindtotype.pixiv_recommendedacceptstype=all|artwork|novel|user, with artwork subtypes selected throughcontent_type=all|illust|manga, and returns entity partitions. Changefanbox_creators.kindtorelationand CLIfanbox creators --kindto--relation. (#271) - Account JSON: Auth summaries remove
has_token,premium_status_checked_at,warning, andeligible; account-list and bundle-import results remove redundantdefault_user_id. An emptyauth list --jsonreturns"accounts":[]. Update consumers relying on these fields. (#271) - Gallery settings: Remove
mcp_gallery_cache_ttlandmcp_gallery_concurrency. Cache TTL is fixed at 15 minutes; metadata and image read concurrency are each fixed at 4. Remove obsolete settings fromconfig.toml; leftover undeclared keys are ignored when loading configuration. (#168, #185) - Remove the pointless
pixiv --licensescommand and bundled third-party license notices. Remove invocations of this flag from scripts. (#234)
Added
- Add
pixiv whoami [--json]to show the current local Pixiv account and cached Premium status without network access or token rotation. JSON output matches anauth list --jsonaccount entry. (#260) - Add the HTTP MCP
pixiv_show_artworktool for displaying a single artwork. The Gallery adapts to phones and embedded panels and adds cube-style page turns. (#167)
Changed
- Unify terminal output with readable account identities, status labels, single-line lists, and detail cards. Empty results print
No results.to stderr and exit successfully.fanbox downloadkeeps stdout empty on success. Scripts parsing text should use--jsonor--ndjsonwhere supported, applying the migration changes above. (#269, #270) - Compact stderr logs with timestamps, operations, levels, and source locations. JSON logs include command-failure records; debug logs add SDK error origins and safe network details, including OAuth token-exchange failures. Default text logging keeps one error line. (#258, #261)
Fixed
- Preserve MCP artwork filters when a bookmark strategy is explicitly selected without bookmark bounds. Apply bookmark bounds and artwork filters together before pagination. CLI and MCP
best_effortsearches reportpartialeven when candidates are empty or exhausted. (#165) - Treat early downstream pipe closure as success across automatically selected NDJSON commands, including series, bookmarks, comments, and reverse search. (#246)
- Escape upstream titles, names, comments, and tags in terminal output. Explain authentication, argument, HTTP, timeout, and cancellation failures with a next step; validate local enum arguments before opening an account. FANBOX creator and post commands report output-write failures. (#268)
Full Changelog: v1.2.1...v1.3.0
简体中文
破坏性变更
- Go SDK: 删除
XxxDTO类型及ToXxxDTO转换函数,改用可直接序列化的公开实体模型。AddBookmark/RemoveBookmark改用AddArtworkBookmark/RemoveArtworkBookmark;移除SetAIArtworkVisibility。Artwork.Kind/RawKind与ArtworkKind改用Artwork.ContentType和ContentType(illust、manga、ugoira),未知上游值原样保留。JSON 省略空标签译名及缺失的头像、封面字段。(#170、#271) - CLI JSON 与 NDJSON: 内容列表统一为
{records, pagination},ID 使用字符串。作品记录统一使用type:"artwork",子类型通过content_type筛选。recommended --type all按artworks、novels、users分区返回。管道诊断删除kind:"record_error"。读取这些输出的脚本需要同步调整。(#271) - MCP 与 FANBOX 选择参数: MCP 实体选择参数由
kind改为type。pixiv_recommended接受type=all|artwork|novel|user,作品子类型通过content_type=all|illust|manga选择,结果按实体分区。fanbox_creators.kind改为relation,CLIfanbox creators --kind改为--relation。(#271) - 账号 JSON: 认证摘要删除
has_token、premium_status_checked_at、warning、eligible;账号列表与 bundle 导入结果删除重复的default_user_id。空账号列表的auth list --json输出为"accounts":[]。依赖上述字段的调用方需要同步调整。(#271) - Gallery 配置: 移除
mcp_gallery_cache_ttl与mcp_gallery_concurrency,缓存有效期固定为 15 分钟,元数据与图片的读取并发上限各固定为 4。请从config.toml删除旧设置;加载配置时会忽略残留的未声明键。(#168、#185) - 移除无意义的
pixiv --licenses命令及随包分发的第三方许可证汇总;请删除脚本中对该参数的调用。(#234)
新增
- 新增
pixiv whoami [--json],直接显示当前本地 Pixiv 账号与缓存的会员状态,无需联网或轮换 token;JSON 输出与auth list --json的账号项一致。(#260) - HTTP MCP 新增
pixiv_show_artwork工具,用于展示单个作品;Gallery 适配手机与嵌入式面板,并增加立方体翻页效果。(#167)
变更
- 终端输出统一使用易读的账号身份、状态标签、单行列表与详情卡片。空结果向 stderr 输出
No results.并成功退出;fanbox download成功时 stdout 保持为空。解析文本的脚本请优先使用命令支持的--json或--ndjson,并按上方说明迁移机器输出。(#269、#270) - 精简 stderr 日志,显示时间、操作、级别与源码位置。JSON 日志包含命令失败记录;debug 日志补充 SDK 错误创建位置与安全的网络细节,覆盖 OAuth 换 token 失败。默认文本日志只保留一行错误。(#258、#261)
修复
- MCP 搜索显式指定收藏策略、未指定收藏数区间时,仍保留作品筛选条件;收藏数区间与作品筛选在分页前共同生效。CLI 与 MCP 的
best_effort搜索即使候选为空或已耗尽,也会报告partial。(#165) - 系列、收藏、评论、反向搜图等自动选择 NDJSON 的命令,在下游提前关闭管道时正常退出。(#246)
- 转义终端输出中的上游标题、用户名、评论与标签;登录、参数、HTTP、超时与取消错误提供可读说明及下一步,本地枚举参数先于打开账号校验。FANBOX 创作者与帖子命令会报告输出写入失败。(#268)
完整变更: v1.2.1...v1.3.0