⌨️ PostBot CLI 工具
PostBot CLI 是 PostBot 内容同步助手 的官方命令行工具,一款命令行下的多平台内容同步、任务流程管理效率工具。支持内容快捷同步发布、批量同步发布、任务管理、工作流编排,无缝对接 PostBot / Postar 平台。
NOTE
当前为快速迭代开发版,适用于开发者与 CI/CD 场景。
如需浏览器扩展或桌面端,请访问 PostBot 内容同步助手。
✨ 适用场景
- 通过命令行快速同步发布单篇内容。
- 从 JSON 文件批量同步发布内容到多个平台。
- 在 CI/CD 流水线中集成内容发布与工作流编排。
- 查询已绑定的媒体账号、支持的平台与任务执行状态。
- 通过
--app参数在 PostBot(国内版)与 Postar(国际版)之间切换。
📦 安装
bash
# 全局安装
npm install -g @gitcoffee/postbot-cli
# 或使用 pnpm
pnpm add -g @gitcoffee/postbot-cli验证安装
bash
postbot --version🚀 快速开始
bash
# 1. 配置开发者 OAuth2 凭证
postbot config --client-id <id> --client-secret <secret>
# 2. 登录
postbot login
# 3. 查看当前用户
postbot whoami
# 4. 一键发布内容
postbot publish --name "我的文章" --type article --content-file ./content.json⚙️ 配置
配置文件默认位于 ~/.config/postbot-cli/config.json,用于存储开发者凭证、登录 token、IAM 地址等信息。
bash
# 查看当前配置
postbot config --show
# 设置 OAuth2 凭证
postbot config --client-id <id> --client-secret <secret>
# 自定义 IAM 地址
postbot config --iam-base-url https://custom-iam.example.com📋 命令参考
认证
| 命令 | 说明 |
|---|---|
postbot login | 交互式登录(支持代理认证与直接认证) |
postbot register | 注册新账号 |
postbot logout | 退出登录 |
postbot whoami | 查看当前用户信息 |
postbot config | 查看或设置开发者 OAuth2 凭证 |
同步发布
| 命令 | 说明 |
|---|---|
postbot publish | 快速同步发布(交互式或参数式) |
postbot batch-publish --file <json> | 从 JSON 文件批量同步发布 |
postbot status <taskId> | 查询任务同步发布状态 |
工作流
| 命令 | 说明 |
|---|---|
postbot workflow status <executionId> | 查询工作流执行状态 |
postbot workflow retry <executionId> | 重试失败的工作流 |
任务管理
| 命令 | 说明 |
|---|---|
postbot task list | 列出任务 |
postbot task get <taskId> | 查看任务详情 |
查询
| 命令 | 说明 |
|---|---|
postbot platform list | 列出支持的媒体平台 |
postbot account list | 列出已绑定的媒体账号 |
postbot client list | 列出已注册的客户端 |
🌐 应用模式切换
所有命令支持 --app 参数切换应用模式:
bash
# 国际版 (Postar)
postbot --app postar login
# 指定平台同步发布
postbot --app postbot publish --name "Hello" --type article --content-file ./content.json🤖 自动化集成示例
GitHub Actions 自动发布
yaml
name: Publish to PostBot
on:
push:
branches: [main]
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm install -g @gitcoffee/postbot-cli
- run: postbot config --client-id ${{ secrets.POSTBOT_CLIENT_ID }} --client-secret ${{ secrets.POSTBOT_CLIENT_SECRET }}
- run: postbot login
- run: postbot publish --name "Release Note" --type article --content-file ./release.json批量发布 JSON 文件
bash
postbot batch-publish --file ./posts.jsonposts.json 示例:
json
[
{
"name": "文章一",
"type": "article",
"contentFile": "./article-1.json"
},
{
"name": "文章二",
"type": "article",
"contentFile": "./article-2.json"
}
]🏗️ 开发
如需本地开发 CLI:
bash
# 克隆仓库
git clone https://github.com/gitcoffee-os/postbot-cli.git
cd postbot-cli
# 安装依赖
pnpm install
# 开发运行
pnpm dev
# 构建
pnpm build
# 以 postbot 模式运行
pnpm postbot
# 以 postar 模式运行
pnpm postar架构说明
apps/postbot-cli/ CLI 应用(commander + inquirer + chalk)
packages/sdk/postbot-sdk/ 通用 SDK(HTTP 客户端、认证、领域 API、类型)CLI 依赖的 API 调用能力全部由 @gitcoffee/postbot-sdk 提供,该 SDK 同样可被其他前端应用(如 PostBot.app、Postar.app)复用。
❓ 常见问题
配置文件存储在哪里?
默认位于 ~/.config/postbot-cli/config.json,包含开发者凭证与登录 token。请勿将 token 提交到代码仓库。
如何切换国内版与国际版?
在所有命令前添加 --app postbot 或 --app postar,例如:
bash
postbot --app postar account list如何查询发布是否成功?
使用 postbot status <taskId> 查询任务同步发布状态,或使用 postbot task get <taskId> 查看任务详情。