Hitonabi
f1b0d61ada
Refactor: ModelsView auf Hooks + Leaf-Komponenten ausgelagert (Phase 4b)
...
- JobsBar -> components/models/JobsBar.tsx (useJobs + Invalidierung, useDialog).
- FitBadge/getBrandInfo/ROLES -> components/models/ModelBadges.tsx.
- Cockpit + Discover: manuelles Promise.all+setInterval durch useModels/
useRouting/useConnect/useUpdates/useDiscover ersetzt; lokaler Dialog-State +
showAlert/showConfirm/showPrompt durch useDialog; Mutationen invalidieren die
Query-Keys statt load(). AddModel-Aktionen bleiben imperativ (api()).
- ModelsView 1660 -> 1455 Zeilen; tote Format-/Typ-Importe entfernt.
Verifiziert: tsc grün, Build grün, Cockpit- und Discover-Tab rendern ohne
Konsolenfehler (VRAM-HUD, Registry).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:59:19 +02:00
Hitonabi
7a11fd2846
Refactor: DashboardView in Karten zerlegen (Phase 4a)
...
DashboardView 849 -> ~40 Zeilen Orchestrator. Sechs eigenständige Karten unter
components/dashboard/, jede mit eigenem Daten-Hook (react-query, geteilte Keys):
- RadialGauge, SystemStatusCard (useSystemStatus)
- UpdatesCard (useUpdates+useJobs; OS/Engine-Update, Reboot, Modell-Upgrade,
Sudo-Modal, invalidiert nach Aktionen)
- AgentStatusCard (useAgentStatus+useModels; Gehirn-Wechsel-Modal)
- RolesCard (useModels), MemoryInputCard (useMemory), TokenStatsCard (useTokenStats)
Kein manuelles useEffect+setInterval mehr; useDialog statt lokalem Dialog-State.
Verifiziert: tsc grün, Build grün, alle 6 Karten rendern, Live-Daten + Pricing-
Footer korrekt, keine Konsolenfehler.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:50:54 +02:00
Hitonabi
0266dc9e92
Refactor: TanStack-Query-Daten-Layer + useDialog (Phase 3b)
...
- @tanstack/react-query (v5) als zentraler Daten-Layer; QueryClientProvider
in main.tsx (retry 1, kein refetchOnWindowFocus, staleTime 5s).
- lib/queries.ts: Domänen-Hooks (useHealth/useSystemStatus/useServices/
useModels/useRouting/useJobs/useTokenStats/useAgentStatus/useUpdates/
useDiscover/useConnect/useMemory) + zentrale Query-Keys (qk) + invalidate.
Gleicher Key = eine Anfrage über alle Views (Dedup), einheitliches Polling.
- lib/useDialog.tsx: ein Hook für Alert/Confirm/Prompt statt 5x dupliziertem
Dialog-State + showAlert/showConfirm.
- api.ts: TokenStats + ModelsResp typisiert.
- Migriert auf Hooks/useDialog: App, SystemView, AgentView, ConnectView,
MemoryView (manuelles useEffect+setInterval entfernt; Mutationen
invalidieren gezielt die Query-Keys).
Verifiziert: tsc grün, Build grün, alle migrierten Views ohne Konsolenfehler,
Live-Daten (CPU/RAM/Dienste) rendern korrekt.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:46:26 +02:00
Hitonabi
74f64731ab
Refactor: Frontend-Fundament — Format-Utils, Dialog-Ref, Typen (Phase 3a)
...
- Neuer lib/format.ts: gb/fmtBytes/fmtSize/fmtEta/fmtCtx zentral; aus
DashboardView/SystemView/ModelsView entdoppelt und importiert.
- CustomDialog: document.getElementById -> useRef (kein DOM-Query, robuster).
- api.ts: GitInfo/ComponentVersion/Versions typisiert, SystemStatus.versions
ergänzt; App.tsx nutzt SystemStatus statt any.
tsc grün, Build grün, Dashboard verifiziert (keine Konsolenfehler, Formatierer
rendern identisch).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:36:28 +02:00
Hitonabi
341ea870bb
Refactor: Zentrales Logging + robuste Token-Erfassung (Phase 2)
...
- app.py: logging.basicConfig (MC_LOG_LEVEL, INFO default) als eine
Konfiguration für alle Module.
- Neuer services/gateway_stream.py: SSE-/Non-Stream-usage-Parsing aus dem
gateway_proxy-Router extrahiert; robuster Zeilenparser mit Debug-Logging
statt verschluckter Exceptions. Router ist jetzt dünn.
- token_stats.py: In-Memory-Cache + gedrosseltes Flushen (5s) + atexit-Flush
statt Write-pro-Request; atomarer Write (.tmp -> replace); thread-safe.
- agent.py/discover.py: stille `except Exception: pass` durch gezieltes
log.debug/warning ersetzt; ungenutzten yaml-Import entfernt.
Verifiziert: Stream-Parsing (Summen + per-Modell), malformed-Chunk übersteht,
flush schreibt; app importiert sauber.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:32:15 +02:00
Hitonabi
a7c3f8f516
Refactor: Pricing/Draft-Pfad als Single Source of Truth (Phase 1)
...
- Neuer services/pricing.py: PRICING-Dict + compute_savings() aus dem
system-Router extrahiert; Router ist jetzt dünn (nur role_map + Aufruf).
- /system/token-stats liefert zusätzlich das pricing-Dict → Frontend zeigt
die Tarife daraus an statt sie im Text zu hartkodieren.
- SPEC_DRAFT_MODEL_PATH in config.py (MC_SPEC_DRAFT_MODEL); llamaswap.py und
migrate_config.py referenzieren die Konstante statt des doppelten Literals.
- Ersparnis-Berechnung verhaltensneutral verifiziert (35,09 $ / 32,28 €).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 14:28:26 +02:00
Hitonabi
35dcc69ba5
Implement prompt caching, speculative decoding config, parallel slots, and dynamic pricing metrics
2026-06-26 14:00:32 +02:00
Hitonabi
2c60caf790
Update API token stats pricing and footer to June 2026 rates
2026-06-26 13:50:46 +02:00
Hitonabi
2e4cddc840
Feat: Add Token Stats and Cost Savings dashboard card and backend tracking
2026-06-26 13:48:32 +02:00
Hitonabi
311f4d7b68
UI: Add fluid resolution-based scaling for WQHD and 4K displays in index.css
2026-06-26 13:44:20 +02:00
Hitonabi
77daa38cf0
UI: Remove redundant Ändern badge from Aktives Gehirn graph node in AgentView
2026-06-26 13:41:34 +02:00
Hitonabi
d286dbf203
UI: Redesign active roles overview to slot-centric list in Dashboard and ModelsView
2026-06-26 13:38:58 +02:00
Hitonabi
066feee3ea
Feat: Add Hermes brain change buttons and skills.sh guide source
2026-06-26 13:34:53 +02:00
Hitonabi
0c7b0b19af
Feat: Add manual updates check, Settings tab, direct model upgrades, logs password redirection, fix engine version detection, and expand AI agent Guide tab
2026-06-26 13:09:50 +02:00
Hitonabi
563e7837b9
feat: add Vorhanden / In Benutzung filter mode to Model Manager
2026-06-26 08:23:50 +02:00
Hitonabi
f32e4baf5b
fix: convert IDE setup popover in Model Manager to viewport overlay modal to prevent clipping
2026-06-26 08:19:17 +02:00
Hitonabi
da929845a9
fix: rename Modell-Zentrale to Modell-Manager and highlight configured models
2026-06-26 08:15:44 +02:00
Hitonabi
4acea97f03
fix: simplify agent graph to show the 4 tiles and fix compilation errors
2026-06-26 08:12:30 +02:00
Hitonabi
18f361d485
fix: resolve SVG dimension observer loading mount lifecycle issue using callback refs
2026-06-26 08:06:01 +02:00
Hitonabi
dbe6e4b4f3
fix: resolve connection graph lines stretching and flow visual bugs using ResizeObserver
2026-06-26 08:04:25 +02:00
Hitonabi
42d2e58570
build: include compiled production assets
2026-06-26 08:00:22 +02:00
Hitonabi
1e879ca3c4
feat: show last update check timestamp on dashboard
2026-06-26 07:59:42 +02:00
Hitonabi
3fa23d16c6
fix: only suggest model upgrades for active roles on dashboard
2026-06-26 07:57:36 +02:00
Hitonabi
bc3abb127a
feat: simplify Discover view into socket cards & backend upgrades
2026-06-26 07:53:41 +02:00
Hitonabi
b90cef3968
feat: enable full model file deletion on disk including split parts and vision adapters, update prompt text
2026-06-26 07:23:06 +02:00
Hitonabi
e88dfb8f98
fix: restore static workstation IP for local connection snippets and service urls
2026-06-25 23:12:27 +02:00
Hitonabi
b6af1c1b4a
fix: dynamically resolve active hostname in guide and connect views
2026-06-25 23:08:54 +02:00
Hitonabi
e9fb72fdc7
fix: dynamically resolve localhost/127.0.0.1 in links to active hostname for remote access
2026-06-25 23:06:25 +02:00
Hitonabi
8d5885d683
style: enhance UI aesthetics with vibrant glows, solid cards, hover lift animations, and active nav styling
2026-06-25 23:02:31 +02:00
Hitonabi
f1e0503c73
feat: upgrade Modell-Zentrale to Model Control HUD 3.0, delete obsolete RoutingView
2026-06-25 22:56:13 +02:00
Hitonabi
97f8bc34bc
refactor: rename provider key in OpenCode config template from litellm to bosgame
2026-06-25 22:43:10 +02:00
Hitonabi
be5341fb03
refactor: include assistant default_model config in Zed snippet, update Continue note to mention config.yaml
2026-06-25 22:42:12 +02:00
Hitonabi
85d8371261
docs: update BEDIENUNG.md to reflect new 7 areas, routing consolidation, and Roo Code name
2026-06-25 22:41:36 +02:00
Hitonabi
ef93b7f919
refactor: update default MCP ports to 9001, fix connect docstrings, rename Cline label to Roo Code / Cline
2026-06-25 22:39:42 +02:00
Hitonabi
b08e867c1a
feat: integrate Guide-Tab (Anleitung) for local Vibe Coding and compile frontend
2026-06-25 22:36:58 +02:00
Hitonabi
bd6aacf3ed
feat: configure MC_ENGINE_UPDATE_CMD in systemd unit file
2026-06-25 22:32:21 +02:00
Hitonabi
cb02ede5fb
fix: serve manifest.webmanifest and other root files in SPA catch-all
2026-06-25 22:30:26 +02:00
Hitonabi
d15744a812
feat: consolidate routing view into models tab, and add updates widget directly to Zentrale dashboard
2026-06-25 22:24:00 +02:00
Hitonabi
6a8e55cc43
feat: complete UI/UX Rework into Sleek Glassmorphic AI OS (June 2026)
2026-06-25 22:18:51 +02:00
Hitonabi
e1da5c797d
feat(2.0): implement cockpit improvements, dynamic mcp path, v2 venv, and ko-residency
2026-06-25 21:50:16 +02:00
Hitonabi
807c2c6194
docs: sync status, hermes setup, and cutover docs with box reality
2026-06-25 21:41:03 +02:00
Hitonabi
2536d91430
docs(2.0): W8 — Wartungs-Bedienung + sudoers-Erweiterung dokumentiert
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 17:44:57 +02:00
Hitonabi
1f391644ca
feat(2.0): W8 — Wartung (OS/Engine/Modell-Updates, Restart, Reboot, Logs)
...
services/maintenance.py + routers/maintenance.py: updates-Badge (apt/Engine-
Release/dyn. Modell-Upgrades via discover), os-update + engine-update als
jobengine-Jobs, system-/user-aware Restart (llama-swap via sudo -n NOPASSWD),
reboot, logs (journalctl). Frontend: Wartungs-Block in SystemView mit Badge,
Buttons + Modell-Upgrade-Vorschlaegen. Passwortfrei (sudo -n).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 17:43:53 +02:00
Hitonabi
2ea3d01b58
docs(2.0): W4 — Bedien-Anleitung (BEDIENUNG.md) + Hilfe-Link im Cockpit
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 14:35:31 +02:00
Hitonabi
c863f01a78
feat(2.0): W2+W3 — HF-Link/Suche + Modell-Verwaltungs-UX
...
W2: install akzeptiert HF-URL ODER org/repo (normalize_repo); GET /api/hf/
search + /api/hf/quants; Frontend AddModel-Panel (URL+Quant-Dropdown+freie
Suche) im Discover-Tab. W3: POST /api/models/{id}/role + /ctx; Installiert-
Tab mit Rollen-Select (fast/heavy/coder/...), ctx-Edit, Loeschen → LLM
tauschen per Klick.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 14:33:23 +02:00
Hitonabi
501ba36b89
feat(2.0): W1 — fast-Spur ohne Thinking (flotte Antworten) + tool-call-Cap
...
Gateway injiziert chat_template_kwargs.enable_thinking=false fuer die fast-
Spur (Qwen3.6 ist Reasoning-Modell → sonst lahm/leer). heavy behaelt
Thinking. Env MC_FAST_NO_THINK. Hermes-Thrash war poisoned Persistent-
Session (fresh=clean, 34k statt 249k verifiziert); code_execution.max_tool_
calls 50->20 auf der Box (Historie unangetastet).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 14:24:57 +02:00
Hitonabi
77b6dee02f
docs(2.0): Phase 6d/e — Cutover-Readiness + Hermes-Tuning-Befunde
...
docs/CUTOVER.md: Box-Stack live (Modelle/Gateway/Hermes/Memory verifiziert),
bekannte Tuning-Punkte (Hermes-Kontext/Tool-Thrash NICHT brain-abhaengig →
Hands-on-Debug; SSH-Windows; nesquena optional), reversibler Cutover-Ablauf.
STATUS aktualisiert.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 13:08:04 +02:00
Hitonabi
ba435fb1d7
chore(2.0): geteiltes Gedaechtnis = bestehende v1-DB (Cutover-Kontinuitaet)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 12:59:18 +02:00
Hitonabi
ceca2ae8e3
feat(2.0): Phase 6c — eingebauter OpenAI-Gateway (model:auto) statt LiteLLM
...
LiteLLM baut auf Python 3.14 nicht (orjson-Pin ohne cp314-Wheel). Stattdessen
eingebauter Gateway in MC2: routers/gateway_proxy.py (/v1/chat/completions,
/completions, /models) + services/router_logic.py (Komplexitaets-Routing
fast<->heavy, Streaming-Passthrough). gateway.py/routing.py/connect.py auf
builtin umgestellt (Endpunkt = MC :PORT/v1). Gleicher OpenAI-Vertrag,
spaeter gegen LiteLLM austauschbar.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 12:54:19 +02:00
Hitonabi
db1f62227b
feat(2.0): DELETE /api/models/{id} (Eintrag + Gruppen-Mitgliedschaft entfernen)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 12:41:58 +02:00