Postiz-cheap:自托管社媒排期工具
开源可自托管的社交媒体排期应用,用内容日历统一管理 8 个平台的发帖、AI 文案与发布。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v0.2.7
详细介绍
项目简介
Postiz-cheap 是一个可自托管的社交媒体排期应用,面向希望用一块共享日历管理多平台发帖、并掌控自己部署环境的创作者。它把发帖计划、平台定制文案、AI 写作、账号连接与发布整合在一个 Next.js 应用中,采用 MIT 许可证。
项目方明确说明:Postiz-cheap 是独立项目,与 Postiz 无关联。仓库只包含应用本体,不包含托管服务;自托管时服务器与数据库由自己承担,而 AI 写作、账号连接、媒体处理和实际发布依赖 MuAPI,可能产生用量费用。
主要功能
- 日历统一排期:在一个日历中查看已排期、处理中、已发布和失败的帖子,可从日历空位直接创建帖子,也能编辑或删除已有帖子。
- 多平台组合撰写:选择已连接的平台,添加文本与媒体,并设置各平台专属选项,如隐私、标签、视频参数等。
- 发布前预览:在多个平台预览之间切换,并检查配置的文本长度限制后再提交。
- AI 起草:按所选平台与语气生成标题、正文和标签,生成结果可在编辑器中继续修改。
- 对话式助手:在 AI agent 工作区中头脑风暴选题、打磨文案,追问时会带上最近的对话上下文。
- 账号连接与管理:发起服务商授权流程,查看已连接账号,并可重命名或断开连接。
- 已发布视频回看:通过画廊查找并下载渠道返回的已成功发布视频。
- 自托管:应用与排期记录保存在自己控制的基础设施上;登录、AI 与社交发布仍需外部服务。
支持渠道
集成界面目前列出以下渠道,可用格式与选项取决于所连接账号与服务商当前的 API 支持:
| 渠道 | 撰写格式 | 配置文本上限 | 附加选项 |
|---|---|---|---|
| YouTube | 视频 | 5,000 字符 | 标签、分类、隐私、儿童内容设置 |
| TikTok | 视频 | 2,200 字符 | 隐私、合拍与拼接控制 |
| 图片或视频 | 2,200 字符 | Reels 与图片发布 | |
| X | 图片或视频 | 280 字符 | 正文与标签 |
| 图片或视频 | 63,206 字符 | 主页发布与隐私 | |
| 图片或视频 | 3,000 字符 | 个人或主页发布 | |
| Threads | 图片或视频 | 500 字符 | 正文与标签 |
| 图片或视频 | 500 字符 | Pin 标题、描述与目标链接 |
以上为应用默认值,社交网络与服务商 API 可能追加账号、媒体或政策方面的限制。
安装与使用
环境要求
- Node.js 与 npm
- 一个 PostgreSQL 数据库
- 用于 Google 登录的 Google OAuth 客户端
- 用于 AI 生成、社交账号连接与发布的 MuAPI API key
- 仅在需要启用积分结算时准备 Stripe 凭据
1. 克隆并安装
git clone https://github.com/Anil-matcha/postiz-cheap.git
cd postiz-cheap
npm install
cp .env.example .env
2. 配置环境变量
在 .env 中填写所需配置。DATABASE_URL、NEXTAUTH_URL、NEXTAUTH_SECRET、GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET 为必需项;MUAPIAPP_API_KEY 在需要集成时必填,且必须只放在服务端,不要暴露为 NEXT_PUBLIC_ 变量。DIRECT_URL 供 Prisma 命令使用,建议配置。Stripe 相关变量(STRIPE_SECRET_KEY、NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY、STRIPE_WEBHOOK_SECRET)仅在启用积分结算时需要。
可用以下命令生成随机的 NEXTAUTH_SECRET:
openssl rand -base64 32
3. 配置 Google OAuth
在 Google Cloud 创建 OAuth 客户端,并添加回调地址:
http://localhost:3000/api/auth/callback/google
生产环境在 HTTPS 域名上使用相同路径,并把 NEXTAUTH_URL 设为该域名。
4. 准备数据库并启动
npx prisma db push
npm run dev
打开 http://localhost:3000。缺少 MuAPI 凭据时,AI 与真实社交集成都无法工作。
典型流程
- 用 Google 登录工作室。
- 进入 Integrations,通过 MuAPI 连接要使用的社交账号。
- 在日历或编辑器中创建帖子,选择一个或多个平台,附加媒体并填写平台专属文案与选项。
- 可选:用 AI 写作生成初稿,或向社交营销 agent 索取创意。
- 预览帖子后立即发布,或设定未来时间。
- 回到日历查看状态,成功发布的视频也会出现在画廊中。
常用开发命令
| 命令 | 说明 |
|---|---|
npm run dev |
启动 Next.js 开发服务器 |
npm run lint |
运行 ESLint |
npm run build |
生成 Prisma 客户端并构建生产版本 |
npm run start |
运行生产构建 |
注意事项
- 仓库不包含常驻的调度器或 worker。到期的排期帖子是在已认证的
GET /api/posts路由运行时被触发,并同时轮询服务商状态。若要依赖无人值守的定时发布,需要自行添加并运维可靠的后台任务。 - 认证配置中包含一个用于评估的 demo 凭据提供方,它不校验密码。对外公开部署前请移除或替换;登录页本身展示的是 Google 登录。
- 生产部署时把
NEXTAUTH_URL设为公开 HTTPS 地址并配置对应的 Google 回调;使用生产级 PostgreSQL,应用流量用连接池 URL,Prisma 结构操作用直连 URL;密钥放入部署平台的密钥管理服务,泄露过的密钥要轮换。 - 若启用 Stripe 结算,需配置
/api/stripe/webhook端点并设置STRIPE_WEBHOOK_SECRET。积分套餐在src/lib/config.js中设置。 - AI 生成的文案只是起点,提交前请自行核对准确性、品牌调性、版权与各平台发布规则。
- 上线前备份 PostgreSQL,并确认服务商权限、媒体要求、隐私设置和速率限制。
本作品整理自 GitHub 开源项目 SamurAIGPT/postiz-cheap,原作者 @SamurAIGPT,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.2.7当前版本
v0.2.7 提供 muapi-cli 安装方式:可通过 npm 或 pip 全局安装,并提供 macOS Apple Silicon、Linux x86_64/ARM64、Windows x86_64 的手动二进制包。
评论