来源:市场资讯
(来源:51CTO技术栈)
![]()
编辑 | 林芯
与其每次向 AI 倾倒大量文档,不如为它构建几个专门的CLI小工具。
近日,来自OpenAI Codex团队的Nick Baumann把自家如何解决上下文过长的“秘法”也公开分享了!
![]()
他的想法很简单:MCP 连接器(比如 Slack、Linear、Sentry 等)解决了“它能访问吗?”的问题,但原始数据往往过于庞大且杂乱,里面混杂了大量工具输出、失败的尝试、中间过程,以及临时有用的上下文,这些内容对当前任务大多已经无效,却会严重占用token。
在这种情况下,Nick 给出的解法是:
第一步用 Codex 创建 CLI;
第二步是把 CLI 包裹进Skill
他称之为“Agent友好型 CLI”——能够搜索、缩小范围、重试、管道输出、写入大文件、查看帮助,并根据上一步结果生成下一步命令。
Nick发布了详细的技术手册,我们一起来拆解一下他的经验!
Codex线程: 检索过去的 Codex 对话记录
Codex 的原始会话档案太嘈杂,如果直接把整个存档丢给Codex,虽然它“能读”,但实际效果并不理想:
速度变慢:上下文过长,推理耗时明显增加;
输出噪音多:Codex容易被无关历史干扰,抓不住重点;
频繁使用时更明显:每次都塞一大堆旧数据,长期下来效率低下,体验很差。
![]()
而Nick的解决方案是:不要让Codex直接读原始存档,而是让它通过专门的CLI工具来读取自己的历史线程。
codex-threads --json synccodex-threads --json messages search "build a CLI" --limit 20codex-threads --json threads resolve "tweet idea"codex-threads --json threads readcodex-threads --json events read --limit 50保留一个本地可搜索的 ~/.codex/sessions 索引,然后给出 Codex 命令来搜索、解析和读取旧线程。
“当我想把一个思路转化为一种技能时,这一点尤其有用。很多好的技能都是从找出这个思路中做得好的部分,然后保留这种模式开始的”
Slack-cli:让Codex自己去Slack里挖“埋藏”的关键信息
当答案隐藏在一个很难查找的线程中,手动找的难度很大!
![]()
Nick Baumann的解决方案是:开发一个专属的Slack-cli工具
让Codex读取Slack——为什么做出了应用服务器身份验证的决定,其他人是否也遇到了相同的本地开发故障,或者评审者在发布渠道中已经达成了什么共识。
当Codex拥有命令的工具时,可以通过这个工具广泛搜索、解析具体线索、提取附近的上下文、引用重要信息:
slack-cli search "app server auth" --all-pages --max-pages 3 --jsonslack-cli resolve-permalink "https://openai.slack.com/archives/..."slack-cli read-thread L143 123522523239.633199 --jsonslack-cli context R152 25723525099.626199 --before 5 --after 5 --jsonNick强调:Slack-cli仍然使用已获批准的Codex应用网关。并非权限规避方案,它采用相同的访问模型,只是将其塑造成代理可以组合的命令。
Typefully-cli:让Codex专注写内容,而不是每次都重学API
Nick Baumann用Codex写和排期大量内容时,主要依赖Typefully这个工具。Typefully的API虽然设计得不错,但每次让Codex帮忙写草稿,它都需要重新“学习”整个API,这显然非常低效。
Nick的解决办法是:开发一个轻量且专注的typefully-cli,只需要实际使用的少数操作,让Codex每次都能快速、准确地调用,而不用反复处理复杂的完整API。
typefully-cli --json drafts list --social-set --limit 20typefully-cli --json drafts read --social-settypefully-cli --json drafts create --social-set --body-file draft.jsontypefully-cli --json media upload --social-set ./image.pngtypefully-cli --json media upload --social-set ./image.pngtypefully-cli --json queue schedule-read --social-set Codex 读取了 API 文档,把 typefully-cli 构建成一个小型的 Rust 二进制,可以从任何仓库运行。
同样,围绕这个CLI的skill和二进制一样重要,Codex需要被明确“教导”如何正确使用这个工具。
Nick在把typefully-cli包装成Skill时,加入了以下核心规则:
要求输出使用JSON格式,便于结构化处理;
默认行为是创建草稿,而不是直接操作正式内容;
当Shell命令引用变得复杂烦人时,优先使用--body-file从文件读取内容;
除非用户明确要求,否则绝不发布、调度、删除或覆盖任何内容。
有用的部分很简单:如果我不断给Codex提供相同的文档、导出数据、日志或API异常情况,我通常希望停止解释,而是给它一个指令。将那个命令行界面(CLI)封装成一个skill,这样Codex就能记住如何使用。
ps:具体的操作手册也被小编扒出来了,感兴趣的大佬可以去体验一下:
https://developers.openai.com/codex/use-cases/agent-friendly-clis
https://x.com/nickbaumann_/status/2042705384306336083?s=20
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.