Commit Graph

6 Commits

  • feat(mcp): import Codex MCP from ~/.codex/config.toml
    - Support both TOML schemas: [mcp.servers.<id>] and [mcp_servers.<id>]
    - Non-destructive merge of imported servers (enabled=true only)
    - Preserve existing TOML schema when syncing (prefer mcp_servers)
    - Remove both mcp and mcp_servers when no enabled items
    
    feat(ui): auto-import Codex MCP on panel init (app=codex)
    
    chore(tauri): add import_mcp_from_codex command and register
    
    chore(types): expose window.api.importMcpFromCodex and typings
    
    fix(ui): remove unused variable for typecheck
  • refactor(mcp): improve UI consistency and i18n
    - Add MCP-specific green button style (buttonStyles.mcp)
    - Unify MCP panel and form buttons with emerald theme
    - Adjust MCP entry button width to match AppSwitcher (px-3)
    - Reduce JSON editor height from h-64 to h-48
    - Update translations: "Add/Edit Server" → "Add/Edit MCP"
    - Change form label to "MCP Title (Unique)" for clarity
    - Move config wizard button to right side of JSON label
    - Fix McpListItem enabled state check (explicit true check)
  • fix: eliminate layout shift when switching between Claude and Codex
    - Wrap VS Code sync button in fixed-width container to maintain stable layout
    - Only render the container in Codex mode to avoid unnecessary space in Claude mode
    - Change card transition from 'all' to specific properties (border-color, box-shadow) to prevent layout animations
    - These changes prevent the horizontal position jumping of provider cards during app switching
  • fix: prevent layout shift when switching providers
    - Keep 'Current' badge always rendered with invisible class when not active
    - Keep 'Apply to VS Code' button always rendered with invisible class when not active
    - Use consistent border width (1px) for both selected and unselected cards
    - Remove ring utility that was causing extra space outside elements
    
    This ensures all provider cards maintain the same height regardless of selection state
  • feat(ui): implement dark mode with system preference support
    - Add useDarkMode hook for managing theme state and persistence
    - Integrate dark mode toggle button in app header
    - Update all components with dark variant styles using Tailwind v4
    - Create centralized style utilities for consistent theming
    - Support system color scheme preference as fallback
    - Store user preference in localStorage for persistence