Metadata-Version: 2.4
Name: datn-cli
Version: 0.2.4
Summary: One-command distribution for the datn multi-agent assistant (hides docker compose).
Author: ngoquan0904
License: MIT
Project-URL: Homepage, https://github.com/ngoquan0904/datn-cli
Keywords: cli,docker,compose,ai-assistant,distribution
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: typer>=0.12
Requires-Dist: rich>=13.0
Requires-Dist: httpx>=0.27
Requires-Dist: jinja2>=3.1

# datn-cli

One-command distribution cho hệ multi-agent assistant. CLI bọc `docker compose` —
user không cần source code, không cần học compose.

## Cài đặt

```bash
pipx install datn-cli
```

> Prereq: Docker. Nếu máy chưa có Python/Docker, dùng installer script (xem repo gốc).

## Dùng

```bash
datn init     # wizard: chọn LLM + embedding, nhập API key
datn up       # pull images + khởi động + chờ healthy
datn open     # mở http://localhost:5173
```

## Lệnh

| Lệnh | Việc |
|---|---|
| `datn init` | Wizard cấu hình → ghi `~/.datn/.env` + `provider.lock` |
| `datn up` | doctor → pull → up -d → chờ healthy |
| `datn down` | Dừng (giữ data) |
| `datn open` | Mở web UI |
| `datn logs [service]` | Xem logs realtime |
| `datn doctor` | Kiểm tra Docker, ports, config, dim |
| `datn config [llm\|embedding\|tavily\|serpapi]` | Cấu hình lại |
| `datn config set KEY VALUE` | Sửa nhanh 1 biến |
| `datn reset` | Xoá data (bắt buộc khi đổi embedding dim) |
| `datn update --tag vX` | Đổi image tag → pull + up lại |
| `datn uninstall` | Xoá data + `~/.datn/` |

## Embedding dimension

- Provider phổ biến (openai/gemini/openrouter): dim tra tự động theo model.
- **selfhost**: wizard gửi 1 test embed call đo dim thực tế — **không cần nhập tay**.
- Đổi embedding làm đổi dim + đã có data → CLI bắt `datn reset` (tránh vỡ Qdrant).

## Self-host LLM/embedding

Chọn provider `selfhost`, nhập `base_url` (OpenAI-compatible). `localhost`/`127.0.0.1`
được tự đổi sang `host.docker.internal` để container gọi được host.
