Add hypertable migration that only runs on PostgreSQL (no-op for SQLite dev/tests). Update README with architecture, quick start, and client sync instructions. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
47 lines
1.2 KiB
Markdown
47 lines
1.2 KiB
Markdown
# agent-base
|
|
|
|
OpenClaw Session Archive - 多 Agent 会话解析与归档系统。
|
|
|
|
## Architecture
|
|
|
|
Three nodes (Mac Mini, Ubuntu1, Ubuntu2) run a sync script that parses local JSONL session files and pushes structured data to a central Django API. The Django service runs in Docker Compose and stores data in a remote PostgreSQL + TimescaleDB instance on NAS.
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# 1. Configure environment
|
|
cp .env.example .env
|
|
# Edit .env with your database credentials and Django settings
|
|
|
|
# 2. Build and start
|
|
docker compose build
|
|
docker compose run --rm web python manage.py migrate
|
|
docker compose run --rm web python manage.py createsuperuser
|
|
docker compose up -d
|
|
|
|
# 3. Access
|
|
# Django Admin: http://<host>:8000/admin/
|
|
# API: http://<host>:8000/api/sessions/bulk_upsert/
|
|
```
|
|
|
|
## Running Tests
|
|
|
|
```bash
|
|
pip install -r requirements-dev.txt
|
|
pytest -v
|
|
```
|
|
|
|
## Client Sync Script
|
|
|
|
Deploy `scripts/sync_sessions.py` on each node:
|
|
|
|
```bash
|
|
python sync_sessions.py --remote-url http://<django-host>:8000/api/sessions/bulk_upsert/
|
|
```
|
|
|
|
Set `SOURCE_NODE` environment variable on each node (`macmini`, `ubuntu1`, `ubuntu2`).
|
|
|
|
## Daily Export
|
|
|
|
In Django Admin, select sessions and choose "Export selected sessions to Markdown" action.
|