| name | slcli |
| description | Query and manage NI SystemLink resources using the slcli command-line interface. Use when the user asks about test results, assets, systems, work items, specifications, webapps, notebooks, dataframes, files, feeds, tags, authorization, users, example fixture authoring, example config.yaml files, or other SystemLink resource workflows. Use it when the user asks to create, validate, review, install, or troubleshoot a SystemLink example fixture. |
| argument-hint | Describe the SystemLink workflow you want to inspect, automate, scaffold, or troubleshoot. |
SystemLink CLI
Use this skill when the task is primarily about slcli commands or a
SystemLink resource workflow that should be driven from the CLI.
When to use it
- Querying or managing SystemLink resources through
slcli
- Looking up exact command syntax, flags, or JSON output patterns
- Building command sequences for analysis, provisioning, packaging, or cleanup
- Creating, validating, or reviewing
slcli example fixture YAML
- Troubleshooting CLI behavior, platform gating, or command selection
Reference docs
Load only what the current task needs.
| Topic | File | When to load |
|---|
| CLI command reference | commands.md | Looking up command syntax, options, or examples |
| Example fixture authoring | example-authoring.md | Creating or reviewing config.yaml, resource references, file-backed fixtures, or validation behavior |
| Datasheet-to-spec workflow | datasheet-workflow.md | Importing specifications from PDF, CSV, or structured text |
| Minimal spec import payload | import-specs.min.json | Need a bundled create-compatible starter payload or conditions |
| Spec import helper | spec_import_helper.py | Scaffold or validate a datasheet spec import payload |
| Filtering guide | filtering.md | Advanced filters, LINQ syntax, and query composition |
| Analysis recipes | analysis-recipes.md | Multi-step analysis workflows and reporting patterns |
| Troubleshooting | troubleshooting.md | SSL, workspace IDs, encoding, or scripting pitfalls |
| Notebook workflow | notebook/overview.md | Creating notebooks for SystemLink |
| Webapp workflow | webapp/overview.md | Hosted Angular webapp scaffolding and deployment |
| Python test workflow | python-test/overview.md | Python test app structure and deployment |
| Job debugging | job-debugging/overview.md | Salt job triage and recovery |
| NI package files | nipkg/overview.md | File-package assembly and nipkg pack guidance |
Default approach
- Prefer long-form flags in generated commands.
- Use
-f json when the result will be filtered, transformed, or piped into other tools.
- Use
--summary --group-by for aggregation before fetching large raw result sets.
- Use convenience filters first, then fall back to
--filter with --substitution for complex queries.
- Stay scoped to the user’s requested resource or workflow.
- Load deeper references only when the command surface alone is not enough.
- For example authoring or review, load
example-authoring.md before proposing YAML.
- Prefer workspace IDs over names in scripted workflows when an endpoint is strict about identity.
- Use
make_api_request from slcli.utils for helper scripts so auth, SSL, and error handling stay consistent.
- For datasheet imports, default to autonomy when the product or workspace can be resolved unambiguously.
Common command groups
| Group | Purpose | Key subcommands |
|---|
testmonitor | Test results and products | result list/get, product list/create/update |
alarm | Alarm monitoring and lifecycle actions | list, get, acknowledge, force-clear, delete, transition, monitor |
spec | Specifications | list, query, get, create, import, export |
asset | Assets and calibration | list, get, summary, calibration |
system | System fleet | list, get, compare, summary, job |
tag | Tag read/write | list, get-value, set-value, create |
routine | Event-action routines | list, create, enable/disable |
comment | Resource comments | list, add, update, delete |
workitem | Work items and workflows | list, create, schedule, template, workflow |
file | File management | list, , , , |
Example package fixtures are declared as package resources after a feed
resource. Use source.type: dummy for deterministic packages, file for a
fixture-relative .nipkg, or repository for an explicit HTTPS package URL.
The repository catalog can identify packages and feeds, but package bytes must
come from a direct package URL or an existing feed download path.