尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

rvs 26.8.53 → 26.8.86 更新速查:给 AI 用的 shell 到底改了什么

rvs 26.8.53 → 26.8.86 更新速查:给 AI 用的 shell 到底改了什么 1. 引言rvsrust-verb-shell是面向 AI Agent 的结构化命令执行运行时核心模型 Command → Value → JSON → AI。项目用 CalVer 版本号年.月.次迭代极快从 26.8.53 到 26.8.86短短几天内连续发布 34 个版本、59 个提交几乎每个提交都对应一个可验证的改动。本文梳理这段时间 rvs 到底更新了什么新增了哪些命令、做了哪些设计决策、修了哪些坑。如果你在用 rvs或好奇「给 AI 用的 shell」长什么样这份更新日志可以直接当速查表用。2. 谬误溯源这段迭代里有两个值得单独说的「错误认知纠正」都来自真实使用中的翻车现场。2.1 | 管道AI 的 bash 肌肉记忆是文本流不是对象du -sh ~/.atomcode/* | sort -rh在 rvs 里直接跑失败——外部程序参数不展开~/globdu 收到字面量报 No such file。排查中发现更深的问题AI/LLM agent 的肌肉记忆只有「| 文本流」bash 思维不知道 PowerShell 风格「传对象」。让 agent 自由写du … | sort就是制造语义漂移rvs 给不出 bash 同款文本管道外部程序进管道时 input 会丢弃、stdout 直通终端静默错乱比报错更糟。最终决策26.8.77/26.8.78|完全禁止实现——对象管道也不做。rvs 界面里不出现符号需要文本管道用bash -c ...或 enter-shell。split_pipeline/run_pipeline已移除引号外的|解析即拒绝并提示error.pipe-forbidden。2.2 命令所有权审批者无法从 shell 文本判断「给谁执行」讨论「管道用英文词代替符号」时收敛出真正的问题不是语法而是命令所有权——人审批者和程序审批引擎都无法从 shell 文本判断 agent 想把命令给谁rvs 内建 / 本机外部程序 / 远程目标 / bash 等 shell套引号转 shell 时漏闭合引号还会语法错误、命令泄漏。英文词管道被否决命令更长更难审查、所有权仍模糊、模型幻觉更重。决策26.8.79rvs 在解析层就把「给谁」声明成结构化字段RunReport.owner审批方读字段不解析文本。3. 源码验证按主题归类的改动清单从 26.8.53 到 26.8.86改动按主题归类如下版本号即 CalVer P 位。3.1 新命令与新能力measure-object26.8.79目录/文件大小统计内建命令别名du/measure/size。--path默认.、-s仅总量、-h人类可读目录递归统计子孙文件字节和默认按字节降序列出直接子项。du不再透传系统 du~展开、结构化输出、可审计。命令数 46 → 47。open-virtual-screen26.8.72虚拟屏幕「新建即查看」26.8.73 升级为全屏 TUI 待机模式实时显示 agent 写入26.8.77 支持 ratatui 分屏布局多面板垂直均分。verify-env26.8.54--check-env冒烟校验 env.json 语法env.json 改为 rvs 配置优先。stop-process --string26.8.55--name改为--string匹配完整命令行不只进程名。3.2 list-items 增强26.8.60-64Type 列file/dir/symlink 区分26.8.60合并 IsDir 列、Type 值显示层 i18n26.8.61列宽按翻译后值计算防截断26.8.62unix 扩展识别 fifo/socket/字符设备/块设备26.8.63。Nlink 列显示硬链接数 st_nlink26.8.64。3.3 改名与重构show-info → show-hardware-and-operating-system-info26.8.57。virtual-screen-* 系列主名改英语语法verb 前置26.8.58。CPU 数据库移出源码JSON 内嵌加载26.8.56。3.4 交互体验clear-host / go-to-bottom 输出终端宽度26.8.66按别名集合匹配宽度26.8.67clear 后输出 rvs 版本号26.8.69banner 网卡内 IP 排序稳定26.8.68。虚拟屏幕自动 ID 用本地时间生成26.8.76、note/alias 用途标注26.8.71。3.5 关键修复du 长扫描无反馈 CtrlC 停不下来26.8.82SIGINT 空处理导致内建命令长遍历无法中断。修复全局中断标志INTERRUPTEDSIGINT handler 置位每条命令前复位measure-object 递归遍历每层检查、置位即提前返回部分结果扫描前提示「正在统计…CtrlC 可中断」du 别名提示立即打印不等命令执行完。Tab 补全「已知命令带参数后裸路径补全失效」26.8.84rm -rf 破Tab按不出目录。根因first_word取整段文本当命令名rm -rf 不在命令表→ 参数路径补全分支被跳过。修复first_word取第一个 tokenmulti_word_external保护首词只是 PATH 外部程序时不抢占空格风格命令名补全命令名无匹配时回退当前目录路径补全。macOS show-fetch 磁盘检测 0.0B26.8.85。measure-object 列名 locale 翻译键缺失26.8.80列名 Size → Human表头正常显示「大小」。MCP 层不再丢弃命令明细26.8.59data 非空时返回完整 JSON。虚拟屏幕 TUI 布局错位26.8.75逐行 MoveTo 归位状态条固定底部。3.6 设计决策落地禁止|管道26.8.77 决策 / 26.8.78 实施split_pipeline/run_pipeline移除引号外|解析即拒绝error.pipe-forbidden。命令所有权显式化26.8.79RunReport.owner字段——builtin / external / remote / shell 四类audit.jsonl 同步how_owner外部程序透传前引号平衡守卫未闭合 → 温和提示不阻塞。4. 落地结论26.8.53 → 26.8.86 这 34 个版本rvs 的主线是「给 AI Agent 用的结构化命令运行时」持续收敛命令所有权显式化是这段最重要的架构决策——审批方读ownerargscommand三个 JSON 字段做策略不再解析 shell 文本|管道彻底禁止对象管道也不做需要文本管道一律bash -c .../ enter-shell。du 内建化measure-object解决了一个真实痛点外部透传不展开~/globdu -sh ~/.atomcode/*这类命令直接失败内建命令还顺带拿到结构化输出、可审计、CtrlC 可中断长扫描。list-items 与虚拟屏幕是这段迭代最活跃的两个面Type/Nlink 列让目录列表信息更全open-virtual-screen 从「新建即查看」一路升级到全屏 TUI 待机 ratatui 分屏。大量小版本在做「人机体验细节」clear 后输出版本号与终端宽度、banner IP 排序稳定、du 大小列方向标记、macOS 修饰键提示 controlC、Tab 补全裸路径修复。4.1 人类开发者速查升级到 26.8.86 后du -sh path走内建统计lslist-items多出 Type/Nlink 列open-virtual-screen --identify X可开全屏 TUI 待机屏rvs --check-env冒烟校验配置。注意stop-process --name已改名--string。4.2 对话式 AI 速查问法「rvs 里du -sh ~/xxx/*为什么失败」回答要点外部程序参数不展开~/glob用内建dumeasure-object或bash -c ...rvs 无|管道文本管道用bash -c。4.3 代码 Agent 速查审批策略读RunReport.ownerbuiltin/external/remote/shell而非解析文本外部程序透传前检查引号配对长遍历命令du 大目录监听 CtrlC 中断标志--json输出含args字段可直接消费。
返回列表