CLI for the OneFirewall AI Gateway — chat, stream, and build agents from your terminal
Project description
onefirewall-ai
CLI for the OneFirewall AI Gateway — chat, stream, and build agents from your terminal.
Installation
pip install onefirewall-ai
Quick Start
1. Login
onefirewall-ai login
You'll be prompted for:
- Endpoint — your OneFirewall AI Gateway URL (e.g.
https://onefirewall.ai) - API Key — generate one from the Profile page in the dashboard
Credentials are saved to ~/.onefirewall-ai/access.json.
2. Chat
onefirewall-ai What is the capital of France?
onefirewall-ai "Explain Kubernetes in simple terms"
onefirewall-ai Write a Python function to reverse a string
The response streams directly to your terminal in real time.
3. Session Management
By default, every new command creates a unique session so conversation history is maintained separately. You can view past sessions or resume a previous session:
# List all recent chat sessions
onefirewall-ai sessions
# Continue an existing session by ID
onefirewall-ai --session <session-id> "What did we just talk about?"
# Create a custom named session
onefirewall-ai --session my-coding-task "Help me write a Python script"
4. Piped Input (stdin)
You can also pipe content directly into the CLI. This is perfect for logs, command outputs, or quick text.
# Pipe a file's content
cat data.txt | onefirewall-ai "Summarize this"
# Pipe the output of another command
ls -l | onefirewall-ai "What are these files?"
# Combine piping and text prompt
echo "Hello AI" | onefirewall-ai "Repeat this back"
# Listing files and asking for an explanation
ls -l | onefirewall-ai "Which of these files were modified today?"
# Checking active processes
ps | onefirewall-ai "Are there any high memory processes running?"
Commands
| Command | Description |
|---|---|
onefirewall-ai |
Show help |
onefirewall-ai help |
Show help |
onefirewall-ai login |
Configure endpoint & API key |
onefirewall-ai sessions |
List all recent chat sessions |
onefirewall-ai [--session ID] <message> |
Send a message and stream the AI response |
onefirewall-ai version |
Show version |
Home Directory
All data is stored in ~/.onefirewall-ai/:
~/.onefirewall-ai/
├── access.json # Endpoint + API key (private)
├── MEMORY.md # Persistent facts the agent remembers
├── SOUL.md # System prompt / agent persona
└── sessions/
└── <session_id>.md # Full conversation history for each session
Customise your agent
Edit ~/.onefirewall-ai/SOUL.md to change the AI's persona:
# Soul
You are a concise senior DevOps engineer. Always prefer CLI examples.
Edit ~/.onefirewall-ai/MEMORY.md to give the AI persistent context:
# Memory
- My project uses Python 3.12 and FastAPI.
- Always prefer async/await patterns.
API Reference
The CLI uses the OpenAI-compatible endpoint:
POST {endpoint}/api/v1/chat/completions
With stream: true and SSE parsing for real-time output.
License
MIT © OneFirewall
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
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 onefirewall_ai-0.1.5.tar.gz.
File metadata
- Download URL: onefirewall_ai-0.1.5.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0edb2d136520e65b9dd4fa6e4e84afc50bd0a0fef3942ed7af7e0d0a5795660
|
|
| MD5 |
a28c6a216987f1045cfe926c62ab695c
|
|
| BLAKE2b-256 |
c36ea807a7df0c6e10ce7e70b67f1e55e37450a642cee68de30c1b61c8e7920e
|
File details
Details for the file onefirewall_ai-0.1.5-py3-none-any.whl.
File metadata
- Download URL: onefirewall_ai-0.1.5-py3-none-any.whl
- Upload date:
- Size: 15.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
796e06f733cc67ee453966026f6d7e16eea4e8d0a59ede3fe3fe1f0a8220fdb1
|
|
| MD5 |
753d353cd1167205d518661ff982f3b4
|
|
| BLAKE2b-256 |
c30bf15086cfb69a785cc285930f07ddd22f4d6eed46ec1a73c5dd49fd6c696f
|