feat(console): add Artemis Admin & Trace Console backend and management plane
Introduces the comprehensive developer/administrator control plane and trace
inspection console backend for the ARTEMIS mobile automation platform.
Key Features & Backend Architecture:
- Core Server & Modular Routing:
* FastAPI modular architecture with dedicated routers for sessions, steps, tasks, media, stream, and replay.
* Multi-layer repository pattern with SQLite persistence for sessions, traces, and step data.
- Task Control & Queue Management:
* FIFO asynchronous task queue service with support for single/batch goal execution and profile selection (Flash / Pro).
* Session lifecycle controls (run, pause, resume, stop, clear queue).
* Startup orphan cleanup and automatic older replay archiving.
- Live Telemetry & IPC Communication:
* High-performance IPC server for streaming real-time execution logs, agent thoughts, and tool invocations.
* Server-Sent Events (SSE) /api/stream/{session_id} endpoint for live UI updates.
- Real-Time Device Streaming:
* Live ADB screen capture and MJPEG frame generator (/api/stream/device-live).
* Device connectivity and state inspection endpoint (/api/stream/device-state).
- Trace Inspection & Step Replay Engine:
* Hierarchical call tree inspection, pre/post step screenshots, and action overlay metadata.
* Isolated single-step replay manager (/api/replay) for interactive debugging and validation.
This commit is contained in:
1 parent
2fd70465e6
commit
c1803fcb86
29 files changed
+8889
No files matched your search
@@ -0,0 +1,51 @@
|
||||
# 🛠️ Artemis Admin & Trace Console
|
||||
|
||||
A comprehensive developer/administrator control plane and trace inspection console for the Latte/Artemis mobile automation system.
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Key Features
|
||||
|
||||
1. **Full Trace Inspection (`/api/sessions`, `/api/steps`)**:
|
||||
- Hierarchical Call Tree exploration (LLM thoughts, tool calls, agent motivations).
|
||||
- Step-by-step pre/post screenshots and action overlays (tap circles, swipe paths).
|
||||
- Streaming logs and video recording playback.
|
||||
2. **Task Control Center (`/api/run`)**:
|
||||
- Directly launch autonomous tasks with custom goals and model profiles (Flash / Pro).
|
||||
- Pause, resume, and manage FIFO task execution queues.
|
||||
3. **Step Replay & Debugging Engine (`/api/replay`)**:
|
||||
- Replay individual steps with isolated inputs, state inspection, and live device execution.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 How to Start
|
||||
|
||||
### Option 1: Using `uv` (Recommended)
|
||||
From the repository root:
|
||||
```bash
|
||||
uv run uvicorn apps.admin_console.server:app --host 0.0.0.0 --port 8000 --reload
|
||||
```
|
||||
Or directly using Python module:
|
||||
```bash
|
||||
uv run python -m apps.admin_console.server
|
||||
```
|
||||
|
||||
### Option 2: From the `apps/admin_console` directory
|
||||
```bash
|
||||
cd apps/admin_console
|
||||
uv run uvicorn server:app --host 0.0.0.0 --port 8000 --reload
|
||||
```
|
||||
|
||||
Once started, open your browser and navigate to:
|
||||
👉 **`http://localhost:8000`**
|
||||
|
||||
---
|
||||
|
||||
## 🎥 Video Debugging Mode
|
||||
|
||||
By default, `VideoAnalyzer` cleans up local temporary video files after execution. To retain video recordings for full playback in the console:
|
||||
|
||||
```bash
|
||||
KEEP_VIDEOS=1 artemis run "your task goal"
|
||||
```
|
||||
Or set `ARTEMIS_DEBUG=1` in your environment.
|
||||
Reference in new issue
Block a user