尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

rvs(rust-verb-shell):一款面向人类和 AI Agent 的结构化 Shell

rvs(rust-verb-shell):一款面向人类和 AI Agent 的结构化 Shell
📅 发布时间:2026/7/25 21:35:54

项目地址

开源仓库:rust-verb-shell:基于Rust的verb-noun风格Shell项目 - AtomGit

采用 MulanPSL-2.0 许可证,欢迎 Fork、Issue、PR。后续教程中所有命令均以此仓库的最新 dev 分支为准。

设计理念

rvs 的定位是「结构化、沙盒优先的 Shell」——既给人用,也给 AI 用。

verb-noun 命名

命令名采用全小写 kebab-case,格式为 verb-noun、verb-noun-noun2……遵循 verb-noun 语义命名规范。

正确写法(rvs native):

get-child-item get-child-item -recurse set-location /tmp get-content README.md new-item -item-type directory -name demo remove-item demo -recurse get-system-info get-network-interface get-file-hash

参数同样全小写 kebab-case(-recurse、-item-type、-force)。同时保留 POSIX 常用别名作为肌肉记忆桥接:ls / cd / pwd / cat / mkdir / rm / echo / clear,输入别名时 rvs 会提示 💡 对应的完整命令名。

沙盒安全

通过 --sandbox 参数启动沙盒模式,将所有文件系统操作限制在指定目录内:

rvs --sandbox /tmp/sandbox

沙盒模式下拒绝执行外部二进制,防止绕过路径检查。不带 --sandbox 时默认完全文件系统访问。

结构化输出

人类交互默认输出可读表格;AI 或脚本调用时加 --json 参数,只输出合法 JSON,零噪声:

rvs --json get-child-item

AI 友好

所有输出避免字符画、Logo 等 AI 难以解析的内容。命令名采用 verb-noun 语义命名,让 AI 能通过名称推断用途(get-child-item 就是列出子项,set-location 就是切换目录)。

版本号:CalVer YY.M.P

rvs 从 26.7.0 起采用日历版本号(CalVer),格式为YY.M.P:

段含义范围
YY年份后两位26、27……
M月份1–12,不加前导零,不会出现 0.10
P本月第几次发布0 起递增,跨月重置为 0

当前最新版本:v26.7.0(2026 年 7 月首次发布)。低心智负担,看一眼版本号就知道是什么时候发布的。跨月自然进位,月份永远两位数以内。

人类用法速查(面向开发者)

安装与启动

编译(需要 Rust 工具链):

git clone https://atomgit.com/k4m7v2pz/rust-verb-shell.git cd rust-verb-shell cargo build --release ./target/release/rvs # 或直接 cargo run cargo run -- rvs

进入 REPL 交互模式后,直接输入命令即可:

2026-07-25 20:30:00 UTC+08:00 user@host:/home/user [linux/x86_64] rvs — rust-verb-shell (v26.7.0) user@host: demo@my-pc cwd: /home/user no sandbox (full FS access). use --sandbox <DIR> to restrict. commands use Verb-Noun style (get-child-item, set-location, ...). aliases: ls / cd / pwd / cat / mkdir / rm / echo / clear; 'exit' to quit. >

常用命令速查

你要做什么rvs 命令别名说明
列目录get-child-itemls, dir加 -recurse 递归
切换目录set-locationcd—
显示路径get-locationpwd—
读文件get-contentcat, type—
创建目录new-item -item-type directory -name mydirmkdir—
创建文件new-item -item-type file -name test.rstouch, ni—
删除remove-item path -recurserm目录加 -recurse
写文件set-content path -value "内容"sc覆盖写入
追加文件add-content path -value "内容"ac—
回显write-output "hello"echo—
清屏clear-hostclear, cls—
查帮助get-help get-child-itemhelp, man—
看进程get-processps—
看历史get-historyhistory, h—
退出exitquit—

管道与过滤

rvs 内建管道,支持按条件过滤、排序、选择列:

get-child-item -recurse | where-object "size > 1024" | sort-object -descending size | select-object -first 5

等价于 POSIX 的find . -size +1k | sort -rn | head -5。

切换传统 Shell

不熟悉 rvs 语法?或临时需要 POSIX 管道?一行命令切换到 bash/zsh/nu:

enter-shell bash # 现在在 bash 里,exit 回到 rvs exit

sshd 环境下也一样工作:rvs -c 'enter-shell bash -c "ls | grep foo"'。

td>0 起递增,跨月重置为 0

当前最新版本:v26.7.0(2026 年 7 月首次发布)。低心智负担,看一眼版本号就知道是什么时候发布的。跨月自然进位,月份永远两位数以内。

AI / Agent 速查

对话式 AI(ChatGPT / 腾讯元宝 / 豆包等)

当用户问「帮我列出当前目录文件」或「读取那个配置文件」时,对话 AI 应该生成 rvs 语法:

命令模板:

# 列目录 get-child-item [path] [-recurse] 读文件 get-content <path> 切换目录 set-location <path> 创建目录 new-item -item-type directory -name <name> 查看进程 get-process [name] 管道过滤 get-child-item -recurse | where-object "size > 1024"

不要输出 PowerShell 的 PascalCase(Get-ChildItem),rvs 所有命令和参数都是全小写 kebab-case。如果用户传入的指令是 POSIX 风格的管道(如ls | grep foo),提示用enter-shell bash切换到 bash 后再执行。

代码 Agent(VSCode Copilot / Trae IDE / AtomCode 等)

Agent 调用 rvs 时应走--json模式,输出是合法 JSON,无需额外解析:

# 单个命令 rvs --json get-child-item /tmp 输出示例(简化) {"ok":true,"command":"get-child-item","args":["/tmp"],"output":["file1.txt","file2.rs"],"exit_code":0}

标准调用流程:

rvs --json -c '<command>' # 或管道喂多行 echo -e "get-location\nget-child-item" | rvs --json

常用调试命令:

# 检查路径是否存在 rvs --json test-path /some/file 获取系统信息 rvs --json get-system-info 获取文件信息 rvs --json get-item /path 列出所有可用命令 rvs --json get-command

沙盒模式调用(处理不可信输入时):

rvs --sandbox /tmp/safe-box --json get-child-item

一句话总结

rvs = 全小写 Verb-Noun 命令 + 可选沙盒 + 人类表格输出 + AI 的--json模式。项目在 rust-verb-shell:基于 Rust 的 PowerShell 风格 Shell 项目 - AtomGit,版本号 CalVerYY.M.P,当前v26.7.0。

相关新闻

  • Privileged 权限:你的容器真的需要吗?
  • 端云协同架构:移动AI性能优化关键技术解析
  • 基于YOLOv8的水稻病害实时检测系统设计与实践

最新新闻

  • 武汉科谷技工学校宠物医疗专业实训设备齐全 实操教学不纸上谈兵 - 湖北找学校
  • Unity游戏实时翻译终极方案:XUnity.AutoTranslator从原理到实战
  • PyMeasure性能优化:提升大规模实验数据处理速度的终极指南
  • 知名的国际EMBA择校指南,适配企业创始人 - 品牌2026推荐
  • 中考落档重塑人生赛道 武汉科谷宠物医疗专业技术学历双丰收 - 湖北升学规划
  • Stylo富文本编辑器完全指南:重新定义现代Web内容创作体验

日新闻

  • 从国家条件到买方清单,深入理解 ABAP CDS 单值过滤器派生
  • 2026 年当下,齐齐哈尔专业的不锈钢闸门批发厂家哪个好,揭秘!这个工业“铁门”如何实现成本翻倍的效率提升? - 行业甄选官
  • 2026阳极氧化加工厂推荐:从设备规模看硬质氧化技术的成熟应用推荐百正机械 - 栗子测评

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号