Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/analogdevicesinc/codefusion-studio/llms.txt

Use this file to discover all available pages before exploring further.

Some CFS packages — such as licensed SDKs, restricted toolchains, and certain board support packages — require authentication before they can be downloaded or installed. The cfsutil myanalog commands provide a command-line interface for logging in and out of your myAnalog account and checking the current session status. Authentication is also used by cfsutil catalog update and cfsutil docker pull when accessing Analog Devices registries.

What myAnalog authentication enables

Once authenticated, cfsutil can:
  • Download and install packages that require a myAnalog session (via cfsutil pkg install)
  • Access the authenticated CFS package registry for restricted SDKs and toolchains
  • Automatically present credentials when configuring a remote with cfsutil pkg auth-remote --myanalog
  • Update the SoC catalog with cfsutil catalog update
  • Pull Docker images from the Analog Devices registry with cfsutil docker pull

cfsutil myanalog login

cfsutil myanalog login [--verbose]
Initiates an OAuth login flow. The command attempts to open your default web browser to the myAnalog login page and displays a URL you can open manually if the browser does not launch automatically. The URL must be opened within 5 minutes and on the same machine the command is run on. If you are already logged in, the command reports your current session and exits without re-authenticating.
FlagShortDescription
--verbose-vShow additional session details (User ID, scopes) after login
cfsutil auth login is a deprecated alias for cfsutil myanalog login. Use the myanalog form going forward.
# Standard login
cfsutil myanalog login

# Login with session details
cfsutil myanalog login --verbose
Sample output:
You are logged in to myAnalog as user@example.com.
Verbose output:
You are logged in to myAnalog as user@example.com.
Session details:
  User ID: 12345678
  Scopes: openid, profile, email

cfsutil myanalog logout

cfsutil myanalog logout
Ends the current myAnalog session. If no active session exists, the command reports that you are not logged in and exits without error.
cfsutil auth logout is a deprecated alias for cfsutil myanalog logout.
cfsutil myanalog logout
Sample output:
You have been logged out of myAnalog successfully.

cfsutil myanalog status

cfsutil myanalog status [--verbose]
Displays the current myAnalog authentication status. Use this to verify your session before running commands that require authentication.
FlagShortDescription
--verbose-vShow User ID and session scopes in addition to the account email
cfsutil auth status is a deprecated alias for cfsutil myanalog status.
cfsutil myanalog status
cfsutil myanalog status --verbose
Sample output (logged in):
You are logged in to myAnalog as user@example.com.
Sample output (not logged in):
You are not logged in to myAnalog.

Repository-level authentication with pkg auth-remote

For package registries that require authentication independently of (or in addition to) myAnalog, use cfsutil pkg auth-remote to configure the authentication method for a specific remote:
# Authenticate a remote using your active myAnalog session
cfsutil pkg auth-remote myserver --myanalog

# Authenticate with username/password or a token
cfsutil pkg auth-remote myserver --user USERNAME --password PASSWORD

# Remove authentication from a remote
cfsutil pkg auth-remote myserver --none
When using --myanalog with pkg auth-remote, you must be logged in first. Run cfsutil myanalog status to check, and cfsutil myanalog login if needed.

When to authenticate

You will typically need to authenticate in the following situations:
Some packages include a license agreement. If --acceptLicense is not passed, you will be prompted interactively. In non-interactive environments (CI), use --acceptLicense:
cfsutil pkg install restricted-sdk/2.2.0 --acceptLicense

CI/CD authentication

In CI environments, use the --acceptLicense flag to avoid interactive prompts. If your CI pipeline must access restricted packages that require myAnalog authentication, configure the remote with a service account token instead of an interactive login:
# Configure authenticated remote with a service account token
cfsutil pkg add-remote adi-registry https://packages.adi.example.com
cfsutil pkg auth-remote adi-registry --user ci-service --password "$CI_ADI_TOKEN"

# Install restricted package non-interactively
cfsutil pkg install restricted-sdk/2.2.0 --acceptLicense

Build docs developers (and LLMs) love