Key words are these.
> They then know how to do stuff in the future in my projects.
No. No, they don't. Every new session is a blank slate, and you have to feed those markdown files manually to their context.
The AI hype folks write massive fan fiction style novellas that don't have any impact.
But there's middle ground where you tell the agent the specific things about your repo that it doesn't know based on its training. Like if your application has a specific way to run tests headless or it's compiled a certain way that's not the default average.
Unless, of course, the phase of the moon is wrong and Claude itself is stupid beyond all reason
AGENTS.md exists, Codex and Crush support it directly. Copilot, Gemini and Claude have their own variants and their /init commands look at AGENTS.md automatically to initialise the project.
Nobody is feeding aything "manually" to Agents. Only people who think "AI" is a web page do that.
All of them often can't even find/read relevant docs in a new session without prompting
And of course it's up to the developer to keep the documentation up to date. Just like when working with humans. Stuff don't magically document itself.
Yes "good code is self-documenting", but it still takes ages to find anything without docs to tell you the approximate direction.
It's literally a text file the agent can create and update itself. Not hard. Try it.
Humans actually learn from codebases they work with. They don't start with a clean slate every time they wake up in the morning. They know where to find information and how to search for them. They don't need someone to constantly update docs to point to changes.
> but it still takes ages to find anything without docs to tell you the approximate direction.
Which humans, unsurprisingly, can do without wiping their memory every time.
That sounds a lot like '50 First Dates' but for programming.
Yes, this is something people using LLMs for coding probably pick up on the first day. They're not "learning" as humans do obviously. Instead, the process is that you figure out what was missing from the first message you sent where they got something wrong, change it, and then restart from beginning. The "learning" is you keeping track of what you need to include in the context, how that process exactly works, is up to you. For some it's very automatic, and you don't add/remove things yourself, for others is keeping a text file around they copy-paste into a chat UI.
This is what people mean when they say "you can kind of do "learning" (not literally) for LLMs"
It's functionally working the same as learning.
If you look at it like a black box, then you can't tell the difference from the input and output.
For example, let's say LLMs did not have examples of chess gameplay examples in their training data. Would one be able to have an LLM play chess by listing the rules and examples in the context? Perhaps, to some extent, but I believe it would be much worse than if it was part of the training (which of course isn't great either).
Whenever I have a model fix something new I ask it to update the markdown implementation guides I have in the docs folder in my projects. I add these files to context as needed. I have one for implementing routes and one for implementing backend tests and so on.
They then know how to do stuff in the future in my projects.