i forgot too commit
All checks were successful
Enterprise AI Code Review / ai-review (pull_request) Successful in 38s
All checks were successful
Enterprise AI Code Review / ai-review (pull_request) Successful in 38s
This commit is contained in:
137
cli/README.md
Normal file
137
cli/README.md
Normal file
@@ -0,0 +1,137 @@
|
||||
# Loyal Companion CLI
|
||||
|
||||
A quiet, terminal-based interface for conversations with Loyal Companion.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
pip install typer httpx rich
|
||||
|
||||
# Make CLI executable
|
||||
chmod +x lc
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Start the web server (required)
|
||||
python3 run_web.py
|
||||
|
||||
# Start a conversation
|
||||
./lc talk
|
||||
```
|
||||
|
||||
## Commands
|
||||
|
||||
### `lc talk`
|
||||
Start or resume a conversation.
|
||||
|
||||
```bash
|
||||
lc talk # Resume default session
|
||||
lc talk --new # Start fresh default session
|
||||
lc talk -s work # Resume 'work' session
|
||||
lc talk -s personal --new # Start fresh 'personal' session
|
||||
```
|
||||
|
||||
### `lc history`
|
||||
Show conversation history.
|
||||
|
||||
```bash
|
||||
lc history # Show default session history
|
||||
lc history -s work # Show 'work' session history
|
||||
lc history -n 10 # Show last 10 messages
|
||||
```
|
||||
|
||||
### `lc sessions`
|
||||
List or manage sessions.
|
||||
|
||||
```bash
|
||||
lc sessions # List all sessions
|
||||
lc sessions -d work # Delete 'work' session
|
||||
```
|
||||
|
||||
### `lc config-cmd`
|
||||
Manage configuration.
|
||||
|
||||
```bash
|
||||
lc config-cmd --show # Show current config
|
||||
lc config-cmd --api-url http://localhost:8080 # Set API URL
|
||||
lc config-cmd --email user@example.com # Set email
|
||||
lc config-cmd --reset # Reset to defaults
|
||||
```
|
||||
|
||||
### `lc auth`
|
||||
Manage authentication.
|
||||
|
||||
```bash
|
||||
lc auth # Show auth status
|
||||
lc auth --logout # Clear stored token
|
||||
```
|
||||
|
||||
### `lc health`
|
||||
Check API health.
|
||||
|
||||
```bash
|
||||
lc health # Check if API is reachable
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
Configuration is stored in `~/.lc/config.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"api_url": "http://127.0.0.1:8080",
|
||||
"auth_token": "web:user@example.com",
|
||||
"email": "user@example.com",
|
||||
"show_mood": true,
|
||||
"show_relationship": false
|
||||
}
|
||||
```
|
||||
|
||||
## Sessions
|
||||
|
||||
Sessions are stored in `~/.lc/sessions.json`:
|
||||
|
||||
- Multiple named sessions supported
|
||||
- Sessions persist across CLI invocations
|
||||
- Auto-save on exit
|
||||
|
||||
## Design Philosophy
|
||||
|
||||
The CLI embodies the "empty table at closing time" philosophy:
|
||||
|
||||
- **Quiet:** No spinners, no ASCII art, minimal output
|
||||
- **Intentional:** Explicit commands, named sessions
|
||||
- **Focused:** Text-first, no distractions
|
||||
|
||||
## Architecture
|
||||
|
||||
The CLI is a thin HTTP client that communicates with the Web API:
|
||||
|
||||
```
|
||||
CLI (lc) → HTTP → Web API → ConversationGateway → Living AI Core
|
||||
```
|
||||
|
||||
- Platform: `CLI`
|
||||
- Intimacy: `HIGH` (via Web API)
|
||||
- Transport: HTTP/REST
|
||||
|
||||
## Development
|
||||
|
||||
Run component tests:
|
||||
|
||||
```bash
|
||||
python3 test_cli.py
|
||||
```
|
||||
|
||||
## Dependencies
|
||||
|
||||
- `typer>=0.9.0` - CLI framework
|
||||
- `httpx>=0.26.0` - HTTP client
|
||||
- `rich>=13.7.0` - Terminal formatting (optional)
|
||||
|
||||
## Documentation
|
||||
|
||||
See [Phase 4 Complete](../docs/implementation/phase-4-complete.md) for full documentation.
|
||||
Reference in New Issue
Block a user