Date : 21/01/2026 19:15 Status : EN ATTENTE VALIDATION
SOURCE UNIQUE
│
┌───────────────┼───────────────┐
│ │ │
▼ ▼ ▼
config.json APIs Live Registres JSON
│ │ │
│ │ │
┌────────┴────────┐ │ ┌────────┴────────┐
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
index/*.md HTML HTML services- memory/*.md
(CLAUDE) Static Live registry.json (CLAUDE)
│ │ │ │ │
│ └──┬──┘ │ │
│ │ │ │
│ ▼ │ │
│ DASHBOARD │ │
│ dashboard.nowhere84.com │ │
│ │ │ │
└────────────────────┼────────────┘ │
│ │
▼ │
claude.nowhere84.com ◄──────────────┘
(intégré au dashboard)
| Page | Sujet | Raison |
|---|---|---|
| doc.html | Documentation | Référence, change rarement |
| endpoints.html | API endpoints | Référence |
| models.html | Guide modèles Ollama | Référence |
| montages.html | Montages NFS/SMB | Stable |
| nginx.html | Configuration Nginx | Change rarement |
| o2switch.html | Services O2switch | Change rarement |
| secrets.html | Credentials | Référence |
| syncthing.html | Syncthing config | Stable |
| architecture.html | Vue architecture | Change rarement |
| shortlinks.html | Liens raccourcis | Manuel |
| Page | API utilisée | Refresh |
|---|---|---|
| ai-orchestrator.html | ai-orchestrator.33800/api/tools | 30s JS |
| ai-jobs.html | ai-orchestrator.33800/api/jobs | 5s JS |
| needfinder-v2.html | API fetch | JS |
| Page | Sujet | Pourquoi live ? | API à créer |
|---|---|---|---|
| index.html | Dashboard principal | Status services temps réel | /api/status |
| services.html | Services déployés | Changent souvent | /api/services |
| alerts.html | Alertes système | Critiques | /api/alerts |
| raidz.html | Status ZFS | Health critique | /api/zfs |
| crons.html | Timeline crons | Dernière exécution | /api/crons |
| linkedin.html | LinkedIn connector | Session status | browser-connector/api |
| Page | Status actuel | Recommandation |
|---|---|---|
| schema.html | Canvas dynamique | OK |
| yolo.html | Détection | OK si utilisé |
| needfinder.html | V1 obsolète | Supprimer ? |
Intégrer comme page du dashboard :
dashboard.nowhere84.com/
├── index.html
├── services.html
├── ...
└── claude.html ← NOUVEAU (remplace claude.nowhere84.com)
├── propositions/
├── tasks/
└── backlog/
Avantages :
| Fichier | Lignes | Split en |
|---|---|---|
| 01-index.sh | 1392 | index-header.sh, index-services.sh, index-stats.sh |
| 05-endpoints.sh | 1221 | endpoints-prod.sh, endpoints-dev.sh, endpoints-ai.sh |
| 20-ai-jobs.sh | 1086 | ai-jobs-stats.sh, ai-jobs-grid.sh, ai-jobs-modal.sh |
| 18-ai-tools.sh | 1051 | ai-tools-cards.sh, ai-tools-docs.sh |
| 03-doc.sh | 934 | doc-general.sh, doc-api.sh |
| 08-crons.sh | 815 | crons-timeline.sh, crons-list.sh |
Règle : Max 500 lignes par fichier
Container sur prod-portainer qui centralise les status :
infra-status.33800.nowhere84.com/api/
├── /status # Status global (pour index.html)
├── /services # Services déployés (services-registry.json)
├── /alerts # Alertes actives
├── /zfs # Status ZFS pools
├── /crons # Dernières exécutions crons
└── /machines # Status machines (ping)
Implémentation : Simple Node.js/Bun qui :
| API | URL | Pages |
|---|---|---|
| ai-orchestrator | ai-orchestrator.33800/api | ai-jobs, ai-orchestrator |
| browser-connector | browser.33800/api |
{
"hosts": { ... }, // Machines
"services": { ... }, // Services
"urls": { ... }, // URLs actives (NOUVEAU)
"credentials_index": { ... } // Liste credentials sans valeurs (NOUVEAU)
}
# generate.sh génère :
# 1. Pages HTML du dashboard
# 2. Fichiers index/*.md pour Claude
generate_dashboard() # HTML statiques
generate_live_pages() # HTML avec JS fetch
generate_claude_index() # index/*.md
~/.claude/
├── CLAUDE.md # Core (~200 lignes) - TOUJOURS
├── index/ # Niveau 2 - AUTO si sujet détecté
│ ├── services.md # ← Généré depuis config.json
│ ├── machines.md # ← Généré depuis config.json
│ ├── urls.md # ← Généré depuis config.json
│ └── credentials-index.md
└── memory/ # Niveau 3 - À LA DEMANDE
├── o2switch.md
├── notifications.md
└── ...
| Composant | Avant | Après |
|---|---|---|
| Dashboard pages | 23 (majoritairement statiques) | 23 (6 live, 10 statiques, intégrées) |
| claude.nowhere84.com | Séparé | Intégré au dashboard |
| CLAUDE.md | 1355 lignes | ~200 lignes core |
| Gros fichiers | 6 fichiers >500 lignes | Tous <500 lignes |
| Données live | 3 pages | 9 pages |
| Source unique | Partielle | config.json + APIs |
En attente de ta validation.