Command-line interface for the Cylera Partner API
Project description
Cylera CLI
A command-line interface for the Cylera Partner API, providing read-only access to device inventory, threats, vulnerabilities, and network information.
It can be used stand-alone or integrated into an AI workflow using the bundled Claude Code skill (see below).
Alternatively, if you are looking to incorporate the power of Cylera into your AI workflows, you may also consider the Cylera MCP Server.
This Cylera AI Integration Options document may help you decide which one may make sense depending on your AI workflows.
Demo
Requirements
- uv
- Credentials for accessing Cylera
Installation
Use the uvx command to invoke a tool without installing it.
uvx --from cylera-cli cylera --help
This is quite long-winded and so if you want to shorten it, the following alias is recommended:
alias cylera='uvx --from cylera-cli cylera'
The rest of the document assumes the alias is set.
Configuration
Run the interactive setup to configure your credentials:
cylera init
This will prompt you to:
- Select your Cylera API endpoint (US, UK, or Demo)
- Enter your username (email)
- Enter your password
Credentials are stored in a .env file in the current directory.
Manual Configuration
Alternatively, set environment variables directly:
export CYLERA_BASE_URL="https://partner.us1.cylera.com/"
export CYLERA_USERNAME="your-email@example.com"
export CYLERA_PASSWORD="your-password"
Doppler Secrets Management
Instead of storing the secrets in a .env file, you may choose to use a secrets management solution such as Doppler.
To use Doppler, simply add the following prefix to all commands.
doppler run --
For example, to run "cylera devices" accessing secrets from Doppler, you would run the following:
doppler run -- cylera devices
1Password Secrets Management
Alternatively, you can use 1Password CLI
for secrets management. Set your environment ID and prefix commands with op run:
export OP_ENVIRONMENT_ID=<your-environment-id>
op run --environment "$OP_ENVIRONMENT_ID" -- cylera devices
Usage
cylera <command> [options]
Available Commands
| Command | Description |
|---|---|
init |
Initialize Cylera CLI configuration interactively |
organization |
Get the organization associated with the current credentials |
organizations |
List organizations available to switch into |
switchorg |
Switch to a different organization |
resetorg |
Reset organization back to home |
device |
Get details for a specific device by MAC address |
devices |
Get a list of devices with optional filters |
deviceattributes |
Get attributes for a device by MAC address |
procedures |
Get a list of medical procedures |
subnets |
Get a list of network subnets |
riskmitigations |
Get mitigations for a specific vulnerability |
vulnerabilities |
Get a list of vulnerabilities |
threats |
Get a list of detected threats |
Organization
Get organization info:
cylera organization
List available organizations:
cylera organizations
Switch to a different organization:
cylera switchorg <organization-id>
Reset back to home organization:
cylera resetorg
Device Inventory
List devices:
cylera devices --page-size 10
cylera devices --vendor Philips --class Medical
cylera devices --ip-address 10.40
Get a specific device:
cylera device 7f:14:22:72:00:e5
Get device attributes:
cylera deviceattributes 7f:14:22:72:00:e5
Vulnerabilities & Risk
List vulnerabilities:
cylera vulnerabilities --severity CRITICAL
cylera vulnerabilities --status OPEN --page-size 20
Get mitigations for a vulnerability:
cylera riskmitigations "Ripple20 (ICSA-20-168-01)"
Threats
List threats:
cylera threats --severity HIGH
cylera threats --mac-address bb:b0:71:cf:30:0a
Network
List subnets:
cylera subnets
cylera subnets --vlan 477
Medical Procedures
List procedures:
cylera procedures --page-size 10
cylera procedures --completed-after 2025/01/01
Common Options
Most list commands support these options:
| Option | Description |
|---|---|
--page |
Page number for pagination |
--page-size |
Results per page (max 100) |
--mac-address |
Filter by device MAC address |
--severity |
Filter by severity (INFO, LOW, MEDIUM, HIGH, CRITICAL) |
--status |
Filter by status (OPEN, IN_PROGRESS, RESOLVED, SUPPRESSED) |
Output
All commands output JSON to stdout, which can be piped to tools like jq:
cylera devices --page-size 5 | jq '.devices[].hostname'
Debugging
Enable debug output to see request details:
DEBUG=1 cylera devices --page-size 1
API Endpoints
The CLI supports these Cylera Partner API regions:
- US:
https://partner.us1.cylera.com/ - UK:
https://partner.uk1.cylera.com/ - Demo:
https://partner.demo.cylera.com/
Claude Code Skill
This repo includes Claude Code skills that drive the CLI for you enabling you to query things in natural language.
See CODING_AGENT_SKILLS.md for full installation instructions and usage examples.
License
See LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cylera_cli-1.2.0.tar.gz.
File metadata
- Download URL: cylera_cli-1.2.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
335f0b4deaaf1545110917729bdfac3d68a797878106c0180151b49bcbcb55c7
|
|
| MD5 |
d341fc504b308df60e0bd1d0aeb67fd5
|
|
| BLAKE2b-256 |
f7b9c8364c08496c6d0459c7ac6e2b5b3dfa913c13fe7c93275610be97ced7bf
|
File details
Details for the file cylera_cli-1.2.0-py3-none-any.whl.
File metadata
- Download URL: cylera_cli-1.2.0-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe71e2ccec283cb68d510514afd25ff8b9e78f918711b5d7fb617b746adf3852
|
|
| MD5 |
87a5bb89d4e4e6021948912eacb40ccd
|
|
| BLAKE2b-256 |
d3dcbb30be7ab78052b0a9a693360cac41dd05d4c620ff716aa6452f032e346c
|