Jev 团队公开 Coding Agent 设计草案:每轮重新决定模型「该看什么」,fast-jev-compaction 只是第一步
Jev 团队公开 Coding Agent 设计草案每轮重新决定模型「该看什么」fast-jev-compaction 只是第一步【免费下载链接】fast-jev-compactionClaude Code plugin that replaces the compaction summary with Jev decisions: every tool call and result is scored in one fast request, stale ones are dropped or truncated, everything kept stays verbatim.项目地址: https://gitcode.com/gh_mirrors/fa/fast-jev-compaction2026 年 9 月中旬TypeSafe AI 发布了一款名为 Jev 的「System One Model」——它不生成文本只针对给定的材料输出 choice、score、noul 三类结构化答案每个问题耗时约 70–500 毫秒输出 token 免费。这则消息在 Hacker News 上一天内冲到 1863 分、491 条评论随后两周内带出了一个包含 28 个项目的开源生态。其中被讨论最多的是一个叫 fast-jev-compaction 的 Claude Code 插件它把/compact从「让模型写摘要」改成了「给旧工具调用逐项打分」实测可将约 18.8 万 token 的会话压到 3.3 万耗时约 1.4 秒。但比这个数字更值得注意的是 Jev 团队同步公开的一份 Coding Agent 设计草案。其核心表述可以浓缩为一句话每一轮都重新决定模型该看什么。fast-jev-compaction 正是这个理念的第一个工程化落地——而它暴露出的争议与边界恰好勾勒出下一代 Coding Agent 上下文管理的完整问题域。本文结合社区情报与仓库源码把这个「第一步」拆开看。一份「不写摘要」的草案每轮重看逐条判定传统上下文压缩的范式是「改写」让 LLM 把前面的对话重新写成一份短摘要。问题很直观——文件路径、精确报错、限制条件、已经试过的失败方案都可能在改写时消失而它们恰恰是长会话里最不能丢的工程证据。fast-jev-compaction 换了一个思路。它不生成任何一个字而是把「保留什么」变成逐条判断题把每个tool_use和对应的tool_result配成一组让 Jev 分别回答两个问题——「这个调用还需要保留吗」「它的结果还需要原样保留吗」Jev 不是聊天模型它接收一段状态和一组结构化问题返回概率让代码自己决定下一步。这正对应草案的核心每一轮压缩都不是「把已有上下文变短」而是基于当前任务目标重新决定哪些记录还该被模型看见。在仓库里这一理念落在三个层次上第一任务目标被显式建模。每次请求发送给 Jev 的 state 包含三部分一段固定的上下文说明context、当前任务描述goal和完整历史history。其中goal默认取最后三条用户提示——这是「当前正在做什么」的锚点见 src/state.ts 的goalFromMessages。Jev 就是对着「任务目标 完整历史」来做每一道判断题而不是按时间窗口一刀切。第二历史以「全量 占位」形态呈现。发送给 Jev 的 history 是整段对话、最旧在前但每条工具结果都被替换成一行短注记格式形如ok, 4213 chars (omitted)见resultNote。也就是说Jev 能看到调用了哪个工具、传了什么参数、结果有多长但看不到那 4213 个字符的正文。这个设计决策在后续社区回放测试中引发了最大的争议下文会详述。第三决策粒度是「单条调用」。对每条非钉住的工具调用Jev 收到两个noul问题src/compact.ts 的questionsForTool call t12 (Bash) should stay in the history: knowing this call was made, with its input, still matters for what the assistant does nextThe full output of tool call t12 (Bash, 4213 chars) should stay in the history verbatim: the assistant still needs its contents and re-running the tool would not do注意第二问的措辞它把「结果是否值得原样保留」与「重新运行工具是否可行」绑定在一起——这是对工程事实的尊重读文件可以重来但写文件、调外部 API、改变环境状态的调用其输出一旦删除就可能无法无损复现。从「压缩已有上下文」到「主动决定看什么」源码里的范式跃迁如果只把 fast-jev-compaction 当成「更好的压缩插件」就低估了它的位置。它是「判断与生成解耦」这条新路线的示范性实现上下文管理不再由生成模型负责有损、慢、贵而由决策模型负责无损、快、便宜。整套流程在源码里清晰可读核心是 src/compact.ts 的compact函数1. 配对与钉选。collectToolCalls按tool_use_id把每次工具调用与它的结果配对首条消息和最新的preserveRecentMessages默认 6条消息被钉住永不参与删除src/state.ts 的isPinned。这是「最近的工作记忆必须完整」的工程直觉。2. 状态分级收缩。完整历史要先塞进maxStateTokens默认 25k预算。fitState按序尝试一系列收缩阶段每一级只在上一级不够时生效src/state.ts工具输入先截到 1000、再 200、再 60 字符inputs1000/200/60长文本按「头 400 尾 150 字符 省略注记」缩写texts abridged最旧的非钉住消息优先旧的非钉住消息折叠为[… N chars omitted …]注记旧工具调用压缩为单行如t12 Read file_pathsrc/a.ts → ok 480ch旧的无调用消息直接剔除连续的工具调用消息合并。整个收缩过程没有 tokenizer——estimateTokens用「单词按每 6 个字母 1 token、数字半个、符号 0.9」的经验公式估算并针对 Jev 上报的用量做了校准。这是一套典型的低成本工程近似。3. 分批并发请求。问题被拆成多批每批的「完整 state 问题」不超过maxRequestTokens默认 30k低于 Jev 的 32k 请求上限。注意完整 state 会随每一批请求重复发送各批并发执行、答案合并。这个设计的代价请求越多重复发送越大在 README 的 Limitations 里被坦率承认。4. 阈值裁决。每条调用按keepThreshold默认 0.5三档处理src/compact.ts 的decideCallkeepResult ≥ 0.5→ 调用与结果都原样保留否则keepCall ≥ 0.5→ 保留调用结果截断到前truncateHeadChars默认 300字符加一行注记否则 → 调用连同结果一起删除。5. 逐字保真重建。applyDecisions重建消息列表被删调用的消息连同结果一起消失被截断的结果保留头部与注记完全未触碰的消息原对象返回——这意味着用户与助手的文本、顺序、逐字内容零改写。测试tests/fast-jev-compaction.test.ts甚至断言了「短结果消息连同其 handle 原样保留」这一行为。6. 双形态部署。仓库既是 npm 库src/入口 src/index.ts一行compactMessages即可接入又是一个 Claude Code function-hook 插件hooks/fast-jev.ts。插件的价值在于把决策嵌进 Agent 的日常节奏turn.complete钩子在上下文水位达到compactAtPercent默认 60%时自动触发压缩session.compact钩子把转录交给 Jev压缩率低于minReductionRatio默认 0.25或 Jev 失败时回退到 Claude Code 内置摘要。失败兜底 阈值护栏是这类「把判断外包给模型」的组件能上生产的关键设计。争议与盲区社区回放测试给出了诚实的反面证据这篇草案最值得参考的地方在于它的第一步落地同时暴露了「逐条判定」路线的真实盲区社区的回放测试给出了相当扎实的反面数据。知名开发者 Theot3.gg看过演示后写了一篇措辞很重的长评标题就叫Compaction isnt a filter压缩不是筛选。他的核心区分是整理任务状态和逐条过滤工具记录并不是一回事。模型做摘要时会利用整段对话重新整理当前目标、已确认事实、失败路径和下一步动作而逐条判定是局部判断可能保住一条「看起来有用」的记录却丢掉它与前后步骤的关系。他进一步指出了实现层面的硬伤为了把整段历史塞进 Jev 的状态上限插件不会把完整工具结果交给 Jev它看到的只是ok, 4213 chars (omitted)这样的占位——失败原因一旦被删Agent 就会忘记哪些方案已经试过进入「反复执行同一种失败操作」的 stupid loops。随后 GitHub issue #26 的真实会话回放几乎精确命中了他的担心测试者用 2 个项目的 16 段 Claude Code 会话在上下文达到 12 万 token 时触发压缩让 Jev 评估 256 个非固定工具调用。结果——256 个工具结果没有一个保留分数达到 0.5240 个结果被删除或截断字符数减少 87.7%。而一个永远回答「都不要保留」的假评分器字符数减少 88.5%两者几乎一样。另一组更激进的对比测试显示Jev 删掉了 98.7% 的上下文但在复杂会话里丢了 7 个关键测试与边界事实中的 6 个。这些数据说明三件事。其一当 Jev 看不见结果正文时它的「保留概率」会系统性偏低——占位信息ok, 4213 chars (omitted)里藏着的那 4213 个字符恰恰可能是最关键的报错堆栈。其二压缩率不是正确性的代理指标一个「全删」的假评分器在压缩率上几乎不输。其三逐条判定存在递减回报工具结果越删越少后续能释放的空间越小长会话最终仍需要真正的摘要或外部记忆兜底。此外还有一层成本视角提示词缓存依赖历史前缀不变。删掉历史中间的内容后面的消息可能都要重新写入缓存——在部分用户的账单里 cache write 曾超过总模型开销的 60%「用更贵的缓存写入换更小的上下文」未必划算。这也是为什么插件坚持「留下的内容保持原样、位置不变」——前缀稳定性本身就是保真的一部分。从第一步到下一步Coding Agent 的产品形态正在被改写把 fast-jev-compaction 放回整个 Jev 生态里看它的意义会清晰很多。社区两周内长出的 28 个项目里有一条高度一致的架构规律写和想归大模型判和选归 Jev执行权留在确定性代码里——网页操作 Agent 只让 Jev 选「下一步做什么、点哪个元素」交易系统只让 Jev 判断市场状态而绝不碰下单键代码审查工具让 Jev 打分、Agent 和人改代码。fast-jev-compaction 是这条规律在「上下文管理」这个最痛的工程环节上的示范。由此可以推导草案对 Coding Agent 产品形态的几点连锁影响上下文从「被动衰减」变成「主动选择」。传统 Agent 的上下文是「灌满 → 摘要 → 继续灌」的衰减循环摘要质量决定 Agent 的长期记忆。而「每轮重新决定该看什么」意味着上下文变成按当前目标动态组织的证据集每一轮根据任务goal判定哪些历史记录仍然相关不相关的删掉相关的逐字保留。保留的内容不再有「摘要改写」这一层失真Agent 看到的就是它当初看到过的原文。判断与生成的带宽分离。Jev 每问 70–500 毫秒、输出免费、可并发而生成式压缩要跑一次完整 LLM 推理且输出 token 收费。当「该保留什么」这类高频、窄域、可回退的判断从生成模型里剥离出来Agent 的每次迭代成本曲线会被显著压平——这正是草案想撬动的杠杆。「每轮」需要更细的编排。fast-jev-compaction 的turn.complete钩子已经演示了「每轮检查水位、触发决策」的节奏但真正面向生产还需要社区提出的三层保护让 Jev 看见工具结果的关键片段而非纯占位默认固定失败、编辑和不可重跑的输出用任务成功率与缓存成本评估效果而不是只看压缩率。作者在 issue 讨论中也用「厂商自己的上下文管理同样会清理工具结果Jev 想把这件事做得更有选择性」回应了「它只是在删 tool results」的批评——方向没错选择性还不够。回到开头那份草案。「每轮重新决定模型该看什么」在 fast-jev-compaction 里的实现只是第一步它证明了决策模型可以接管上下文管理中最危险的部分——决定什么可以被安全遗忘——并且做到留下的内容逐字保真。而 issue #26 的回放数据同时证明把「结果正文」从决策者的视野里拿掉是当前最大的盲区压缩率也不该是唯一的目标函数。对于正在设计下一代 Coding Agent 的工程团队这份草案给出的不是答案而是一组更准确的提问你的 Agent 每轮该看什么谁来做这个决定它看到的是全量证据还是占位符以及——你用什么指标判断它删对了【免费下载链接】fast-jev-compactionClaude Code plugin that replaces the compaction summary with Jev decisions: every tool call and result is scored in one fast request, stale ones are dropped or truncated, everything kept stays verbatim.项目地址: https://gitcode.com/gh_mirrors/fa/fast-jev-compaction创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

波士顿房价数据集:从套娃zip到线性回归建模与避坑指南

波士顿房价数据集:从套娃zip到线性回归建模与避坑指南

简介:面向机器学习和数据科学入门学习者的波士顿房价数据集压缩包,适用于需要开展回归预测练习、特征工程或基础模型训练的开发者与学生。该数据集围绕经典房价预测场景展开,在压缩包内整合了数据说明、处理脚本和原始数据,便于快…

2026/10/11 13:45:08 阅读更多 →
YOLOv8+PyQt5自行车违停检测:完整源码与实战指南

YOLOv8+PyQt5自行车违停检测:完整源码与实战指南

简介:本资源面向计算机、人工智能、自动化等专业的在校学生与开发者,提供一套基于YOLOv8与PyQt5的自行车违规停放检测告警项目源码,可用于毕业设计、课程设计、学科竞赛或项目立项演示。项目包含自行车数据集、已训练好的YOLOv8模型及评估曲线…

2026/10/11 13:44:07 阅读更多 →
MEX 框架路由解析器揭秘:Express、Next.js、FastAPI、Flask、NestJS 如何被读懂

MEX 框架路由解析器揭秘:Express、Next.js、FastAPI、Flask、NestJS 如何被读懂

【免费下载链接】mex Team memory for engineers and their AI agents. Lives in your repo. Shared through Git. 项目地址: https://gitcode.com/gh_mirrors/mex2/mex 点击查看 免费下载 MEX 是一款面向工程师与 AI 代理的开源团队记忆工具,知识存放在…

2026/10/11 13:44:07 阅读更多 →

最新新闻

PEMFC氢燃料电池建模及Simulink仿真(仿真+参考资料)

PEMFC氢燃料电池建模及Simulink仿真(仿真+参考资料)

✅作者简介:热爱科研的Matlab仿真开发者,擅长数学建模、模型改进、算法创新、程序设计科研仿真。🍎 往期回顾关注个人主页:完整代码获取 定制创新 论文复现私信🍊个人信条:做科研,博学之、审问之…

2026/10/11 14:37:39 阅读更多 →
【电机】恒定Vf控制对三相感应电机进行动态Matlab仿真,分析速度、电磁扭矩和三相电流响应

【电机】恒定Vf控制对三相感应电机进行动态Matlab仿真,分析速度、电磁扭矩和三相电流响应

✅作者简介:热爱科研的Matlab仿真开发者,擅长数学建模、模型改进、算法创新、程序设计科研仿真。🍎 往期回顾关注个人主页:完整代码获取 定制创新 论文复现私信🍊个人信条:做科研,博学之、审问之…

2026/10/11 14:37:39 阅读更多 →
Oracle OGG异构同步实战:Windows到Linux安装部署与避坑指南

Oracle OGG异构同步实战:Windows到Linux安装部署与避坑指南

简介:这份PDF资料聚焦Oracle GoldenGate(OGG)在异构环境下的部署实践,面向需要完成Windows到Linux跨平台Oracle数据同步的DBA与运维工程师,尤其适合已具备基础数据库知识、希望掌握OGG 12.2.0.2版本落地流程的中高级技…

2026/10/11 14:37:39 阅读更多 →
Oracle APEX实战:从环境搭建到避坑的完整指南

Oracle APEX实战:从环境搭建到避坑的完整指南

简介:Oracle APEX深入浅出是一份系统讲解Oracle APEX开发的中文指南,面向需要快速构建企业级Web应用的开发者、数据库管理员及APEX初学者。文档从APEX简介与环境搭建起步,逐步展开账户管理、开发概要、页面布局美化、各类控件使用、Report常用…

2026/10/11 14:37:39 阅读更多 →
如何保证805个技能从不静默失败?Unity-Skills的测试体系与静默降级审计实践

如何保证805个技能从不静默失败?Unity-Skills的测试体系与静默降级审计实践

【免费下载链接】Unity-Skills AI automation skills specifically designed for Unity 项目地址: https://gitcode.com/gh_mirrors/un/Unity-Skills 点击查看 免费下载 当 AI 自动化工具驱动真实工程时,最可怕的不是报错,而是表面一片绿色。…

2026/10/11 14:37:39 阅读更多 →
MySQL面试核心知识点:索引、日志与主从同步全解析

MySQL面试核心知识点:索引、日志与主从同步全解析

简介:MySQL 面试题知识点总结资料包围绕数据库岗位面试高频考点整理,适合正在准备后端开发、数据库工程师等岗位面试的开发者查漏补缺。内容涵盖关系型与非关系型数据库差异、一条 MySQL 语句的完整执行流程、索引底层数据结构与常见类型、MyISAM 与 Inn…

2026/10/11 14:36:38 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →