The observability backbone for AI agents and engineering teams.
Connect your agents to live logs, traces, metrics, dashboards, and alerts so they can investigate incidents, explain what changed, and reason about production with real operational context.
- Query any signal-logs, metrics, spans, and RUM data-with DataPrime or PromQL, and render results as tables, raw JSON, or a token-efficient format for AI agents.
- Manage the full Coralogix stack: alerts, incidents, notifications, IAM, SLOs, dashboards, data pipeline rules, TCO policies, and more.
- Run the same command across multiple profiles or regions in a single invocation with multi-profile fan-out.
- Give your AI agent a single entry point to production observability:
cx schemadumps the entire command tree as JSON so agents can self-discover capabilities without manual documentation. - Find the right log or span field by describing it in natural language.
- Browse the DataPrime language reference offline.
- Plug Coralogix into your AI coding agent with bundled skills for Claude Code, Cursor, Codex, and 40+ more agents.
- DataPrime and PromQL at the terminal-Coralogix's proprietary query languages work end-to-end without leaving the shell.
- 27 commands across 9 domains-from querying signals to managing IAM, notifications, TCO, and archiving-all in one binary.
- Multi-profile fan-out with
-p prod-eu -p prod-us <command>-run one command across multiple accounts or regions in a single invocation, with rows tagged by profile. agentsoutput format-token-efficient JSON that auto-spills to a temp file once the serialized payload exceeds 100 KiB, so AI agents get a path instead of a flooded context window.cx schema-outputs the full command tree as structured JSON, purpose-built for agent discovery with no help-text parsing required.- Semantic field search-find the right log or span field by describing it in natural language.
- Bundled skills for Claude Code, Cursor, Codex, OpenCode, and 40+ more agents, distributed via
npx skills add.
Most macOS users should use Homebrew. If you are not on macOS, use the cross-platform install script.
curl -fsSL https://get.coralogix.dev/cli | shbrew install coralogix/tap/cxcurl -fsSL https://raw.githubusercontent.com/coralogix/cx-cli/master/install.sh | shSkills teach your AI agent how to use cx for observability investigations.
npx skills add coralogix/cx-cliMost macOS users use zsh:
cx completions install zshFor other shells, see Shell completions. For Cargo, pre-built binaries, Nix, and source builds, see Installation reference.
Follow these steps to go from a fresh install to a working query.
-
Create a profile.
cx profiles addopens an interactive prompt for region, credentials, and default output format:cx profiles add
-
Query logs. The positional argument is a DataPrime query:
cx logs 'filter $m.severity == ERROR' -
Query metrics.
cx metrics querytakes a PromQL expression:cx metrics query 'rate(http_requests_total[5m])' -
Search distributed spans. The positional argument is a DataPrime filter;
source spansis prepended automatically:cx spans "filter \$l.serviceName == 'checkout'" --start now-2h --limit 50 -
List dashboards to confirm the API is reachable:
cx dashboards catalog
Run cx <command> --help for full syntax and examples on any command.
Commands
Commands are grouped by domain. Run cx --help for the full organized listing, or cx schema for a machine-readable JSON tree.
Query
| Command | Purpose |
|---|---|
cx logs |
Query logs using DataPrime |
cx spans |
Query distributed spans |
cx metrics |
Query metrics using PromQL: query, query-range, search, get-labels |
cx dataprime |
DataPrime language reference and raw queries: list, show, query |
cx search-fields |
Find log or span fields by natural-language description |
Observe
| Command | Purpose |
|---|---|
cx dashboards |
Manage dashboards and folders |
cx views |
Manage saved views and view folders |
cx slos |
Manage SLO definitions |
Detect & Respond
| Command | Purpose |
|---|---|
cx alerts |
Manage alerts: list, get, create, enable, disable, events, event-stats, suppression-rules |
cx incidents |
Manage and triage incidents |
Notifications
| Command | Purpose |
|---|---|
cx notifications |
Manage connectors, routers, presets, and notification testing |
cx webhooks |
Manage outgoing webhooks and automation actions |
Data Pipeline
| Command | Purpose |
|---|---|
cx parsing-rules |
Manage log parsing rules |
cx enrichments |
Manage enrichment rules and custom enrichment tables |
cx e2m |
Manage Events2Metrics definitions |
cx recording-rules |
Manage Prometheus recording rule groups |
Cost & Storage
| Command | Purpose |
|---|---|
cx usage |
View data usage and consumption metrics |
cx tco |
Manage TCO policies and settings |
cx retentions |
Manage data retention settings |
cx quotas |
Manage quota rules |
cx archive (risky) |
Manage data archive storage configuration |
Integrations
| Command | Purpose |
|---|---|
cx integrations |
Manage integrations, extensions, and contextual data |
Access
| Command | Purpose |
|---|---|
cx iam (risky) |
Manage API keys, roles, scopes, users, groups, SAML, and IP access |
Agent & Local
| Command | Purpose |
|---|---|
cx schema |
Output the full command tree as JSON for agent consumption |
cx profiles |
Manage profiles: list, add, delete, set-default |
cx completions |
Shell tab-completion: install, refresh, generate |
cx cleanup |
Remove cx_results* temp files older than 30 minutes |
Global options
-p, --profile <PROFILE> Profile to use. Repeat to fan out across multiple profiles.
--api-key <API_KEY> Override the profile API key
--region <REGION> Override the profile region
-o, --output <FORMAT> text | json | agents (default: text)
--yes Skip confirmation prompts for destructive operations
Configuration lives in ~/.cx/:
~/.cx/
config.toml # Global settings
profiles/
default.toml # Credentials and region per profile
Credentials (API keys or OAuth tokens) are stored either inline in the profile TOML with 0600 permissions (credential_storage = "file", the default) or in the OS keyring (credential_storage = "os_store" - macOS Keychain, Windows Credential Manager, or D-Bus Secret Service on Linux). cx profiles add prompts for the choice. On Linux, keyring support requires a glibc build; the default install script and release binaries use musl, which has no keyring backend, so os_store is unavailable there.
Environment variables override profile settings: CX_PROFILE, CX_API_KEY, and CX_REGION.
See docs/configuration.md for the full reference.
Choose an output format with -o or by setting the profile default.
text-human-readable tables with color. Default.json-raw, pretty-printed API responses for scripting.agents-token-efficient format for AI agents. Large responses automatically spill to a temporary file and the path is returned.
See docs/agents-output.md for the agents format specification.
cx ships a companion skill bundle for Claude Code, Cursor, Codex, OpenCode, and 40+ other agents. The skills teach your agent how to investigate issues by querying Coralogix-without memorizing DataPrime syntax or API endpoints.
The install flow above installs all skills. Use these variants if you want to customize where or what you install.
Install selected skills:
npx skills add coralogix/cx-cli --skill query-logs --skill dataprimeInstall globally for all projects:
npx skills add coralogix/cx-cli -gAvailable skills: cx-query-logs, cx-query-spans, cx-metrics-query, cx-alerts, cx-dataprime, cx-rum, cx-telemetry-querying, cx-create-dashboard, cx-cost-optimization, cx-incident-management, cx-data-pipeline, cx-platform-admin, cx-observability-setup. See skills/README.md for per-skill usage.
Repeat -p to run a command across multiple profiles in parallel. Results are merged and tagged with the profile name:
cx -p prod-eu -p prod-us logs 'filter $m.severity == ERROR'See docs/multi-profile.md for more examples.
CX_VERSION=0.1.0 curl -fsSL https://raw.githubusercontent.com/coralogix/cx-cli/master/install.sh | shcargo install coralogix-cliDownload the latest release for your platform from GitHub Releases.
Nix
nix run github:coralogix/cx-cli -- --help # try without installing
nix profile install github:coralogix/cx-cli # install into your profileThe flake exposes both the cx binary and the agent skill bundle:
{
inputs.cx-cli.url = "github:coralogix/cx-cli";
outputs = { self, nixpkgs, cx-cli, ... }: {
# cx-cli.packages.${system}.default -> the `cx` binary
# cx-cli.packages.${system}.skills -> store path with all cx-* skills
};
}Symlink each skill into ~/.claude/skills/ (adjust the target path for other agents):
# home.nix
{ inputs, pkgs, lib, ... }:
let
skills = inputs.cx-cli.packages.${pkgs.system}.skills;
in {
home.packages = [ inputs.cx-cli.packages.${pkgs.system}.default ];
home.file = lib.mapAttrs'
(name: _: lib.nameValuePair ".claude/skills/${name}" { source = "${skills}/${name}"; })
(lib.filterAttrs (_: t: t == "directory") (builtins.readDir skills));
}Build from source
cargo build --release
cp target/release/cx /usr/local/bin/cx supports tab-completion for all commands, flags, subcommands, and profile names.
Let cx install and track a completion script for you. It writes to a standard user-writable location and records the path so cx completions refresh can update it later:
cx completions install zsh
cx completions install bash
cx completions install fishDefault paths used by each shell:
| Shell | Default path |
|---|---|
| zsh | ~/.zfunc/_cx |
| bash | ~/.local/share/bash-completion/completions/cx |
| fish | ~/.config/fish/completions/cx.fish |
After installing for zsh, add ~/.zfunc to your $fpath if it isn't already there (the install command will tell you):
# Add to ~/.zshrc:
fpath=(~/.zfunc $fpath)
autoload -Uz compinit && compinitWhen you add or delete a profile, cx will remind you to refresh if you have managed completions. You can run it any time:
cx completions refreshOnly files previously installed by cx completions install are updated.
To generate a script yourself and pipe it anywhere:
cx completions generate zsh > ~/.zfunc/_cx
cx completions generate bash > ~/.local/share/bash-completion/completions/cx
cx completions generate fish > ~/.config/fish/completions/cx.fishFor profile names to update automatically on every Tab press without running refresh, source completions dynamically on each shell start. This calls back into cx at completion time:
zsh - add to ~/.zshrc:
source <(COMPLETE=zsh cx)bash - add to ~/.bashrc:
source <(COMPLETE=bash cx)fish - add to ~/.config/fish/config.fish:
COMPLETE=fish cx | sourceMigrating from cxctl
cx replaces the older Scala-based cxctl. If you are looking for documentation on the legacy tool, see the Coralogix CLI (legacy) docs. cx does not currently cover all legacy surfaces, including LiveTail and account invite flows.
We welcome contributions! See CONTRIBUTING.md for the ownership model, PR review process, and step-by-step guides for adding commands and skills.
Apache-2.0
