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.
cfsutil is the command-line utility for CodeFusion Studio (CFS). Built on the oclif framework, it exposes the same workspace creation, AI model compilation, package management, SoC inspection, and task execution capabilities available in the IDE — all from a terminal or CI pipeline. Whether you are automating firmware builds, generating AI-deployable C code, or scripting workspace setup across teams, cfsutil gives you full programmatic control over your CFS development environment.
Accessing cfsutil
From the CFS Terminal in VS Code (recommended)
The recommended way to runcfsutil is through the dedicated CFS Terminal inside VS Code, which automatically configures the correct environment and paths.
- Open a new terminal: View > Terminal or press
Ctrl+`. - In the terminal panel, click the dropdown arrow next to the + icon.
- Select CFS Terminal from the list.
- Run any command:
From a system terminal outside VS Code
You can also invokecfsutil directly from your operating system terminal using the full installation path.
- Windows
- Linux / macOS
Getting help
Pass--help at any level of the command hierarchy to display usage information, available subcommands, and flag descriptions for that level.
Command groups
cfsutil is organized into command groups, each focused on a specific area of the development workflow.
| Command group | Description |
|---|---|
cfsutil ai | Compile AI/ML models to C/C++ source, check hardware compatibility, profile resource usage, and manage models in a workspace |
cfsutil workspace | Create and configure CFS workspaces from command-line arguments or a .cfsworkspace file |
cfsutil project | Regenerate projects defined inside an existing .cfsworkspace file |
cfsutil pkg | Install, search, update, and remove SDKs, toolchains, and plugins via the CFS Package Manager |
cfsutil socs | List, inspect, and export SoC data models known to cfsutil |
cfsutil elf | Analyze ELF firmware binaries: inspect headers, memory layout, and symbol tables |
cfsutil tasks | List and execute build, flash, clean, and debug tasks for a CFS workspace project |
cfsutil dt | Parse device tree files (.dts, .dtsi, .overlay) and output JSON |
cfsutil generate | Generate source code from a .cfsconfig file |
cfsutil cfsplugins | List CFS plugins installed with CodeFusion Studio or added via the Package Manager |
cfsutil plugins | Extend cfsutil with additional oclif-compatible CLI plugins from npm or Git |
cfsutil myanalog | Authenticate with your myAnalog account to access restricted packages and toolchains |
cfsutil port | List active serial ports on the host PC |
cfsutil catalog | Update or restore the SoC catalog to its latest online or original installed version |
cfsutil docker | Pull Docker images from the Analog Devices registry using myAnalog credentials |
Working with multiple .cfsconfig files
Some cfsutil commands — particularly the ai commands — rely on .cfsconfig files in your workspace’s .cfs/ directory. When cfsutil automatically discovers a configuration, it expects only one .cfsconfig file to be present. If multiple files exist, selection may be non-deterministic and produce unexpected results.
Recommended approaches to avoid ambiguity:
Option 1 — Use --config to specify a file directly (supported by ai commands):
.cfsconfig extension and copy the one you want:
The
rm command in Option 2 permanently deletes all .cfsconfig files in the .cfs/ directory. Always keep backups of configurations you intend to reuse. The examples above use Unix-style commands (rm, cp) which work in the CFS Terminal, macOS, Linux, and Windows environments such as Git Bash or WSL.