Skip to main content

A Python package for interacting with the Freddy API and other Aitronos services

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Aitronos Python Package

A Python package for interacting with the Freddy API and other Aitronos services. This package provides a command-line interface (CLI) for managing Aitronos projects and services.

Installation

pip install aitronos

CLI Commands

The aitronos CLI provides several commands for project initialization:

Basic Project Initialization

aitronos init <project_name>

Creates a new project with the standard Aitronos project structure:

  • src/ - Source code directory
  • resources/ - Project resources
  • config.freddy.json - Configuration file
  • requirements.txt - Python dependencies
  • documentation.txt - Project documentation
  • execution_log.json - Execution logs

Hello World Example Project

aitronos init-hello-world <project_name>

Creates a basic Hello World example project that includes:

  • Basic project structure
  • Simple Click-based CLI example in src/main.py
  • Pre-configured requirements.txt with Click dependency
  • Example README.md with usage instructions

Hello World with Parameters Example

aitronos init-hello-world-params <project_name>

Creates an advanced Hello World example that demonstrates CLI parameter handling:

  • Complete project structure
  • Advanced Click-based CLI example with parameter handling
  • Example of using command-line options and arguments
  • Detailed README.md with usage examples

Interactive Hello World Command

aitronos hello [OPTIONS]

A simple interactive command to demonstrate CLI parameter handling.

Options:

  • --name, -n TEXT: Name to greet (default: "World")
  • --count, -c INTEGER: Number of times to greet (default: 1)

Example usage:

# Basic usage
aitronos hello

# Custom name
aitronos hello --name Alice

# Multiple greetings
aitronos hello --name Bob --count 3

Development

To set up the development environment:

  1. Clone the repository:
git clone https://github.com/Freddy-Development/aitronos-python-package.git
cd aitronos-python-package
  1. Install development dependencies:
pip install -e ".[dev]"
  1. Run tests:
pytest

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

Support

For support, please open an issue on the GitHub repository or contact the development team.

Library Usage

from Aitronos import Aitronos, Message, MessageRequestPayload

# Enable staging mode (uses aitronos.ch instead of aitronos.com)
Aitronos.set_staging_mode(True)  # Call this before creating any client instances

# Initialize with API key (recommended)
client = Aitronos(api_key="your_api_key")

# Or with username/password
client = Aitronos(username="your_username", password="your_password")

# Use the assistant messaging
messaging = client.assistant_messaging
response = messaging.execute_run(
    MessageRequestPayload(
        organization_id=123,
        assistant_id=456,
        messages=[Message(content="Hello!", role="user")]
    )
)

Environment Configuration

The Aitronos package supports different environments through staging mode:

  • Production (default): Uses aitronos.com domain
  • Staging: Uses aitronos.ch domain

You can switch to staging mode in two ways:

  1. Globally before creating any clients:
from Aitronos import Aitronos

# Enable staging mode
Aitronos.set_staging_mode(True)

# All subsequent client instances will use staging environment
client = Aitronos(api_key="your_api_key")
  1. Disable staging mode:
# Switch back to production
Aitronos.set_staging_mode(False)

Note: Staging mode must be set before creating any client instances, as it affects the base URL used for all API calls.

Command Line Interface (CLI)

The Aitronos package includes a powerful CLI for common operations and project management.

Configuration

Before using the CLI, set up your configuration:

  1. Create a config.json file in your project root:
{
    "test_key": "your_api_key",
    "test_org_id": your_organization_id,
    "test_assistant_id": your_assistant_id,
    "test_username": "your_username",
    "test_password": "your_password"
}
  1. Add config.json to your .gitignore to keep credentials secure:
echo "config.json" >> .gitignore

Available Commands

  1. Initialize a new project:
aitronos init my_project

This creates a new project with the following structure:

my_project/
├── config.freddy.json
├── documentation.txt
├── execution_log.json
├── requirements.txt
├── resources/
│   ├── __init__.py
│   ├── current_user.py
│   ├── helpers.py
│   ├── org_data.json
│   └── user_data.json
└── src/
    ├── main/
    │   └── my_project.py
    └── tests/
        └── test_script.py
  1. Run the hello world example:
aitronos hello

Tests your setup with a simple hello world example using the Aitronos API.

  1. Use StreamLine functionality:
# Interactive mode
aitronos streamline

# Process a file
aitronos streamline --input input.txt --output output.txt

Project Templates

When initializing a new project with aitronos init, you get:

  • Basic project structure
  • Configuration files
  • Example code
  • Resource templates
  • Test setup

The generated project includes:

  • Logging setup
  • Error handling
  • User management
  • API integration
  • Basic test structure

Development Workflow

  1. Initialize a new project:
aitronos init my_aitronos_project
cd my_aitronos_project
  1. Update the configuration:
# Edit config.json with your credentials
vim config.json
  1. Install project dependencies:
pip install -r requirements.txt
  1. Start developing:
# Your main code is in src/main/my_aitronos_project.py
# Tests are in src/tests/

Development

To contribute or modify the package:

  1. Clone the repository:
git clone https://github.com/Freddy-Development/aitronos-python-package.git
cd aitronos-python-package
  1. Install development dependencies:
pip install -e ".[dev]"
  1. Run tests:
python -m unittest discover tests

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support, please:

Security

To report security vulnerabilities, please email security@aitronos.com

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

aitronos-4.5.6.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

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

aitronos-4.5.6-py3-none-any.whl (45.0 kB view details)

Uploaded Python 3

File details

Details for the file aitronos-4.5.6.tar.gz.

File metadata

  • Download URL: aitronos-4.5.6.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.5

File hashes

Hashes for aitronos-4.5.6.tar.gz
Algorithm Hash digest
SHA256 e3c9614799ca5bab5f6c797d9960ead90bee5b2d9e07e16e5b5988eb708e9c7c
MD5 1a510d58b2261b50993308710d86caed
BLAKE2b-256 54a016cfad05f92ddf24829a8ca343a8c68f937d5ad7c007b0018294ed303db1

See more details on using hashes here.

File details

Details for the file aitronos-4.5.6-py3-none-any.whl.

File metadata

  • Download URL: aitronos-4.5.6-py3-none-any.whl
  • Upload date:
  • Size: 45.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.5

File hashes

Hashes for aitronos-4.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 9fe20f9e1d24af634e415a8ba190e35fa717c669eb9b72f6e35fbdf30c1623f2
MD5 e4167a38e1695d9f04ef1f7217dea7ca
BLAKE2b-256 b37fd56136f5baf834b41d931bc207e636a6da6cad74ba5c7b9ecd5c3e8eda9d

See more details on using hashes here.

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