The law has nothing to do with it. Amazon is a private company and can make rules about who can or can't place orders on its website. When you create an account you agree to their ToS.
"autonomous or semi-autonomous" is the key phrase. If you manually invoke a curl command then no, it isn't an agent. If you write code that itself determines when and how to invoke that command then it is.
Am I not manually instructing the agent to buy a certain product?
What if I set up a cron job to buy a certain product every month - is that not autonomous? What if it is first querying my live toilet paper sticks to make the decision?
Exactly. It's software - `curl` or LLM. It's a function that accepts input and produces output. One is much more sophisticated that the other, but it's made out of the same machine instructions, there is no magic.
What's the criteria that makes one function "autonomous" and the other one "manual"? I feel it really boils down to this.
I don't think GP meant "legal" in the literal sense. Regardless, the post's meaning is still the same if you replace "Is this legal?" with "Does this conform to Amazon's ToS?", so please read it charitably and avoid being pedantic about this sort of thing.
And they even provide a definition of what an Agent is:
"Agent” means any software or service that takes autonomous or semi-autonomous action on behalf of, or at the instruction of, any person or entity.
Though to me it raises even more questions. What is a software that takes "autonomous" action on my behalf. Is curl "autonomous"?