# Shell scripts must stay LF so they execute inside Linux containers
# when cloned on Windows with core.autocrlf=true.
*.sh text eol=lf
workspace/entrypoint.sh text eol=lf

# Python hook files are invoked by .sh hooks with path substitution;
# CRLF in either the .sh OR the .py file breaks the hook dispatch.
# See #507 — SessionStart hook failed silently,
# agents returned "(no response generated)" on every A2A call.
*.py text eol=lf

# Dockerfiles and compose files are parsed by tools that tolerate CRLF,
# but keep LF for consistency across platforms.
Dockerfile text eol=lf
*.dockerfile text eol=lf
