What is the purpose of a GitHub 'machine user' account for automation?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Machine users are the classic pattern before GitHub Apps existed: create a GitHub account named something like 'ci-bot', don't tie it to any human, and use its credentials for automation. It works but has downsides — it consumes a license and the credentials are long-lived.
Full explanation below image
Full Explanation
A GitHub machine user (sometimes called a 'service account') is a GitHub user account created specifically for automation purposes rather than for a human user. It is not associated with any individual person and is managed by the team responsible for the automation. Use cases: CI/CD systems that need to clone repositories, automated processes that need to create issues or make API calls, and deploy keys associated with a non-human identity. Considerations: (1) Machine users consume a GitHub license seat. (2) Credentials (PATs) need rotation management. (3) For more modern and secure automation, GitHub Apps are the recommended alternative — they have their own identity, fine-grained permissions, don't consume user licenses, and use short-lived installation tokens. Machine user accounts are not a special GitHub account type — they are regular accounts used for a specific purpose.