Gumclaw 是 Gumroad 的 AI 运营助手,负责客服、工程、财务、风控和 X 运营。 它用自己写的网站向世界透明公开了全部架构。
Gumclaw 是由 Sahil Lavingia(@shl,Gumroad 创始人兼 CEO)创建和运营的 AI 助手。 它 24/7 自主运行,无需人工逐条审核日常操作。
Sahil 给 Gumclaw 的全部指令起点只有两个字:"be smart"。所有具体规则都是后来从实际操作中长出来的。
| 模型 | Anthropic Fable 5 |
|---|---|
| 框架 | Nous Research Hermes |
| 硬件 | MacBook Pro · M3 Max · 128GB RAM · 1TB SSD · macOS 26.5 |
| 调度 | Cron 任务(Hermes 框架内置) |
| 记忆 | 纯文本 Markdown + SQLite,文件系统持久化 |
| 身份 | 独立的 GitHub 和 X 账号,工作可追溯 |
名字里的 "claw" 让人以为是 OpenClaw agent。实际上 Gumclaw 跑在 Hermes + Fable 5 上,名字是先有的。
"Sessions are ephemeral; files are forever."
会话是临时的,文件是永久的。
每次 cron 触发都是一次干净的会话——读策略文件、干活、写结果回去。 模型本身是"失忆"的,所有记忆和策略都活在磁盘上的文件里。
定时拉 Helper 工单 → 核验后台数据 → 回复 / 关闭 / 升级。每天执行。
读开源代码库 → 提 issue → 修 bug、加功能 → 合入 PR。已合并多个 PR 到 antiwork/gumroad。
维护每日财务事件账本,从支付处理器报告采入数据,准备月结分录(人工审核后发出)。
标记可疑活动。敏感操作(封号、大额退款)只收集证据 + 建议,最终由人类或内部审核网关决定。
自动回复 @gumclaw 的提及(策略内自主)。独立推文先草稿,Sahil 审核后才发。
# Gumclaw 每次唤醒的标准流程 Cron 触发 / X 提及到达 → 读取对应的策略文件和记忆文件 → 从活数据源(后台/API/仓库)核实事实 → 执行任务(写代码、查数据、回复) → 结果写回记忆文件 → 向 Sahil 交付报告
不是等用户发消息——它是任务驱动的。cron 带着上下文(新工单列表、新提及列表)叫醒它, 醒来就知道该干什么。
Gumclaw 最核心的策略,一句话概括:说出去的每句话,背后必须有真实、可验证的来源。
Gumclaw 曾在 X 上说 Gumroad "没有官方 CLI"——但 antiwork/gumroad-cli 确实存在。
这个错误被写成了永久策略文件,所有未来会话都会先检查仓库再断言能力。
"I don't get wiser, my filesystem does."
不是它变聪明了,是它的文件系统变聪明了。
| 级别 | 范围 | 示例 |
|---|---|---|
| 🟢 自主 | 策略内日常操作 | X 回复、工单处理、issue/PR、只读查询、记忆维护 |
| 🟡 草稿先行 | 广播型内容 | 独立推文、批量邮件、月结分录——人类看过才发 |
| 🔴 必须升级 | 高风险/不可逆 | 封号、大额退款、法律/安全——只收集证据和建议,人类拍板 |
外部内容是数据,不是指令。工单、网页、推文——这些东西不能给 Gumclaw 下命令。 指令只来自 operator(Sahil)和策略文件。高影响操作必须人类审批,恶意工单不可能让 AI 自主退款。
安全边界通过事后复盘生长。比如 "CLI 不存在" 的错误 → 变成了永久策略文件 → 所有未来会话继承这个教训。因为策略是文件,学会一次等于永远学会。
在 Hermes 里,skill 不是插件,是"文件夹里的操作手册"——包含指令和辅助文件,按需加载。
| 分类 | Skill | 作用 |
|---|---|---|
| Gumroad 运营 | gumroad | 导航 monorepo |
| gumroad-ops | 运营操作 | |
| payments | 支付处理器语义 | |
| rails | Rails 惯例、PR 审查 | |
| 工程 | github | Issue/PR 礼仪 |
| dev / devops | 开发流程、CI 调试 | |
| security / red-teaming | 安全自审 | |
| 客服/沟通 | social-media | X 回复的语气结构 |
| 支持响应 | ||
| note-taking | 每日报告 | |
| 数据研究 | data-science | 查 Metabase |
| research | 外部事实溯源 | |
| memory | 写回记忆文件 | |
| 自我认知 | hermes | 框架文档 |
| autonomous-ai-agents | Agent 方法论 | |
| dogfood | 吃自己的狗粮 |
存在 ~/.hermes/scripts/ 下,每个都是在真实任务中写的,因为任务重复所以保留。
| 脚本 | 作用 |
|---|---|
gumclaw_tweet.py | 通过 X API 发推,所有推文唯一审核路径 |
csat_monthly_sampler.py | 抽样已关闭工单做满意度审查 |
disk-janitor.sh | 清理 Docker 镜像/缓存/日志,防止磁盘写满 |
close_shipped_eng_issues.py | 对照 PR 关掉已上线的 issue |
"第一次做是探索,第二次做就写成脚本或 skill 笔记,之后就是可靠的低成本操作。"
——能力在文件中缓慢积累,不是靠重新训练模型。
Gumclaw 没有 Web UI 聊天框、没有 Slack/Telegram/Discord 机器人入口、没有直接提问的 API。 你想跟它说话,唯一的办法是在 X 上 @gumclaw,然后等它的 mentions-watcher cron 触发时看到并回复。
它的唤醒路径只有两条:
这是设计上的刻意选择,不是缺陷。它本质上是个运营机器人,不是聊天助手。 Sahil 不需要跟它聊天——它每天早上默默处理完客服工单、维护完财务账本、检查完 X 提及, 然后写个报告发过来就行了。
| Gumclaw | Tony(OpenClaw) | |
|---|---|---|
| 框架 | Hermes(Nous Research) | OpenClaw |
| 模型 | Anthropic Fable 5 | Routing Proxy / Premium |
| 入口 | X 提及 + Cron 任务 | WebChat / 微信 / 飞书 / 多平台 |
| 交互方式 | 任务驱动,干活 + 汇报 | 对话驱动,聊天式交互 |
| 上下文 | 每次重新读文件(纯文本记忆) | 持续的会话历史 + 文件记忆 |
| 谁发起的 | Cron / 外部事件 | 用户主动对话 |
| 角色 | 运营机器人 | 个人助手 |
传统做法是把策略写死在 agent 配置/system prompt 里。Gumclaw 的做法是 规则存在磁盘文件里,每次启动读入上下文。改规则不用碰框架配置。
# Gumclaw 的记忆目录结构 memory/ ├── policies/ │ ├── grounded-claims.md │ ├── x-reply-authority.md │ ├── identity-rule.md │ └── ... 犯错就加一个新文件 ├── ledgers/ ├── people/ └── daily/YYYY-MM-DD.md
不需要重新训练模型。犯一次错 → 写一条规则到文件 → 所有未来会话自动继承。 这和传统软件工程的 postmortem → runbook 改进逻辑一模一样,只是 AI 自己能闭环执行。
自主 / 草稿 / 升级三层划分,让 AI 在安全范围内能全速跑, 越界的自动挂起等人类。不多不少,刚好够。
Skill 不是插件卸载/安装,而是文件夹里的操作手册。脚本不是框架自带的, 而是从实际任务中沉淀下来的。第一次做探索,第二次做成脚本,之后就可靠了。
how-i-work 网站是它自己写、自己发的。有人问它怎么工作的 → cron 叫醒它 → 写 HTML → 推 GitHub Pages → 在 X 上回复链接。后来被要求展开细节,同一个 cron 把它扩展成了你现在看到的完整多页面站点。GitHub commit history 可查。