Remix.run Logo
Codex Security(github.com)
332 points by bakigul 5 hours ago | 91 comments
dangelosaurus 4 hours ago | parent | next [-]

Hey HN, Michael here, co-founder of Promptfoo and one of the people working on the Codex Security CLI at OpenAI.

Thanks for checking this out and for flagging the auth issues. We just open-sourced it, and there's still plenty for us to improve. Expect the product to evolve quickly.

If you try it, I'd really appreciate hearing what works well and what you think we should improve. Happy to answer questions here.

CLI docs: https://learn.chatgpt.com/docs/security/cli

EDIT: If you'd like to help make this better, we're hiring: https://openai.com/careers/full-stack-software-engineer-cybe...

orangelimesoda 2 hours ago | parent | next [-]

> Have experience shipping production full-stack products across modern web frontends and backend services.

I'm amazed that the requirements are so low (or at least this vague) for jobs at companies like these.

Has anyone else had the experience of going to an interview and feeling like you were never asked any qualifying questions?

All the questions were easy, your answers were straightforward, you "got them right", but then were not chosen?

I find on the other side, they're also left with dozens of people who "passed" and then it comes down to a pretty arbitrary decision on who gets hired (if we are talking external, no referral, etc.)

I wonder if they can make job descriptions highly specific to filter the shortlist faster and more effectively (to actually get a shortlist).

Anyway end rant. Cool job, hope you fill it.

jameshart 2 hours ago | parent | next [-]

This sounds like it’s just an app development role, not a security analysis position, so I’m not sure what your complaint is.

solid_fuel 2 minutes ago | parent [-]

Professional app development requires an understanding of security.

pertymcpert 2 hours ago | parent | prev [-]

If you didn't already know, jobs at highly competitive companies tend to have vague job requirements because they expect to be able to apply your raw intelligence to changing demands quickly. There's no point being hyper-specific about the exact software packages because that's not what they want. What they want is someone who, after talking to an interviewer for 30 minutes, leaves them with the thought "Wow, this person can do anything we need of them. They can probably tell us what we need too and take ownership of large projects. Hire!"

moscoe an hour ago | parent [-]

Agree. Being smart, competent, and high in conscientiousness is more important than any highly specific “qualification”. It’s not about checking a bunch of boxes. If you have a track record of getting shit done, you’ll have something to contribute.

vladoh 3 hours ago | parent | prev | next [-]

This looks great, thanks for open-sourcing it!

How does it deal with the current guardrails 5.6 Sol has on finding vulnerabilities? When I use it in the Codex app it would sometimes say it found a vulnerability, but it cannot tell me what it is.

dangelosaurus an hour ago | parent [-]

Thanks! You've run into a real limitation: the CLI doesn't bypass the model's cybersecurity guardrails. If GPT-5.6 Sol finds a vulnerability but refuses to explain it, switching from the Codex app to the CLI won't automatically fix that.

For authorized defensive work, Trusted Access for Cyber (TAC1/Daybreak) can reduce refusals depending on the model and the account or organization where access is provisioned. It isn't a blanket bypass.

If you're an open-source maintainer, you can apply for conditional Codex Security access here:

https://openai.com/form/codex-for-oss/

For enterprise teams, the public Daybreak onboarding guide is here:

https://help.openai.com/en/articles/20001261-enterprise-dayb...

If you have an example of "found a vulnerability but won't tell me what it is," I'd love to take a look too. You can send it to use with /feedback (or message me).

Quai 3 hours ago | parent | prev | next [-]

I tried it, it started a scan but stopped after hitting the rate-limit of my account. It gave up after just a minute of retrying (rate limits are tokens per minute, so... :P).

It said "Partial output was kept at <...>", but I dont see a obvious way of picking it up in a new scan? (The failed run cost me ~$13)

dangelosaurus 2 hours ago | parent [-]

Yeah, you're right. A per-minute rate limit shouldn't kill a scan after a minute, and "partial output was kept" makes it sound like you can pick up where you left off. You can't yet, unfortunately. --max-cost can limit estimated spend, but we still need proper retries and resume. Sorry you spent $13 finding that out. Please send me an email and I'll help make it right.

gizmodo59 4 hours ago | parent | prev | next [-]

When would I use this over the plugin in codex? Which I think can be invoked from cli as well

dangelosaurus 3 hours ago | parent [-]

The plugin, including when invoked through the Codex CLI, is great for scanning the repo you're currently working in. The standalone Security CLI/SDK uses the same scanner, but is built for running security across many repos over time: org-wide scans, historical results, deduplication, false-positive tracking, budget controls, and CI integration.

We've been talking to hundreds of engineering and security teams, and their feedback is shaping what we build.

Like Promptfoo, our goal is practical tooling that fits into the workflows teams already have.

strictnein 3 hours ago | parent | prev | next [-]

Does it require hitting OpenAI's APIs or can one also stand up a local OpenAI compatible LLM endpoint?

dangelosaurus 3 hours ago | parent [-]

We are actively working on officially supporting this. Because it's open source it is pretty easy to point a coding agent at it now and switch out the model.

ignoramous 3 hours ago | parent [-]

Exciting! Is there any open GitHub issue we can track?

dangelosaurus an hour ago | parent [-]

Not yet, unfortunately. We only just opened the repo, and there isn't a public issue specifically tracking local or OpenAI-compatible endpoint support.

The issue tracker is here: https://github.com/openai/codex-security/issues

If you open an issue with the endpoint or model you want to use, I'd be happy to follow up there.

robotswantdata 4 hours ago | parent | prev | next [-]

Been watching your progress for a while, glad OpenAI have looked after you and the team and you still get to ship!

dangelosaurus an hour ago | parent [-]

Thank you, that means a lot. Being able to keep building practical, open-source security tooling was important to us.

Really glad we got to ship this, and there's still a lot we want to improve in Codex Security and in Promptfoo!

6thbit 3 hours ago | parent | prev | next [-]

How does it fare against its own codebase?

waterTanuki 39 minutes ago | parent | prev | next [-]

Why does this need an entirely separate repo instead of being a feature in the existing Codex project?

troupo 3 hours ago | parent | prev [-]

> co-founder of Promptfoo and one of the people working on the Codex Security CLI at OpenAI.

> Thanks for checking this out and for flagging the auth issues.

Offtopic, but this right here is why I don't believe any marketing around "great amazing models that one-shot everything and programmers are no longer needed".

You just have to look at what these labs routinely produce, and their own products.

Edit to respond to @simonw whose comment I saw before he retracted it ;)

This comment is tied directly to consistent continuous claims by the LLM labs. Their own products disprove their own claims, and it would indeed be nice if fewer people believed them :)

schrodinger 34 minutes ago | parent | prev | next [-]

Quick tangent if you’re willing to humor me…

I've been noticing that many new projects that would have been written in Python or Node a year ago are starting to be written in Go, Rust, etc.

Theory: people realized there’s little benefit to Python for agents. As Zep wrote, an “agent is a long-running, concurrent, I/O-bound process that spends most of its time waiting on a model, a tool, or a human[1]” — not a particular strength of Python.

I'm wondering if you'd considered Go (or others—Go’s just my fav ) before landing on Node, and more broadly whether you've noticed a similar pattern?

1: https://blog.getzep.com/agentic-development-in-go/

computerex 6 minutes ago | parent | next [-]

I think it's because python is far more approachable/ubiquitous than go/rust. It's the entry level language for many people from all disciplines of life. Scientific community uses it, data science uses it.

Golang/rust however are very convenient to distribute. Small, portable, fast exe's are very nice. With agentic coding golang/rust are now accessible to a lot more people.

ipnon 30 minutes ago | parent | prev [-]

Yes, now that humans write less than 99% of code, the most important criteria for a language isn't readability, which I'd argue was always Python's main selling point, but the underlying runtime. There are practical limits to how fast a Python program can run either under I/O or CPU bound compared to other popular and mature languages with extensive libraries, like Elixir, Go or C++, depending on your use case.

tripleee 28 minutes ago | parent [-]

> now that humans write less than 99% of code, the most important criteria for a language isn't readability

please tell me you're reading the AI code

computerex 4 minutes ago | parent [-]

Not really. I test the output thoroughly, I examine the thinking process, I go through the diff to see if anything jumps out but I my thinking process/the way I work has changed. Low level programming thinking has gotten atrophied it seems.

gregwebs 3 hours ago | parent | prev | next [-]

Just ran it on a small repo. It ran for almost an hour and then got interrupted. It drained half my weekly usage on a Pro plan.

  npx codex-security scan .
  [00:00] Preparing scan
  [00:00] Authentication: stored Codex credentials.
  [00:03] Preparing scan
  [01:20] Running scan
  [01:20] Preflight: worker delegation supported (up to 8 worker slots).
  [52:47] Running scan
  codex-security: Could not save the Codex Security scan: Repository HEAD changed while the scan was running. Start a new scan.
  codex-security: Partial output was kept at ...
brap 2 hours ago | parent | next [-]

Working as intended

hellohello2 8 minutes ago | parent | prev | next [-]

Pro is 10$ a month. You get what you pay for lol.

alansaber an hour ago | parent | prev | next [-]

Classic.

teaearlgraycold 3 hours ago | parent | prev | next [-]

I plan to hack it to use openrouter and Kimi K3 or GLM 5.2 to keep expenses reasonable.

For context can you share the line count?

typpo 29 minutes ago | parent | next [-]

No need to hack it, we'll add proper support for this.

st3fan an hour ago | parent | prev | next [-]

Give this a try https://infosec.exchange/@st3fan/117000352530023032

ymir_e 2 hours ago | parent | prev [-]

FYI: Kimi K3 is relatively expensive on open router API pricing for agentic tasks, or at least that's been my experience playing around with it.

teaearlgraycold 2 hours ago | parent [-]

They just opened the weights. I expect competition from various providers will drop the price a bit. But you're right. I'd hope a model closer to GLM 5.2's price would be sufficiently useful.

dangelosaurus 2 hours ago | parent | prev [-]

Oof, that's a bad outcome. Half your weekly usage and a 50-minute scan just to get a HEAD error at the end is not acceptable. --max-cost can help limit estimated spend, but that doesn't fix the underlying problem or give you your quota back. We need to handle a changing checkout and partial results much better. Sorry you ran into this. Please send me an email.

alasano 33 minutes ago | parent [-]

Damn. Just ran it and it used 5 years worth of Pro usage in 5 minutes.

If ya wouldn't mind crediting me a quick 60 months that would be great.

luciana1u 3 hours ago | parent | prev | next [-]

security tools from AI companies feel like fire departments run by arsonists. useful, sure, but you can't help noticing who benefits from all the fires

Quarrelsome 3 hours ago | parent | next [-]

comment feels like someone complaining about being offered a fireproofing solution in the age of flamethrowers.

oursland 2 hours ago | parent | prev | next [-]

They're only discovering the security flaws that exist. Would you rather them not be exposed and corrected? To "Slow the testing down"?

alansaber an hour ago | parent | prev | next [-]

How do we fix scaling issues? More volume of course.

kristjansson an hour ago | parent | prev | next [-]

Apropos of nothing: https://en.wikipedia.org/wiki/Marcus_Licinius_Crassus

teaearlgraycold 3 hours ago | parent | prev [-]

If you’re the one vibe coding you’re the arsonist.

varenc 2 hours ago | parent | prev | next [-]

It's interesting how much of the value here is providing the english Skill definitions that tell the LLM what to do: https://github.com/openai/codex-security/tree/main/sdk/types...

Some of approaches there could be useful in other contexts. OAI has the compute to experiment with different prompts and I'd expect these to be somewhat optimized.

dangelosaurus 36 minutes ago | parent [-]

Yes, I think this is an under-appreciated part of the release. I hope people can adapt them to their own workflows. We run A LOT of evals as the Promptfoo team and we've spent billions of tokens fine-tuning them. You can expect more skills as we branch out to other security workflows and further improvements to the codex security prompts.

bakigul 4 hours ago | parent | prev | next [-]

Update: As far as I understand, this was already available as a Codex plugin. The main news is that OpenAI has now open-sourced it, and development is still moving quickly.

shepherdjerred 22 minutes ago | parent | prev | next [-]

Is this useful for pentesting existing systems/infra, or is it only useful for a "review my project for bugs"?

moehm 4 hours ago | parent | prev | next [-]

Alibaba just open sourced their version of a CLI code review tool too.

https://github.com/alibaba/open-code-review

bakigul 4 hours ago | parent [-]

They are entirely different products

minraws 4 hours ago | parent | prev | next [-]

I seem to have gotten a bunch of you are trying to stuff we don't allow errors.. very annoying.

Can they explain what types of projects it works on and how does it check I own it? Like will it just not work on Linux kernel even on my own patches to it?

bakigul 3 hours ago | parent | next [-]

https://news.ycombinator.com/item?id=49090181

dangelosaurus an hour ago | parent | prev [-]

Fair question, and I agree the refusals are frustrating.

The CLI doesn't do a repository-ownership check. Public projects are supported, and reviewing your own Linux kernel patches is the kind of defensive work we want to support.

The refusals come from model guardrails, which can be overly cautious. Trusted Access for Cyber (TAC1/Daybreak) is a separate, approved access path that can reduce those refusals.

If you're an open-source maintainer, you can apply for conditional Codex Security access here: https://openai.com/form/codex-for-oss/

For enterprise teams, the Daybreak onboarding process is explained here: https://help.openai.com/en/articles/20001261-enterprise-dayb...

If you have a specific repro, I'd be happy to look into it.

lawgimenez 37 minutes ago | parent | prev | next [-]

Is this the same plugin found in Codex? @codex Security?

iancarroll 3 hours ago | parent | prev | next [-]

Looks great but the CLI output is not particularly interesting while the scan is running. I wish it could show token usage, some kind of progress, etc.

alansaber an hour ago | parent | next [-]

Yes this is my pet peeve with a lot of the more involved agent skills/processes

dangelosaurus an hour ago | parent | prev [-]

Agreed! This is near the top of our priority list and we will make it a lot better soon.

petilon 3 hours ago | parent | prev | next [-]

How does it work? Does the tool upload code to ChatGPT for analysis? That may not be allowed for some corporate projects.

raylad an hour ago | parent | next [-]

Anything you ever do with any non-locally-hosted model always "uploads code" to the inference provider because that's how it works: the model uses tools to inspect the code, the result of the tool use is sent in an API call to provide context (and a prompt for the next turn), and then the response continues the process.

This is true and has to be true for any hosted model that works with existing code: it's not specific to this application.

dangelosaurus an hour ago | parent | prev | next [-]

In short, this isn't an offline scanner. The CLI runs locally but the code and context needed for analysis are sent to the hosted model (OpenAI).

For API, Business, and Enterprise accounts, business data isn't used to train models by default. Retention and other data controls depend on the product and account configuration.

If your company doesn't allow source code to leave its environment, you shouldn't run this against that codebase. Local and third-party endpoints aren't officially supported yet, but you can read through the code and your favorite coding agent will allow you to use it with any model of your choice in 30 seconds.

More on OpenAI's enterprise data handling: https://openai.com/enterprise-privacy/

daishi55 3 hours ago | parent | prev | next [-]

Yes, I suspect companies that don’t allow ChatGPT will not be able to use the ChatGPT security analysis tool.

derac 3 hours ago | parent | prev [-]

Amazon bedrock is an option for gpt models that does not send your data to openai.

petilon 3 hours ago | parent [-]

Does Amazon offer better privacy guarantees than OpenAI?

edot 3 hours ago | parent [-]

Yes, if only due to the business models being entirely different. AWS sells compute. OpenAI sells models. One of these things benefits from training on your data significantly more than the other.

game_the0ry 4 hours ago | parent | prev | next [-]

I wonder if tools like this will put companies like snyk out of business. We use snyk at work and I have not been satisfied.

binsquare 4 hours ago | parent | next [-]

I like to think it just upped the bar, but good durable expertise will need to rise with it.

bakigul 4 hours ago | parent | prev [-]

Why would a few code snippets put Snyk out of business?

krater23 3 hours ago | parent [-]

I don't understand why Snyk is IN business in any way. Who really wants to upload his own code to a company that is specialized at searching security issues?

How can I trust that they show me all findings they have instead of selling the best ones to some three letter organisations?

alealvarezarg 4 hours ago | parent | prev | next [-]

I was actually discussing solutions for this with my coworkers—building white-hat security agents. It seems like openai/codex-security could simplify a lot of that, or at least provide a version of Codex that's purpose-built for security workflows. Really exciting news!

shooker435 4 hours ago | parent | prev | next [-]

Just getting auth issues so far...

bakigul 4 hours ago | parent | next [-]

https://news.ycombinator.com/item?id=49090181

dumpstertechops 4 hours ago | parent | prev | next [-]

yeah same here

dangelosaurus an hour ago | parent | prev [-]

Sorry about that. We hit an authentication issue at launch and have now merged and deployed a fix in 0.1.1:

https://github.com/openai/codex-security/pull/22

One thing worth checking in the meantime: OPENAI_API_KEY or CODEX_API_KEY can override an existing ChatGPT/Codex login. If you're trying to use your ChatGPT login, run this in bash or zsh:

  unset OPENAI_API_KEY CODEX_API_KEY
Then retry your scan.

If it still fails, could you share the exact error and whether you're using ChatGPT login or an API key? Happy to help debug. You can also file an issue in the repo and we'll take a look!

halfax 3 hours ago | parent | prev | next [-]

be careful , your code will go to the cloud/ai using this

bakigul 3 hours ago | parent [-]

Yeah, this isn’t exactly new for us :d

petesergeant 4 hours ago | parent | prev | next [-]

I don't think there's much to this other than it being a convenient CI wrapper around their existing models?

Edit: there's a little bit more meat here: https://github.com/openai/codex-security/tree/main/sdk/types...

paxys 3 hours ago | parent | next [-]

All of codex is a wrapper around their models. There’s still value in a purpose-built harness.

bakigul 4 hours ago | parent | prev | next [-]

Yeah, I think so too.

bamboozled 4 hours ago | parent | prev [-]

Yeah but management loved the idea.

bearsyankees 4 hours ago | parent | prev | next [-]

would love it to see it h2h against https://github.com/usestrix/strix (45k stars)

petesergeant 4 hours ago | parent [-]

They are entirely different products

bearsyankees 4 hours ago | parent [-]

yeah you mean because OAI is only whitebox? or expand on that a bit, haven't played around a ton w the oss codex sec

yashasgunderia 2 hours ago | parent | prev | next [-]

from plugin to main focus, wow

jaimex2 2 hours ago | parent | prev | next [-]

How can I trust this wont go rogue and hack Hugging Face?

dlahoda 2 hours ago | parent | prev | next [-]

Allow only OpenAi key? Requires Cyber registration? Yes. Yes. Useless.

dangelosaurus an hour ago | parent [-]

By default, you can sign in with your ChatGPT/Codex account or use an OPENAI_API_KEY. It also does not require cyber registration but it can help if you encounter refusals. If you give it a try, please feel free to message me, I would love your feedback.

onatozmen 2 hours ago | parent | prev | next [-]

hey

ofjcihen an hour ago | parent [-]

Hi

dangelosaurus an hour ago | parent [-]

Hello!

sams99 2 hours ago | parent | prev | next [-]

I got my agent to analyze it and do a write up here:

https://wasnotwas.com/writing/inside-openai-codex-security/

thenewwazoo 2 hours ago | parent [-]

oh yeah well I got my agent to analyze your write up and do a write up here:

https://pornoscan.us/codex-security-analysis.html

knighthacker 3 hours ago | parent | prev [-]

The scanner is the least interesting part of this. The harness around it is the product: dedup across runs, false-positive tracking, budget controls, CI gating. That is the layer where we'll see most interesting innovations in my opinion.

I'm building AQ, a coding harness for teams and the pattern is identical. For a while, I thought the raw model is the answer and quickly changed my mind. Purpose built harnesses are way more powerful than it sounds.