Get the latest tech news
Any program can be a GitHub Actions shell
In GitHub Actions, you can use the shell keyword to specify the shell that runs a given run: block. This keyword is optional for workflows but mandatory for action definitions.
The shell normally defaults to something sensible for your runner, e.g. bash on Linux and macOS, and pwsh on Windows. Based on that, you might think that there's a fixed number of valid shell values, which GitHub tracks and adds their special flags to. It's hard to say — there are plenty of other ways in which file writes imply execution in GitHub Actions, including GITHUB_ENV itself.
Or read this on Hacker News