Metadata-Version: 2.4
Name: nexroo-cli
Version: 1.7.1
Summary: CLI wrapper for ai-rooms-script with Zitadel authentication
Author-email: Synvex <contact@synvex.ai>
License: Nexroo Engine Free Use License v1.0
        
        Copyright © 2025 Adrien EPPLING & Romain MICHAUX.
        All rights reserved.
        
        1. Grant of License
        
        Subject to the terms of this License, You are granted a non-exclusive, non-transferable, revocable license to:
        
        1.1. Use Nexroo Engine for any purpose, including commercial use, at no cost.
        1.2. Deploy Nexroo Engine for your own use or for your customers as part of your professional services.
        1.3. Use Nexroo Engine to create, deliver, and sell services, workflows, automations, or solutions built on top of the Software.
        
        This License does not transfer ownership of Nexroo Engine.
        
        2. Restrictions
        
        You may not:
        
        2.1. Redistribute, share, publish, sublicense, or make Nexroo Engine available to any third party, except as part of an installation you perform directly for a customer as a paid service.
        2.2. Sell, rent, or license Nexroo Engine itself as a standalone product.
        2.3. Modify, alter, translate, adapt, or create derivative works of Nexroo Engine.
        2.4. Reverse engineer, decompile, disassemble, probe, bypass, or attempt to deobfuscate Nexroo Engine or any part of its code.
        2.5. Remove or alter any copyright notices, proprietary marks, or license terms.
        
        3. Ownership
        
        Nexroo Engine is licensed, not sold.
        All rights, title, and interest in and to Nexroo Engine remain the exclusive property of Adrien EPPLING & Romain MICHAUX.
        No rights are granted except those expressly stated in this License.
        
        4. Permitted Commercial Activity
        
        4.1. You may sell professional services involving Nexroo Engine, including installation, deployment, configuration, workflow development, consulting, and automation services.
        
        4.2. However, such commercial activity does not permit redistribution or resale of Nexroo Engine itself.
        
        5. Prohibited Commercial Activity
        
        You may not:
        
        5.1. Sell, license, rent, or otherwise monetize Nexroo Engine itself.
        5.2. Offer Nexroo Engine as a hosted or SaaS product where third parties can access or use it directly.
        5.3. Use Nexroo Engine to create a competing workflow engine.
        
        6. Termination
        
        This License automatically terminates if You violate any term or restriction.
        Upon termination, You must immediately stop using Nexroo Engine and delete all copies.
        
        7. Disclaimer of Warranty
        
        NEXROO ENGINE IS PROVIDED “AS IS” AND “AS AVAILABLE,” WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR ANY WARRANTY ARISING OUT OF COURSE OF DEALING OR USAGE.
        
        8. Limitation of Liability
        
        TO THE MAXIMUM EXTENT PERMITTED BY LAW, ADRIEN EPPLING & ROMAIN MICHAUX SHALL NOT BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES, OR FOR ANY LOSS OF PROFITS, REVENUE, DATA, OR USE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
        
        9. Governing Law
        
        This License is governed by and shall be interpreted according to the laws of France, without regard to its conflict-of-law principles.
        Any dispute arising from this License shall fall under the exclusive jurisdiction of the courts of France.
Project-URL: Homepage, https://github.com/nexroo-ai/nexroo-cli
Project-URL: Repository, https://github.com/nexroo-ai/nexroo-cli
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: <3.14,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: loguru>=0.7.0
Requires-Dist: httpx>=0.28.1
Requires-Dist: cryptography>=43.0.0
Requires-Dist: python-jose[cryptography]>=3.3.0
Requires-Dist: aiohttp>=3.9.0
Dynamic: license-file

# Nexroo CLI

A command-line interface for running Nexroo Engine anywhere and interacting with the Nexroo SaaS automation platform.

> **CLI & Engine Documentation:** [docs.nexroo.ai](https://docs.nexroo.ai)

> **Website**: [nexroo.ai](https://nexroo.ai/)
---

Automate your processes, deploy micro-SaaS products, and scale seamless.

Nexroo platform is divided in four components, the engine and CLI, the SaaS platform, the micro-saas package and the addons.

Engine, CLI and micro-saas renderer are all free to use, all can be easily managed from our SaaS to edit with no-code editor, versionning, environments, and push multiples workflows to the deployed engine or micro-saas you are managing for your clients. 

Engine Addons are open source, all viewable in nexroo-ai github repository.

## Screenshots

### Nexro Engine standalone usage
Standalone engine to run in any environment, most lightweight
![Nexroo Engine CLI screenshot](./assets/demo_cli.png)

### Micro-SaaS usage
Render and deploy micro-SaaS on-premise for your clients
![Micro-SaaS screenshot](./assets/demo_user.png)

### SaaS usage
Manage and publish client-ready revisions (no-code)
![SaaS screenshot](./assets/demo_editor.png)

### Deploy only what your client really need, manage all from one place
![Escalidraw Nexroo Components](./assets/nexroo_components_escalidraw.png)


---

## Prerequisites

**Python 3.11+** is required for addon packages to work. The engine itself is a standalone binary, but addons are installed to your system Python.

- **Windows:** [Download Python](https://www.python.org/downloads/)
- **Linux:** `apt install python3` or `yum install python3`
- **macOS:** `brew install python3`

## Installation

### Quick Install (Recommended)

```bash
# install CLI
pip install nexroo-cli
# use CLI to install engine
nexroo install
```

or

**Linux/macOS:**
```bash
curl -fsSL https://raw.githubusercontent.com/nexroo-ai/nexroo-cli/main/install.sh | bash
```

**Windows (PowerShell):**
```powershell
irm https://raw.githubusercontent.com/nexroo-ai/nexroo-cli/main/install.ps1 | iex
```


## Quick Start

After installation, authenticate and run your first workflow:

(optionnal, for SaaS features like pulling/pushing workflows revisions)
```bash
# Authenticate with Nexroo
nexroo login
```

# Run a workflow
```bash
nexroo run workflow.json
```

## Usage

### Authentication Commands

#### Login
```bash
nexroo login
```

Opens browser for Zitadel authentication.

#### Logout
```bash
nexroo logout
```

Clears saved credentials.

#### Status
```bash
nexroo status
```

Shows authentication status and token expiration.

### Workflow Management

#### Pull Workflow from Repository

```bash
# Pull from default Nexroo repository
nexroo workflow pull @nexroo/workflow-name

# Pull from custom repository
nexroo workflow pull @owner/repo:workflow-name

# Pull with custom name
nexroo workflow pull @nexroo/workflow-name my-custom-name

# Skip configuration during pull
nexroo workflow pull @nexroo/workflow-name --no-config
```

#### Load Local Workflow

```bash
# Load workflow from local file
nexroo workflow load ./my-workflow.json

# Load with custom name
nexroo workflow load ./my-workflow.json my-workflow

# Skip configuration
nexroo workflow load ./my-workflow.json --no-config
```

#### Configure Workflow

```bash
# Configure workflow (interactive guided process)
nexroo workflow config set my-workflow

# Show current configuration
nexroo workflow config show my-workflow
```

#### List Workflows

```bash
# List installed workflows
nexroo workflow list

# List available workflows from repository
nexroo workflow list --available
```

#### Delete Workflow

```bash
nexroo workflow delete my-workflow
```

### Running Workflows

```bash
# Set required environment variables for secrets
export OPENAI_API_KEY=sk-...

# Run installed workflow
nexroo run my-workflow

# Run local workflow file
nexroo run workflow.json [entrypoint]

# Without authentication (local-only mode)
nexroo run workflow.json --no-auth
```

### Additional Options

Refer to [Nexroo Documentation](https://docs.nexroo.ai) for all available options.

### Update

```bash
pip install --upgrade nexroo-cli
nexroo update
```

### Uninstall

```bash
# Uninstall engine, addons, and all data
nexroo uninstall

# Remove the CLI package
pip uninstall nexroo-cli
```

## Addon Packages

### Installing Addons

Addons extend the engine with additional capabilities (AI providers, databases, storage, etc.).

```bash
# Install an addon
nexroo addon install redis

# List available addons
nexroo addon list --available

# List installed addons
nexroo addon list
```

### Troubleshooting Addon Issues

**If the engine can't find an addon:**

1. Verify Python 3.11+ is installed:
   ```bash
   python3 --version
   ```

2. Check addon installation:
   ```bash
   nexroo addon list
   python3 -m pip list | grep rooms-pkg
   ```

3. Reinstall addon:
   ```bash
   nexroo addon install <addon_name> --upgrade
   ```

## Storage Locations

- Engine: Installed via pip to Python's site-packages (available as `nexroo-engine` or `nexroo run`)
- Addon packages: System Python's site-packages
- Workflows: `~/.nexroo/workflows/`
- Workflow configurations: `~/.nexroo/workflows/*.config.json`
- Encrypted tokens: `~/.nexroo/auth_token.enc`
- Encryption key: `~/.nexroo/.key`
- Addon metadata: `~/.nexroo/installed_packages.json`
- Engine version: `~/.nexroo/.engine_version`
- Download cache: `~/.nexroo/cache/`

## Troubleshooting

For debug use '--verbose'

### Authentication fails
```bash
nexroo logout
nexroo login
```

### Token expired
```bash
nexroo status
nexroo login   # Re-authenticate
```

## Documentation

See [Nexroo Engine Documentation](https://docs.nexroo.ai) to know how to use Nexroo workflow engine.

## License

Nexroo Engine Free Use License v1.0 - see [LICENSE](./LICENSE) file for details.

## Support

- GitHub Issues: https://github.com/nexroo-ai/nexroo-cli/issues

## Contact

Adrien EPPLING </br>
mail: adrien.eppling@nexroo.ai </br>
linkedin: https://www.linkedin.com/in/adrien-eppling/

Romain MICHAUX </br>
mail: romain.michaux@nexroo.ai </br>
linkedin: https://www.linkedin.com/in/romain-michaux/
