🌐 中文 · English
「用数据驱动内容决策的跨平台创作者作战室。」
面向创作者和内容团队的多平台选题创作 SaaS。
热榜聚合 · 竞对监控 · AI 选题智囊团 · 一稿多平台改写 · 敏感词合规 · 数据看板。
作者 / Maintainer:AiyaFun
它解决什么问题 · 适合谁用 · 快速开始 · 生产部署 · 技术栈 · 许可证
创作者日常面临三个核心痛点:追什么热点、学谁的套路、怎么写得又快又合规。
烽火台把这三件事整合到一个平台里,让你不用在十几个 App 之间来回切换。
| 功能 | 说明 |
|---|---|
| 热榜聚合 | 实时汇聚微博、抖音、B站、知乎、百度、YouTube 等多平台热榜,AI 自动聚类去重 |
| 竞对监控 | 跨平台追踪竞对账号(抖音、公众号、小红书、B站、YouTube、X),自动抓取新作品并分析数据 |
| 选题引擎 | 12 位 AI 人物智囊团从不同视角评审选题,结合你的人设给出切入建议 |
| 创作工坊 | AI 辅助起稿、一稿多平台改写、人味评分、事实漂移检测,自动标注 AIGC 标识 |
| 合规检测 | 四级敏感词库 + 分平台差异规则,发布前一键扫描 |
| 浏览器插件 | 一键收藏灵感素材、自有账号数据回填、竞对作品采集 |
| 机器人集成 | 飞书群机器人推送热点通知、支持自然语言查询 |
| 数据看板 | 多账号统一数据看板,趋势分析与周报 |
- 自媒体创作者 — 个人运营多个平台账号,需要高效追热点、出内容
- 内容团队 — MCN / 品牌方的内容运营团队,需要统一监控和协作
- 新媒体运营 — 企业新媒体岗,需要竞对分析和选题数据支撑
- 独立开发者 — 想基于此项目搭建自己的内容工具
1. 登录 → 绑定创作者账号(公众号、抖音、小红书等)
2. 首页「今日概览」查看全网热榜 + 竞对动态 + AI 推荐选题
3. 点进选题 → 智囊团给出多角度切入建议
4. 进入「创作工坊」→ AI 起稿 → 一键改写成各平台风格
5. 「合规检测」扫一遍 → 确认无敏感词 → 复制发布
6. 发布后数据自动回流 → 分析表现 → 指导下一次选题
| 层 | 技术 |
|---|---|
| 前端 | Next.js 15 (App Router), React 19, TypeScript, Tailwind CSS |
| 后端 | Next.js Server Actions + API Routes (Node.js),无独立后端服务 |
| 数据库 | SQLite(开发)/ PostgreSQL + pgvector(生产),Prisma ORM |
| 任务队列 | BullMQ + Redis(生产)/ 进程内队列(开发) |
| 大模型 | 任意 OpenAI 兼容端点(DeepSeek、Qwen、MiniMax、Kimi、GLM 等) |
| 浏览器插件 | Chrome Manifest V3 |
| 容器化 | Docker Compose(Nginx + Web + Worker + Redis) |
| 认证 | 手机短信验证码 + 微信扫码登录(可选) |
| 支付 | 微信支付 Native 扫码(可选) |
git clone https://github.com/AiyaFun/beacon.git
cd beacon
npm install
cp .env.example .env
npm run setup
npm run dev打开 http://localhost:3000。开发模式下所有外部依赖都用 Mock 替代——不需要任何 API Key、不需要 Redis、不需要 PostgreSQL,开箱即用。
| 条件 | 说明 |
|---|---|
| Linux 服务器 | Ubuntu 20.04+ 或 CentOS 7+ |
| Docker & Compose v2 | 容器化部署 |
| 域名 + DNS | 指向服务器 |
| SSL 证书 | Let's Encrypt 或自有 |
| PostgreSQL 15+ | 需 pgvector 扩展(自建或托管均可) |
git clone https://github.com/AiyaFun/beacon.git
cd beacon
cp .env.production.example .env.production
chmod 600 .env.production编辑 .env.production,每个变量都有详细中文注释。必填项:
| 变量 | 用途 |
|---|---|
DATABASE_URL |
PostgreSQL 连接串,需带 ?schema=beacon |
BEACON_MASTER_KEY |
加密主密钥。生成:openssl rand -base64 48 |
BEACON_SMS_VENDOR |
短信通道,填 "volcengine" |
BEACON_VOLC_SMS_AK/SK |
火山引擎短信 AccessKey |
BEACON_DEFAULT_LLM_* |
大模型端点 + Key |
BEACON_TRUSTED_PROXY_HOPS |
反代层数,默认 "1" |
以下功能不配也不影响核心使用:
| 功能 | 变量 | 不配的效果 |
|---|---|---|
| 微信扫码登录 | BEACON_WECHAT_APPID + SECRET |
仅手机号验证码登录 |
| 微信支付 | BEACON_PAY_VENDOR="wxpay" + 商户密钥 |
付费功能不可用 |
| 竞对数据源 | BEACON_TIKHUB_KEY、BEACON_YOUTUBE_API_KEY 等 |
对应平台用 Mock 数据 |
| 向量嵌入 | BEACON_EMBED_* |
语义检索降级为关键词匹配 |
| 飞书机器人 | /settings 页面配置 |
无推送通知 |
| Sentry | BEACON_SENTRY_DSN |
仅本地日志 |
export REDIS_PASSWORD="$(openssl rand -hex 32)"
DATABASE_URL="your-connection-string" bash scripts/db-init-supabase.shdocker compose up -d --build| 服务 | 作用 |
|---|---|
| proxy | Nginx 反代(对外 80/443) |
| web | Next.js 应用(仅内部) |
| worker | BullMQ 后台任务 |
| redis | 队列 + 限流 |
docker compose ps
curl -s https://your-domain.com/api/health | jq .git pull
docker compose up -d --build redis web worker- 打开
chrome://extensions/ - 开启「开发者模式」
- 「加载已解压的扩展程序」→ 选择
extension/目录
本项目在安全方面做了多层防护:
| 防护层 | 机制 |
|---|---|
| 密钥隔离 | 所有密钥、API Key、服务器 IP 均通过 .env.production 注入,不进入源码 |
| Git 历史清洁 | 开源分支为 orphan branch,历史中不含任何密钥或内部配置 |
| Pre-commit 钩子 | 自动扫描 10 种密钥模式(SK-/AKIA/AKLT/PEM/密码赋值/连接串/AppID 等),检测到即阻止提交 |
| GitHub Push Protection | 仓库开启 GitHub 原生密钥扫描,服务端拦截已知密钥格式 |
| RLS 行级安全 | PostgreSQL 全表开启 Row Level Security,租户数据物理隔离 |
| 反代收口 | 生产环境 Web 端口仅绑定 127.0.0.1,仅 Nginx 反代对外暴露 80/443 |
| XFF 防伪造 | 反代覆写 X-Forwarded-For,防止直连绕过限流 |
| 加密存储 | 第三方凭证使用 BEACON_MASTER_KEY 对称加密存储,非明文 |
| CSRF / Cookie | 登录 Cookie 强制 Secure + HttpOnly + SameSite=Lax |
| 限流 | 短信 / API 接口均有 IP + 用户维度限流,防刷保护 |
启用 pre-commit 钩子:
git config core.hooksPath .githooks所有数据采集均遵循透明、合规的原则:
| 原则 | 实现方式 |
|---|---|
| 用户主动触发 | 所有采集行为由用户手动发起,不做后台静默抓取 |
| 官方 API 优先 | 竞对监控优先走官方接口(YouTube Data API、RSSHub),而非直接爬页面 |
| 插件知情同意 | 浏览器插件仅在用户主动点击时激活,不做隐式数据采集 |
| 节流与限速 | 内置请求频率控制,遵守各平台速率限制与服务条款 |
| 隐私政策披露 | 插件隐私政策完整披露采集、存储和传输的数据范围 |
| 数据最小化 | 仅采集公开内容的元数据,不抓取私密或登录后才可见的数据 |
| 删除权 | 用户可申请完整数据删除,注销时清除全部采集数据并加密验证 |
| 不碰凭证 | 插件绝不读取、存储或传输用户在各平台的登录凭证 |
本项目采用双重许可:
- 开源: AGPL-3.0 — 个人与非商业用途免费,需保留署名,修改须同许可开源
- 商业: 付费 SaaS、私有化售卖、闭源使用需商业授权。详见 COMMERCIAL_LICENSE.md
商业授权联系:jiangwenhuang@iyunci.cn