Skip to main content

Zyora CLI

AI-powered code generation and security scanning from the command line.

Installation

pip install zyora-cli

Or install from source:

git clone https://github.com/zyoralabs/zyora-cli
cd zyora-cli
pip install -e .

Quick Start

  1. Get your API key at app.zyoralabs.com/register

  2. Configure the CLI:

    zyora config set api_key zy-your-api-key-here
    
  3. Start using Zyora:

    # Interactive mode (like Claude Code)
    zyora
    
    # One-shot chat
    zyora chat "Write a Python function to validate emails"
    
    # Scan code for vulnerabilities
    zyora scan file app.py
    

Features

Interactive Mode

Start an interactive session with context awareness:

zyora

Commands in interactive mode:

Command Description
/help Show help
/clear Clear conversation
/context Show files in context
/add <file> Add file to context
/remove <file> Remove from context
/scan <file> Scan file for vulnerabilities
/project Show project summary
/model Show model info
/config Show configuration
/exit Exit

Tips:

  • Use @filename to reference files in your prompt
  • Pipe code directly: cat app.py | zyora chat "explain this"

Chat Mode

Send one-off prompts:

# Simple prompt
zyora chat "Write a function to merge two sorted lists"

# With file context
zyora chat "Review this code" -c main.py -c utils.py

# From file
zyora chat -f prompt.txt

# Pipe input
cat code.py | zyora chat "Explain this code"

# Save output
zyora chat "Write a REST API" -o api.py

Security Scanning

Scan code for vulnerabilities:

# Scan a single file
zyora scan file app.py

# Scan a directory
zyora scan dir ./src

# Scan with specific extensions
zyora scan dir ./src --ext py,js

# Save results
zyora scan file app.py -o report.md

The scanner detects:

  • SQL Injection (CWE-89)
  • Cross-Site Scripting (CWE-79)
  • Command Injection (CWE-78)
  • Path Traversal (CWE-22)
  • Hardcoded Credentials (CWE-798)
  • And many more...

Configuration

# Show all config
zyora config show

# Set values
zyora config set api_key zy-xxx
zyora config set max_tokens 8192
zyora config set temperature 0.5

# Get a value
zyora config get model

# Reset to defaults
zyora config reset

Environment variables:

  • ZYORA_API_KEY - API key
  • ZYORA_API_BASE - API base URL
  • ZYORA_MODEL - Model to use
  • ZYORA_MAX_TOKENS - Max response tokens

Examples

Generate Code

# Generate a REST API
zyora chat "Create a FastAPI REST API with user authentication"

# Generate with context
zyora chat "Add error handling to this" -c server.py

Review Code

# Code review
cat pull_request.diff | zyora chat "Review this code change"

# Architecture review
zyora chat "Review the architecture" -c main.py -c models.py -c routes.py

Security Audit

# Full project scan
zyora scan dir ./src --recursive -o security-report.md

# Quick scan
zyora scan file api/auth.py

Interactive Session

$ zyora

╔═══════════════════════════════════════════════════════════════╗
║   ███████╗██╗   ██╗ ██████╗ ██████╗  █████╗                   ║
║   ╚══███╔╝╚██╗ ██╔╝██╔═══██╗██╔══██╗██╔══██╗                  ║
║     ███╔╝  ╚████╔╝ ██║   ██║██████╔╝███████║                  ║
║    ███╔╝    ╚██╔╝  ██║   ██║██╔══██╗██╔══██║                  ║
║   ███████╗   ██║   ╚██████╔╝██║  ██║██║  ██║                  ║
║   ╚══════╝   ╚═╝    ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝                  ║
║                                                               ║
║   AI-Powered Code Generation & Security Scanning              ║
╚═══════════════════════════════════════════════════════════════╝

Type /help for commands, /exit to quit

zyora > /add src/main.py
Added: src/main.py

zyora [1] > What does this code do?
...

API Usage

You can also use Zyora programmatically:

from zyora.client import ZyoraClient, Message

client = ZyoraClient(api_key="zy-xxx")

# Simple chat
response = client.chat([
    Message(role="user", content="Write hello world in Python")
])
print(response.content)

# Streaming
for chunk in client.chat(messages, stream=True):
    print(chunk, end="")

Requirements

License

MIT License - see LICENSE for details.

Metadata

Release files for zyora-cli 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zyora-cli 0.1.0
File Size Uploaded Provenance Actions
zyora_cli-0.1.0.tar.gz 15.0 kB Without provenance Details for zyora_cli-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for zyora-cli 0.1.0
File Interpreter ABI Platform Actions
zyora_cli-0.1.0-py3-none-any.whl Python 3 none any Details for zyora_cli-0.1.0-py3-none-any.whl

Total release size: 35.9 kB

Release files / zyora_cli-0.1.0.tar.gz

Download URL zyora_cli-0.1.0.tar.gz
Size 15.0 kB
Tags Source
SHA-256 checksum
How to use checksums
93f9c11398d6a4bbbf54fd320ec8115ba4899cd3f6d001e803ac33443509d1bf
BLAKE2b-256 checksum
How to use checksums
c5028d991d20724c12f15352ab5e9a2473fcb68b962ab52544c427742287856d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / zyora_cli-0.1.0-py3-none-any.whl

Download URL zyora_cli-0.1.0-py3-none-any.whl
Size 20.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
14ae737a725b42e4b04f1652c15b78057b87c54554ab620f2d4d581de7412c5e
BLAKE2b-256 checksum
How to use checksums
c5c64b526953c2059d03a18f3d42c183529c4429292c9eedae9e1318d797aec7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Security for zyora-cli 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page