Zum Inhalt springen

Claude Code UI

Umfassende Claude Code UI-Befehle und Arbeitsabläufe für webbasierte Claude Code-Schnittstellen, Browser-Erweiterungen und visuelle Entwicklungsumgebungen.

Überblick

Claude Code UI repräsentiert verschiedene grafische Benutzeroberflächen und webbasierte Tools, die visuellen Zugriff auf Claude Code-Funktionalität bieten. Diese Tools überbrücken die Lücke zwischen Befehlszeilen-Claude Code und benutzerfreundlichen Schnittstellen und bieten Funktionen wie Sitzungsverwaltung, Echtzeitkollaboration, visuelle Code-Bearbeitung und integrierte Entwicklungsumgebungen, die über Webbrowser und Desktop-Anwendungen zugänglich sind.

⚠️ Nutzungshinweis: Claude Code UI-Tools erfordern eine korrekte API-Konfiguration und können unterschiedliche Funktionssätze haben. Überprüfen Sie immer die Kompatibilität mit Ihrer Claude Code-Version und Nutzungsanforderungen.

Webbasierte Schnittstellen

ClaudeCode Web-UI

# Installation via Docker
docker pull claudecode/web-ui:latest
docker run -p 3000:3000 -e ANTHROPIC_API_KEY=your-key claudecode/web-ui

# Installation via npm
npm install -g claudecode-web-ui
claudecode-web-ui --port 3000 --api-key your-key

# Build from source
git clone https://github.com/claudecode/web-ui.git
cd web-ui
npm install
npm run build
npm start

Browser-Zugriff

# Access web interface
http://localhost:3000

# Configuration endpoints
http://localhost:3000/config
http://localhost:3000/settings
http://localhost:3000/api-status

# Session management
http://localhost:3000/sessions
http://localhost:3000/history

Schnittstellenkomponenten

Hauptdashboard

KomponenteBeschreibung
Session BrowserAktive Sessions anzeigen und verwalten
Code EditorSyntax-hervorgehobene Code-Bearbeitung
Chat InterfaceInteraktive Konversation mit Claude
File ExplorerProjektdateinavigation
TerminalIntegrierter Terminal-Zugriff
Settings PanelKonfiguration und Einstellungen
Tool PanelVerfügbare Tools und Erweiterungen

Sitzungsverwaltung

AktionBeschreibung
New SessionNeue Claude Code-Sitzung erstellen
Load SessionVorhandene Sitzungsdatei öffnen
Save SessionAktuelle Sitzung speichern
Export SessionExport in verschiedene Formate
Share SessionGenerierbarer teilbarer Sitzungslink
Clone SessionAktuelle Sitzung duplizieren
Archive SessionAbgeschlossene Sitzungen archivieren

Browser-Erweiterungen

Chrome-Erweiterung Einrichtung

# Install from Chrome Web Store
1. Open Chrome Web Store
2. Search "Claude Code UI"
3. Click "Add to Chrome"
4. Configure API key in extension settings

# Manual installation
git clone https://github.com/claude-ui/chrome-extension.git
cd chrome-extension
npm install
npm run build
# Load unpacked extension in Chrome developer mode

Erweiterungsfunktionen

FeatureBeschreibung
Side PanelClaude Code im Browser-Sidebar
Context MenuRight-Click-Integration
Page AnalysisAktuelle Webseite analysieren
Code InjectionFügen Sie von Claude generiertes Code ein
Session SyncMit Desktop Claude Code synchronisieren
HotkeysTastenkombinationen
Auto-SaveAutomatisches Speichern der Sitzung

Erweiterungsbefehle

// Extension API usage
chrome.runtime.sendMessage({
  action: "newSession",
  config: {
    model: "claude-3-sonnet-20240229",
    temperature: 0.7
  }
});

// Context menu integration
chrome.contextMenus.create({
  id: "analyzeCode",
  title: "Analyze with Claude Code",
  contexts: ["selection"]
});

// Hotkey configuration
chrome.commands.onCommand.addListener((command) => {
  if (command === "open-claude-ui") {
    chrome.tabs.create({url: "chrome-extension://extension-id/popup.html"});
  }
});

Konfiguration

Web UI Konfiguration

{
  "server": {
    "port": 3000,
    "host": "localhost",
    "ssl": false,
    "cors": true
  },
  "claude": {
    "apiKey": "your-anthropic-api-key",
    "model": "claude-3-sonnet-20240229",
    "maxTokens": 4096,
    "temperature": 0.7
  },
  "ui": {
    "theme": "dark",
    "autoSave": true,
    "sessionTimeout": 3600,
    "maxSessions": 10,
    "enableCollaboration": false
  },
  "features": {
    "codeHighlighting": true,
    "autoComplete": true,
    "livePreview": true,
    "gitIntegration": true,
    "terminalAccess": true
  }
}

Sicherheitseinstellungen

{
  "security": {
    "authentication": {
      "enabled": false,
      "provider": "oauth",
      "allowedDomains": ["your-domain.com"]
    },
    "encryption": {
      "sessions": true,
      "apiKeys": true,
      "algorithm": "AES-256-GCM"
    },
    "rateLimit": {
      "enabled": true,
      "requests": 100,
      "window": 3600
    }
  }
}

Erweiterte Funktionen

Echtzeitkollaboration

// Enable collaboration mode
const collaboration = {
  enabled: true,
  maxUsers: 5,
  permissions: {
    read: ["viewer", "editor", "admin"],
    write: ["editor", "admin"],
    admin: ["admin"]
  },
  realTimeSync: true,
  conflictResolution: "last-write-wins"
};

// Share session
const shareConfig = {
  sessionId: "session-123",
  permissions: "editor",
  expiration: "24h",
  password: "optional-password"
};

Plugin-System

// Plugin configuration
const plugins = {
  "git-integration": {
    enabled: true,
    autoCommit: false,
    branchProtection: true
  },
  "code-formatter": {
    enabled: true,
    languages: ["javascript", "python", "typescript"],
    formatOnSave: true
  },
  "ai-suggestions": {
    enabled: true,
    suggestionDelay: 500,
    maxSuggestions: 3
  }
};

// Custom plugin development
class CustomPlugin {
  constructor(config) {
    this.config = config;
  }
  
  onSessionStart(session) {
    // Plugin initialization
  }
  
  onCodeChange(code, language) {
    // Handle code changes
  }
  
  onSessionEnd(session) {
    // Cleanup
  }
}

API-Integration

// REST API endpoints
const apiEndpoints = {
  sessions: "/api/sessions",
  chat: "/api/chat",
  files: "/api/files",
  tools: "/api/tools",
  config: "/api/config"
};

// WebSocket connection
const ws = new WebSocket("ws://localhost:3000/ws");
ws.onmessage = (event) => {
  const data = JSON.parse(event.data);
  handleRealtimeUpdate(data);
};

// API usage examples
fetch("/api/sessions", {
  method: "POST",
  headers: {"Content-Type": "application/json"},
  body: JSON.stringify({
    name: "New Session",
    model: "claude-3-sonnet-20240229"
  })
});

Tastenkombinationen

Globale Tastenkombinationen

ShortcutAktion
Ctrl+NNeue Sitzung
Ctrl+OSitzung öffnen
Ctrl+SSitzung speichern
Ctrl+Shift+SSpeichern unter
Ctrl+TNeuer Tab
Ctrl+WTab schließen
Ctrl+RAktualisieren
F11Vollbild
Ctrl+,Einstellungen

Editor-Tastenkombinationen

ShortcutAktion
Ctrl+FFinden
Ctrl+HErsetzen
Ctrl+GGehe zur Zeile
Ctrl+DZeile duplizieren
Ctrl+/Kommentar umschalten
Ctrl+SpaceAuto-Complete
Alt+Up/DownZeile verschieben
Ctrl+Shift+KZeile löschen

Chat-Tastenkombinationen

ShortcutAktion
EnterNachricht senden
Shift+EnterNeue Zeile
Ctrl+EnterMit Kontext senden
Ctrl+Up/DownNachrichtenverlauf
Ctrl+LChat löschen
Ctrl+ELetzte Nachricht bearbeiten

Bereitstellungsoptionen

Docker-Bereitstellung

# Dockerfile for Claude Code UI
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["npm", "start"]
# docker-compose.yml
version: '3.8'
services:
  claude-ui:
    build: .
    ports:
      - "3000:3000"
    environment:
      - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
      - NODE_ENV=production
    volumes:
      - ./sessions:/app/sessions
      - ./config:/app/config

Cloud-Bereitstellung

# Kubernetes deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: claude-ui
spec:
  replicas: 3
  selector:
    matchLabels:
      app: claude-ui
  template:
    metadata:
      labels:
        app: claude-ui
    spec:
      containers:
      - name: claude-ui
        image: claudecode/web-ui:latest
        ports:
        - containerPort: 3000
        env:
        - name: ANTHROPIC_API_KEY
          valueFrom:
            secretKeyRef:
              name: claude-secrets
              key: api-key

Serverless-Bereitstellung

// Vercel deployment
module.exports = {
  async rewrites() {
    return [
      {
        source: '/api/:path*',
        destination: '/api/:path*'
      }
    ];
  },
  env: {
    ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY
  }
};

// Netlify functions
exports.handler = async (event, context) => {
  const { httpMethod, body } = event;
  
  if (httpMethod === 'POST') {
    // Handle Claude Code API requests
    return {
      statusCode: 200,
      body: JSON.stringify({ success: true })
    };
  }
};

Fehlerbehebung

Häufige Probleme

Would you like me to continue with the remaining numbered sections?```bash

Connection issues

  • Verify API key configuration
  • Check network connectivity
  • Validate CORS settings
  • Review firewall rules

Performance issues

  • Monitor memory usage
  • Check session limits
  • Optimize code editor settings
  • Clear browser cache

Authentication problems

  • Verify OAuth configuration
  • Check token expiration
  • Review permission settings
  • Clear authentication cache
### Debug-Modus
```javascript
// Enable debug logging
localStorage.setItem('claude-ui-debug', 'true');

// Console debugging
console.log('Claude UI Debug Mode Enabled');
window.claudeUI.enableDebug();

// Network debugging
fetch('/api/debug', {
  method: 'POST',
  body: JSON.stringify({ level: 'verbose' })
});

Leistungsoptimierung

// Optimize UI performance
const optimizations = {
  virtualScrolling: true,
  lazyLoading: true,
  codeMinification: true,
  sessionCompression: true,
  cacheStrategy: 'aggressive'
};

// Memory management
const memoryConfig = {
  maxSessions: 5,
  sessionTimeout: 1800,
  garbageCollection: true,
  memoryThreshold: '512MB'
};

Integrationsbeispiele

VS Code Erweiterung

{
  "contributes": {
    "commands": [
      {
        "command": "claude-ui.openWebInterface",
        "title": "Open Claude Code UI"
      }
    ],
    "keybindings": [
      {
        "command": "claude-ui.openWebInterface",
        "key": "ctrl+shift+c"
      }
    ]
  }
}

Slack-Integration

// Slack bot integration
const { App } = require('@slack/bolt');

const app = new App({
  token: process.env.SLACK_BOT_TOKEN,
  signingSecret: process.env.SLACK_SIGNING_SECRET
});

app.command('/claude-ui', async ({ command, ack, respond }) => {
  await ack();
  
  const sessionUrl = await createClaudeUISession({
    user: command.user_id,
    channel: command.channel_id
  });
  
  await respond(`Claude Code UI session: ${sessionUrl}`);
});

GitHub-Integration

# GitHub Actions workflow
name: Deploy Claude UI
on:
  push:
    branches: [main]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup Node.js
        uses: actions/setup-node@v2
        with:
          node-version: '18'
      - name: Install dependencies
        run: npm ci
      - name: Build
        run: npm run build
      - name: Deploy
        run: npm run deploy
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}

Ressourcen