ClawSkills logoClawSkills

Tootbot

将内容发布到 Mastodon。当您需要发布 Mastodon 状态时使用。

介绍

# Mastodon Publisher

将内容发布到 Mastodon。用于在需要分享更新、帖子或媒体时使用。

## 用法

### 发布一条或多条状态到 Mastodon

使用 Bun 发布一条新状态到 Mastodon:

```bash bun {baseDir}/scripts/tootbot.js '{"status": "Hello, Mastodon!"}' '{"status": "Goodby, Mastodon!"}' ```

JSON 字段

| 名称 | 描述 | 类型 | 示例 | 必填 | 默认值 | | --------------------- | --------------------------------- | ----------------------------------------------- | ------------------------------------------------------ | ------ | -------- | | `status` | 状态的文本内容 | string | "Hello, World" | 是^1 | N/A | | `visibility` | 设置已发布状态的可见性 | `public` 或 `private` 或 `unlisted` 或 `direct` | "private" | 否 | "public" | | `language` | 此状态的 ISO 639-1 语言代码 | ISO-639-1 Language Code | "en" | 否 | | | `scheduledAt` | 计划发布状态的日期时间 | RFC3339 date time | "2029-02-03T15:30:45.000Z" | 否 | | | `quoteApprovalPolicy` | 设置谁被允许引用此状态 | `public` 或 `followrs` 或 `nobody` | "nobody" | 否 | "public | | `media` | 附加到状态的媒体 | `{file, description}` 对象数组 | `{"file": "/path/to/foo.png", "description" : "Foo"}` | 否^2 | |

- ^1 当存在一个或 `--media-path` 参数时,可以省略 `status` - ^2 如果省略 `status`,必须存在一个或 `media` 对象 - ^2 `media.description` 是可选的

环境变量

| 名称 | 描述 | 示例 | | ----------------------- | --------------------- | -------------------------- | | `MASTODON_URL` | 您的 Mastodon 实例 URL | `https://mastodon.social` | | `MASTODON_ACCESS_TOKEN` | 您的 Mastodon 访问令牌 | `xAyBzC` |

## 示例

- **发布一条新状态**

```bash bun {baseDir}/scripts/tootbot.js '{"status": "Hello, Mastodon"}' ```

读取输出并为用户进行总结。

- **发布一条计划状态**

```bash bun {baseDir}/scripts/tootbot.js '{"status": "Hello, future!", "scheduledAt" : "2030-02-05T13:21:34.000Z"}' ```

读取输出并为用户进行总结。

- **发布一条带有可见性、语言、引用批准策略和单个媒体附件的计划状态**

```bash bun {baseDir}/scripts/tootbot.js <<EOF { "status" : "Dorood", "visibility" : "public", "language" : "fa", "scheduledAt" : "2029-02-03T15:30:45.123456789+03:30", "quoteApprovalPolicy" : "followers", "media" : [ { "file" : "/path/to/media.png", "description" : "Nowrooz Pirooz" } ] } EOF ```

读取输出并为用户进行总结。

- **发布一条带有多个媒体附件的新状态**

```bash bun {baseDir}/scripts/tootbot.js <<EOF { "status" : "Edsger W Dijkstra", "visibility" : "public", "language" : "fa", "scheduledAt" : "2029-02-03T15:30:45.123456789+03:30", "quoteApprovalPolicy" : "followers", "media" : [ { "file" : "/path/to/dijkstra.png", "description" : "Portrait" }, { "file" : "/path/to/signature.png", "description" : "Signature" } ] } EOF ```

- **发布一条带有媒体附件且没有状态文本的新状态**

```bash bun {baseDir}/scripts/tootbot.js <<EOF { "media" : [ { "file" : "/path/to/flower-1.png", "description" : "White Rose" }, { "file" : "/path/to/flower-2.png", "description" : "Red Rose" } ] } EOF ```

## 注意事项

- 需要安装 `bun` 并使其在 PATH 中可用。

更多产品