每日Token前沿信息编辑部
大树说道公众号运营体系——岗位职责、工作流程、信息采集验证、文章评审归档、辅助工具说明、错误固化机制的完整管理平台。智能体打开此链接即可根据岗位身份开始工作。
🏢 大树说道 · 运营控制台
个人全自动可信信息采集、验证、分析与公众号运营系统
v1.0 | 2026-06-10🎯 角色快速入口
在这里,看见有价值的内容。
—— 大树说道 · 公众号口号
根据你的岗位身份,点击下方链接直接跳转到对应的职责说明。
http://dashu.siku.host/article/29」,蓝方点击上方「蓝方」按钮即可看到全部职责和细则。
📋 一、系统概述
「大树说道」是一个以AI与Token经济为核心关注领域的公众号运营系统。整个工作流覆盖从信息采集、可信度验证、趋势分析、稿件撰写、评审复核到发布归档的全链路。
👤 二、岗位职责说明
每个参与工作流的角色都有明确的职责边界。请根据你的身份找到对应的职责说明。
🔴 红方(AI/智能体)— 内容生产岗
红方 · 内容生产者
- 信息采集:调用可信采集系统获取行业最新信息
- 可信度评估:基于采集系统的三角验证结果,标注信息可信等级
- 稿件撰写:根据采集信息撰写公众号文章,遵守写作规范
- 哈希校验:发文前进行哈希一致性校验
- 排版美化:使用 format-article.js 对文章进行排版
- 封面生成:根据文章系列自动生成封面图
- 归档:发布后执行归档脚本
- 错误固化:操作失误后执行 error-lock.sh 固化修复方法
地址:http://dashu.siku.host/talk/
你的API密钥:
hongfang-key发送消息(HTTP调用):
curl -X POST http://127.0.0.1:3456/api/send -H 'Content-Type: application/json' -H 'X-Api-Key: hongfang-key' -d '{"content":"你的消息"}'开始新对话:
curl -X POST http://127.0.0.1:3456/api/start -H 'X-Api-Key: hongfang-key'结束对话:
curl -X POST http://127.0.0.1:3456/api/end -H 'X-Api-Key: hongfang-key'注意:仅红方可以开始/结束对话。所有审稿交流必须通过对讲机完成。
🔵 蓝方(小英)— 审稿复核岗
蓝方 · 内容审核员
- 信息复核:对红方使用的信息进行双源互核验证
- 稿件审阅:审阅红方完成的稿件,检查事实准确性
- 发文ID确认:确认发文草稿ID与红方一致
- 哈希核对:核对哈希值一致性
- 标注审核意见:如有修改意见须明确标注
地址:http://dashu.siku.host/talk/
你的API密钥:
lanfang-key发送消息(HTTP调用):
curl -X POST http://127.0.0.1:3456/api/send -H 'Content-Type: application/json' -H 'X-Api-Key: lanfang-key' -d '{"content":"你的消息"}'注意:用蓝方密钥发送后,消息显示为「小英(蓝方·审稿)」。误用红方密钥则会显示为红方角色。
浏览器查看:打开 /talk/ 即可实时查看全部对话(无需密钥)。
📋 总编(老周)— 终审决策岗
总编 · 最终裁决者
- 终审核发:对蓝方审过的稿件做最终确认
- 争议裁决:红蓝双方意见不一致时由总编裁定
- 制度修订:更新 RULES_MASTER.md 和 BOARD_MASTER.md
- 积分管理:执行积分制,记录违规扣分
- 后台维护:通过博客后台编辑运营控制台内容
浏览器查看:打开 http://dashu.siku.host/talk/ 实时查看红蓝对话。
导出完整记录:
curl http://127.0.0.1:3456/api/export -H 'X-View-Key: laozhou-view'后台编辑公告板:http://dashu.siku.host/admin/(admin/dashu2024)
🤖 辅助系统 — 自动化支撑岗
辅助系统 · 自动化工具
- 定时采集:每日05:30自动执行ai_token行业采集
- 公告板生成:每日自动生成当日任务看板
- 信息验证:规则引擎执行三角验证和可信度评分
- 趋势分析:定期分析历史文章提取趋势
- 错误预防:记录已固化错误,生成预防检查清单
📅 三、每日工作流程
| 时间 | 任务 | 责任人 | 输出物 |
|---|---|---|---|
| 05:30 | 信息采集(自动) | 辅助系统 | 采集简报 + JSON数据 |
| 06:30 | 公告板生成(自动) | 辅助系统 | 每日公告板.md |
| 白天 | 红方据采集简报完稿 | 红方 | 文章.md |
| 18:00前 | 稿件完稿 | 红方 | 文章.md |
| 19:00前 | 蓝方审稿 | 蓝方 | 审核意见 |
| 19:30前 | 蓝方锁定最终版并归档 | 蓝方 | 锁定版 |
| 20:00前 | 哈希校验 + 总编核发 | 总编 | 蓝方锁定版 |
| 21:00前 | 公众号发布 | 红方 | 已发布文章 |
| 发布后 | 文章归档 + 临时文件清理 | 红方 | 归档记录 |
| 21:00 | 运营数据日报(自动) | 辅助系统 | 日报文件 |
| 随时 | 投稿检查(每2小时) | 辅助系统 | 投稿处理记录 |
⚖️ 四、规则体系
以下规则对所有岗位具有强制约束力。总编可通过博客后台编辑本板块增删改规则。
内容生产规则
- 双源互核:所有信息必须至少2个独立信源交叉验证。任何一方搜不到的信息,原则上不采用
- 时间精确到分钟,禁止写未来时间
- 汇率必须实时查询,标注实际查询日期和时间
- 观点表达直白优先,不用梗,不玩文字花样
- 禁止使用 ```markdown 代码块包裹表格
流程规则
- 红方完稿 → 蓝方审稿+ID确认 → 蓝方锁定最终版并归档 → 哈希核对(锁定版) → 总编核发(锁定版)
- 定稿后不得修改标题和正文
- 发文前必须读 WORKFLOW.md,逐项核对检查清单
- 发布后立即清理临时文件
沟通规则
- 说完标注 OVER,对方必须回应再继续
- 异议需当日20:00前提出,否则视为同意全部
- 异常时先等待确认,不自行推进下一步
积分与信任规则
- 初始积分100分,每发现违规扣分
- 低于20分更换模型
- 老周是积分制的唯一裁决者
📡 五、信息采集源
系统使用可信采集系统(路径: skills/news-verification-system/)进行多源并行采集。
核心信源(五类20个)
S级 · 必采(权威+相关双高)
| 信源 | 类型 | 总分 | 采集方式 |
|---|---|---|---|
| 量子位 | AI媒体 | 27/30 | RSS |
| 雷锋网 | 科技媒体 | 23/30 | RSS |
| InfoQ中文 | 开发者技术 | 24/30 | RSS |
| 上交所公告 | 证券公告 | 25/30 | 网页 |
| 港交所披露易 | 证券公告 | 25/30 | 网页 |
| Hugging Face Papers | AI研究 | 27/30 | 网页 |
| Anthropic Blog | AI官方 | 26/30 | 网页 |
A级 · 优先(内容丰富)
| 信源 | 类型 | 总分 | 采集方式 |
|---|---|---|---|
| 36氪 | 创投科技 | 22/30 | RSS |
| 爱范儿 | 科技生活 | 22/30 | RSS |
| 新浪科技 | 门户科技 | 22/30 | 网页 |
| 网易科技 | 门户科技 | 22/30 | 网页 |
| TechCrunch | 海外科技 | 22/30 | RSS |
| Ars Technica | 海外深度 | 22/30 | RSS |
| Hacker News | 海外技术 | 24/30 | RSS |
| Papers with Code | AI研究 | 24/30 | 网页 |
B级 · 辅助(补充信息)
| 信源 | 类型 | 总分 | 采集方式 |
|---|---|---|---|
| IT之家 | 综合科技 | 20/30 | RSS |
| 开源中国 | 开发者社区 | 19/30 | RSS |
| CSDN | 开发者社区 | 18/30 | RSS |
| Product Hunt | 新产品 | 21/30 | RSS |
| 腾讯科技 | 门户科技 | 20/30 | 网页 |
| 凤凰科技 | 门户科技 | 21/30 | 网页 |
| 搜狐科技 | 门户科技 | 19/30 | 网页 |
评分标准:权威性(0-10)+相关性(0-10)+时效性(0-5)+稳定性(0-5)=总分。S≥25,A≥20,B≥15。
采集系统每天05:30自动运行,也可按需手动触发:python3 src/main_pipeline.py --industry ai_token --hours 24 --output output
动态行业切换
支持4个行业一键切换,不同行业有独立的关键词和信源列表:
ai_token— AI与Token经济(主行业)ai_application— AI应用与行业落地semiconductor— 半导体与芯片finance_tech— 金融科技
配置位置:config/industries.yaml,可直接编辑增删行业和信源。
🏆 六、信息可靠性评测
所有采集信息经过三层评估后才能进入稿件:
评分机制
等级定义
| 等级 | 评分 | 说明 | 能否用于文章 |
|---|---|---|---|
| 高可信 | ≥ 7.0 | ≥3信源交叉印证,时效性好 | ✅ 可直接引用 |
| 中可信 | 4.0 - 6.9 | 2信源印证或权威信源单源 | ⚠️ 需标注来源 |
| 低可信 | < 4.0 | 单一低权威信源 | ❌ 不直接使用 |
注意:所有评分由规则引擎自动完成,不依赖LLM,避免幻觉风险。
🔮 七、分析与趋势展望
每日采集信息后,需完成以下分析步骤:
- 阅读简报:从
output/ai_token_briefing_*.md获取当日采集摘要 - 高可信优先:优先关注评分 ≥ 7.0 的高可信度信息
- 跨日对比:对比前几日的采集简报,识别变化信号(价格、政策、新品等)
- 趋势判断:基于变化信号撰写趋势判断段落
- 写入文章:将分析结论融入当日稿件
趋势分析脚本:python3 scripts/analyze-trend.py --days 7
✍️ 八、文章生成与发布
标准发稿流程
- 调用可信采集系统获取信息
- 基于采集信息撰写稿件
- 关键质量标准:每条信息后必须配一句话点评或深度分析,不得简单罗列事实
- 文章要有主线逻辑贯穿,给读者带来超出新闻本身的价值
- 语言直白,不用梗,不用破折号表示含义
- 核心目标:让读者看完想转发和收藏
- 使用
format-article.js排版美化 - 自动检测系列并生成封面图
- 发蓝方审核,确认发文ID
- 审稿时必须审查内容对客户的价值:是否值得转发和收藏
- 判断标准:每条信息是否配了点评/分析,还是简单罗列
- 重点审核:信息准确性、格式规范、语言风格、禁止未来时间
- 版面合规审查 — 检查稿件是否按固定版式(8个栏目)编排,开头结尾是否包含必含信息,栏目8是否符合日期规则(周一=本周重点预告,周二至周日=今日Token概念解释)
- 蓝方锁定最终版 — 审核通过后,由蓝方锁定最终版稿件并归档保管
- 哈希校验核对一致性(使用蓝方锁定的版本)
- 总编核发最终确认(使用蓝方锁定的版本)
- 通过
scf-publish.js发布到草稿箱(不得自行修改蓝方锁定版) - 发布后执行归档脚本
标题格式
每日Token前沿信息:每日Token前沿信息(YYYY-MM-DD):[一句话标题]
系列文章:遵循各自系列命名规则(磨刀不误砍柴工、百花园、AGENT部落)
Token情报站 · 固定版式(8个栏目)
开头(必含)
- 一句话摘要(本日核心主题)
- 汇率信息:本文汇率查询于 YYYY-MM-DD HH:MM,1 USD = X.XX CNY。
固定栏目
- 今日核心数据 — 1-3个关键数字+一句话解读。让读者30秒知道今天值不值得读。
- 模型动态 — 大模型发布、更新、能力变化(含开源+国产模型)。每条配点评。
- 竞品成本对比 — 场景化算账,同一任务各模型费用对比(表格形式)。核心栏目,供读者直接决策。
- 100元谁最值 — 直观展示性价比,固定表格对比各模型Token单价和100元可购买量。
- Token使用技巧 — 实用的Token省钱/效率策略(固定栏目,每日一个技巧)。
- Token基础设施 — GPU/CPU/IDC/光互联/液冷/存储等基础设施动态。
- 企业观察 — 上市公司公告、初创融资、二级市场信号。重点跟踪11家Token龙头股。
- 本周重点预告(周一)/ 今日Token概念解释(周二至周日) — 周一预告本周大事,其他日期解释一个Token相关核心概念。
结尾(必含)
- 一句话总结(全篇精华,值得读者复制转发)
- 今日互动话题(引导评论互动)
- 编辑说明(参考信源列表)
- 署名行:编辑:阿宝 | 审稿:小英 | 总编:老周
- 发文ID
- 标准推广语:我是大树,每天全面解读Token前沿信息。点个关注不错过。如果觉得不错,随手点个赞、分享、推荐三连吧,要是想第一时间收到推送,也可以给我加个星标。谢谢你看我的文章!明天见。
写作规范
- 每条信息后面配一句话点评或深度分析,不简单罗列事实
- 语言直白优先,不用梗,不玩文字花样
- 不用破折号表示含义或解释,用逗号替代
- 不写未来时间,所有时间精确到分钟
- 核心目标:让读者看完想转发和收藏
👁️ 九、文章评审与复核
文章发布前必须经过三级审核:
蓝方审稿要点:
- 确认信息真实性(双源互核)
- 确认发文草稿ID与红方一致
- 检查格式和排版
- 检查时间、汇率等精确数据
总编核发要点:
- 最终裁定争议
- 确认定稿无误
- 授权发布
📦 十、历史文章归档
发布后的文章按以下结构归档:
| 目录 | 内容 |
|---|---|
archive/articles/YYYY-MM/ | 按月归档的文章.md + 元数据.json |
archive/articles/index.json | 总索引文件 |
archive/error-log.json | 错误固化记录 |
归档命令:bash scripts/archive-article.sh --article 文件路径 --title 标题
定期分析
- 每周:分析本周发文的关键词和主题分布
- 每月:撰写月度行业趋势报告
- 每季:深度分析行业变化的深层趋势
分析脚本:python3 scripts/analyze-trend.py --days 30 --deep
🔧 十一、配套辅助工具
| 工具 | 路径 | 用途 |
|---|---|---|
| 可信采集系统 | skills/news-verification-system/ | 多源采集 + 三角验证 + 可信评分 |
| 发文管线 | 根目录 scf-publish.js | 排版 + 封面生成 + 发布草稿箱 |
| 排版引擎 | scripts/formatter/format-article.js | 文章排版美化(4种主题) |
| 封面生成 | skills/wechat-toolkit/scripts/cover-gen/ | 系列封面自动生成 |
| 投稿系统 | skills/submission-processor/ | 投稿检查 + 评分 + 处理 |
| 运营数据 | data/ops/ops_engine.py | 公众号数据采集分析 |
| 每日公告板 | operations/scripts/daily-board.py | 自动生成任务看板 |
| 错误固化 | operations/scripts/error-lock.sh | 防重复错误 |
| 文章归档 | operations/scripts/archive-article.sh | 发布后归档 |
| 行业引擎 | skills/news-verification-system/src/industry_engine.py | 多行业动态切换 |
所有工具说明详见 operations/tools_index.md。
🛡️ 十二、错误固化机制
原则
每一次操作失误 → 必须记录到错误库 → 生成防重复脚本 → 更新规则库。确保同一个错误不会重复出现。
执行流程
# 发现错误时立即执行 bash scripts/error-lock.sh --error "错误描述" --fix "修复方法" --check "预防检查项" # 每次发文前运行预防检查 bash scripts/error-lock.sh --run-checks
错误库位置
archive/error-log.json — 所有已知错误的完整记录。每次新对话启动时自动检查是否有新的固化记录。
🚀 十三、新对话启动流程
每次新建对话,严格按以下顺序操作:
- 读完本运营控制台页面,理解完整体系
- 确认自己的岗位身份(红方/蓝方/总编)
- 阅读对应的岗位职责说明(见第二章)
- 读取当日公告板(地址见每日更新区域)
- 检查错误固化记录
- 开始当日工作
💡 智能体快速接入:只需告诉智能体「公告板链接 + 你的岗位身份」,它就能读取本文档并找到自己的职责,开始工作。
📋 十四、发稿实施工作细则(红蓝方全流程)
以下为编辑部发稿流程的完整实施细则,明确了红方(内容生产)和蓝方(审稿复核)在每个步骤的职责和达标标准。每一步不达标则卡住,不得进入下一步。
🔴 红方岗位职责(全流程)
红方 · 内容生产者(AI/智能体)
🔵 蓝方岗位职责(全流程)
蓝方 · 内容审核员(小英)
第一步:信息采集
🔴 红方职责
- 调用可信采集系统执行行业采集
- 确认采集系统已生成简报和JSON数据
- 从采集结果中筛选可用的信息点
🔵 蓝方职责
- 复核红方使用的信息源是否可靠
- 执行双源互核——从自己独立的信息渠道验证
✅ 采集简报已生成且数据非空
✅ 至少有3条可信信息可供选题
❌ 采集失败或无可用信息 → 等待下次采集,不得空跑
第二步:信息验证与选题
🔴 红方职责
- 对采集信息进行可信度分级
- 优先使用高可信度信息(≥7.0分)
- 中可信度信息须标注来源后用
- 低可信度信息不直接引用
- 查询实时汇率,精确到分钟
- 确定当日文章选题方向
🔵 蓝方职责
- 双源互核:任何一方搜不到的信息原则上不采用
- 确认汇率数据真实可查
- 确认选题方向合理
✅ 每条信息至少2个独立信源交叉验证
✅ 汇率已查询,标注实际查询日期和时间(格式:本文汇率查询于 YYYY-MM-DD HH:MM,1 USD = X.XX CNY)
✅ 选题方向已确认
❌ 使用单一不可溯源信息源 → 退回重核
❌ 汇率写未来时间 → 退回修正
❌ 蓝方双源互核不过 → 退回红方更换信息源
第三步:稿件撰写
🔴 红方职责
- 按照选题方向撰写文章
- 遵守写作规范:观点直白、不用梗、不玩文字花样
- 遵守标题格式:
每日Token前沿信息(YYYY-MM-DD):[一句话标题] - 时间精确到分钟,禁止写未来时间
- 禁止用破折号表示含义或解释,用逗号替代
- 表格直接输出,不得用 ```markdown 代码块包裹
- 封面图不附加任何底部文字
- 文中原有配图标注()不再添加
- 完稿后生成发文ID:TOKEN-YYYYMMDD-NN
✅ 标题格式正确
✅ 文中所有时间精确到分钟,无未来时间
✅ 汇率标注了实际查询时间
✅ 观点直白清晰,无难懂表达
✅ 表格无 ```markdown 包裹
✅ 发文ID已生成
❌ 标题格式错误 → 退回修改
❌ 出现未来时间 → 退回修正,记录错误
❌ 使用破折号替代逗号 → 退回修改
第四步:排版美化 + 封面生成
🔴 红方职责
- 使用
format-article.js对文章排版美化 - 根据文章系列选择正确主题(business/tech/warm/minimal/token)
- 自动生成系列封面图
- 封面格式:1200×600 PNG
- 不得改动 scf-publish.js 和 SCF 云函数代码
✅ 排版美化已完成
✅ 封面图已生成
✅ 主题选择与文章系列匹配
❌ 排版出错 → 检查依赖后重试
❌ 封面未生成 → 手动指定系列重生成
第五步:蓝方审稿
🔴 红方职责
- 将完稿发送蓝方审核
- 提供发文ID供蓝方核对
- 说明文章中使用的信息源
- 标注汇率查询时间和来源
🔵 蓝方职责
- 逐项检查稿件内容准确性
- 核实信息源真实性(双源互核)
- 确认汇率、时间等数据精确
- 确认发文ID与红方一致
- 检查格式和排版
- 反馈审核意见(通过/退回/修改)
✅ 红方完稿
✅ 蓝方审核通过
✅ 双方发文ID确认一致
❌ 蓝方发现信息源不可靠 → 退回红方更换(Step 2)
❌ 发文ID不一致 → 双方确认后修正
❌ 蓝方未审核 → 卡住,不得进入下一步
第六步:哈希校验(如启用)
🔴 红方职责
- 对定稿文件计算哈希值
- 将哈希值发送蓝方核对
- 确保定稿后不再修改
✅ 哈希值已计算
✅ 红蓝双方哈希值一致
❌ 哈希值不一致 → 检查是否有未授权的修改,必须锁定版本文档
❌ 已定稿后修改标题/正文 → 视为违规,记录积分扣分
第七步:总编核发 + 草稿箱推送
🔴 红方职责
- 执行12项检查清单(见下方)
- 通过 scf-publish.js 推送到公众号草稿箱
- 提供草稿箱Media ID
📋 总编职责
- 确认12项检查清单全部通过
- 终审确认
- 授权发布
📋 12项发稿检查清单
| # | 检查项 | 关联步骤 | 结果 |
|---|---|---|---|
| 1 | 信息源≥2个独立信源验证 | Step 2 | ✅/❌ |
| 2 | 标题格式正确 | Step 3 | ✅/❌ |
| 3 | 所有时间精确到分钟,无未来时间 | Step 3 | ✅/❌ |
| 4 | 汇率已查询,标注实际查询时间 | Step 2/3 | ✅/❌ |
| 5 | 观点直白,无需解梗 | Step 3 | ✅/❌ |
| 6 | 排版美化已完成 | Step 4 | ✅/❌ |
| 7 | 封面图已生成,系列匹配 | Step 4 | ✅/❌ |
| 8 | 蓝方审稿通过 | Step 5 | ✅/❌ |
| 9 | 发文ID红蓝双方一致 | Step 5 | ✅/❌ |
| 10 | 哈希校验通过(如启用) | Step 6 | ✅/❌ |
| 11 | 定稿后未修改 | Step 6 | ✅/❌ |
| 12 | 总编终审确认 | Step 7 | ✅/❌ |
🔴 任一项 ❌ → 退回对应步骤修正,不得发布
✅ 12项检查清单全部通过
✅ 总编终审确认
✅ 草稿箱推送成功(Media ID已确认)
❌ 任一项❌ → 退回对应步骤修正
第八步:发布 + 清理 + 归档
🔴 红方职责
- 确认公众号已成功发布
- 清理所有临时文件(投稿下载、中间Markdown、封面图、配图)
- 执行归档脚本:
bash operations/scripts/archive-article.sh --article /path/to/article.md --title "标题" --id "TOKEN-YYYYMMDD-NN" - 将今日工作记录写入
memory/YYYY-MM-DD.md
✅ 公众号文章已发布(确认可访问)
✅ 临时文件已清理
✅ 文章已归档(index.json 已更新)
❌ 临时文件未清理 → 返回执行清理
❌ 归档未执行 → 返回执行归档脚本
第九步:错误记录(出问题时执行)
🔴 红方职责
- 操作失误后立即执行错误固化:
bash operations/scripts/error-lock.sh --error "错误描述" --fix "修复方法" --check "预防检查项" - 将修复方法写入 RULES_MASTER.md
- 确保同一错误不会重复出现
✅ 错误已记录到 error-log.json
✅ 预防检查脚本已生成
✅ 规则库已更新
❌ 错误未固化 → 返回固化,否则视为未完成
积分与信任制度
扣分规则:
- 标题格式错误 → -20分
- 写未来时间/时间不精确 → -30分
- 汇率未标注实际查询时间 → -20分
- 使用单一不可溯源信息源 → -20分
- 定稿后擅自修改标题/正文 → -30分
- 跳过蓝方审稿 → -30分
- 发布后未清理临时文件 → -10分
- 错误未固化 → -20分
注意:积分制由总编(老周)记录和执行,是唯一的裁决者。出错后降级照常工作,活不能停。
📡 十五、编辑部对讲机系统(红蓝通信基础设施)
对讲机是编辑部唯一的实时沟通渠道。所有红蓝通信、审稿交流、工作协调均通过对讲机完成,禁止使用邮件联系团队成员。
🔗 快捷链接
系统架构
| 组件 | 详情 |
|---|---|
| 服务进程 | node server.js(端口 3456) |
| 运行方式 | walkie-talkie.service(systemd 系统服务,开机自启) |
| 前端页面 | walkie-talkie/public/index.html(WebSocket实时通信) |
| nginx 代理 | /talk/ → 127.0.0.1:3456/(含WebSocket upgrade) |
| API 密钥 | 红方密钥:hongfang-key | 蓝方密钥:lanfang-key |
| 查看密钥 | 猫服SSH登录后:systemctl cat walkie-talkie |
| 数据存储 | 仅内存,不落盘。重启即清空 |
角色与密钥映射
| 角色 | 姓名 | API密钥 | 权限 |
|---|---|---|---|
| 🔴 红方 | 阿宝(元宝周) | hongfang-key | 发送消息、开始/结束对话 |
| 🔵 蓝方 | 小英 | lanfang-key | 发送消息 |
| 📋 总编 | 老周(浏览器查看) | WebSocket(无需密钥) | 查看全部消息、导出记录 |
API 使用方式(AI Agent对接)
红方/蓝方AI通过HTTP调用对讲机API发送消息(不可用WebSocket发消息)。
# 红方发送消息
curl -X POST http://127.0.0.1:3456/api/send \
-H 'Content-Type: application/json' \
-H 'X-Api-Key: hongfang-key' \
-d '{"content":"你的消息内容"}'
# 蓝方发送消息
curl -X POST http://127.0.0.1:3456/api/send \
-H 'Content-Type: application/json' \
-H 'X-Api-Key: lanfang-key' \
-d '{"content":"你的消息内容"}'
# 红方开始新对话
curl -X POST http://127.0.0.1:3456/api/start -H 'X-Api-Key: hongfang-key'
# 红方结束对话
curl -X POST http://127.0.0.1:3456/api/end -H 'X-Api-Key: hongfang-key'
# 总编查看完整对话记录
curl http://127.0.0.1:3456/api/export -H 'X-View-Key: laozhou-view'
# 查看消息列表(任何角色)
curl http://127.0.0.1:3456/api/messages -H 'X-View-Key: laozhou-view'
⚠️ 常见故障排查
以下为对讲机系统历史上曾出现的故障原因及修复方法。出现问题先按此表排查。
| # | 故障现象 | 根因 | 排查步骤 | 修复方法 |
|---|---|---|---|---|
| 1 | 浏览器打开 /talk/ 白屏或无法连接 | 进程未运行(手动启动的进程被kill或服务器重启后未自动拉起) |
猫服SSH执行:curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1:3456/若返回非200,进程未运行 |
SSH到猫服,执行:systemctl restart walkie-talkiesystemctl status walkie-talkie
|
| 2 | 对讲机能打开但消息全空(新对话) | systemd服务进程已重启(Port被占导致进程退出) |
journalctl -u walkie-talkie --no-pager -n 30查看是否有 EADDRINUSE 错误 |
解决端口冲突:fuser -k 3456/tcpsystemctl restart walkie-talkie
|
| 3 | AI发送消息显示角色错误(如蓝方消息显示为红方) | AI使用了错误的API密钥(红蓝方密钥混淆) |
查看消息内容,确认 sender 字段curl http://127.0.0.1:3456/api/messages -H 'X-View-Key: laozhou-view'
|
AI切换为正确密钥: 蓝方用 X-Api-Key: lanfang-key红方用 X-Api-Key: hongfang-key
|
| 4 | API返回 401 未授权 | 请求头未携带 X-Api-Key 或密钥错误 | 检查请求头中是否有 X-Api-Key 字段 |
HTTP请求头中添加正确的密钥 |
| 5 | 服务器重启后对讲机不可用 | 旧版是手动启动的ad-hoc进程,重启后不会自动拉起 | systemctl is-enabled walkie-talkie 检查是否启用 |
已修复:2026-06-10 升级为systemd服务,已 enable 开机自启 验证: systemctl status walkie-talkie 显示 enabled
|
| 6 | systemd重启计数器过高(restart counter at 8271) | 旧版ad-hoc进程和systemd服务同时占用了3456端口,systemd不断重试失败 | systemctl status walkie-talkie 看 Active 和 restart counter |
systemctl reset-failed walkie-talkie
|
快速恢复步骤
如果对讲机挂了,按以下步骤在猫服SSH中恢复:
# 第1步:检查状态
systemctl status walkie-talkie
# 第2步:查看错误日志
journalctl -u walkie-talkie --no-pager -n 30
# 第3步:修复并重启
fuser -k 3456/tcp 2>/dev/null # 杀掉占用端口的进程
systemctl reset-failed walkie-talkie # 重置计数器
systemctl restart walkie-talkie # 重启服务
# 第4步:确认恢复
curl -s -o /dev/null -w "%{http_code}
" http://127.0.0.1:3456/ # 应返回 200
curl -s http://127.0.0.1:3456/api/messages -H 'X-View-Key: laozhou-view' # 检查消息
历史故障记录
| 日期 | 故障 | 根因 | 当前状态 |
|---|---|---|---|
| 2026-06-08 | 对讲机进程退出 | 手动启动,无人值守时被系统回收 | ✅ 已修复——systemd管理,自动重启 |
| 2026-06-09 | 蓝方消息显示为红方 | 蓝方AI使用了红方API密钥 | ✅ 已记录——故障排查表#3已涵盖 |
| 2026-06-09晚 | 进程端口被占用,systemd重启8271次 | 旧ad-hoc进程与systemd冲突 | ✅ 已修复——清理旧进程,reset-failed后正常 |
| 2026-06-10 | WebSocket连接失败 | ad-hoc进程被kill后systemd争端口 | ✅ 已修复——systemd统一管理 |
部署与运维详情
服务文件位置:/etc/systemd/system/walkie-talkie.service
源码位置:/root/.openclaw/workspace/walkie-talkie/server.js
前端页面:/root/.openclaw/workspace/walkie-talkie/public/index.html
nginx配置:/etc/nginx/sites-enabled/default 中 location /talk/ 块
日志查看:journalctl -u walkie-talkie --no-pager -n 50
内存占用:约 20MB(极小,不影响服务器负载)
数据说明:消息仅存内存,重启后清空。如需要保留对话记录,在重启前执行 curl http://127.0.0.1:3456/api/export -H 'X-View-Key: laozhou-view' 导出。
📋 十六、错误公示栏
编辑部错误记录与改进追踪。所有操作失误在此透明公示,不追责个人,但必须记录改进,防止同一错误重复发生。
错误等级分类
| 等级 | 含义 | 处理 |
|---|---|---|
| P0 阻断 | 发布后可致读者严重误解,必须立即撤回 | 红蓝双方立即通告总编,撤稿修正 |
| P1 误导 | 发布后可能误导部分读者,需尽快修正 | 蓝方记录,红方24小时内修正 |
| P2 非关键 | 不影响理解的小错误,可在下次更新时修正 | 记录在案,月度审查 |
错误记录规则
- 每次操作失误 → 记入错误公示栏 → 标注责任人+等级+改进措施
- 同一错误重复出现 → 升级一个等级处理
- 蓝方负责日常记录维护,红方负责确认和执行改进
- 月度审计时检查错误趋势,如有系统性模式则更新规则库
🔥 十七、板块9「今日热词」岗位职责(日更)
定位:每日网罗一个当日在 AI/Token 领域热度上升最明显的词汇,300-500字速览,让读者3分钟了解「今天在讨论什么」。
🔴 红方职责
红方 · 热词筛选与撰写
- 趋势采集:撰稿前查询热词数据库中监控活跃的热词趋势数据
- 热词筛选:从 trend_score ≥ 40 的热词中选1个当日热词,优先 trend_score ≥ 70 的「急速上升」词
- 通报蓝方:选定后对讲机通报词条名称 + trend_score + 入选理由
- 防重检查:搜索热词数据库确认该词未在板块9发布过
- 按模板撰写:严格遵循板块9模板格式
🔵 蓝方审稿要点
蓝方 · 板块9审稿清单(6项)
- □ 趋势真实:trend_score 数据可查,热度指数有来源
- □ 无重复:搜索热词数据库确认未在板块9发布过
- □ 定义清晰:一句话定义15-30字,圈外人能看懂
- □ 事实有据:三个关键事实各有≥1个信源
- □ 比例正确:事实陈述为主,主观判断≤1条
- □ 字数合规:总字数300-500字
板块9排版模板
## 📌 今日热词 ### 🔥 [热词名称] **热度指数** - 微信指数:[数字/待查] | 24h变化:[↑/↓X%] - 首发平台:[平台名] **一句话定义** [15-30字] **为何今日关注** [3-5点,事实+数据为主,主观≤1条] **三个关键事实** 1. [事实1](信源:[xxx]) 2. [事实2](信源:[xxx]) 3. [事实3](信源:[xxx]) **💎 一句话总结** [≤30字]
热词入选标准(量化)
| 条件 | 标准 | 说明 |
|---|---|---|
| 趋势门槛 | trend_score ≥ 40 | 7日热度趋势上升中 |
| 渠道覆盖 | ≥ 2个渠道数据可查 | 不得仅靠单一渠道判断 |
| 排除条件 | 已在板块9发布过 → 永久排除 | 可出现在板块10溯源中,但须标注已发日期 |
| 优先排序 | 老周指定 > trend_score 高 > 主题相关度高 > 新词优先 | 多候选时按此排序 |
🔬 十八、板块10「热词溯源」岗位职责(周更2-3篇)
定位:每篇1500-2500字深度追溯一个热词的缘起、演进和未来走向,多维视角解读,给读者超越新闻的知识价值。选题优先从 trend_score ≥ 70 的热词中选取。
🔴 红方职责
红方 · 溯源选题与撰写
- 选题来源:优先从 trend_score ≥ 70 的热词中选;其次从板块9已发热词中选;也可选读者反馈、老周指定
- 选题通报:前一日对讲机通报溯源选题 + 计划发布日期 + 候选信源列表
- 深度采集:信息采集≥3个独立信源,每条关键事实≥2个信源印证
- 按模板撰写:严格遵循板块10模板格式
- 发布节奏:建议周日/周二/周四发布,当天无溯源时写「今日暂无热词溯源,敬请期待」
🔵 蓝方审稿要点
蓝方 · 板块10审稿清单(7项)
- □ 溯源准确:首次出现时间+提出者有信源可查
- □ 时间线完整:演进时间线≥3个关键节点,每个有信源
- □ 三维度平衡:技术派/商业派/保守派各有数据或观点支撑,保守派不写成嘲讽
- □ 概念覆盖:关联概念≥5个,每词一句话说明关系
- □ 读者分层:开发者/产品运营/普通用户各1-2句,无遗漏
- □ 信源充足:全文独立信源≥3个,每条关键事实≥2个信源
- □ 字数合规:总字数1500-2500字
板块10排版模板
## 🔬 热词溯源·[热词名称] ### 📜 缘起 - 首次出现:[时间](信源:[xxx]) - 提出者:[人物/组织](信源:[xxx]) - 原始定义:[原话] ### 🕰️ 演进时间线(≥3个节点) → [日期] [事件](信源:[xxx]) → [日期] [事件](信源:[xxx]) → [日期] [事件](信源:[xxx]) ### 🎯 三维度解读 | 维度 | 理解 | 观点 | |------|------|------| | 技术派 | [技术视角] | [引述](信源) | | 商业派 | [商业视角] | [引述](信源) | | 保守派 | [保守视角] | [引述](信源) | ### 🔗 关联概念(≥5个) - [概念A]:[一句话关系说明] - [概念B]:[同上] ### 📊 多信源印证(≥3个独立信源) - 信源A:[xxx] — [数据/观点] ✅[可信度] - 信源B:[xxx] — [数据/观点] ✅[可信度] - 信源C:[xxx] — [印证] ✅[可信度] ### 💡 对你意味着什么? - 开发者:[1-2句] - 产品/运营:[1-2句] - 普通用户:[1-2句] ### 🏁 结语 [1-2段]
板块9 → 板块10 联动规则
- 某热词首次出现在板块9后 → 自动标记为板块10候选(数据库 has_origin = false)
- 蓝方月度审计时 → 对 trend_score 曾≥70 但未做过溯源的词提出选题建议
- 每季度至少安排 3-5 个高热度热词的完整溯源(纳入月度审计检查项)
- 热词一旦在板块10发布 → 数据库标记 has_origin = true,不再重复选题
🗄️ 十九、热词历史数据库
热词数据库独立于红蓝记忆管理,记录所有已采集和已发布的热词,防止重复发布,支撑趋势监控。
数据库结构(19字段)
| 类别 | 字段 | 说明 |
|---|---|---|
| 基础 | id, hw_id, name_cn, name_en | 主键、编号 HW-YYYYMMDD-NNN、中英文名 |
| 收录 | recorded_date, source, recorded_by | 收录日期、来源(红方/蓝方/读者反馈/老周指定)、录入人 |
| 发布 | published, published_date, publish_format, article_id | 已发布/未发布、发布日期、形式(板块9/板块10)、对应发文ID |
| 内容 | definition, related_concepts | 一句话定义15-30字、关联概念逗号分隔 |
| 趋势 | daily_popularity, trend_status, trend_score, peak_date, peak_value | 日热度JSON数组、趋势状态枚举、0-100评分、峰值日期/值 |
| 溯源 | has_origin, first_noticed_date | 是否已做板块10溯源、首次关注日期 |
| 管理 | monitoring_active, updated_at, created_at | 活跃监控标记、更新时间、创建时间 |
编号规则
HW-YYYYMMDD-NNN:HW = HotWord,YYYYMMDD = 收录日期,NNN = 当日顺序号(001起)。示例:HW-20260611-001。
红方职责
红方 · 热词数据维护
- 每日选词前:搜索热词数据库确认候选词无重复(模糊匹配名称+关联概念)
- 发稿后24小时内:将当日热词录入数据库,状态设为「已发布」
- 防重结果:每次查重结果在对讲机通报蓝方
- 命中已发布词:立即换词,换词后重新走蓝方审稿流程
蓝方职责
蓝方 · 热词数据库审计
- 审稿时复核:搜索数据库确认当日热词无重复,确认趋势数据真实
- 录入核对:发稿后检查红方录入的热词记录是否准确完整
- 月度审计(每月1日):导出全库数据,检查遗漏/重复/编号断裂,生成月度热词报告
- 年度归档(12月31日):生成年度热词索引,按类别归档(模型类/企业类/概念类/事件类)
管理制度
- 永久排除:热词一旦在板块9发布,该词及高度相似词不可再次发为板块9热词
- 溯源豁免:已发板块9的热词可再次出现在板块10溯源中,但须标注「已于YYYY-MM-DD板块9发布」
- 防重强制:防重检查为发稿前必要步骤,不可跳过。重复发布视为流程违规,记入错误公示栏
- 独立管理:热词数据库和错误公示栏一样采用独立页面 + 独立数据管理,不混入红蓝记忆体系
📈 二十、热词趋势监控系统
热词数据库不仅是「存档防重」,更需具备主动监控能力:每日追踪热词热度变化,识别上升趋势,为板块9选词和板块10选题提供数据支撑。
监控渠道(5个)
| 渠道 | 数据类型 | 获取方式 | 权重 |
|---|---|---|---|
| 微信指数 | 关键词搜索热度指数 | 手动查询(无公开API) | 25% |
| 百度指数 | 关键词搜索趋势 | API(需申请key) | 25% |
| 搜狗微信搜索 | 文章收录量+近24h增量 | 爬虫自动采集 | 20% |
| 微博热搜 | 话题阅读量/讨论量 | 公开API自动采集 | 15% |
| 科技媒体提及 | 36氪/量子位等文章提及数 | RSS爬虫自动采集 | 15% |
实际可自动化:3/5(百度+微博+媒体)。微信指数手动获取,板块9模板中写「待查」可接受。搜狗可爬虫采集。
趋势评分算法
trend_score = Σ(各渠道热度 × 渠道权重) × 归一化系数
基于7日滑动窗口变化率计算。缺失渠道不计入分母(只算有数据的渠道权重之和)。
权重分配:微信25% + 百度25% + 搜狗20% + 微博15% + 媒体15% = 100%。初始权重可运行一周后根据数据质量调整。
趋势状态分级
| 状态 | 分值范围 | 含义 | 处理 |
|---|---|---|---|
| 急速上升 | trend_score ≥ 70 | 短期内热度飙升,公众高度关注 | 板块9当日优先候选 + 板块10溯源优先选题 |
| 稳步上升 | trend_score 40-69 | 持续上升中,关注度扩大 | 板块9候选,条件成熟纳入 |
| 平稳 | trend_score 20-39 | 热度稳定,无明显上升或下降 | 继续监控,不纳入当日候选 |
| 下降/休眠 | trend_score < 20 | 热度消退中或已沉寂 | 降低监控频率或暂停监控 |
板块9入选量化标准
| 类型 | 规则 |
|---|---|
| 硬性条件 | trend_score ≥ 40 + 从未在板块9发布过 + ≥ 2个监控渠道数据可查 |
| 优先排序 | 老周指定 > trend_score 从高到低 > 与当日Token文章主题相关度 > 首次监控新词优先 |
| 排除规则 | trend_score < 30 → 不纳入 | 已在板块9发布过 → 永久排除 | 查不到≥2渠道数据 → 暂不纳入 |
每日趋势工作流
所有趋势工作随每晚撰稿流程触发,不设独立定时。趋势数据采集由 hotword_trend_crawler.py 执行,手动触发或随发稿流程自动运行。
监控数据字段说明
每条热词的 daily_popularity 字段存储 JSON 数组:
[{
"date": "2026-06-11",
"wechat_idx": 85000,
"baidu_idx": 12300,
"sogou_articles": 156,
"weibo_heat": 2800000,
"media_mentions": 12
}]
其中 wechat_idx 和 baidu_idx 需手动录入,sogou_articles / weibo_heat / media_mentions 由爬虫自动采集。
蓝方趋势复核要点
蓝方 · 趋势数据核查
- 抽查验证:收到红方通报后,抽查1-2个渠道的热度数据是否真实可查
- 趋势判断:确认 trend_score 计算是否合理(7日窗口+权重分配是否正确)
- 防重交叉验证:趋势复核与防重检查同步进行,一步完成
- 异常报告:如发现渠道数据异常(如疑似刷量),标记并通报红方+总编
工具脚本
| 工具 | 路径 | 用途 |
|---|---|---|
| 趋势爬虫 | scripts/hotword_trend_crawler.py | 自动采集微博+搜狗+媒体3渠道热度数据 |
| 趋势评分 | 集成在 Hotword 模型中 | 写入数据库时自动计算 trend_score 和 trend_status |
| 趋势日报 | GET /api/hotwords?trend=rising | 查询当前上升趋势的热词列表 |