GoForum › 🌐 V2EX
我又 Vibe Coding 了一个 Agent 项目
vodmaker ·
2026-01-06 17:43 ·
0 次点赞 · 0 条回复
最近 Vibe coding 和 Agent 都比较火,最近还是比较有空,就用 Cursor 随手撸了一个命令行 agent 工具,取名 shex ( shell + execute )。
起因
每次用终端的时候,总有那么几个命令死活记不住。比如 tar 的参数到底是 -xvf 还是 -cvf ,find 命令的语法又是什么来着… 以前都是现查,现在有了大模型,干脆让它帮我生成命令算了。
市面上类似的工具不少,但要么功能太重,要么配置太麻烦。我就想要一个最简单的:输入自然语言,执行命令,完事。
效果
安装:
pip install shex
使用:
shex 列出当前目录所有文件
shex 查看磁盘使用情况
shex 找出所有 python 文件
shex 压缩 logs 文件夹
首次运行会引导你选语言、选大模型、填 API Key ,之后就可以直接用了。
特性
- 支持十来个大模型:DeepSeek 、OpenAI 、Claude 、Gemini 、通义千问、Kimi 等等,也支持任何兼容 OpenAI 接口的 API
- 失败自动重试:命令执行失败会自动分析错误,换个方法再试
- 危险命令确认:涉及删除、格式化这类操作会先问你
- 实时输出:命令执行过程中的输出会实时显示
- 跨平台:Windows 、macOS 、Linux 都能用
实现
核心思路是用 OpenAI 的 Function Calling ( Tool Calling )机制,把命令执行封装成一个 tool 。用户输入自然语言后,大模型决定要执行什么命令,然后调用这个 tool 。
大概架构:
用户输入 -> LLM 分析 -> Tool Call (execute_command) -> 执行结果 -> LLM 判断是否需要重试
如果执行失败,LLM 会根据错误信息自动尝试其他方法,最多重试 3 次。
危险命令的判断也交给 LLM ,它会在调用 tool 时传一个 is_dangerous 参数,程序根据这个参数决定是否弹确认。
代码
项目已经发到 PyPI 了,源码在 GitHub:
- PyPI: https://pypi.org/project/shex/
- GitHub: https://github.com/YUHAI0/shex
代码量不大,核心逻辑就几百行,感兴趣的可以看看。
最后
整个项目从想法到发布大概花了一个下午,大部分代码都是 Cursor 帮忙写的,我主要就是提需求、调调 prompt 、修修 bug 。不得不说现在 vibe coding 的效率确实高,以前这种工具起码得写两三天。
欢迎试用,有问题可以提 Issue 。
另外再附上上一个 Agent 项目链接: https://fin-agent.chat
0 条回复
添加回复
你还需要 登录
后发表回复