AI News HubLIVE
站内改写1 分钟阅读

POSIX Shell 中的简易 AI 智能体

一个用不到 1000 行 POSIX Shell 脚本编写的轻量级 AI 编码智能体。它通过迭代查询语言模型以获取 Shell 命令、执行命令并基于输出调整,从而自动化任务。

来源Hacker News AI作者: pianopatrick

近日,一个名为SSA(Simple Shell Agent)的开源项目在开发者社区引起关注。该项目完全用POSIX Shell脚本编写,代码量不足1000行,却实现了一个功能完整的AI编码智能体。SSA的工作原理十分直接:用户用自然语言描述一个任务,智能体会将任务发送给AI模型(如OpenAI或本地llama.cpp),模型返回一个Shell脚本,SSA在当前目录下执行该脚本,并将输出反馈给模型,如此循环直到任务完成。整个过程无需Python或其他高级语言环境,仅依赖POSIX sh和少量非POSIX工具(curl、jq等)。快速开始:克隆仓库后,设置环境变量如OPENAI_API_KEY和SSA_MODEL_RUNNER即可使用。支持OpenAI兼容API和本地llama.cpp。核心循环仅使用POSIX sh、date、grep、sed、tee,但获取模型回复需要curl和jq(对HTTP)或llama-completion(对本地)。这些工具在Linux、macOS和BSD上均可运行。安全方面,SSA默认直接执行模型生成的命令,相当于将终端交给模型。为此,项目提供了两种沙箱机制:askUserSandbox(执行前询问用户)和switchUserSandbox(以其他Unix用户身份运行)。高级用户可基于seccomp、命名空间等构建更严格的沙箱。调试功能方面,会话文件保存在$TMPDIR/ssa-$LOGNAME-目录下,通过--keep-session参数保留,方便追踪每一步。sessionTranscript.txt文件从模型视角记录了智能体的运行过程。模型兼容性方面,测试显示小模型(如Qwen 2.5-1.5B和3B)难以解析指令,而7B及以上的模型(如Qwen 2.5-7B和32B)能够产生可解析的Shell脚本,用于简单的“hello world”类任务。因此,使用最小的模型可能无法正常工作。SSA采用MIT许可证发布,适合作为自动化脚本的轻量级AI助手,尤其适合在无Python环境但需要AI辅助的场景下使用。