A Python client for interacting with Orbit chat servers
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
Schmitech Orbit Client
A Python client for interacting with Orbit chat servers. This client provides a command-line interface for chatting with Orbit servers, supporting both standard and MCP protocol formats.
Installation
pip install schmitech-orbit-client
Usage
After installation, you can use the client in two ways:
1. Command-line Interface
The simplest way to use the client is through the command-line interface:
# Basic usage with default settings
orbit-chat --url http://your-server:3000
# Advanced usage with all options
orbit-chat --url http://your-server:3000 \
--api-key your-api-key \
--debug \
--show-timing \
--mcp
Command-line Options
--url: Chat server URL (default: http://localhost:3000)--api-key: API key for authentication--debug: Enable debug mode to see request/response details--show-timing: Show latency timing information--mcp: Use MCP protocol format instead of standard format
Interactive Features
- Use up/down arrow keys to navigate through chat history
- Type
exitorquitto end the conversation - Press Ctrl+C to interrupt the current response
- Chat history is saved in
~/.orbit_client_history/chat_history
2. Python Module
You can also use the client in your Python code:
from schmitech_orbit_client import stream_chat
# Basic usage
response, timing_info = stream_chat(
url="http://your-server:3000",
message="Hello, how are you?"
)
# Advanced usage with all options
response, timing_info = stream_chat(
url="http://your-server:3000",
message="Hello, how are you?",
api_key="your-api-key", # optional
debug=True, # optional
use_mcp=True # optional
)
# The response contains:
# - response: The full text response from the server
# - timing_info: Dictionary with timing metrics
# - total_time: Total request time
# - time_to_first_token: Time until first response token
Features
- Interactive CLI: Command-line interface with history navigation
- Protocol Support: Both standard and MCP protocol formats
- Real-time Streaming: Responses appear gradually, character by character
- Colored Output: Better readability with syntax highlighting
- Debug Mode: Detailed request/response information for troubleshooting
- Performance Metrics: Latency timing information
- Authentication: API key support for secure communication
- Cross-platform: Works on Windows, macOS, and Linux
- Unicode Support: Full support for non-English characters
Examples
Basic Chat Session
$ orbit-chat --url http://localhost:3000
Welcome to the Orbit Chat Client!
Server URL: http://localhost:3000
Type 'exit' or 'quit' to end the conversation.
You can use arrow keys to navigate, up/down for history.
You: Hello, how are you?
Assistant: I'm doing well, thank you for asking! How can I help you today?
You: exit
Goodbye!
Debug Mode
$ orbit-chat --url http://localhost:3000 --debug
Debug - Request:
{
"message": "Hello",
"stream": true
}
Debug - Received:
{
"text": "Hi there!"
}
License
This project is licensed under the MIT License - see the LICENSE file for details.
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 schmitech_orbit_client-0.1.0.tar.gz.
File metadata
- Download URL: schmitech_orbit_client-0.1.0.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
221205fc6c6a9520d5b78cc0761328afc51f306492c9b362708f34acdc73da1a
|
|
| MD5 |
a5f5a7a546a2f2dd4c09511a11d02b59
|
|
| BLAKE2b-256 |
2cd7ef539018a6e6c55f62ee2f7f53f2e3b274eefb24e003b14e26536d9644c8
|
File details
Details for the file schmitech_orbit_client-0.1.0-py3-none-any.whl.
File metadata
- Download URL: schmitech_orbit_client-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2dc7e1ef5645863ba22bd7ec105af13bce3b53f0edd6dd4d537b3845db3d6fd
|
|
| MD5 |
23060ac74b7948f0eae9c5d64e75a86f
|
|
| BLAKE2b-256 |
c07824aa727b314918dc276c76a7da56d2d89c8db183bec7b08aace40272d3c4
|