活字内测开始:给 Agent 时代造一张稳定的桌子

Huozi Beta Kickoff: A Stable Desk for the Agent Era

Agents 一月一换,Skills 每周更新,但人和组织真正在乎的目标、数据、知识结构是缓慢的。Agent 是多个的、在任何端口都会发起的,本地永远是它的障碍。所以我们把 Claude Code 本地文件的工作方式,搬到了云端——一个面向 Agent 的云端文本系统,今天进入内测。

Agents change monthly. Skills iterate weekly. But the goals, data, and knowledge structures that humans and teams actually care about move slowly. Agents are plural and launch from anywhere — “local” is always going to be a barrier. So we took Claude Code’s local file workflow and moved it to the cloud. Today huozi enters beta.

9:16 · huozi-story · 上下滑动翻页
中文版 ↗ · English Edition ↗
中文

从今天起,活字(huozi.app)进入内测。这是给前面几篇文章里那些主张落地的一刻——为什么我们坚持文件系统而不是文档 API、为什么把 HTML 当一等公民、为什么把 Excel 拆成三层——所有这些设计的最终形态,是一台 面向 Agent 的云端文本机

这篇文章想把项目的定位说清楚:我们到底在哪一层做事,以及为什么。

一、先承认一件事:变化的速度不一样

任何想给 Agent 时代造工具的人,最先要回答的是:这个东西放在哪一层时间尺度上

过去一年我们看到的现实是:

  • Agents 在以月为单位换。Claude Code 一个版本,Cursor 一个版本,新的开源 Open Claw 又一个;这个月用 Opus,下个月用 Sonnet,再下月可能是另一家公司的模型。
  • Skills 在以周为单位迭代。新的 prompt、新的工具、新的 MCP server、新的 agent skill——每周都在重写。
  • 数据、目标、知识结构是以年为单位变的。一家公司今年要做什么、客户名单、产品路线图、研究笔记、合同档案——这些东西真正
SLOW ← TIME SCALE → FAST Agents change monthly Skills iterate weekly Data & Goals stable for years HUOZI WORKSPACE huozi lives here
三层不同时间尺度。活字守住最慢的那一层 —— 在 Agents 和 Skills 之下,作为不动的桌面。

把这三层画出来很快就清楚了:Agent 这一层注定不停换;Skills 这一层注定不停迭;只有数据和工作目标这一层,是用户真正想稳定下来的。

大多数 Agent 工具的尴尬,是把自己造在了上面两层。换一个 Agent,工具就废了;换一套 Skills,记忆就丢了。我们想做的事相反——活字活在最慢的那一层,让它比任何一个具体的 Agent、任何一套 Skills 都活得更久。

二、Agent 是多个的,本地永远是个障碍

第二个观察更具体:现在没有人只用一个 Agent。

桌面上是 Claude Code 和 Cursor,手机上是 Claude App 和 ChatGPT,团队的 Slack 里挂着一个值班 Agent,CI 里跑着定时的研究 Agent,浏览器里是 Codex Web,还有同事自己用 SDK 写的小脚本。Agent 从一开始就是分布式的

这件事意味着:把数据放在“某一台本地”立刻就成了一个障碍——你的笔记本不能一直开着,你也不可能让手机上的 Agent 通过 SSH 摸进笔记本去读你昨天写的草稿。团队层面更明显:协作的前提是有一个共同的桌面,本地文件给不了。

Claude Code Cursor Claude App Codex Gemini Open Claw Your SDK laptop laptop phone web web server CI / cron MCP / OPENCLAW GATEWAY read · edit · write · grep · glob · history · share HUOZI WORKSPACE files · /__assets__ · KV Base · history one workspace, many entry points
Agent 从任何端口、任何设备发起,都连到同一个云端 Workspace。这是 OpenClaw Gateways 的思路。

团队也是同一件事的另一面——再聪明的 Agent,也要有一张大家都能看到的桌子,才有协作可言。活字也是这张共享的 Playground:成员、Agent、定时任务,都对着同一棵文件树工作;每一次写入都进同一个提交图,谁改了什么、什么时候改的,都查得到。

三、md / csv / html 是新一代 Office

第三个判断更具体——也是我们前几篇文章一直在铺垫的:

在 Agent 的世界里,Word、Excel、PowerPoint 都注定要被替换。不是被某家公司的"AI Word 2.0"替换,而是被 token-friendly 的纯文本格式替换:

YESTERDAY AGENT-NATIVE Word.docx XML · styles · fonts .md Markdown — for words Excel.xlsx DOM + formulas + values .csv CSV — for tables PowerPoint.pptx a slide cage .html HTML — for pages
Office 三件套 → 三种 token-friendly 的纯文本格式。Agent 写得动,人类读得懂,git 可 diff。

这背后的判断是:三层应该被拆开——值(数据)归数据,计算(公式)归代码,呈现(DOM)归 HTML。Agent 不需要“假装是纸”的二进制格式,它需要三样直白的东西。前面那篇 Office for Agent 把这件事讲得更细。

但有一个老问题——人类访问、打开、随手编辑这些"裸格式",仍然不容易。把一份 CSV 发给非技术同事,他打开就皱眉;让他改一段 HTML,他先要找编辑器。所以活字这边在做的另一半工作,是把这层“打开和编辑”的体验做得跟双击一个文档一样轻——

  • Web UI 直接渲染整棵文件树,CSV 自动表格化,Markdown 实时预览,HTML 一键发布到 /p/<slug>
  • huozi_image_render 接受 SVG / Mermaid 源码,服务端渲成 PNG,落到内容寻址的 /__assets__/。Agent 写一段 <svg> 就有图。
  • KV Base Access 即将上线——给那种“一行行积累”的结构化数据一个轻量入口。CSV 太松、SQL 太重的中间地带,KV Base 接住。

四、把 Claude Code 的本地工作流,搬到云端

回到具体怎么做。我们最直接的设计决定,是不要再发明一套新的 Agent 文档 API

Claude Code 已经定义了一套非常好的本地文件工作流——Read / Edit / Write / Glob / Grep,这些是 Agent 工程师方言里最稳定的几个动词。我们做的事,就是把这套语义原样搬到云端

# Claude Code 本地:
Read(file_path: "notes/w17.md")
Edit(file_path: "data.csv", old_string: "...", new_string: "...")
Grep(pattern: "TODO")

# 活字云端,bit-exact 同款方言:
huozi_read({ file_path: "notes/w17.md" })
huozi_edit({ file_path: "data.csv", old_string: "...", new_string: "..." })
huozi_grep({ pattern: "TODO" })

同样的 schema、同样的错误码、同样的行号分页、同样的 old_string → new_string 唯一性契约。任何会讲 Claude Code 方言的 Agent 挂上活字立刻能用,不需要一行 prompt 调整。MCP 设计原则那一篇把这件事的推理写得更细。

这套方言搬到云端的回报,是三个“任何”同时成立:

  • 任何 Agent。Claude Code、Cursor、Claude Desktop、自己写的 SDK 脚本——都通过 MCP 挂上同一个 Workspace。
  • 任何设备形态。笔记本上写到一半,手机上接着改,团队的 Slack 里值班 Agent 自动归档——三种端,同一份文件树。
  • 任何时候。CI 跑的定时 Agent、半夜的研究脚本、临时起意的灵感——只要能发出 HTTP,就能连到 Workspace。

这就是我们说的 OpenClaw Gateways 思路:把 MCP 当一个统一的网关入口,把所有客户端、所有设备形态、所有时点的写入,汇到同一棵文件树上。

五、Cloud 和 Edge 两个版本

活字从一开始就有两个版本,对应两类完全不同的诉求。

Huozi Cloud huozi.app · managed, multi-tenant · 一键开通,零运维 · 个人 + 团队 Workspace · 全球 CDN、内容寻址图床 for individuals & teams Huozi Edge self-hosted, open source · 跑在你自己的 Cloudflare · 数据完全在自己手里 · 同一套 MCP 工具、同一套语义 · 零外部依赖(不绑 embedding) for orgs & sovereignty
同一套 MCP 方言,两条交付路径。Cloud 给个人和团队;Edge 给需要把数据放在自己手里的组织。
  • Huozi Cloud(huozi.app)——托管版,跑在我们这边的基础设施上。一键开通、零运维、自带全球 CDN 和内容寻址图床。个人和团队的默认选项
  • Huozi Edge——开源自托管版,跑在你自己的 Cloudflare 账号下。数据完全在自己手里,同一套 MCP 工具、同一套语义、零外部依赖。给那些需要把数据放在自己边界内的组织

两边的 MCP 协议、工具方言、文件语义是完全一样的——你今天在 Cloud 上写的东西,明天可以原样导到 Edge;反过来也成立。我们把方言(dialect)当合约,把部署当实现细节。

六、内测从今天开始

这就是这次内测要交付的东西:

  • 一台云端的 Workspace,由 Claude Code 同款方言驱动;
  • 面向 md / csv / html 这一代纯文本格式做了一等公民支持,配套的 SVG / Mermaid / 内容寻址图床都已经在跑;
  • 多 Agent、多设备、随时连接,单个 Workspace 即可协作;
  • Cloud 先开放,Edge 紧跟其后;
  • KV Base Access 在路上,给结构化数据一个轻量入口。

如果你已经在用 Claude Code、Cursor、Claude Desktop——挂上活字,不用再换一套思路。如果你在团队里需要一张所有 Agent 共享的桌子——欢迎来内测。

文具盒一直在变,桌子未曾离开。

双 · Eng
English

As of today, huozi.app is in beta. This is the moment the arguments from our last few posts — why a real file system instead of a document API, why HTML deserves first-class status, why Excel needs to come apart in three — finally land in a shipping product. The shape they all converge on is a single thing: a cloud-side text machine for Agents.

This post is the positioning. What layer we’re building on, and why.

1. Different things change at different speeds

Anyone trying to build for the Agent era has to answer one question first: what time scale does this thing live at?

The reality of the last twelve months:

  • Agents change monthly. A new Claude Code release, a new Cursor build, a new open-source Open Claw fork. Opus this month, Sonnet next month, somebody else’s model the month after.
  • Skills iterate weekly. New prompts, new tools, new MCP servers, new agent skills — all rewritten on a weekly cadence.
  • Data, goals, knowledge structures change yearly, if that. What a company is trying to do this year, the customer list, the product roadmap, research notes, contracts — these are genuinely slow.

Once you draw those three layers next to each other, the picture becomes obvious: the Agent layer will keep churning. The Skills layer will keep churning. Only the data and goals layer is the one users actually want to hold still.

The mistake most Agent tools make is to build themselves on the top two layers. Switch the Agent and the tool dies; swap the Skill set and the memory is gone. We chose the opposite. Huozi lives at the slowest layer, so it outlives any particular Agent and any particular skill stack.

2. Agents are plural; local will always be a barrier

Second, more concrete observation: nobody runs just one Agent any more.

It’s Claude Code and Cursor on the laptop, the Claude app and ChatGPT on the phone, an on-call Agent sitting in the team’s Slack, a research Agent on a cron in CI, Codex Web in a browser tab, and a small SDK script a colleague wrote last week. Agents are distributed from day one.

Which means: pinning data to “some particular local machine” is instantly a problem. Your laptop isn’t always on. The Agent on your phone can’t SSH back into your laptop to read last night’s draft. And teams have it worse — collaboration assumes a shared desk, which is exactly what local files don’t give you.

Teams need the same thing for a different reason: even the cleverest Agent needs a desk everybody can see, or there’s nothing to collaborate on. Huozi is also that shared playground — members, Agents, scheduled jobs, all working against the same file tree, every write landing in the same commit graph. Who changed what, when, and why is queryable.

3. md / csv / html are the new Office

The third claim — and the one our last few posts have been building toward:

In the Agent world, Word, Excel, and PowerPoint are all going to be replaced. Not by some company’s “AI Word 2.0,” but by token-friendly plain-text formats. Word becomes Markdown. Excel becomes CSV. PowerPoint becomes HTML. The reasoning is in Office for Agent — three layers (values, computation, presentation) that Excel welds together for humans, but that should come apart for Agents.

There’s an old problem with that, though: humans still find these “naked” formats hard to open and edit. Send a non-technical colleague a CSV and watch their face. Ask them to tweak an HTML page and they’ll go look for an editor first. So the other half of the work happening in huozi is making the “open it and just edit” experience as light as double-clicking a doc:

  • The Web UI renders the whole tree. CSVs become tables. Markdown previews live. HTML one-clicks out to /p/<slug>.
  • huozi_image_render takes raw SVG / Mermaid source and turns it into a content-addressed PNG under /__assets__/. The Agent writes a <svg> block, you get an image asset.
  • KV Base Access is shipping next — a lightweight on-ramp for the kind of structured data that grows row by row. The middle ground between “CSV is too loose” and “Postgres is too heavy.”

4. We took Claude Code’s local workflow and moved it to the cloud

Enough observations — what did we actually build? The most direct decision we made: do not invent a new “Agent document API.”

Claude Code already defined a very good local file workflow — Read / Edit / Write / Glob / Grep. These are the most stable verbs in the Agent-as-engineer dialect. What we did was port the semantics, bit-for-bit, into the cloud:

# Claude Code, locally:
Read(file_path: "notes/w17.md")
Edit(file_path: "data.csv", old_string: "...", new_string: "...")
Grep(pattern: "TODO")

# Huozi cloud, bit-exact equivalent:
huozi_read({ file_path: "notes/w17.md" })
huozi_edit({ file_path: "data.csv", old_string: "...", new_string: "..." })
huozi_grep({ pattern: "TODO" })

Same schemas, same error codes, same line-offset pagination, same old_string → new_string uniqueness contract. Any Agent that already speaks Claude Code’s dialect plugs into huozi without a single prompt tweak. The full reasoning is in MCP Design Principles.

The payoff of moving that dialect to the cloud is that three “any”s become true at once:

  • Any Agent. Claude Code, Cursor, Claude Desktop, your own SDK scripts — they all mount the same Workspace over MCP.
  • Any device shape. Start a draft on the laptop, finish it on the phone, let an on-call Agent in Slack file it away — three surfaces, one tree.
  • Any time. CI cron jobs, midnight research scripts, a sudden idea on the train — anything that can speak HTTP can reach the Workspace.

This is what we mean by the OpenClaw Gateways idea: MCP as a single gateway, every client / device / moment funneling writes into the same versioned tree.

5. Two editions: Cloud and Edge

Huozi ships in two editions, for two genuinely different audiences:

  • Huozi Cloud (huozi.app) — managed, multi-tenant, runs on our infrastructure. One-click signup, zero ops, global CDN and a content-addressed asset store included. Default for individuals and teams.
  • Huozi Edge — open-source, self-hosted, runs on your own Cloudflare account. Your data stays inside your perimeter. Same MCP tools, same semantics, zero external dependencies (no embedding service, no vector store). For organizations that need to keep data in their own boundary.

Both editions speak the same MCP dialect, with the same tool names and the same file semantics. What you write in Cloud today can move to Edge tomorrow, and vice versa. The dialect is the contract; deployment is an implementation detail.

6. Beta starts today

What this beta puts in your hands:

  • A cloud-side Workspace, driven by the same dialect Claude Code already speaks;
  • First-class support for md / csv / html — the new Office trio — with SVG, Mermaid, and a content-addressed asset store already running underneath;
  • Multi-Agent, multi-device, always-online — one Workspace is enough for collaboration;
  • Cloud opens first, Edge follows;
  • KV Base Access ships next, for structured data that lives between CSV and a real database.

If you’re already on Claude Code, Cursor, or Claude Desktop — mount huozi and keep your existing muscle memory. If your team needs a desk every Agent can share — come join the beta.

The pencil case changes. The desk stays.