codex CLI使用技巧

文章为个人辛苦整理,已加入原创侵权保护,禁止私自转载。

文章所在专栏:《黑猫的AI工具箱

1 为什么建议用CLI

做嵌入式开发,linux环境下编译代码。通过Samba/UNC虽然映射到Windows上。但通过codex应用访问代码,还是容易出现访问权限等各种问题。 问题通常表现为:路径访问失败、权限拒绝、文件找不到、PowerShell 在网络路径下异常、写文件失败。

此时codex又会想各种办法绕过,无端消耗token。并且浪费时间。

使用filezila去windows和linux同步代码的方案呢?

长期做嵌入式开发会有几个坑:

  1. 双份代码容易不一致
    Windows 一份、Ubuntu 一份,Codex 改了 Windows,编译在 Ubuntu,哪边是准的很快会乱。
  2. 同步粒度容易出问题
    FileZilla/SFTP 同步有时会漏隐藏文件、权限位、软链接、时间戳,嵌入式项目里这些经常要命。
  3. 编译产物和源码会混在一起
    大工程里 out/、build/、*.o、日志文件很多,双向同步容易慢,也容易把不该同步的东西同步过去。
  4. 你还是要解决"谁改代码"
    如果 Windows Codex app 改 C 盘代码,然后 FileZilla 传回 Ubuntu 编译,这条链路更绕。

因此,建议ubuntu安装CLI。

codex cli 就是可以直接对话的。你不用记一堆命令。你把它理解成:在 Ubuntu 代码目录里打开的"终端版 Codex 聊天窗口"。

cd /你的/代码目录

codex

进去之后直接打中文,比如:

帮我看一下main函数是如何实现的,具体步骤是什么。

你不用一开始就学 CLI 命令。

2 常用命令

如下列出常见的一些codex使用命令。

注意,这些命令是有 / 的。其实在对话窗口,输入 / 就会自动出来codex相关命令。

3 使用技巧

3.1 查看历史对话

退出当前 Codex 后,在项目目录执行:codex resume

如果只想继续最近一次:codex resume --last

3.2 切换推理思考模型强度:中高低

进入 codex 后输入:

/model

然后按界面提示选择:

model

reasoning effort / thinking level

一般会有类似:

minimal

low

medium

high

xhigh

3.3 修改权限审批等级

在windows codex app中,有权限审批选型,但是在codex cli中,如何修改权限审批等级呢?

在 Codex CLI 里主要对应 ~/.codex/config.toml 里的两个配置:

sandbox_mode = "workspace-write"

approval_policy = "on-request"

你现在配置里已经有这两项了。如果要修改,就修改config.toml就好了。

对应关系:

  1. 请求批准:approval_policy = "on-request"
  2. 替我审批:approval_policy = "on-failure"
  3. 完全访问权限:
  4. sandbox_mode = "danger-full-access"
  5. approval_policy = "never"

如果临时使用想要改动的话,使用如下命令:

codex --sandbox workspace-write --ask-for-approval on-request

3.4 CLI中带上文件/截图

CLI可以直接使用截图、文件,不需要在windows codex app上发送截图和文件。

codex --add-dir ~/codex_inbox -i ~/codex_inbox/error.png "结合截图、build.log 和当前仓库代码,定位问题。先不要改代码。"

在ubuntu中使用codex CLI,也可以直接截图copy到对话窗口即可。如图,即图片已经被带入到该对话窗口了。

3.5 关于让codex阅读pdf文件

codex基本读不了pdf文件,word也勉强。最好是.md或者.txt文件。所以当我们有data sheet需要code参考,可以用如下命令,将pdf文件转为txt。然后再用rg命令让其搜索相关内容即可。

c 复制代码
pdftotext -layout Bluetooth.pdf dBluetooth.txt
rg -n -i "A2DP|GATT|mesh" Bluetooth.txt

实际上让codex自己读pdf,它使用的也大概率是如上两个命令 。

相关推荐
可触的未来,发芽的智生3 小时前
发现-元认知技能,激起神经符号系统跃变
javascript·人工智能·python·程序人生·自然语言处理
JackHCC3 小时前
Meta-WHALE:逐层融合统一推荐模型
人工智能·机器学习
墨舟的AI笔记3 小时前
微前端隔离边界:qiankun 与 Module Federation 的取舍之道
人工智能
ysa0510303 小时前
优先队列贪心dp
c++·笔记·算法·板子
字节逆旅3 小时前
有哪些工作不可以交给AI
人工智能·程序员
一路向北North3 小时前
Spring AI(6) :对话机器人-会话历史
java·人工智能·spring
2zcode3 小时前
基于MATLAB神经网络的心力衰竭预测与临床辅助决策系统研究
人工智能·神经网络·matlab
ACP广源盛139246256733 小时前
国产算力互联IX8024@ACP#Kimi K3 开源后的端侧部署硬件架构分析
大数据·人工智能·分布式·单片机·嵌入式硬件
其实防守也摸鱼3 小时前
前端应用的离线暂停更新策略:构建稳定可靠的渐进式部署方案
服务器·前端·数据库·学习·ai·命令行·linux系统
江边风声4 小时前
从薄板到厚板、从吸盘到夹板边——坤鹏伯爵的取放技术体系是怎样覆盖全制程的
人工智能·科技·自动化·制造·pcb工艺