Managing commands via bang bang (bang) (bang) instead of just bang

Open 💬 4 comments Opened May 8, 2026 by ronaldpetty
💡 Likely answer: A maintainer (etraut-openai, contributor) responded on this thread — see the highlighted reply below.

What variant of Codex are you using?

CLI

What feature would you like to see?

add - bang bang <cmd> -> interns command (!! ls, now ls works with no delay/cost/perf issues)
list - bang bang bang bang -> lists interned commands (e.g. !!!!, ls
delete - bang bang bang <cmd> -> remove interned command (e.g. !!! ls, now ls resumes existing slow behavior)

Being derailed typing ls while you needed !ls really slows me down. Be nice to suffer that once, then do !! ls, and henceforth ls just works like normal.

Additionally, it could be ok to lock it down to a subset of commands (maybe busybox – so Codex is a bit more in control).

Happy to implement demo.

Additional information

_No response_

View original on GitHub ↗

4 Comments

etraut-openai contributor · 3 months ago

Seems really niche, but we'll leave the feature request open to see if it gets upvotes.

ronaldpetty · 3 months ago

@etraut-openai won't disagree; some of its just preference, some of it probably age (ascii over unicode in terminal), and of course some of it is just being all in on AI. One day HCI courses will have the proper answer, but for now, I fight for consistency (of pre 2022 tooling). Still, love Codex with or without this.

ronaldpetty · 3 months ago

https://github.com/user-attachments/assets/7e709675-0daa-48c9-bce0-777f19cf4afe

Just to demo use of bang and not bang on a typical command. (more for those who don't know what were talking about).

Results: With bang < 1 second, without bang ~6 seconds.

etraut-openai contributor · 3 months ago

Yep. A bang command is handled directly by the harness rather than routing it through the model. Using a bang for local shell commands not only saves time, it also saves token usage.