Settings UI: Add missing configuration options #185

Closed
opened 2026-01-24 10:35:33 +00:00 by jack · 0 comments
Owner

Beschreibung

Die Settings-UI zeigt nicht alle konfigurierbaren Optionen an. Alle Settings aus packages/shared/src/settings.ts sollten in der UI verfügbar sein.

Vollständige Settings-Liste

Backend Configuration

Setting Typ In UI?
BACKEND_PORT number
BACKEND_WS_PORT number
BACKEND_HOST string
BACKEND_BIND string

Worker Configuration

Setting Typ In UI?
WORKER_AUTH_TOKEN string
EMBEDDED_WORKER boolean
MAX_WORKERS number
AUTO_SPAWN_WORKERS boolean
AUTO_SPAWN_WORKER_COUNT number
AUTO_SPAWN_PROVIDERS string

AI Provider Configuration

Setting Typ In UI?
AI_PROVIDER enum
ENABLED_PROVIDERS string
MISTRAL_API_KEY string
MISTRAL_MODEL string
GEMINI_API_KEY string
GEMINI_MODEL string
OPENROUTER_API_KEY string
OPENROUTER_MODEL string
OPENAI_API_KEY string
OPENAI_MODEL string
OPENAI_BASE_URL string
ANTHROPIC_API_KEY string

Database Configuration

Setting Typ In UI?
DATABASE_TYPE enum
DATABASE_PATH string
DATABASE_URL string
DATABASE_BACKEND enum
DATABASE_HOST string
DATABASE_PORT number
DATABASE_USER string
DATABASE_PASSWORD string
DATABASE_NAME string

Vector Database Configuration

Setting Typ In UI?
VECTOR_DB enum
VECTOR_DB_PATH string
EMBEDDING_MODEL string

Context Configuration

Setting Typ In UI?
CONTEXT_OBSERVATION_LIMIT number
CONTEXT_SHOW_READ_TOKENS boolean
CONTEXT_SHOW_WORK_TOKENS boolean

Logging

Setting Typ In UI?
LOG_LEVEL enum

Data Directory

Setting Typ In UI?
DATA_DIR string

Batch Processing

Setting Typ In UI?
BATCH_SIZE number

Remote Mode

Setting Typ In UI?
REMOTE_MODE boolean
REMOTE_URL string
REMOTE_TOKEN string

Retention Policy

Setting Typ In UI?
RETENTION_ENABLED boolean
RETENTION_MAX_AGE_DAYS number
RETENTION_MAX_COUNT number

CLAUDE.md Generation

Setting Typ In UI?
CLAUDEMD_ENABLED boolean
CLAUDEMD_OBSERVATION_INTERVAL number
CLAUDEMD_TASK_TIMEOUT number
CLAUDEMD_MAX_SUBDIRS number

Zu implementieren

  1. Audit der aktuellen UI: Prüfen welche Settings bereits angezeigt werden
  2. Gruppierte Darstellung: Settings nach Kategorie gruppieren (wie oben)
  3. Sensitive Fields: API-Keys als Password-Felder mit Show/Hide Toggle
  4. Validierung: Input-Validierung für Typen (number, enum, etc.)
  5. Beschreibungen: Tooltip oder Hilfetext für jedes Setting
  6. Restart-Hinweis: Manche Settings erfordern Backend-Neustart

UI-Design Vorschlag

┌─ Settings ──────────────────────────────────┐
│                                             │
│ ▼ AI Provider                               │
│   Primary Provider: [Mistral ▼]             │
│   Mistral API Key:  [••••••••••] 👁         │
│   Mistral Model:    [mistral-small-latest]  │
│   ...                                       │
│                                             │
│ ▼ Worker Configuration                      │
│   Auto-spawn Workers: [✓]                   │
│   Worker Count:       [2]                   │
│   Max Workers:        [4]                   │
│   ...                                       │
│                                             │
│ ▼ CLAUDE.md Generation                      │
│   Enabled:            [✓]                   │
│   Observation Interval: [10]                │
│   ...                                       │
│                                             │
│ ▶ Database (collapsed)                      │
│ ▶ Remote Mode (collapsed)                   │
│ ▶ Advanced (collapsed)                      │
└─────────────────────────────────────────────┘

Betroffene Dateien

  • packages/ui/src/views/SettingsView.tsx
  • packages/ui/src/components/SettingsForm.tsx (oder ähnlich)

Priorität

Mittel - Wichtig für Konfigurierbarkeit ohne manuelle JSON-Bearbeitung

## Beschreibung Die Settings-UI zeigt nicht alle konfigurierbaren Optionen an. Alle Settings aus `packages/shared/src/settings.ts` sollten in der UI verfügbar sein. ## Vollständige Settings-Liste ### Backend Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `BACKEND_PORT` | number | ❓ | | `BACKEND_WS_PORT` | number | ❓ | | `BACKEND_HOST` | string | ❓ | | `BACKEND_BIND` | string | ❓ | ### Worker Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `WORKER_AUTH_TOKEN` | string | ❓ | | `EMBEDDED_WORKER` | boolean | ❓ | | `MAX_WORKERS` | number | ❓ | | `AUTO_SPAWN_WORKERS` | boolean | ❓ | | `AUTO_SPAWN_WORKER_COUNT` | number | ❓ | | `AUTO_SPAWN_PROVIDERS` | string | ❓ | ### AI Provider Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `AI_PROVIDER` | enum | ❓ | | `ENABLED_PROVIDERS` | string | ❓ | | `MISTRAL_API_KEY` | string | ❓ | | `MISTRAL_MODEL` | string | ❓ | | `GEMINI_API_KEY` | string | ❓ | | `GEMINI_MODEL` | string | ❓ | | `OPENROUTER_API_KEY` | string | ❓ | | `OPENROUTER_MODEL` | string | ❓ | | `OPENAI_API_KEY` | string | ❓ | | `OPENAI_MODEL` | string | ❓ | | `OPENAI_BASE_URL` | string | ❓ | | `ANTHROPIC_API_KEY` | string | ❓ | ### Database Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `DATABASE_TYPE` | enum | ❓ | | `DATABASE_PATH` | string | ❓ | | `DATABASE_URL` | string | ❓ | | `DATABASE_BACKEND` | enum | ❓ | | `DATABASE_HOST` | string | ❓ | | `DATABASE_PORT` | number | ❓ | | `DATABASE_USER` | string | ❓ | | `DATABASE_PASSWORD` | string | ❓ | | `DATABASE_NAME` | string | ❓ | ### Vector Database Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `VECTOR_DB` | enum | ❓ | | `VECTOR_DB_PATH` | string | ❓ | | `EMBEDDING_MODEL` | string | ❓ | ### Context Configuration | Setting | Typ | In UI? | |---------|-----|--------| | `CONTEXT_OBSERVATION_LIMIT` | number | ❓ | | `CONTEXT_SHOW_READ_TOKENS` | boolean | ❓ | | `CONTEXT_SHOW_WORK_TOKENS` | boolean | ❓ | ### Logging | Setting | Typ | In UI? | |---------|-----|--------| | `LOG_LEVEL` | enum | ❓ | ### Data Directory | Setting | Typ | In UI? | |---------|-----|--------| | `DATA_DIR` | string | ❓ | ### Batch Processing | Setting | Typ | In UI? | |---------|-----|--------| | `BATCH_SIZE` | number | ❓ | ### Remote Mode | Setting | Typ | In UI? | |---------|-----|--------| | `REMOTE_MODE` | boolean | ❓ | | `REMOTE_URL` | string | ❓ | | `REMOTE_TOKEN` | string | ❓ | ### Retention Policy | Setting | Typ | In UI? | |---------|-----|--------| | `RETENTION_ENABLED` | boolean | ❓ | | `RETENTION_MAX_AGE_DAYS` | number | ❓ | | `RETENTION_MAX_COUNT` | number | ❓ | ### CLAUDE.md Generation | Setting | Typ | In UI? | |---------|-----|--------| | `CLAUDEMD_ENABLED` | boolean | ❓ | | `CLAUDEMD_OBSERVATION_INTERVAL` | number | ❓ | | `CLAUDEMD_TASK_TIMEOUT` | number | ❓ | | `CLAUDEMD_MAX_SUBDIRS` | number | ❓ | ## Zu implementieren 1. **Audit der aktuellen UI**: Prüfen welche Settings bereits angezeigt werden 2. **Gruppierte Darstellung**: Settings nach Kategorie gruppieren (wie oben) 3. **Sensitive Fields**: API-Keys als Password-Felder mit Show/Hide Toggle 4. **Validierung**: Input-Validierung für Typen (number, enum, etc.) 5. **Beschreibungen**: Tooltip oder Hilfetext für jedes Setting 6. **Restart-Hinweis**: Manche Settings erfordern Backend-Neustart ## UI-Design Vorschlag ``` ┌─ Settings ──────────────────────────────────┐ │ │ │ ▼ AI Provider │ │ Primary Provider: [Mistral ▼] │ │ Mistral API Key: [••••••••••] 👁 │ │ Mistral Model: [mistral-small-latest] │ │ ... │ │ │ │ ▼ Worker Configuration │ │ Auto-spawn Workers: [✓] │ │ Worker Count: [2] │ │ Max Workers: [4] │ │ ... │ │ │ │ ▼ CLAUDE.md Generation │ │ Enabled: [✓] │ │ Observation Interval: [10] │ │ ... │ │ │ │ ▶ Database (collapsed) │ │ ▶ Remote Mode (collapsed) │ │ ▶ Advanced (collapsed) │ └─────────────────────────────────────────────┘ ``` ## Betroffene Dateien - `packages/ui/src/views/SettingsView.tsx` - `packages/ui/src/components/SettingsForm.tsx` (oder ähnlich) ## Priorität Mittel - Wichtig für Konfigurierbarkeit ohne manuelle JSON-Bearbeitung
jack closed this issue 2026-01-24 17:30:13 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
customable/claude-mem#185
No description provided.