Tootbot

🐘 联邦宇宙一键发布,定时多媒可控

social-media榜 #31

自动化发布内容到 Mastodon 去中心化社交平台,支持定时发布、可见性控制、多语言及媒体附件。

收藏
11k
安装
2.7k
版本
0.3.1
CLS 安全性认证2026-06-23
点击查看完整报告 >

使用说明

核心用法

Mastodon Publisher 是一款基于 Node.js 的 CLI 工具技能,用于将文本、媒体内容发布到 Mastodon 联邦宇宙社交平台。通过封装 toobot.js 脚本,提供标准化的命令行接口完成状态发布。

主要功能:

  • 纯文本状态发布:--status 参数指定内容
  • 可见性控制:支持 public/private/unlisted/direct 四级可见性
  • 定时发布:--scheduled-at 接受 RFC3339 格式时间戳
  • 多语言支持:--language 指定 ISO 639-1 语言代码
  • 媒体附件:支持单/多图片/视频文件通过 --media-path 附加
  • 引用控制:--quote-approval-policy 限制谁可引用该帖子

使用模式:

  • 纯文本发布:--status 为必需参数
  • 纯媒体发布:可省略 --status,但必需至少一个 --media-path
  • 组合发布:文本+媒体+元数据完整控制

显著优点

1. 联邦宇宙原生:直接对接 Mastodon API,支持去中心化社交生态
2. 发布控制精细: visibility、quote policy、language 等元数据完整暴露

3. 定时自动化:支持未来时间戳预约发布,适合内容运营排期

4. 媒体友好:多附件支持,适配 Mastodon 媒体丰富的社交特性

潜在缺点与局限

  • 依赖外部运行时:硬性依赖 Node.js 环境,需预先安装配置
  • 无交互式向导:纯 CLI 参数驱动,无图形化或对话式引导
  • 错误处理未详述:文档未说明 API 失败、认证失败、媒体上传超时的处理机制
  • 认证配置隐含:未在文档中说明 Access Token 的获取与配置方式
  • 平台局限:仅支持 Mastodon,不兼容 Bluesky、Twitter/X 等其他平台

适合人群

  • 个人博主/创作者:希望自动化 Mastodon 内容发布的用户
  • 社区运营者:需要定时推送公告、活动的组织账号管理者
  • 开发者/极客:熟悉 Node.js 环境,偏好 CLI 工具链的技术用户
  • 去中心化倡导者:主动选择联邦宇宙平台而非中心化社交媒体的群体

常规风险

  • 认证信息泄露:Mastodon Access Token 若配置不当可能暴露
  • 内容误发风险:定时发布参数错误可能导致不合时宜的内容上线
  • 媒体版权问题:自动上传他人版权素材存在法律风险
  • API 限流:高频调用可能触发 Mastodon 实例的速率限制
  • 实例可用性:依赖特定 Mastodon 实例的在线状态,存在单点故障可能

安全解读

核心用法

mastodon-publisher 是一款专为 Mastodon 联邦宇宙设计的 CLI 内容发布工具。用户通过 Node.js 脚本调用 toobot.js,可执行以下操作:

  • 基础发文:发布纯文本动态,支持 --status 参数指定内容
  • 隐私控制:通过 --visibility 设置公开/私密/不公开/私信四种可见性级别
  • 定时发布:使用 --scheduled-at 配合 RFC3339 时间格式实现定时发文
  • 媒体附件:支持单条或多张图片/视频上传(--media-path),允许纯媒体无文本发文
  • 引用策略:通过 --quote-approval-policy 控制谁可以引用回复你的动态
  • 多语言支持:ISO 639-1 语言代码标识内容语言

使用示例

node scripts/toobot.js new-status \
  --status "Hello, Fediverse!" \
  --visibility private \
  --scheduled-at "2030-01-02T14:15:16.000Z" \
  --media-path /path/to/photo.jpg

显著优点

1. 功能完整:覆盖 Mastodon API 核心发文能力,包括定时任务、媒体上传、隐私粒度控制
2. 联邦宇宙原生:专为 Mastodon 协议设计,非 Twitter API 兼容层,体验更纯粹

3. 零外部依赖风险:所有依赖内联打包,无运行时 npm install 风险,部署即运行

4. 传输安全:强制 HTTPS TLS 1.2+ 加密通信,无数据明文传输

5. 数据最小化:仅访问功能必需的实例 URL 和 Access Token,无追踪或遥测

潜在缺点与局限性

1. 可审计性受限:代码经 bundler 压缩打包(329KB 单文件),人工审计困难;缺乏 source map 和原始源代码
2. 无依赖声明文件:缺少 package.json/lock 文件,无法使用常规工具审计依赖树

3. License 缺失:未包含开源许可证,法律使用边界不明确

4. Node 环境依赖:需预装 Node.js,对纯 Bun/Deno 用户不够友好

5. 功能单一:专注发文场景,无阅读时间线、搜索、互动等完整客户端功能

适合人群

  • 自动化运维人员:需要将 Mastodon 集成到 CI/CD 或定时任务工作流
  • 内容创作者:希望预先编排内容、批量定时发布的博主/运营者
  • 隐私敏感用户:需要精细控制每条动态可见性和引用权限的高级用户
  • 联邦宇宙开发者:在构建 Mastodon 相关工具时需要可靠的原子化发文能力

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| Token 泄露 | Access Token 以环境变量形式存在,需妥善保管 | 使用密钥管理服务,避免硬编码或日志打印 |
| 实例信任 | 依赖用户自选的 Mastodon 实例,实例安全性不由本 Skill 保证 | 选择知名实例或自建服务器 |
| 定时任务失效 | 依赖本地系统时间,时区配置错误可能导致定时偏差 | 统一使用 UTC 时间并校验 RFC3339 格式 |
| 代码不可审计 | 打包代码存在潜在未公开逻辑的理论风险 | 在 sandbox 环境先行验证,关注后续开源计划 |

Tootbot 内容

scripts文件夹
手动下载zip · 87.0 kB
tootbot.jstext/javascript
请选择文件