MoreRSS

site iconGuyskk | 黄康德修改

曾在下厨房、一面数据、饿了么等公司实习,并在PayPal上海工作三年。目前为自由职业者/独立开发者,正在进行自宅创业。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

Guyskk | 黄康德的 RSS 预览

从文本补全到状态机循环:重定义 AI Agent 的操作系统架构

2026-02-23 16:00:00

引言:真正的瓶颈 - 上下文窗口容量

当 AI 大模型推理速度突破 5000 tokens/s,Agent 的 Re-Act 循环进入毫秒级时代,一个物理铁律浮出水面:有限的上下文窗口(200K~1M tokens)将在几十秒内被“思考”与“日志”填满。现有的“追加历史记录”模式瞬间失效,因为这无异于试图用容量极小的 L1 缓存去存储整个程序运行周期的所有数据流。

这一矛盾决定了 AI Agent 的技术终局:上下文窗口必须从“聊天记录堆”重构为“CPU 寄存器堆”。未来的 Agent 架构不再是简单的对话流,而是类似于操作系统的状态机循环——Context Window 只保留当前指令指针和核心状态寄存器,通过严格的“状态覆盖”替代无脑的“日志追加”,用信息熵减对抗数据洪流。

真正的瓶颈在于 LLM 的核心物理限制——上下文窗口容量。即便模型能力不断提升,上下文窗口从 200K 扩展到 1M,它依然是一个有限的物理容器。试图通过无限扩大窗口来承载 Agent 无限运行产生的日志,无异于试图用一杯水去接一条不断流淌的河。

我们必须从 Transformer 的本质出发,承认一个残酷的现实:Transformer 是无状态的,它通过重放历史来模拟状态。 如果 Agent 要像操作系统进程一样长久、稳定地运行,我们必须彻底重构它的运行模式。

本文将提出一种新的架构范式:将 AI Agent 从“文本补全机器”重构为“状态机循环”,并将其类比为汇编语言与 CPU 架构,以此解决上下文爆炸的根本问题。


一、 核心矛盾:日志驱动 vs. 状态驱动

目前的 AI Agent 大多基于 Re-Act 模式,其运行逻辑本质上是“日志驱动”的:

  • 输入:User Input + 全部历史对话+ 上一步工具返回。
  • 过程:LLM 阅读所有历史,预测下一步动作。
  • 输出:新的动作或回复。

这种模式的问题在于,为了维持“状态”,模型必须保留所有“过程”。这就像 CPU 为了执行下一条指令,必须把过去执行过的所有指令记录都读一遍。随着时间推移,Context Window 必然溢出,或者因注意力机制的 $O(N^2)$ 复杂度导致计算崩溃。

操作系统的启示: 在计算机体系结构中,CPU 执行指令只依赖两个东西:

  1. 当前指令指针:告诉 CPU 下一步做什么。
  2. 寄存器状态:告诉 CPU 当前数据是什么。

CPU 不关心上一毫秒执行了什么,只关心当前状态。Agent 也必须如此。


二、 架构重构:LLM 即汇编指令

如果我们将 Agent Loop 视为一段汇编程序,那么大语言模型(LLM)本身不再是那个无所不知的“大脑”,而是一条极其复杂的“状态转移汇编指令”

在这个模型下:

  • LLM 推理 = 一条汇编指令执行(耗时 100ms)。
  • Context Window = 寄存器堆
  • 磁盘/向量库 = 主存
  • Prompt = 指令操作数

Agent 的运行模式应当从“追加日志”转变为“寄存器操作”。每一次推理,都是一次 “状态读入 -> 计算 -> 状态写回” 的过程。


三、 设计原理:Context Window 的槽位化

既然 Context Window 是昂贵且有限的“寄存器”,我们就不能像写流水账一样随意填充。必须像设计 CPU 寄存器一样,对其进行严格的分区和结构化设计。

我们将 Context Window 划分为固定的“槽位”,每个槽位承载特定的功能:

1. .text 段:指令区(只读)

这是 Agent 的内核代码,定义了 Agent 的行为逻辑。

  • R_System (Instruction Set)
    • 定义 Agent 的身份、能力边界、工具使用规范。这相当于 CPU 的指令集手册,告诉 LLM 这条指令能做什么。
  • R_IP (Instruction Pointer)
    • 本质:程序计数器 + 任务栈。
    • 内容:当前执行的计划步骤。
    • 示例
      [Goal] Fix Bug #404
      [Step 1/3] Read main.py (Done)
      [Step 2/3] Locate error line -> [Current IP]
      [Step 3/3] Apply fix
      
    • 作用:LLM 只需看 R_IP 即可知晓“我在哪,要去哪”,无需回溯历史。

2. .data 段:数据区(读写)

这是 Agent 的工作台,也是上下文工程的核心。

  • R_State (Global State Register)
    • 本质:全局状态寄存器。
    • 约束长度严格受限(如 4K tokens)。
    • 形式:结构化文本(JSON/YAML),与向量等价,但人类可读可调。
    • 内容示例
      {
        "task_status": "debugging",
        "open_files": ["main.py"],
        "error_line": 102,
        "key_variables": {"user_id": null}
      }
      
    • 维护不追加,只覆盖。 通过 Edit Tool 进行增量更新。
  • R_Working (Scratchpad)
    • 本质:通用寄存器(AX, BX)。
    • 内容:当前步骤的临时数据、工具调用的原始返回结果。
    • 生命周期:极短。任务步骤完成后立即清空,为下一轮腾出空间。

3. .stack 段:调用栈

  • R_CallStack
    • 当 Agent 执行子任务或调用子 Agent 时,将当前的 R_StateR_IP 压栈。任务结束后弹出恢复。

四、 实现机制:熵减循环

基于上述架构,Agent 的 Re-Act Loop 变成了一个标准的 CPU 指令周期。这个过程的核心在于 “信息压缩”

Cycle 1: Fetch(取指)

注意力机制聚焦于 R_IPR_State。模型不需要知道“之前发生了什么”,只通过当前状态判断“现在该做什么”。

Cycle 2: Decode(译码)

模型根据 R_System 的规则,分析当前状态是否需要调用工具,或者是否需要更新内部状态。

Cycle 3: Execute(执行)

模型输出两部分内容:

  1. Tool Call:对外部世界的操作(如 Read_File)。
  2. Delta_State:对内部寄存器的修改指令(如 Update_State)。

Cycle 4: Writeback(写回)

这是解决上下文爆炸的关键步骤:

  • 外部数据:工具返回的大量数据(如 10,000 行日志)写入 R_Working
  • 状态压缩:LLM 分析 R_Working,提取关键信息(如“错误在第 500 行”),生成 Delta_State 更新 R_State
  • 清理丢弃 R_Working 中的原始数据。

结果:10,000 行的日志被压缩成了 R_State 中的一个字段 "error_line": 500。上下文占用仅增加几个 Token,但信息被完整保留。这就是“状态机”对抗“上下文爆炸”的武器。


五、 新范式:精心设计 Context Window 的布局

在这种架构下,我们需要精心设计 Context Window 的布局,引导 LLM 遵守寄存器约束。

Prompt 模板示例

# [R_System] Instruction Set
You are a State-Machine Agent. Maintain state strictly in JSON format.
Output format:
1. <tool_call name="..."/>
2. <state_update key="..." value="..."/>

# [R_IP] Current Instruction Pointer
Goal: Analyze Stock Trend
Step: 3/5 (Calculate Moving Average)

# [R_State] Global Registers (Max 4000 tokens)
{
  "ticker": "AAPL",
  "trend": "UP",
  "analysis_progress": "50%"
}

# [R_Working] Scratchpad (Last Tool Output)
[Tool: API] Returned 1000 data points... (Large Text)

# [Input]
Based on R_State and R_Working, generate Next Tool Call and State Update.

结语:通往操作系统之路

AI Agent 的未来,不是让模型拥有无限的记忆,而是让模型学会像操作系统一样高效地管理资源。

通过引入指令指针(R_IP)状态寄存器(R_State),我们将 Agent 的运行模式从线性的“文本流”转变为循环的“状态机”。在这个架构下,无论 Agent 运行一秒钟还是一百年,其 Context Window 的占用始终稳定在一个可控的范围内。

这才是 AI Agent 从“玩具”走向“工业级应用”的必经之路。我们不是在写对话,我们是在编写 AI 的汇编代码。

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

分析 Claude Code 提示词的方法 - mitmproxy

2026-01-19 16:00:00

想了解 Claude Code 的提示词是怎么设计的,最直接的方式就是抓包分析。通过网络流量,可以看清它的 System Prompt、Messages、Tools 等核心信息。

安装 mitmproxy

官方文档: https://www.mitmproxy.org

uv tool install mitmproxy

反向代理模式

大多数教程用正向代理,需要配置系统代理和 CA 证书。更简单的方式是用反向代理:

mitmweb --mode reverse:https://open.bigmodel.cn --listen-port 8125

这个命令会:

  • 反向代理到智谱AI 的 API
  • 在本地 8125 端口监听
  • 打开 Web 界面查看流量

然后把 Claude Code 配置中的 API 地址改成代理地址,正常使用即可。

ANTHROPIC_BASE_URL: http://127.0.0.1:8125/api/anthropic

查看流量

在 mitmweb 界面中可以看到所有请求和响应:

  • Request - 包含 system、messages、tools 等字段
  • Response - LLM 的流式响应

点击具体的请求,就能看到完整的提示词内容了。

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

Claude Code 监督器:让 AI 主动把事情做好

2026-01-11 16:00:00

前段时间做了一次 AI 大模型技术分享,顺手 Vibe coding 了一个小工具 claude-code-config-switcher,用来在不同 Claude Code 提供商之间快速切换。

后来我给这个工具新增了一个 Supervisor 模式,用了一段时间之后感觉非常有价值,于是把项目改名为 claude-code-supervisor

什么是 Supervisor 模式

用过 Claude Code 的朋友应该有这个体验:有时候 AI 声称”完成了”,但实际上还有一堆问题没解决。比如测试没跑、代码质量很差、功能不完整等等。这时候就需要你再跟 AI 说几轮,让它继续完善。

Supervisor 模式就是为了解决这个问题。它的原理很简单:

  1. AI Agent 完成任务后,Supervisor(另一个 AI 实例)会自动审查工作质量
  2. 如果没完成或质量不达标,Supervisor 给出反馈,让 Agent 继续
  3. 重复这个过程,直到 Supervisor 确认工作真正完成

这个机制利用了 Claude Code 的 Stop Hook,当 Agent 停止时自动触发审查。Supervisor 会 Fork 完整的会话上下文,评估实际的工作质量,而不是简单检测一些关键词或信号。

为什么这很有用

使用 Claude Code 最大的痛点,就是 AI 经常会把问题抛回给用户:

  • “是否需要运行测试?”
  • “应该如何处理这个错误?”
  • “你希望我用什么方式实现?”

这些问题本该是 AI 自己解决的。有了 Supervisor 模式,Supervisor 会检查:

  • Agent 是否在等待用户确认?
  • 是否做了应该自己做的事?
  • 代码质量是否达标?
  • 用户需求是否全部满足?

如果发现问题,Supervisor 会给出具体反馈让 Agent 继续。比如:”你声称完成了,但没有测试,请添加测试。”

一个真实的例子

最近我用 Supervisor 模式做了一个实验(使用GLM 4.7模型),只给 AI 一个很简单的提示词:

用 JS 写一个在浏览器玩的双人坦克对战生存游戏,我和 AI 在有砖墙和钢墙的迷宫战场中驾驶坦克利用掩体进行战术射击对决,游戏要完整、精美、超高质量,AI 要有超强的战术水平。

结果让我很惊讶。在 Supervisor 的监督下,AI 完成了一个功能完整的坦克大战游戏:

  • 精美的画面和流畅的动画
  • 智能的 AI 对手,会利用掩体、预判玩家位置
  • 迷宫地图生成,砖墙可破坏、钢墙不可破坏
  • 游戏控制(键盘 WASD + 方向键)
  • 完整的游戏循环(开始、对局、结束、重开)

游戏地址:https://blog.guyskk.com/shows/tankbattle/

最关键的是,整个过程我只需要给出初始需求,剩下的全部由 AI 在 Supervisor 监督下自动完成。没有中间轮次,没有反复沟通,一次性交付高质量成果。

与 Ralph 的区别

可能有朋友知道 ralph-claude-code 这个项目,它也能实现类似的监督功能。两者的主要区别在于:

方面 Ralph ccc
检测方式 AI 输出结构化状态 + 规则解析 Supervisor AI 直接审查
评估方式 基于信号和规则 Fork 会话上下文评估实际质量
灵活性 需要更新规则代码 更新 Prompt 即可

ccc 采用的是 AI-First 的设计理念。规则检测的局限性在于需要预定义所有情况,难以覆盖边缘场景。而 AI 审查能理解上下文,处理边缘情况,随着模型能力提升自动改进。

项目地址

claude-code-supervisor 已经开源,欢迎体验:https://github.com/guyskk/claude-code-supervisor

主要功能:

  1. Supervisor 模式:自动任务审查,确保高质量可交付成果(新增核心功能)
  2. 提供商切换:一条命令在 Kimi、GLM、MiniMax 等提供商之间切换(原有功能)

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

我的AI大模型技术分享2025

2025-12-31 16:00:00

前段时间做了一次AI大模型技术分享,本想早点把资料整理出来,一拖就到了2026年。趁着元旦假期,把分享材料整理好发出来,希望能对大家有帮助。

这次分享覆盖了AI大模型的方方面面,从底层原理到产品实践,包括:大模型是什么、Agent怎么工作、提示词工程、AI产品开发新范式等等。内容比较多,整理成了PDF,感兴趣的朋友可以直接查看:2025-AI大模型技术分享-PDF

分享之后,又 Vibe coding 了一个小工具 claude-code-config-switcher(简称ccc),现已开源。这个工具解决的问题是:Claude Code虽然很好用,但想在不同提供商(Kimi、GLM、MiniMax等)之间切换,每次都要手动修改配置文件,很麻烦。用ccc的话,一条命令就能切换,欢迎体验:https://github.com/guyskk/claude-code-config-switcher

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

三十而砺 - 反思我的创业

2025-05-21 16:00:00

转眼间到了而立之年,回首过去四年创业路,失败已成定局,但它教会了我什么是真正重要的。就像乔布斯在斯坦福演讲所说:”你无法预先把点滴串联起来,只有回头看时才会明白那些点是如何连成线的。”

商业的规律

四年探索,尝试了很多方向,做了很多产品,却没有真正赚钱。仔细思考最本质的原因:违背了商业第一性原理。

简陋的产品=不好卖吗?

不一定。只要用户需要,能满足其需求,照样可以卖的很好,赚的钱可以把产品做的更好,形成增长飞轮。用户需求的本质是解决方案,产品只要精准击中痛点,就能创造价值闭环。

有需求=能变现?

也不一定。用户可能不知道你的产品,你得想办法做好推广,找到目标用户。再好的产品,如果无法用正确方式出现在目标用户面前,等于不存在。

有需求+找到用户=能赚钱?

市面上有很多替代(免费)方案,产品得有(用户认为的)足够显著的差异化价值,才能让用户愿意为你的方案付费。

商业规律就是许多简单的常识,早点领悟这些,我能少走80%的弯路。真正符合商业规律的产品机会少之又少,如同沙里淘金。

创业是不断升级认知的修行,看的更远、更透彻,做更多符合商业规律的正确选择。

创业的收获

创业四年后悔吗?我的回答是,完全不后悔创业,唯一后悔的是成长速度还不够快。

积累了经验,提升了认知和能力

创业是最高效的实战学习。做的每个产品和功能就像是一次实验,运用自己的能力(原料),投入自己的想法(配方),期待发生神奇的反应,源源不断产生用户和收入。

最开始做的实验毫无章法,像小孩玩泥巴一样,瞎折腾一通。然后开始摸索总结经验,学会系统思考,看更多的书,向有结果的人学习,做更多实验去验证想法。大部分实验失败了,还有一些也不太成功,只产生了一些半成品。

自由职业,有时间照顾家庭

自由职业的状态让我有时间陪伴家人,工作间隙给小孩喂一下奶、陪她玩一会,放松眼睛和大脑,每天遛娃、散步正好锻炼身体。

有了小孩之后,合理高效安排自己的时间是个挑战,工作时长会不如以前,但并不是坏处,身体是革命的本钱,保持工作与生活的动态平衡,这才是可持续的发展模式。

后续的打算

标准化产品路线暂时搁置。后续我主要做定制项目/接单/远程兼职。定制开发网站、小程序、AI自动化工作流、浏览器插件、自媒体工具等。

这些都是我擅长的领域,技术能力完全满足,开发工期大致为1天~2周,最长不超过1个月,确保交付质量与效率。

我会继续不定期分享商业思考和技术经验,欢迎同行者交流碰撞。

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

自宅创业 - #34 宝贝女儿出生,我当爸爸了

2024-11-30 16:00:00

最近创业没太多进展,值得开心的是我的宝贝女儿出生了,我当爸爸了,开启新的人生体验!

产品和创业方面感觉没什么可写,推荐几本最近看的书:

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!