资讯动态

为什么Shell是AI Agent的最佳运行时?Headlong的Unix设计哲学

发布时间:2026/10/14 15:43:22 来源:尧图企业网站定制
【免费下载链接】headlongAn open source agent microharness featuring persistent agency and recursive LLMs. Of bash, by bash, for bash; its shells all the way down.项目地址https://gitcode.com/gh_mirrors/headl/headlong点击查看免费下载Headlong 是一个开源的 Agent 微框架agent microharness核心代码仅有约 1.1 万行 Bash。它用 Bash 管道、文件和目录构建了一个能持续思考的 AI Agent并以此论证一个大胆的观点终端不是 AI Agent 的不错选择而是最佳运行时。本文将带你快速理解 Headlong 背后的 Unix 设计哲学。LLM 与 Shell 的天作之合 先回答核心问题为什么是 ShellLLM 本质上是一台读文本、写文本的机器。而 Unix Shell 环境里一切都是文本——stdin、stdout、管道、环境变量、文件。把 LLM 放进 Shell它立刻就能用原生协议与系统里所有工具对话无需任何适配层。对比当前主流的 function-calling 范式每个工具都要手写 schema、JSON 参数封装和专用 API 包装器。每加一个工具就多一份要维护的胶水代码。Shell 则把 LLM 当作一名真正的操作员curl就是 HTTP 客户端jq就是 JSON 处理器python3 -c是万能的逃生舱。没有 schema 可定义没有 wrapper 可写——LLM 组合工具的方式和人类用管道串命令的方式一模一样。这正是 Doug McIlroy 50 年前提出的 Unix 三原则写只做一件事的程序、让程序协作、用文本流作为通用接口。文本流这个通用接口恰好是 LLM 最原生的能力。组合优于枚举管道就是你的工具箱Function-calling 有一个枚举难题你必须预先声明模型能用的工具search_web、read_file……列表里没有的能力模型就永远做不了。Shell 把这个逻辑反转了不枚举能力而是提供一个可组合的环境让模型自己想出该做什么。比如抓取网页、按域名过滤链接并统计数量这种需求没人定义过count_links_by_domain工具但它只是一条管道curl -s $URL | grep -oP href\K[^] | grep $DOMAIN | wc -l能力不是被设计出来的而是从组合中涌现的。模型不需要预先知道所有工具它只要掌握组合的语法就足够了。shellm一个用 Bash 思考的递归语言模型 ⚡Headlong 的心脏是shellm——一个用纯 Bash 实现的递归语言模型RLM。它的运行循环简单得惊人把上下文发给 LLM系统提示只有一句话写 bash 代码模型用bash代码块回应执行代码有 Docker 就在容器里跑没有就在本地输出流式回传给 LLM 作为下一条消息重复直到代码设置FINAL答案或达到迭代上限整个shellm是一个 bash 脚本依赖只有 bash、jq、curl 三样——没有框架、没有package.json、没有虚拟环境。更妙的是递归生成的代码里可以再调用shellm子任务通过 stdout 把结果流回父进程Shell 自身的进程模型就是编排框架。它还有一个常被忽视的优点——透明。每一轮迭代你都看得见写了什么命令、拿到什么输出、如何调整策略。调试它更像看同事的工作过程而不是面对一个黑盒。 引擎细节见 docs/shellm.md。从工具到心智Headlong 的持久代理shellm很强但无状态跑完就忘。要让它从工具变成有心的 AgentHeadlong 又补了几个小工具组件职责mem记忆库——把记忆存成带 YAML 头部的 markdown 文件没有数据库没有向量库skills技能库——每个技能就是一个SKILL.md文本文件LLM 读了就会做traj轨迹——Agent 的生平记录为可 fork/merge 的 append-only JSONL 有向无环图context把轨迹投影成下一轮 LLM 调用的上下文新条目原文保留、旧条目指数级摘要thinkers心智——调度器监视轨迹唤醒 monolith生成下一个念头和 responder回复消息Headlong 的招牌特性是持久代理persistent agency人类的消息不会开启一次会话而是作为一条新观察落进 Agent 的思想流里由它自己决定是否回复、何时回复。一个 Agent 可以同时被 Slack、Telegram、网页聊天里的整个团队使用所有对话汇入同一条思维时间线。身份identity就是一个目录全是文本人格是 markdown记忆是 markdown轨迹是 JSONL随时可用任何编辑器打开。 思想进程的设计说明见 thinkers/README.md。Thompson 测试判断 Agent 架构的 4 个问题作者把 Ken Thompson 的工程哲学浓缩成一套自检标准问任何 Agent 架构四个问题一个下午能读懂每个组件吗整个核心约 1 万行最大的shellm不到 3K 行每行代码都能读完能用作者没预料到的方式组合吗mem的输出可以接任何东西、技能文件可编辑可版本化、shellm能调用自己状态可检查吗所有状态都是磁盘上的文本文件没有藏在数据库或二进制格式里可以替换任意组件吗换个记忆目录、换个模型、换个人格文件——因为耦合机制就是文件系统与环境变量这是计算史上最久经考验的集成协议作者的原话很犀利大多数现代 Agent 框架在建造大教堂而我们需要的其实是巴扎集市。快速上手让一个 Bash Agent 跑起来安装要求不高bash 3.2、git、curl、jq、Python 3以及任意一家 LLM 的 API keyAnthropic、OpenAI、Gemini、OpenRouter或本地 Ollama / llama.cpp 等 OpenAI 兼容服务。官方提供一行命令完成安装、初始化访谈并打开可视化面板也可以在源码检出中直接运行./install.sh。各变体含 CI 非交互安装见 docs/install.md。之后Agent 的名字就是一个命令ada hello # 发一条消息等待回复 ada # 进入聊天 ada stop / ada start # 暂停 / 恢复它的思考 ada dash # 在浏览器里观看它的思维过程⚠️ 请注意Headlong 目前是 alpha 阶段的研究软件Agent 会执行真实的 shell 命令并全天候思考。建议使用限额spend-capped的 API key并让它跑在 Docker 沙箱中——这也是 Headlong 的默认行为。安全细节见 AGENTS.md 与 deploy/SECURITY.md。延伸阅读philosophy.md — 完整的设计哲学全文本文的思想源头README.md — 项目总览、工具清单与本地模型配置docs/shellm.md — shellm 引擎参考循环、沙箱、envs、llm工具thinkers/ — monolith、responder、retrieval 三个思想进程tools/ —identity、persona、shellm-explore、headlong-web等外围工具design/ — 分层记忆、上下文组装、输出预算等设计文档skills/ — 内置技能库每个技能都是一个SKILL.mdShell 在 1971 年诞生时只是一个读一行、找程序、执行、等待的薄循环。55 年后Headlong 的shellm也是一个薄循环读消息、问 LLM、跑代码、重复。模式依旧成立只是换了一种新的用户——会写 bash 的语言模型。赞分享【免费下载链接】headlongAn open source agent microharness featuring persistent agency and recursive LLMs. Of bash, by bash, for bash; its shells all the way down.项目地址https://gitcode.com/gh_mirrors/headl/headlong点击查看免费下载相关推荐AsPoem UI设计哲学为什么这是最优雅的诗词阅读界面AsPoem UI设计哲学为什么这是最优雅的诗词阅读界面 AsPoem作为一款专注于中国诗词学习的平台其UI设计哲学融合了传统文化美学与现代交互体验打造出Aspects框架设计哲学为什么简洁是AOP的核心Aspects框架设计哲学为什么简洁是AOP的核心 在iOS开发中我们经常需要在不侵入原有代码的情况下添加日志、埋点或行为监控功能。传统的方法要么需要修改大开发工具测试新手必看5分钟上手TensorSensor的3个实用技巧新手必看5分钟上手TensorSensor的3个实用技巧 TensorSensor是一款专为矩阵代数表达式设计的异常消息增强工具支持numpy、pytorc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑