refactor!: move LLM configuration from in-app settings to CLI/env vars

- Remove `api_endpoint` from Settings model and settings UI
- Add `--llm-endpoint` / `AETHERA_LLM_ENDPOINT` and `--llm-key` /
  `AETHERA_LLM_KEY` CLI flags (endpoint is required)
- Update client constructor to accept API key parameter
- Update tests and documentation to reflect new configuration approach

BREAKING CHANGE: LLM endpoint and key must now be provided via
`AETHERA_LLM_ENDPOINT` and `AETHERA_LLM_KEY` environment variables or
CLI flags instead of the Settings page.
This commit is contained in:
2026-05-01 23:30:34 -04:00
parent 54e24cb304
commit 74b8d43032
13 changed files with 47 additions and 71 deletions

View File

@@ -32,7 +32,10 @@ make all # Build frontend + backend
```bash
make docker
docker run -p 8080:8080 -v aethera-data:/app/data aethera
docker run -p 8080:8080 \
-e AETHERA_LLM_ENDPOINT=https://api.example.com/v1 \
-e AETHERA_LLM_KEY=your-key \
-v aethera-data:/app/data aethera
```
### Manual Build
@@ -58,7 +61,9 @@ Configuration is available via CLI flags and environment variables (prefixed `AE
| Flag | Env Var | Default | Description |
|----------------|---------------------|-------------|--------------------------------------------|
| `--data-dir` | `AETHERA_DATA_DIR` | `./data` | Directory for chats, settings, and images |
| `--llm-endpoint` | `AETHERA_LLM_ENDPOINT` | *(required)* | OpenAI-compatible API endpoint URL |
| `--llm-key` | `AETHERA_LLM_KEY` | | API key for authentication |
| `--data-dir` | `AETHERA_DATA_DIR` | `./data` | Directory for chats, settings, and images |
| `--static-dir` | `AETHERA_STATIC_DIR`| *(embedded)*| Serve frontend from disk (for development) |
| `--listen` | `AETHERA_LISTEN` | `localhost` | Listen address |
| `--port` | `AETHERA_PORT` | `8080` | Listen port |
@@ -66,7 +71,7 @@ Configuration is available via CLI flags and environment variables (prefixed `AE
Example:
```bash
./backend/dist/aethera --port 3000 --listen 0.0.0.0
AETHERA_LLM_ENDPOINT=https://api.example.com/v1 AETHERA_LLM_KEY=your-key ./backend/dist/aethera
```
## Development
@@ -89,10 +94,9 @@ This starts the Go backend (serving frontend from disk) and the frontend in watc
## Getting Started
1. **Configure Your API**navigate to Settings and enter your OpenAI-compatible API endpoint URL
2. **Start Chatting**use the Chat interface to begin conversations
3. **Generate Images** — visit the Images page to create or edit images
4. **Manage Content** — view, delete, and organize conversations and images
1. **Configure Your API**set `AETHERA_LLM_ENDPOINT` and optionally `AETHERA_LLM_KEY` environment variables
2. **Start the Server**run the binary and navigate to `http://localhost:8080`
3. **Configure Model Selectors** — navigate to Settings to configure model selectors for chat and image generation
## Supported AI Services