aineed
A minimal CLI tool for interacting with multiple AI providers (OpenAI, Anthropic, TogetherAI, OpenRouter) with a unified interface.
Features
- 🤖 Multiple AI Provider Support
- OpenAI (text and image generation with DALL-E 3)
- Anthropic (Claude models)
- TogetherAI (Llama and FLUX models)
- OpenRouter (various models)
- 🔄 Streaming Support for Text Generation
- 📁 File Input/Output with Prompt Prefixing
- 🎨 Image Generation with Automatic Timestamped Filenames
- 🔒 Local API Key Management
Prerequisites
- Python 3.7 or higher
- Rust toolchain (install from https://rustup.rs/)
Using pip
# Install Rust first if you haven't already
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
pip install aineed
Install without needing rust COMING SOON~
Support
As a full-time student, your support would be greatly appreciated!
- CashApp: $Nbiish
- Venmo: @Nbiish
- Linktree: https://linktr.ee/nbiish
Upcoming Features
We are excited to announce that future releases of aineed will include:
-
Google Models and Enhanced Capabilities: Integrate with Google's extensive AI models to provide even more powerful and diverse functionalities.
-
Voice and Audio Input/Output: Enable voice commands and audio responses for a more interactive and seamless user experience.
Stay tuned for these and more exciting updates!
Configuration
Set your API keys:
# OpenAI
aineed --set-openai "your-api-key"
# Anthropic
aineed --set-anthropic "your-api-key"
# TogetherAI
aineed --set-togetherai "your-api-key"
# OpenRouter
aineed --set-openrouter "your-api-key"
Usage
Basic Text Generation
# Default model (togetherai:meta-llama/Llama-3.3-70b-instruct-turbo)
aineed -p "Who are the Anishinaabe?"
# Using OpenAI
aineed openai:gpt-3.5-turbo -p "who are the Anishinaabe?"
# Using OpenRouter
aineed openrouter:google/gemini-exp-1206:free -p "who are the Anishinaabe?" -o Anishinaabe.txt
Image Generation
# Using OpenAI DALL-E 3 (saves as dall-e-3_TIMESTAMP.png)
aineed openai:dall-e-3 -i -p "Cyberpunk Nanaboozhoo"
# Using TogetherAI FLUX (with custom output name)
aineed togetherai:black-forest-labs/FLUX.1-schnell -i -p "Cyberpunk Nanaboozhoo" -o cyberpunk-nanaboozhoo.png
File Processing with Prompts
When using a file input with -f, you can provide a prompt with -p that will be prepended to the file content:
# Process a file with a specific instruction
aineed openai:gpt-4o -f story.txt -p "Take significant text and make it hashtags" -o story_optimized.txt
The API request will be formatted like so when using -p and -f:
USER PROMPT:
<your prompt>
FILE CONTENT:
<file content>
Streaming and Token Control
# Stream the response
aineed openai:gpt-4o-turbo -s -p "Tell me a story about Nanaboozhoo and the rabbits"
# Control max tokens and temperature
aineed openrouter:google/gemini-2.0-flash-exp --temp 0.9 -t 999 -p "Tell me a Nanaboozhoo fantasy adventure"
Setting Default Model
# Set a new default model
aineed -d "openrouter:google/gemini-2.0-flash-exp"
Additional Examples of Use
aineed openai:gpt-4o -t 444 -p "Short story about Nanaboozhoo" -o nanaboozhoo.txt
cat nanaboozhoo.txt | aineed openrouter:google/gemini-2.0-flash-exp -p "Rephrase the story to be extra silly" -o nanaboozhoo-silly.txt
aineed anthropic:claude-3.5-sonnet-latest -s -f nanaboozhoo-silly.txt -p "End every sentence with hashtags" -o nanaboozhoo-silly-hashtags.txt
Translating Text
Translate a sentence from English to Spanish using Anthropic's Claude model:
aineed anthropic:claude-3.5-sonnet-latest -p "Translate the following sentence to Spanish: 'Artificial intelligence is transforming the world.'"
Creating Detailed Images
Generate a high-resolution image of a futuristic cityscape with TogetherAI's FLUX model:
aineed togetherai:black-forest-labs/FLUX.1-schnell -i -p "Create a high-resolution image of Cyberpunk Nanaboozhoo" -o cyberpunk_nanaboozhoo.png
Automating File Processing
for file in reports/*.txt; do
aineed openrouter:google/gemini-2.0-flash-exp -f "$file" -p "Summarize the key points of the following report." -o "summaries/$(basename "$file")"
done
Streaming Long-Form Content
Stream the generation of a comprehensive guide on machine learning with controlled token usage:
aineed openai:gpt-4o-mini -s -t 1500 -p "Write a comprehensive guide on machine learning, including definitions, algorithms, and applications."
Setting and Using Default Models
Set a default model and generate content without specifying the provider each time:
# Set the default model to OpenAI's GPT-4
aineed -d "openai:gpt-4o-mini"
# Now generate content using the default model
aineed -p "Describe the impact of climate change on global ecosystems and how indigenous people protect the majority of remaining healthy ecosystems." -o climate_change_impact.txt
Integrating with Other Tools
Use aineed in a shell script to automate the generation and processing of content:
#!/bin/bash
# Generate an article
aineed openai:gpt-4 -p "Write an article about the benefits of renewable energy." -o article.txt
# Summarize the article
aineed openai:gpt-4o -f article.txt -p "Summarize the main points of this article." -o summary.txt
# Log the actions
echo "Article and summary generated on $(date)" >> generation.log
Error Handling
The tool provides detailed error messages from providers to help troubleshoot:
- API key issues
- Rate limiting
- Connection problems
- Model access restrictions
- File I/O errors
License
MIT License - see LICENSE for details
#LANDBACK
Metadata
Release files for aineed 0.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aineed-0.1.12-cp311-cp311-macosx_11_0_arm64.whl | CPython 3.11 | CPython 3.11 | macOS 11.0+ ARM64 | Details |
Release files / aineed-0.1.12-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | aineed-0.1.12-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.6 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a883a8b2276bf00bef0155ea7a948b6626e557f439d03cb0852832745ffe7363
|
|
BLAKE2b-256 checksum How to use checksums |
5d02e805913ebecb915c87133d7592b5a7a519c57eddfb8737b0f4ac88f3db41
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.11.11
|
Security for aineed 0.1.12
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.