6568★ 只用了 7 天但增速已经转缓fast-jev-compaction 的 GitHub 曲线说明什么【免费下载链接】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-compaction9 月 15 日前 OpenAI 研究员创办的 TypeSafe AI 发布了一个不生成文本的决策模型 Jev一天之内在 Hacker News 冲到 1863 分、491 条评论随后一周围绕它的开源项目如雨后春笋般冒出来。fast-jev-compaction 是其中传播声量最大的一个——它把 Claude Code 的上下文压缩从LLM 写摘要替换成Jev 逐条做选择题社区文章在 9 月下旬记录到 4.7k★撰写本文时已到 6568★而 GitHub 页面上的数字此刻已滚动至约 7.5k。真正值得琢磨的不是它涨得多快而是前 7 天的暴涨和之后的增速转缓分别说明了一款事件驱动型开源项目的什么本质本文结合社区传播记录与仓库源码复盘这条曲线并给出三层解读。一、时间线复盘从 4.7k 到 6568★一条典型的事件驱动曲线把可验证的数据点按时间排开曲线形态一目了然9 月 15 日Jev 模型发布发布 3 天登顶 HN成为社区热帖9 月中旬fast-jev-compaction 作为 Jev 落地的代表项目被反复引用。9 月 17 日仓库主分支已合并到第 17 个 PRREADME.md 的标语定型9 月下旬社区文章头条系《Github 4.7k starfast-jev-compaction 的上下文压缩新玩法》记录了 4.7k★ 的时点10 月初CSDN、掘金上相关解读文章密集出现选题快照时点约 6568★本文检索 GitHub 页面时约 7.5k★、521 forks、43 issues、68 PRs、30 commits。由此可以估算两个阶段的斜率口径以公开数据点为锚做保守区间推算阶段区间星标增量日均增量折算小时爆发期Jev 发布后数天内0 → 4.7k约 900–1200★/天约 40–50★/h平台期10 月初至今6.5k → 7.5k约 90–120★/天约 4–5★/h量级相差约10 倍。前 7 天涨到数千 star靠的是Jev 刷屏这个新闻事件带来的注意力洪流之后的斜率才是项目自身持续吸引力的真实水平。这两条斜率的分野正是本文要拆解的核心。二、源码视角它凭什么能在 7 天里冲上来暴涨需要三个条件切中真实痛点、机制反直觉且可解释、工程完成度超出demo预期。fast-jev-compaction 恰好三点全占。1. 切中真实痛点摘要式压缩天生有损所有 LLM 上下文压缩的主流做法是把旧轮次概括成摘要但摘要是有损的——一个文件路径、一条精确报错、一个约束条件、一条 CLI 命令可能在下文需要它时已经消失。仓库的 README.md 开头就把这个痛点讲得很直白A summary is lossy: a file path, exact error, constraint, or command can disappear even when it matters later.社区文章的叙事也高度一致抛弃 LLM 有损摘要告别摘要幻觉。对于 Claude Code 这类 Coding Agent 的长会话丢失文件路径与报错堆栈意味着任务中断和返工这是所有重度用户都体验过的切肤之痛。2. 机制反直觉且可解释压缩被改写成选择题它没有发明新的摘要模型而是彻底换了一条路不生成任何新文本只对每条工具调用做保留/删除决策。核心流程在 README.md 里有完整描述源码层面可以对应到 src/compact.ts每个非钉住的工具调用会被拆成两个noul是否问题由 src/compact.ts 的questionsFor构造export function questionsFor(call: ToolCall): JevQuestions { return { [call_${call.id}]: { type: noul, instructions: Tool call ${call.id} (${call.tool}) should stay in the history: ..., }, [result_${call.id}]: { type: noul, instructions: The full output of tool call ${call.id} (${call.tool}, ${call.resultChars} chars) should stay in the history verbatim: ..., }, }; }两个概率调用是否还需要、完整结果是否还需要汇入decideCall的三档决策同样在 src/compact.tsif (call.pinned) return { ...base, action: keep, reason: pinned }; if (answer.keepResult options.keepThreshold) { return { ...base, action: keep, reason: kept }; } if (answer.keepCall options.keepThreshold) { return { ...base, action: drop_result, reason: result_dropped }; } return { ...base, action: drop_call, reason: call_dropped };即结果概率达标 → 调用与结果都保留仅调用概率达标 → 保留调用、结果截断到前truncateHeadChars个字符两者都不达标 → 调用连同结果一起删除。几个设计细节让这套机制在工程上站得住钉住保护src/state.ts 的isPinned保证第一条消息和最近preserveRecentMessages条消息永远不被触碰——近期上下文是 Agent 正在用的工作区不能动状态可见Jev 看到的是整段历史工具结果替换为ok, 4213 chars (omitted)这类短注记绝不改写原文见 src/state.ts 的STATE_CONTEXT无损承诺用户/助手文本逐字保留、顺序不变删除只发生在工具调用与结果上——这正是无损二字的落点分批并发完整 state 随每批问题重复发送批次按maxRequestTokens预算切分、并发执行后合并答案。3. 工程完整度超预期不是 demo是产品暴涨期社区见到的往往只是叙事但 star 转 fork521 个 fork背后是代码质量。这个仓库的工程细节经得起看双形态既是 npm 库src/又是 Claude Code 函数钩子插件hooks/fast-jev.tsMessage类型是SessionMessage的子集会话转录可直接传入参数体系keepThreshold、preserveRecentMessages、maxStateTokens25k、maxRequestTokens30k、truncateHeadChars、compactAtPercent、minReductionRatio等 8 个关键旋钮见 hooks/README.md无 tokenizer 的 token 估算src/state.ts 的estimateTokens用字符形态估算词按每 6 字母一 token、数字半 token、其他符号 0.9并校准到略高于 Jev 报告值——省掉 tokenizer 依赖且避免了纯字符比率的 40% 低估分阶段状态适配工具输入截断1000→200→60 字符、长文本 headtail 摘编、旧消息折叠为[… N chars omitted …]、旧调用压缩为一行、旧无调用消息剔除、纯调用消息运行合并——六档逐级收紧直到塞进maxStateTokens回退设计hooks/fast-jev.ts 在 Jev 失败、响应畸形、缺 key、历史无法适配或缩减率低于minReductionRatio时一律回退到 Claude Code 内置摘要并 toast 告知——新机制失败时世界照常运转是生产级插件的标志测试隔离tests/fast-jev-compaction.test.ts 用 fake Jev 跑完整管线测试永不联网传播素材demo/JevDemo/main.swift 是一个 SwiftUI 动画应用把工具调用变红、折叠消失、其余逐字保留的过程做成可录屏的演示——README 明确说它exists to be screen recorded。这是典型的传播型 demo不调 API纯脚本演出专为短视频和博客配图而生。三、增速转缓的三层解读从 ~40★/h 跌到 ~4–5★/h不是单一原因而是三层因素叠加。1. 话题冷却新闻事件的自然半衰期Jev 的爆发本质是新闻事件而新闻事件有半衰期。刷屏一周后社区讨论已经进入第二轮——质疑期掘金出现《别吹 Jev 了》海外有 Redis 之父对 Jev 狂热的质疑InfoQ 转载绝大多数开发者其实不需要它。star 曲线跟随的是注意力曲线当注意力从这是什么转向它有什么问题第一波围观型 star自然停止。2. 功能饱和核心故事已经讲完到 10 月初仓库 30 commits、v0.2.0压缩管线、插件适配、参数体系、回退机制、动画 demo 全部就位。项目的功能故事讲完了而 README 的 Limitations 明确划出了边界只删除工具调用与结果文本消息永不删除或缩短token 规模是字符估算不是 tokenizer概率是请求级别的校准不是结果安全删除的证明完整 state 随每个请求重复发送接近状态上限时一个请求只能带少量问题。这些边界是诚实的但也意味着没有新的叙事注入增长就没有新的燃料。下一次斜率抬升需要新故事——比如接入更多宿主、支持本地决策模型、更激进的文本级无损压缩或者成为某个更大生态的默认组件。3. 竞品与生态分流注意力被摊薄Jev 生态在两周内长出了 28 个项目pg-jev 做 PostgreSQL 状态持久化、jev-ultrafast 做浏览器 Agent、TypeSafe AI 的类型安全 压缩 持久化三位一体叙事各占一块注意力。fast-jev-compaction 不再是唯一的新鲜事。与此同时替代宿主也在分流社区出现给 Codex 配上 Jev的玩法Claude Code 的 function hooks 本身是 early-access 特性2.1.274需要显式开关才能启用——安装门槛把一部分观望用户挡在了star到use的转化路上。补充从 star 到 use 的鸿沟star 是零成本表态使用是成本决策。这个项目要真正用起来需要TYPESAFE_API_KEY、需要接受让一个外部决策模型删除你的会话记录的信任成本、需要容忍概率决策的不确定性。9 月 11 日的社区文章就已经在写8 个关键参数如何调优——说明早期用户已经开始琢磨配置但这也侧面印证它的上手曲线比pip install 就跑要陡。涨得快、用得多不多是两条不同的曲线。四、对 Jev 生态与后续项目的启示这条曲线值得所有做 Agent 基础设施的开发者反复咂摸三点第一star 衡量的是注意力不是留存。事件驱动型项目的 7 天暴涨是被发现的红利不是被使用的证据。判断项目成色看的是爆发期结束后的斜率——fast-jev-compaction 在 10 月仍保持日均约百颗的量级这已经好于绝大多数昙花一现的项目。第二爆火需要时机 × 叙事 × 可演示三要素齐备。Jev 发布窗口时机× 不生成一个字、只做选择题的反直觉叙事 × 可录屏的动画 demo缺一个传播声量都会掉一个数量级。反过来这三个要素没有一个是代码质量——代码质量决定的是爆发之后能走多远。第三可持续需要真实场景 × 明确边界 × 回退设计。这个仓库最值得学习的不是压缩算法而是工程态度把 Limitations 写进 README 首页把回退写进插件逻辑把概率不是证明写进设计文档。一个敢于承认自身边界的基础设施项目比一个声称解决所有问题的 demo 更值得长期跟进。曲线放缓不是失败而是项目从事件回到工程的必然。对 Jev 生态而言第一个 7 天的 star 是入场门票之后的斜率才是成色——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-compaction创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考