Staging area
Also called Index, The cache
A holding area between your files and the next commit. git add puts a copy of a file there, exactly as it is at that moment, and git commit records only what is there. This lets you commit one change while others wait.
Agents like sweeping commands. git add -A stages whatever is in the folder, including the .env it just created and the debug file it forgot about. Naming each file keeps the commit to what you meant, and it is much the easiest way to keep a secret out of history.
Say it to your agent
“Don't use git add -A or git add . in this repo. Stage files by name, then run git diff --staged and check that nothing is in there I didn't ask for before you commit.”