AiChat CLI
A command-line tool for AI Dialogue via the AceDataCloud platform.
Features
- Chat with AI — Send questions to GPT, DeepSeek, Grok, GLM, and more models
- Conversation Continuation — Resume conversations using
--id - Stateful Sessions — Enable multi-turn context with
--stateful - References — Inject context documents into prompts with
--ref - Rich Output — Beautiful terminal formatting with
--jsonfor scripting - Many Models — GPT-5, GPT-4o, o3, o4-mini, DeepSeek, Grok, GLM, and more
Installation
pip install aichat-pro-cli
Quick Start
# Set your API token
export ACEDATACLOUD_API_TOKEN=your_token_here
# Ask a question
aichat chat "What is the capital of France?"
# Use a specific model
aichat chat "Explain quantum computing" -m gpt-4o
# Continue a conversation
aichat chat "Tell me more" --id 64a67fff-61dc-4801-8339-2c69334c61d6
# Stateful conversation (server remembers context)
aichat chat "My name is Alice" --stateful
aichat chat "What is my name?" --id <returned-id> --stateful
# With reference documents
aichat chat "Summarize this" --ref "https://example.com/doc.txt"
# Get JSON output
aichat chat "Hello" --json | jq '.answer'
Commands
| Command | Description |
|---|---|
chat |
Send a question to an AI model (/aichat/conversations) |
chat2 |
Send a conversation request with structured messages and tool results (/aichat2/conversations) |
models |
List all available models |
models2 |
List models available to chat2 |
config |
Show current configuration |
Chat Options
| Option | Description |
|---|---|
-m, --model |
Model to use (default: gpt-4o) |
--id |
Conversation ID to continue |
--preset |
Preset model name |
--stateful |
Enable stateful conversation |
--ref |
Reference URL or text (repeatable) |
--json |
Output raw JSON |
Chat2 Turn Limit
aichat chat2 --max-turns accepts integers from 1 to 500 and limits agent
iterations (model calls), not conversation history. When omitted, the CLI leaves
max_turns out of the request and the server defaults to 500. Each model call is
billed by actual usage; a higher limit allows longer tool chains.
Set the limit to 1 for a single answer without tool calls:
aichat chat2 "Explain quantum computing" --max-turns 1
Configuration
| Environment Variable | Description | Default |
|---|---|---|
ACEDATACLOUD_API_TOKEN |
API authentication token | (required) |
ACEDATACLOUD_API_BASE_URL |
API base URL | https://api.acedata.cloud |
AICHAT_REQUEST_TIMEOUT |
Request timeout in seconds | 30 |
You can also use a .env file or pass --token directly.
Docker
docker compose run aichat-cli chat "Hello!"
Development
# Install with dev dependencies
pip install -e ".[all]"
# Run tests
pytest
# Run linter
ruff check .
ruff format --check .
License
MIT License - see LICENSE for details.
Links
Metadata
Release files for aichat-pro-cli 2026.10.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aichat_pro_cli-2026.10.7.0.tar.gz | 14.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aichat_pro_cli-2026.10.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.9 kB
Release files / aichat_pro_cli-2026.10.7.0.tar.gz
| Download URL | aichat_pro_cli-2026.10.7.0.tar.gz |
|---|---|
| Size | 14.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ad2f2435b20670982a4023fc07b67d57b95c2ef60573c5cb0ed882490e15021c
|
|
BLAKE2b-256 checksum How to use checksums |
8d5a0784c0d334ef10e19bdecaab76bbf6c06f3c50ca45a515162d07577c9f93
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / aichat_pro_cli-2026.10.7.0-py3-none-any.whl
| Download URL | aichat_pro_cli-2026.10.7.0-py3-none-any.whl |
|---|---|
| Size | 13.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5fff763523d003d8fd081d5a533af5c8b1e06009f710dbf706981ffe503c1f2f
|
|
BLAKE2b-256 checksum How to use checksums |
3b04e66a042e9db173bad55fb82ea12c6b7c526a40841a7830eabb78b864d58e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|