Skip to main content

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

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:

  1. Select your Cylera API endpoint (US, UK, or Demo)
  2. Enter your username (email)
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cylera_cli-1.2.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cylera_cli-1.2.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

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

Hashes for cylera_cli-1.2.0.tar.gz
Algorithm Hash digest
SHA256 335f0b4deaaf1545110917729bdfac3d68a797878106c0180151b49bcbcb55c7
MD5 d341fc504b308df60e0bd1d0aeb67fd5
BLAKE2b-256 f7b9c8364c08496c6d0459c7ac6e2b5b3dfa913c13fe7c93275610be97ced7bf

See more details on using hashes here.

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

Hashes for cylera_cli-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fe71e2ccec283cb68d510514afd25ff8b9e78f918711b5d7fb617b746adf3852
MD5 87a5bb89d4e4e6021948912eacb40ccd
BLAKE2b-256 d3dcbb30be7ab78052b0a9a693360cac41dd05d4c620ff716aa6452f032e346c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page