Unified CLI for managing all Aitronos services
Project description
Aitronos CLI
Unified command-line interface for managing all Aitronos services, including Streamline automations, AI assistants, and more.
Installation
Via pip (Recommended for Python developers)
pip install aitronos-cli
Via Homebrew (Recommended for macOS/Linux)
# Add the Aitronos tap
brew tap aitronos/tap
# Install the CLI
brew install aitronos-cli
Verify Installation
aitronos --version
Quick Start
1. Authentication
Login to your Aitronos account:
aitronos auth login
2. Streamline Automations
Initialize a new Streamline project:
aitronos streamline init
Upload an automation:
aitronos streamline upload
Link a GitHub repository:
aitronos streamline link-repo
Execute an automation:
aitronos streamline execute <automation-id>
3. View Logs
aitronos streamline logs <automation-id>
Features
- Authentication: Secure login with email verification
- Streamline Automations: Create, upload, and manage automations
- GitHub Integration: Link repositories for automatic syncing
- Execution Management: Run automations and view real-time logs
- Template Support: Initialize projects from templates
- Interactive Menus: User-friendly navigation with arrow keys
Commands
Authentication
aitronos auth login- Login to your accountaitronos auth logout- Logout from your accountaitronos auth status- Check authentication status
Streamline
aitronos streamline init- Initialize a new project/repositoryaitronos streamline upload- Upload automation manuallyaitronos streamline link-repo- Link GitHub repositoryaitronos streamline list- List all automationsaitronos streamline execute <id>- Execute an automationaitronos streamline logs <id>- View execution logsaitronos streamline sync <id>- Sync automation from GitHubaitronos streamline delete <id>- Delete an automationaitronos streamline schedule <id>- Set execution scheduleaitronos streamline remove-schedule <id>- Remove schedule
Configuration
The CLI stores configuration in ~/.aitronos/:
config.yaml- General configurationauth.json- Authentication tokens (never share this file)
Development
Setup Development Environment
# Clone repository
git clone https://github.com/Aitronos-Development/aitronos.cli.git
cd aitronos.cli
# Install UV (if not already installed)
# macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
# Or via Homebrew:
brew install uv
# Install dependencies
uv sync
# Install in editable mode for development
uv pip install -e .
Running in Development Mode
Option 1: Direct Python Execution (Recommended for Testing)
# Run the CLI directly without installing
uv run python -m aitronos_cli.cli --help
# Test specific commands
uv run python -m aitronos_cli.cli auth login
uv run python -m aitronos_cli.cli streamline init
uv run python -m aitronos_cli.cli streamline list
Option 2: Editable Install (Recommended for Full Testing)
# Install in editable mode
uv pip install -e .
# Now you can use the CLI as if it were installed
aitronos --help
aitronos auth login
aitronos streamline init
Option 3: Using the Entry Point Script
# Run directly from the source
uv run aitronos --help
uv run aitronos auth status
Testing Changes
# Make changes to the code
vim aitronos_cli/cli.py
# Test immediately (no reinstall needed with editable mode)
aitronos --version
# Or run directly
uv run python -m aitronos_cli.cli --version
Running Tests
# Run all tests
uv run pytest tests/
# Run with coverage
uv run pytest tests/ --cov=aitronos_cli --cov-report=term
# Run specific test file
uv run pytest tests/test_auth.py
# Run tests in verbose mode
uv run pytest tests/ -v
Code Quality
The project uses strict compliance checks:
# Run all compliance checks
./start-compliance.sh
# Run specific checks
uvx ruff check . # Linting
uvx ruff format --check . # Format check
uvx ruff format . # Auto-format code
uvx bandit -r aitronos_cli/ # Security scan
uv run pytest tests/ --cov # Tests with coverage
Debugging Tips
# Enable verbose output
aitronos --verbose streamline list
# Check configuration
cat ~/.aitronos/config.yaml
cat ~/.aitronos/auth.json
# Test API connectivity
uv run python -c "from aitronos_cli.config import config; print(config.get_api_url())"
# Clear authentication (for testing login flow)
rm ~/.aitronos/auth.json
Common Development Tasks
# Add a new dependency
uv add requests
# Add a development dependency
uv add --dev pytest
# Update dependencies
uv sync
# Check for outdated packages
uv pip list --outdated
# Run linting and auto-fix issues
uvx ruff check --fix .
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feat/amazing-feature) - Make your changes
- Run tests and compliance checks
- Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feat/amazing-feature) - Open a Pull Request
Branch Naming Conventions
feat/- New featuresfix/- Bug fixesdocs/- Documentation updatesrefactor/- Code refactoringtest/- Test additions/improvements
Documentation
- Deployment Guide - How to deploy new versions
- API Documentation - Backend API reference
- Compliance Guide - Code quality standards
Support
- Documentation: https://docs.aitronos.com
- Issues: https://github.com/Aitronos-Development/aitronos.cli/issues
- Email: support@aitronos.com
License
MIT License - see LICENSE for details
Changelog
See CHANGELOG.md for version history and changes.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aitronos_cli-0.2.0.tar.gz.
File metadata
- Download URL: aitronos_cli-0.2.0.tar.gz
- Upload date:
- Size: 37.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c3d15155fce7b3d3423a01ae6d7374c3cffea755312e7782f844e263d2a88c5
|
|
| MD5 |
767aefbe9d09336dec189dc34660f7ba
|
|
| BLAKE2b-256 |
045767fa8bfd731138be0731056156a61ec9a54921a55d13972e6f5d7dcd327c
|
Provenance
The following attestation bundles were made for aitronos_cli-0.2.0.tar.gz:
Publisher:
deploy-pypi.yml on Aitronos-Development/aitronos.cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aitronos_cli-0.2.0.tar.gz -
Subject digest:
4c3d15155fce7b3d3423a01ae6d7374c3cffea755312e7782f844e263d2a88c5 - Sigstore transparency entry: 729391118
- Sigstore integration time:
-
Permalink:
Aitronos-Development/aitronos.cli@b498ba0732cbf8a63eb1af72aac7d6e85056b59c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Aitronos-Development
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy-pypi.yml@b498ba0732cbf8a63eb1af72aac7d6e85056b59c -
Trigger Event:
push
-
Statement type:
File details
Details for the file aitronos_cli-0.2.0-py3-none-any.whl.
File metadata
- Download URL: aitronos_cli-0.2.0-py3-none-any.whl
- Upload date:
- Size: 34.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a8892180a3c31ef956dd37cd5155eba5ddfbb0250b27c5ce429852aec934084
|
|
| MD5 |
f2444cd9d0b6baab841dfbc72047de08
|
|
| BLAKE2b-256 |
e42ea7d02e0d0dba503109a28fda45ea80de04e3569164eed2c82074b67c75fe
|
Provenance
The following attestation bundles were made for aitronos_cli-0.2.0-py3-none-any.whl:
Publisher:
deploy-pypi.yml on Aitronos-Development/aitronos.cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aitronos_cli-0.2.0-py3-none-any.whl -
Subject digest:
0a8892180a3c31ef956dd37cd5155eba5ddfbb0250b27c5ce429852aec934084 - Sigstore transparency entry: 729391123
- Sigstore integration time:
-
Permalink:
Aitronos-Development/aitronos.cli@b498ba0732cbf8a63eb1af72aac7d6e85056b59c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Aitronos-Development
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy-pypi.yml@b498ba0732cbf8a63eb1af72aac7d6e85056b59c -
Trigger Event:
push
-
Statement type: