bruno b680c0fff7 feat: Phase 7 — CLI complet (start/serve/stop/status/config/logs)
- Gestion PID (write/read/remove + verification processus)
- cmd_start: lance watcher + dashboard avec Ctrl+C graceful shutdown
- cmd_serve: dashboard seul (Linux) avec --no-watcher
- cmd_stop: kill processus via SIGTERM/OpenProcess + nettoyage PID
- cmd_status: affiche PID, dashboard URL, config, polling
- cmd_config show/set/reset: gestion dotted keys (imago.url, watcher.*, etc.)
- cmd_logs: affiche derniers logs
- Fix Default derives: ImagoConfig, DedupConfig, UiConfig, LoggingConfig
- Ajout dependances: open, libc (Unix)
- Watcher::run(self) au lieu de &self pour Send
- tests: start → API /api/health OK → stop → status OK
- 0 errors, 0 warnings (cargo check + cargo build --release)
2026-06-22 16:57:41 -04:00

imagod-web

Imago Daemon + Dashboard — Service de capture automatique de screenshots + Dashboard web embarqué.

Un binaire Rust unique qui remplit deux rôles :

Mode Plateforme Rôle
imagod-web start Windows Watcher clipboard + Dashboard web :9090
imagod-web serve Linux/Raspi Dashboard web uniquement (sans watcher)

Fonctionnalités

  • Capture automatique : surveille le clipboard Windows, détecte les nouveaux screenshots
  • Dédoublonnage : SHA-256 pour éviter les doublons
  • Upload Imago : envoi vers le backend Imago pour OCR + AI Vision + Tags
  • Dashboard web embarqué : galerie, recherche, preview, copie/partage
  • Cross-platform : Windows (watcher+dashboard), Linux/Raspi (dashboard)
  • System tray : icône native Windows avec menu contextuel
  • Service Windows : installation via NSSM pour démarrage automatique

Prérequis

  • Rust 1.80+
  • Un serveur Imago fonctionnel
  • Une clé API client Imago

Installation

# Compiler depuis les sources
git clone https://git.dracodev.net/Projets/imagod-web.git
cd imagod-web
cargo build --release

# Le binaire est dans target/release/imagod-web (ou imagod-web.exe)

Cross-compilation

# Windows
cargo build --release --target x86_64-pc-windows-msvc

# Linux x86_64 (openclaw-1)
cargo build --release --target x86_64-unknown-linux-gnu

# Linux ARM64 (Raspberry Pi)
cargo build --release --target aarch64-unknown-linux-gnu

Utilisation

# Windows — lancer le watcher + dashboard
imagod-web start --port 9090 --open-browser

# Linux — dashboard uniquement
imagod-web serve --port 9090 --host 0.0.0.0 --no-watcher

# Voir le statut
imagod-web status

# Configurer
imagod-web config show
imagod-web config set imago.api_key "ik_..."

# Installer comme service Windows (admin requis)
imagod-web install

Configuration

Fichier imagod.toml dans %APPDATA%/imagod-web/ (Windows) ou ~/.config/imagod-web/ (Linux).

[imago]
url = "http://imago.dracodev.net:8000"
api_key = "CHANGE_ME"

[watcher]
capture_images = true
poll_interval_ms = 500

Architecture

Voir imagod-web-architecture dans le vault Obsidian IT.

Licence

MIT — Copyright (c) 2026 Bruno Charest

S
Description
Imago Daemon + Dashboard — Service de capture automatique de screenshots + Dashboard web embarqué (Rust)
Readme MIT
9.7 MiB
Languages
Rust 57.2%
HTML 42.8%