Skip to main content

Zenith Is A CLI-Based AI Coding Agent That Transforms Natural Language Into Efficient, Production-Ready Code!

Project description

Zenith-CLI

███████╗███████╗███╗   ██╗██╗████████╗██╗  ██╗
╚══███╔╝██╔════╝████╗  ██║██║╚══██╔══╝██║  ██║
  ███╔╝ █████╗  ██╔██╗ ██║██║   ██║   ███████║
 ███╔╝  ██╔══╝  ██║╚██╗██║██║   ██║   ██╔══██║
███████╗███████╗██║ ╚████║██║   ██║   ██║  ██║
╚══════╝╚══════╝╚═╝  ╚═══╝╚═╝   ╚═╝   ╚═╝  ╚═╝

Project Status: Active License: MIT Version Coverage: 100%

Python 3.13 Typer Rich AutoGen Python-Dateutil

A CLI-Based AI Coding Agent That Transforms Natural Language Into Efficient, Production-Ready Code.

🖼️ Images

Zenith Help

Zenith Chat

🌟 Features

Core Features

  • ⚡ AI-Powered Code Generation: Transform natural language instructions into high-quality, production-ready code.
  • 🗣️ Interactive Chat Interface: Engage with Zenith-CLI through a rich, console-based chat experience.
  • 🔧 Extensible Toolset: Utilizes a suite of file system tools (list, read, write, search, make directory, replace content) to interact with the codebase.
  • ⚙️ Flexible Configuration: Easily configure OpenAI API keys, base URLs, and models via JSON or ENV files.
  • 🚀 Streaming Responses: Provides real-time feedback from the AI agent through streaming.
  • 🛡️ Robust Error Handling: Gracefully handles API errors (timeout, bad requests, not found) and file system issues.

Development Tooling

  • Ruff Linting: Enforces code style and identifies potential issues.
  • Pytest + Coverage: Comprehensive testing framework with 100% coverage enforcement.

🛠️ Tech Stack

  • Core: Python 3.13
  • CLI Framework: Typer 0.17.4
  • Rich Output: Rich-cli 1.8.1
  • AI Agent Framework: Autogen-agentchat 0.7.4, Autogen-ext 0.7.4
  • Date/Time Utilities: Python-Dateutil 2.9.0
  • Environment Variables: Python-Dotenv 1.1.1
  • AI API: OpenAI API

🚀 Getting Started

Prerequisites

  • Python 3.13
  • pip (Python package installer)
  • Git

1) Clone Repository

git clone https://github.com/DataRohit/zenith-cli.git
cd zenith-cli

2) Install Dependencies

pip install -e .

3) Configure Environment

Create a .zenith-cli/config.json or .zenith-cli/.config.env file in your project root.

Example using .zenith-cli/config.json:

{
    "zenith_openai_api_key": "YOUR_OPENAI_API_KEY",
    "zenith_openai_api_base": "https://api.openai.com/v1",
    "zenith_model": "gpt-4"
}

Example using .zenith-cli/.config.env:

ZENITH_OPENAI_API_KEY="YOUR_OPENAI_API_KEY"
ZENITH_OPENAI_API_BASE="https://api.openai.com/v1"
ZENITH_MODEL="gpt-4"

Notes:

  • Keep secrets in .env or config.json files; do not commit them to version control.
  • If both config.json and .config.env exist in the .zenith-cli directory, the application will raise an error.

4) Run Zenith-CLI

zenith-cli chat

⚙️ Configuration Highlights

  • zenith_openai_api_key: Your OpenAI API key.
  • zenith_openai_api_base: The base URL for the OpenAI API. Defaults to https://api.openai.com/v1.
  • zenith_model: The specific model to be used (e.g., gpt-4, gpt-3.5-turbo).
  • zenith_assistant_description: A detailed description of the AI agent's capabilities.
  • zenith_assistant_system_message: The system-level instructions provided to the AI agent to guide its behavior.

These configurations are loaded via zenith.utils.config_loader and can be provided through a .json or .env file.

🧪 Development

Run Linting / Type Checking / Tests Locally:

make ruff-check  # or 'make ruff-lint' to auto-fix issues
pytest -q

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

zenith_cli-0.1.1.tar.gz (197.1 kB view details)

Uploaded Source

Built Distribution

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

zenith_cli-0.1.1-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file zenith_cli-0.1.1.tar.gz.

File metadata

  • Download URL: zenith_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 197.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zenith_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5813dbd7424f91b89cde873a296eeab6019d2c1216c744bb40620736ffd26726
MD5 3ac7be4a0d2eb63d683acb7ab7a2a6ae
BLAKE2b-256 91d3d7c94c66421345c494cb892f1055dff124840ae529cf20344ecf626f5b22

See more details on using hashes here.

Provenance

The following attestation bundles were made for zenith_cli-0.1.1.tar.gz:

Publisher: publish.yml on DataRohit/Zenith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zenith_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: zenith_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zenith_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a723d5e87302a462c0392d12302155355c9f4f325af2ccc26db363ab08595785
MD5 0192c4bbddb7f00fb3793d70dfdc572b
BLAKE2b-256 3cec1ac7c887345e4230bf4c3fef053a31368447c4be72e8438188a0f2d7b38b

See more details on using hashes here.

Provenance

The following attestation bundles were made for zenith_cli-0.1.1-py3-none-any.whl:

Publisher: publish.yml on DataRohit/Zenith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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