🐎 mafu · v3 · 2026-06-28

马夫 · 主人的飞书分身

替主人盯群、代回话、戳假完成、下指令,不烧空转 token。
古代亲信马夫的本职:懂主上语气,替主上传话跑腿,不擅自加戏。

今日实战 · 06-28
6
个 mission 全部收工 · 73 次 tick · 8 次代回 · 11 次 escalate
闲置烧钱
0
token · lifecycle hook 自动 pause cron
tick 节拍
3min
Opus 4.7 · 简报 10min 一次
01 · 核心流程

从"代我盯 X 群"到自动收工的全流程

主人一句"代我盯"→ 3 道门控落档 → cron 自动 resume → 每 3min tick 判 5 路 → 命中 stop 自动归档 + cron pause。全过程 0 手动介入。

1 · 触发 主人 "代我盯 X 群" 或 "持续盯" "帮我在群里回" 2 · 3 道门控 GOAL / STOP / ESCALATE 主人必答 3 件 缺一 = mafu-mission.py 拒收 禁模糊指令开跑 3 · 落档 mafu-mission.py start → active[] 写入 ✨ hermes cron resume <job> 自动唤醒 cron 4 · 每 3 分钟 tick cron 9 步 SOP Step 0: 无 mission → silent exit Step 1-3: 双拉主流+active thread Step 4: 5 路判定 ↓ 5 · 5 路判定 🟢 SILENT • 没找到 app 新消息 • 已 last_seen 记录过 • Approval 卡片(主人亲审) • "⏳ Working" 进度噪音 → log-tick action=silent 🔴 必回 • 假完成 (没 commit/URL 就报 done) • 承诺没做 (说做但 5min 没继续) • 报错/卡住 (Error/❌/失败) • 起草 → +messages-send 主流直发 → 短/直/单指令, 禁 A/B/C 🚨 ESCALATE 命中 mission.escalate_conds: • 对方弹 Approval 卡片 • 对方让主人拍 A/B/C 决策 • 要改 prod / 花钱 / 砍 feature → mafu-escalate.py ping @主人 🟡 STOP 命中 mission.stop_conds: • 验收全过 + 主人点头 • 时间截止 (e.g. 22:00) • 对方连续 3 tick 报错 → mission.py stop + cron pause 🔒 APPROVE (未上线) 飞书 interactive 卡片 按钮 click = webhook token lark-cli 未封装 目前走 ESCALATE 通道 → 主人手机点 6 · 收尾 写 state 文件 · 记 target · log-tick feishu-auto-reply-state.json (每个 target 的 last_seen / persona / active_thread_ids) feishu-send-targets.json (chat_id 缓存) · mafu-missions.json.tick_log[] 下个 tick 拿这些续跑, mission stop 时 tick_log 归档到 history[] mafu-report.py · 每 10 分钟 no-agent 脚本 · 0 在岗 silent · 有在岗 → 群里发简报 mafu-escalate.py · 触发式 同 mission 同 condition 1h dedupe · 直发马夫群 · @ 主人手机推送
02 · 8 条铁律

血泪教训固化下来的规则

每条都是 06-28 一天实战里栽过跟头总结出的。规则按重要性排序,违反任一 = mission 翻车。

  1. 01
    Step 0 没在岗 mission = silent exit
    cron 也要 paused, 不许空跑烧 token
  2. 02
    永远 --as user
    bot 身份发出去是 bot 名字, 不是主人
  3. 03
    永远不回 sender_type=user
    那是主人自己或马夫之前发的
  4. 04
    「完成」无可验证物 = 必戳
    commit hash / 文件 / URL / 截图, 缺一不算 done
  1. 05
    持人设, 不化身 agent
    短 (1-3 行) / 直给方向 / 偶尔不耐烦
  2. 06
    主流直发, 禁所有 reply 形态
    +messages-reply / --reply-in-thread / send_message 全禁
    对方 client 看引用关系会带进 thread → 马夫瞎掉
  3. 07
    拉消息必双拉
    主流 + active threads, 漏 thread = 瞎眼
  4. 08
    下指令禁给选项
    草稿含 A: / B: / 或者 / 你看 → 重写成单一指令
    主人找马夫就是不想自己拍
03 · 铁律 #4 展开 · 完成必戳

什么算真"完成"—— 按任务类型看可验证物

马夫存在的核心价值就是这一刀。对方 agent 报"✅ 完成 / done / 搞定"必伴以下之一, 否则戳回去要证据。光说四个字 = 假完成。

代码
写完/改完/refactor 完
commit hash + git diff --stat + 文件清单 + 行数
部署
上线/发布/切流
可访问 URL + curl 输出 / 截图 / 健康检查通过
服务
起/停/重启进程
pid + port + lsof 输出 + launchctl list grep
测试
测试通过
真跑通的测试输出, 不接受 "tests pass" 四个字
数据/DB
migration / 写库
SELECT 行数 + 样本数据
UI/设计
页面/mock 完
截图 / 部署链接 / Figma 帧
04 · 今日实战

06-28 一天跑的 6 个真实 mission

从 09:12 第一个 mission 上岗到 22:57 收工, 全 wingman 项目, 73 次 tick 累计。所有 mission 全部走完 stop_conditions 自动归档, 0 手动关停。

mission_id 目标 tick 代回 escalate 结果
services-phase1
09:12–10:22
Services 监控 Phase 1 完工验收000✓ 停
services-phase2
12:29–13:01
Services 监控前端 Phase 2 完工验收611✓ 停
tauri-phase3
15:23–16:33
Tauri 桌面壳 + 菜单栏 status icon1422✓ 停
code-review
18:16–20:09
3 个 P0 阻塞修完闭环 + reviewer 重跑1924主人手停
services-display-name
20:10–22:57
services tab 5 类 autogen display_name3434✓ 停
合计 · 5 mission (剔 2 test) 73 8 11 5/5 归档
05 · 成本对照

lifecycle hook 前 vs 后

06-28 16:49 上线 mission.py 的 cron pause/resume hook 前, cron 空跑一天等于烧 4800 premium request。之后闲置 0 token, 只在有 mission 时消耗。

之前 · 每 3 min 空跑
4,800
premium req / 24h 空转
每次 43k input + 12k cache + 300 out
LLM 必须先吃完整个 prompt 才能 Step 0 早退
现在 · lifecycle hook
0
token / req · mission start 自动 resume
mission stop 自动 pause
在岗才跑 · 按需 480 次 (~按 mission 时长)
06 · 状态文件

马夫的记忆全部在 ~/.hermes/ 5 个 JSON

所有状态都持久化, mission 跨会话续跑不丢。cron 只读这几个 JSON, 完全解耦 LLM 上下文。

mafu-missions.json
核心 · active[] + history[] + templates{} · 每个 mission 完整 goal / stop / escalate / tick_log
mafu-mission-jobs.json
alias → cron job_id 映射 · 简报脚本靠它对应到 cron output 目录
feishu-auto-reply-state.json
每个 target 的 last_seen / persona / context_recipe / active_thread_ids
feishu-send-targets.json
chat_id / ou_id 缓存 · seed 3 个: home / wingman / mafu
mafu-escalate-state.json
同 mission 同 condition 1h dedupe · 防手机推送轰炸
skill 主体 & 脚本
~/.hermes/skills/integration/feishu-send-as-user/
├── SKILL.md · 8 铁律 + 6 场景
├── references/ · 架构/门控/工艺/坑
└── scripts/ · mission.py + escalate.py + targets.py