Note: You can use unified commands like install cursor or install antigravity, or use subcommands like install mcp cursor and install hook claude. The unified commands are simpler and install all features.
Preview what would be done without actually performing the installation
-g, --global
Install globally in user’s home directory instead of project directory
--include TEXT
Include only directories matching these glob patterns (e.g., '**/microservice-*')
--exclude TEXT
Exclude directories matching these glob patterns
--all
Install for all supported IDEs, even if not currently installed
-h, --help
Show help message
Running outside a git repository? The installer will search for git repositories below your current location and present an interactive TUI to select which repositories to install into. You can select one or more repositories, or choose to install globally.
# Install for all detected IDEs (recommended)uvx zenable-mcp install# Install for a specific IDE using unified command (recommended)uvx zenable-mcp install cursoruvx zenable-mcp install claude# Install Zenable for all detected IDEs, globallyuvx zenable-mcp install --global# Preview what would be done without installinguvx zenable-mcp install --dry-run# Advanced: Install only MCP (without hooks) for all detected IDEsuvx zenable-mcp install mcp# Advanced: Install only MCP for a specific IDEuvx zenable-mcp install mcp cursor# Advanced: Install only hooksuvx zenable-mcp install hookuvx zenable-mcp install hook claudeuvx zenable-mcp install hook cursor
Check the provided files against your conformance tests.
Report incorrect code
Copy
uvx zenable-mcp check [OPTIONS] [PATTERNS]...
Automatically detects files from IDE context when no patterns are provided.
Supports glob patterns like **/*.py to check all Python files recursively.
Files are processed in batches of 5 for optimal performance.
The check command supports configuration via environment variables:
Environment Variable
Description
Default
ZENABLE_CHECK_BASE_BRANCH
Default base branch to compare against when using --branch
main
Example
Report incorrect code
Copy
# Set default base branch to developexport ZENABLE_CHECK_BASE_BRANCH=develop# Now --branch uses develop instead of mainuvx zenable-mcp check --branch# CLI option still overrides env varuvx zenable-mcp check --branch --base-branch feature/base
# Check a single fileuvx zenable-mcp check example.py# Check all Python files recursivelyuvx zenable-mcp check '**/*.py'# Check multiple patternsuvx zenable-mcp check 'src/**/*.js' 'tests/**/*.js'# Exclude test files from checkinguvx zenable-mcp check '**/*.py' --exclude '**/test_*.py'# Specify base directory for pattern matchinguvx zenable-mcp check '*.py' --base-path ./src# Check all files changed on current branch compared to mainuvx zenable-mcp check --branch# Check all files changed on current branch compared to developuvx zenable-mcp check --branch --base-branch develop# Check only Python src files changed on current branchuvx zenable-mcp check --branch '**/*.py' --exclude '**/test_*.py'# Dry run to see which files would be checkeduvx zenable-mcp check '**/*.py' --dry-run
This command is specifically designed for IDE integrations like Claude Code and Cursor.
It reads hook input from stdin, processes the files, and returns appropriate
exit codes and formatted responses for the IDE to handle.To manually run a scan, use the ‘check’ command instead.
# All Python files recursively'**/*.py'# Multiple extensions'**/*.{js,ts,jsx,tsx}'# Specific directory'src/**/*.py'# All files in current directory'*'# All files recursively'**/*'# Specific depth'*/*.py' # One level deep'*/*/*.py' # Two levels deep