> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt. ## OAuth client credentials auth, generators.yml Generated CLIs can now obtain their own tokens for machine-to-machine authentication. Declare an `oauth` scheme with `type: client-credentials` in `generators.yml` and the CLI exchanges a client ID and secret from the environment for a token, caches it until it expires, and refreshes it automatically. Custom token and refresh requests, response mappings, scopes, token headers and prefixes, and environment URLs are all read from the same `auth-schemes` configuration the SDKs use. Read the docs ## Per-CLI User-Agent identity features, generators.yml Requests now identify the CLI by its own binary name and version, such as `contoso-cli/1.4.0`, instead of the shared crate name that every generated CLI previously sent. Your API backend can distinguish traffic from each CLI you publish. Tools built on top of a generated CLI can tag their own traffic with the `--user-agent-suffix` flag or the `_USER_AGENT_SUFFIX` environment variable, which appends to rather than replaces the CLI's identity. Rename that flag at generation time with `userAgentSuffixFlag` if you'd prefer different branding. Read the docs