加载失败
原文主张应为 AI agents 重写或重新设计 CLI,提出用 JSON schema/结构化调用来让 agent 更可靠地操作命令行工具。评论基于若干现实假设展开:LLM 有上下文 token 限制且训练数据可能缺乏新式 CLI 示例;很多现有系统和工具仍以人类为中心,且大型、组织差的 API(如 Google Workspace 的 API 集合)比语法本身更易让 agent 失败。社区提出的替代方案包括在 CLI 中暴露可检索的 docs + embeddings(用于语义搜索)、为 agent 提供 API 层或封装器、以及参考已有协议/工具(如 RPC、LSP、PowerShell 的结构化 IO)来避免从零改写。讨论同时带入可及性视角,指出文本界面与 agent 结合对视障者的实用价值。
多名评论者质疑将 CLI 改为面向 agent 的设计是否有实证支持,并指出若让 agent 去检索 JSON schema 和 skills,会把大量 tokens 塞入上下文,增加成本与出错概率。有人认为以 AI 为中心的设计并不具前瞻性,因为现实世界和大量现有工具仍以人类为中心,agent 开发者更可能让 agent 适配人类设计而非反过来。还提出现实替代方案:若 agent 无法可靠解析 flags,应当提供 API 层或放弃用 agent,而不是贸然重写 CLI。评论同时提醒新的 CLI 风格在 LLM 训练数据中可能较少见,agent 可能花更多 tokens 去理解格式,抵消预期收益。
有开发者分享了可落地的做法:在 CLI 中加入 docs 子命令列出文档路径,并提供 --path 参数打印特定文档,建议单篇文档尽量小于 400 行以降低处理成本。为文档生成 embeddings(向量表示)以支持语义检索,暴露 search 子命令可以返回最相关的文件片段,agent 只需一个简单的 skill 来调用 docs 与 search 即可完成任务。该作者还指出这种模式对 i18n 友好,并且实测可行,是兼顾人类可读性与 agent 可用性的折中方案。
部分评论认为 agent 卡壳的主要原因不是命令行标志的格式,而是后端把庞大、欠组织的 API 包在单一 namespace 下的设计。举例说像 Google Workspace 那类庞大的 API 集合更容易让 agent 迷失,而不是传统或自定义的 CLI 语法问题。基于此观点评价,重构或暴露更清晰的 API/服务边界,比改写面向人类的 CLI 更能解决 agent 无法完成任务的问题。
有人指出把 CLI 用 JSON 调用实际上是在重演 RPC(远程过程调用)的模式——将参数序列化后调用程序并接收结果,这并非全新想法。评论提到 LSP(Language Server Protocol)可以提供类似的函数/参数元数据,SOAP 的历史案例也被用来提醒“万物皆旧”这一循环。另外 PowerShell 的结构化输入/输出被举为已有实现结构化 CLI/脚本交互的先例,因而建议借用或复用成熟协议和包装器,而不是从零重写命令行语法。
来自视障用户的评论强调 AI 使基于文本的交互(CLI 与 TUI)重新变得重要,因为文本界面对屏幕阅读器和无障碍工具更友好。评论者分享用 Codex 等工具可以不受限地访问此前只有 GUI 的程序,过去的 GUI 实现常常将视障用户排除在外。这个视角把讨论从“是否为 agent 优化”扩展为“谁能被界面包容”,并指出文本接口在速度与可访问性上的具体优势。
有评论总结 Human DX 与 Agent DX 的目标不同:前者偏重可发现性与容错(forgiveness),后者偏重可预测性与 defense-in-depth(深度防御),两者优化目标天然冲突。讨论还提到人类在命令行中容易打错文件名或路径,这一事实推动人类界面需要更多容错,而为 agent 专门设计的界面可能牺牲这些人类友好特性。结论倾向于在保持人类可用性的同时,寻找能让 agent 可靠工作的折中方案,而不是单方面重写 CLI。
有评论直接批评原文写作与论证粗糙,认为这种论点像是用 agent 自动生成的“写博客”技能产物,缺乏精确措辞與清晰论证。评论者呼吁在 HN 等技术讨论区保持更严谨的表达,以免因模糊或夸大的断言误导实践者。该声音反映出社区对 AI 驱动内容质量下滑的担忧,并要求更细致的实证与示例。
CLI: 命令行界面(Command-Line Interface),通过文本命令与程序交互的界面,本讨论聚焦于是否要为 AI agents 优化此类界面。
JSON schema: 用于描述 JSON 数据结构和字段类型的规范,便于验证与生成结构化输入/输出,讨论中提到用它来让 agent 填充或调用命令。
embeddings: 向量表示(embeddings),把文本映射为高维向量以做语义检索和相似度匹配,在评论中用于为文档做语义搜索以帮助 agent 定位信息。
RPC: 远程过程调用(Remote Procedure Call),一种将函数调用参数序列化并在远端执行的范式,评论认为把 CLI 用 JSON 调用类似于重演 RPC 模式。
LSP: Language Server Protocol(编辑器语言服务器协议),用于编辑器与语言工具间通信并描述可调用接口,评论认为类似的 schema 可用于描述 CLI 能力。
TUI: 文本用户界面(Text-based User Interface),基于终端的界面类型,相比 GUI 在无障碍和屏幕阅读器场景中更容易被利用。