Syndroo文档
网站GitHub概览

Bluesky

概览

提供商 ID 为 bluesky。它通过托管入口 https://bsky.social 认证,创建会话并发布一条文本记录。正文取自共享的 content.text,没有按目标设置的发布选项。

要求

  • 一个 Bluesky 账号及其应用密码。应用密码不能创建或删除其他应用密码。
  • 已安装 Syndroo 0.7.0,运行环境为 Node.js 24.19.0 或更新版本。
  • 账号句柄,放在 identifier 字段。

未解决。Bluesky 的两个官方页面为创建应用密码给出了不同的设置路径,一个写作 Privacy and Security,另一个写作 Advanced。因此本指南不提供菜单路径。在向他人编写说明前,请先在自己的账号中确认。

凭证

字段含义机密
identifier你的句柄,例如 you.bsky.social。否
password应用密码,而不是账号密码。是

会话响应同时包含 did 和 handle。Syndroo 使用 did 作为账号身份,因为句柄可能变化。

连接

export SYNDROO_CREDENTIALS='{"identifier":"you.bsky.social","password":"APP_PASSWORD_PLACEHOLDER"}'
syndroo connect bluesky --from-env --label work

在保存任何内容前,凭证会按提供商自己的模式验证。返回的会话令牌保存在本地凭证存储中;发布时不再需要环境变量。

首次发布

{
  "type": "prepare",
  "content": { "text": "Syndroo publishes from the command line." },
  "targets": [{ "provider": "bluesky" }]
}
syndroo publish --input post.json --json
syndroo publish --input - --json < execute.json

一次调用即可创建记录。成功投递会把记录 URI 报告为远程 ID;如果记录已提交后客户端超时,结果会是 unknown,并且始终不可重试。

能力

清单只声明一种能力:text。帖子词法将文本限制为 3000 字节和 300 个字素(grapheme),提供商会在发送前强制执行。

选项

位置可接受的键
连接选项无。提供商只读取凭证字段。
发布选项无。未知键会被拒绝,而不会被忽略。
内容text,必填。

故障排除

Bluesky 会用包含错误名称的 JSON 错误响应 XRPC 调用;返回的名称如 ExpiredToken、InvalidToken 或 AccountTakedown 只能用于分类当前响应。它不是先前写入的证据,通用 400 或 5xx 也绝不能证明超时写入没有生效。

未解决。这里使用的资料没有说明 PDS 是否会拒绝过大的摄入正文。

撤销与安全

在账号设置中删除应用密码以撤销 Syndroo 保存的凭证,然后删除本地连接。在 Syndroo 中断开只会删除本地记录,绝不会替你撤销平台凭证。

syndroo connect --disconnect <connectionId>