Does that really mean that it's bundling those apps from the start or did it just download and install them at some point to do some local work on some prompt or job you ask it to?
I don't see it making much sense to bundle it. I'm sure a LOT of LLM prompts are related with docs, excels, powerpoints etc, etc but don't really see it worth it for it to be bundled on the codex app from the get go, because otherwise, why not also install dozens of other apps?
I'm not sure. Someone who hasn't installed the ChatGPT (or Codex) apps yet could confirm this by installing the apps, seeing if that ~/.cache directory exists, then try running a prompt that needs Python or Node.js or LibreOffice and see if it downloads them when needed.
Is that what it is using to render and manipulate MS Office documents? That'd explain the poor rendering of some of my files. Bundling all of LibreOffice seems like a pretty huge dependency.
For a docker image of mine I was bundling the full version of LibreOffice as well but I managed to get some space savings by bundling just the no-gui version.
Computer use is slow and can take control of the application focus. I’ll be doing things while Claude runs in the background. Suddenly it decides to open the app and try to do something + screenshot it.
I actually bundle it with my app too and the reason is reading files, especially old xls files. Since I'm bundling it I'm now using it for everything docs related but the specific reason is those old files. I couldn't find anything else that I could just drop it and feel confident it'll just read anything I give it.
I've noticed that when I have codex read/modify word files the live reasoning snippets often allude to LibreOffice, so that makes sense. I think it was a quick and dirty way for them to interface with docx and xlsx files?
Walnut is the .NET and OpenXML backend. I think the point parent was trying to make it that it shouldn't be surprising Codex bundles runtimes for damn near everything.
I still don’t understand why with all their cash these companies dont redo their apps in Rust or native. They are all so heavy and dog slow. There are already some very fast cross platform (wasm too!) libraries that can do what poppler does as well as parse and produce various office file formats. Because 2gb is crazy town, these things could be around 100mb, just throw some tokens at the problem.
Just throw some tokens at the problem. I’ve vibed up a Rust Crux hybrid app that runs well on macOS, iPad and wasm and does some pretty complex xml manipulation and other document work. Absolutely smokes electron and you get native UI.
On top of everyone else’s great points, if you make your own “fork” of something, then you have to consistently maintain it. Which can be done with tokens, but an extra cost with something that’s not as user tested.
I mean, aside from all the NP Hard sub problems (I might not be reading your satire though), the real hard problem is that a "product" is not just software, but an ecosystem and a promise of maintenance of the abstract user experience & quality of it.
Someone may need to explain to me what is wrong with this sorry. Is it because it bloats the app with functionality that some users will never use? I feel like that is fairly usual for productivity/business apps generally.
Oh right, yeah I agree. It's the kind of thing I can imagine the harness downloading in the background anyway (or instructing the user to do) at some point so I can see the sense in just skipping that bit. Kind of comforting they just do it the same way the rest of us do - if it ain't broke and so on.
It does, however, introduce a potentially enormous attack surface into ChatGPT, along with creative opportunities for less security conscious individuals and LLMs.
Yes, that's what I mean - maybe that didn't come across cos I said "bloats". I work for a business that builds web apps for corporates - LibreOffice is bundled in most of the repos of ours that I've seen, a bit like Imagick is in the broader sector.
Does that really mean that it's bundling those apps from the start or did it just download and install them at some point to do some local work on some prompt or job you ask it to?
I don't see it making much sense to bundle it. I'm sure a LOT of LLM prompts are related with docs, excels, powerpoints etc, etc but don't really see it worth it for it to be bundled on the codex app from the get go, because otherwise, why not also install dozens of other apps?
I'm not sure. Someone who hasn't installed the ChatGPT (or Codex) apps yet could confirm this by installing the apps, seeing if that ~/.cache directory exists, then try running a prompt that needs Python or Node.js or LibreOffice and see if it downloads them when needed.
I've never installed the ChatGPT app on my Mac until today. I ran the app, signed in, and I see the same.
% ls ~/.cache/codex-runtimes/codex-primary-runtime/dependencies/native/libreoffice-headless
libreoffice manifest.json
On a Windows installation I see this:
So doesn't seem bundled with all installs at least.> why not also install dozens of other apps?
because other apps are less likely to be useful, and there's diminishing returns
Is that what it is using to render and manipulate MS Office documents? That'd explain the poor rendering of some of my files. Bundling all of LibreOffice seems like a pretty huge dependency.
For a docker image of mine I was bundling the full version of LibreOffice as well but I managed to get some space savings by bundling just the no-gui version.
> Bundling all of LibreOffice seems like a pretty huge dependency
What's the alternative library you see?
Apache POI
Why not computer use or using the tools the user prefers instead? The primary office suites have APIs/CLIs now
Computer use is slow and can take control of the application focus. I’ll be doing things while Claude runs in the background. Suddenly it decides to open the app and try to do something + screenshot it.
That's where the CLIs come in for me, I'm not going to waste tokens on screenshots and input device manipulation
https://devblogs.microsoft.com/microsoft365dev/getting-start...
https://github.com/googleworkspace/cli
pandoc
Yes. If you have word you can instruct to use word via com or AppleScript.
Just the headless version is bundled.
Curiously, I didn't find any reference in the Open source licences section of the codex app.
Is this a MPL 2.0 violation?
Copyright violation is the last thing one could accuse ChatGPT of.
Well, this one is particularly obvious, other one are more fuzzy.
I actually bundle it with my app too and the reason is reading files, especially old xls files. Since I'm bundling it I'm now using it for everything docs related but the specific reason is those old files. I couldn't find anything else that I could just drop it and feel confident it'll just read anything I give it.
I've noticed that when I have codex read/modify word files the live reasoning snippets often allude to LibreOffice, so that makes sense. I think it was a quick and dirty way for them to interface with docx and xlsx files?
My agent did it? I didn’t do it.
(This is more of a tweet than a blog post, it really wasn't written with Hacker News in mind.)
frankly how dare you
How is simonw to blame for somebody else submitting it to HN?
I have a feeling you should learn about Poe's law: https://en.wikipedia.org/wiki/Poe's_law
True, I feel like the entire HN community is to blame for this, particularly pg and dang.
I don't see the problem?
Who said it was a problem? This looks like an observation to me, not an accusation.
probably uses it extensively to convert between LLM working on a doc and exporting it out to excel, word etc
There's no security benefit to doing this versus demand-downloading hashed-locked components on need.
And wait till you find out about @oai/walnut
do tell!
Walnut is the .NET and OpenXML backend. I think the point parent was trying to make it that it shouldn't be surprising Codex bundles runtimes for damn near everything.
I still don’t understand why with all their cash these companies dont redo their apps in Rust or native. They are all so heavy and dog slow. There are already some very fast cross platform (wasm too!) libraries that can do what poppler does as well as parse and produce various office file formats. Because 2gb is crazy town, these things could be around 100mb, just throw some tokens at the problem.
Not that easy. Also, they have "priorities." Although their priorities are different than the users'.
Just throw some tokens at the problem. I’ve vibed up a Rust Crux hybrid app that runs well on macOS, iPad and wasm and does some pretty complex xml manipulation and other document work. Absolutely smokes electron and you get native UI.
Ref: https://redbadger.github.io/crux/
On top of everyone else’s great points, if you make your own “fork” of something, then you have to consistently maintain it. Which can be done with tokens, but an extra cost with something that’s not as user tested.
one does not just "throw tokens" at a problem, Ai is not that capable, and we are talking about MS Office file format, likely a NP hard problem
But in case they succeed the return on image will be astonishing.
Can you expand upon this?
I mean, aside from all the NP Hard sub problems (I might not be reading your satire though), the real hard problem is that a "product" is not just software, but an ecosystem and a promise of maintenance of the abstract user experience & quality of it.
What % of time, for a an average session, do you think is app overhead vs waiting for tokens? And there's your answer for why it's not a priority.
Jon Blow's response to this take was, "yes, which is why you have to work even harder to hide latency", instead of adding more on top.
From OpenAIs perspective, resources on your computer are free and wasting them is inconsequential
What makes you think Rust is automatically better?
(Also, "Rust or native" is a strange dichotomy. What's not native about Rust?)
I think “or native” is a gesture at swift/objc for mac and C# or whatever people write windows apps in.
Someone may need to explain to me what is wrong with this sorry. Is it because it bloats the app with functionality that some users will never use? I feel like that is fairly usual for productivity/business apps generally.
I don't see anything wrong with it, I just think it's interesting.
Oh right, yeah I agree. It's the kind of thing I can imagine the harness downloading in the background anyway (or instructing the user to do) at some point so I can see the sense in just skipping that bit. Kind of comforting they just do it the same way the rest of us do - if it ain't broke and so on.
It does, however, introduce a potentially enormous attack surface into ChatGPT, along with creative opportunities for less security conscious individuals and LLMs.
I think it's overbloating my computer
Actually, people do use and require the functionality, which is the point. The title as posted might be incorrect.
Yes, that's what I mean - maybe that didn't come across cos I said "bloats". I work for a business that builds web apps for corporates - LibreOffice is bundled in most of the repos of ours that I've seen, a bit like Imagick is in the broader sector.