docs: update all documentation for agor rebrand and dual-repo structure
This commit is contained in:
parent
5fadd1c022
commit
421c38cd8c
21 changed files with 225 additions and 207 deletions
|
|
@ -59,7 +59,7 @@ The Rust code is organized as a Cargo workspace with three members:
|
|||
```
|
||||
v2/
|
||||
├── Cargo.toml # Workspace root
|
||||
├── bterminal-core/ # Shared crate
|
||||
├── agor-core/ # Shared crate
|
||||
│ └── src/
|
||||
│ ├── lib.rs
|
||||
│ ├── pty.rs # PtyManager (portable-pty)
|
||||
|
|
@ -67,7 +67,7 @@ v2/
|
|||
│ ├── supervisor.rs # SidecarSupervisor (crash recovery)
|
||||
│ ├── sandbox.rs # Landlock sandbox
|
||||
│ └── event.rs # EventSink trait
|
||||
├── bterminal-relay/ # Remote machine relay
|
||||
├── agor-relay/ # Remote machine relay
|
||||
│ └── src/main.rs # WebSocket server + token auth
|
||||
└── src-tauri/ # Tauri application
|
||||
└── src/
|
||||
|
|
@ -88,13 +88,13 @@ v2/
|
|||
├── watcher.rs # File watcher (notify crate)
|
||||
├── fs_watcher.rs # Per-project filesystem watcher (inotify)
|
||||
├── event_sink.rs # TauriEventSink implementation
|
||||
├── pty.rs # Thin re-export from bterminal-core
|
||||
└── sidecar.rs # Thin re-export from bterminal-core
|
||||
├── pty.rs # Thin re-export from agor-core
|
||||
└── sidecar.rs # Thin re-export from agor-core
|
||||
```
|
||||
|
||||
### Why a Workspace?
|
||||
|
||||
The `bterminal-core` crate exists so that both the Tauri application and the standalone `bterminal-relay` binary can share PtyManager and SidecarManager code. The `EventSink` trait abstracts event emission — TauriEventSink wraps Tauri's AppHandle, while the relay uses a WebSocket-based EventSink.
|
||||
The `agor-core` crate exists so that both the Tauri application and the standalone `agor-relay` binary can share PtyManager and SidecarManager code. The `EventSink` trait abstracts event emission — TauriEventSink wraps Tauri's AppHandle, while the relay uses a WebSocket-based EventSink.
|
||||
|
||||
### AppState
|
||||
|
||||
|
|
@ -116,8 +116,8 @@ The backend manages two SQLite databases, both in WAL mode with 5-second busy ti
|
|||
|
||||
| Database | Location | Purpose |
|
||||
|----------|----------|---------|
|
||||
| `sessions.db` | `~/.local/share/bterminal/` | Sessions, layout, settings, agent state, metrics, anchors |
|
||||
| `btmsg.db` | `~/.local/share/bterminal/` | Inter-agent messages, tasks, agents registry, audit log |
|
||||
| `sessions.db` | `~/.local/share/agor/` | Sessions, layout, settings, agent state, metrics, anchors |
|
||||
| `btmsg.db` | `~/.local/share/agor/` | Inter-agent messages, tasks, agents registry, audit log |
|
||||
|
||||
WAL checkpoints run every 5 minutes via a background tokio task to prevent unbounded WAL growth.
|
||||
|
||||
|
|
@ -301,7 +301,7 @@ Here is the complete path of a user prompt through the system:
|
|||
|
||||
## Configuration
|
||||
|
||||
### Project Groups (`~/.config/bterminal/groups.json`)
|
||||
### Project Groups (`~/.config/agor/groups.json`)
|
||||
|
||||
Human-editable JSON file defining project groups and their projects. Loaded at startup by `groups.rs`. Not hot-reloaded — changes require app restart or group switch.
|
||||
|
||||
|
|
@ -313,16 +313,16 @@ Key-value store for user preferences: theme, fonts, shell, CWD, provider setting
|
|||
|
||||
| Variable | Purpose |
|
||||
|----------|---------|
|
||||
| `BTERMINAL_TEST` | Enables test mode (disables watchers, wake scheduler) |
|
||||
| `BTERMINAL_TEST_DATA_DIR` | Redirects SQLite database storage |
|
||||
| `BTERMINAL_TEST_CONFIG_DIR` | Redirects groups.json config |
|
||||
| `BTERMINAL_OTLP_ENDPOINT` | Enables OpenTelemetry OTLP export |
|
||||
| `AGOR_TEST` | Enables test mode (disables watchers, wake scheduler) |
|
||||
| `AGOR_TEST_DATA_DIR` | Redirects SQLite database storage |
|
||||
| `AGOR_TEST_CONFIG_DIR` | Redirects groups.json config |
|
||||
| `AGOR_OTLP_ENDPOINT` | Enables OpenTelemetry OTLP export |
|
||||
|
||||
---
|
||||
|
||||
## Data Model
|
||||
|
||||
### Project Group Config (`~/.config/bterminal/groups.json`)
|
||||
### Project Group Config (`~/.config/agor/groups.json`)
|
||||
|
||||
Human-editable JSON file defining workspaces. Each group contains up to 5 projects. Loaded at startup by `groups.rs`, not hot-reloaded.
|
||||
|
||||
|
|
@ -335,12 +335,12 @@ Human-editable JSON file defining workspaces. Each group contains up to 5 projec
|
|||
"name": "AI Projects",
|
||||
"projects": [
|
||||
{
|
||||
"id": "bterminal",
|
||||
"name": "BTerminal",
|
||||
"identifier": "bterminal",
|
||||
"id": "agor",
|
||||
"name": "Agents Orchestrator",
|
||||
"identifier": "agor",
|
||||
"description": "Terminal emulator with Claude integration",
|
||||
"icon": "\uf120",
|
||||
"cwd": "/home/user/code/BTerminal",
|
||||
"cwd": "/home/user/code/Agents Orchestrator",
|
||||
"profile": "default",
|
||||
"enabled": true
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue