Skip to content

Permission mode setting not applied to Claude CLI; provider icons invisible on dark themes #73

@mattleaverton

Description

@mattleaverton

Bug Report

1. Permission mode setting ignored when launching Claude

Steps to reproduce:

  1. Go to Settings → Claude permission mode → set to "Bypass permissions"
  2. Launch Claude from the new tab pane picker
  3. Claude starts without --permission-mode bypassPermissions

Root cause: The UI launches Claude via the terminal.create WebSocket path (PTY-based), which goes through terminal-registry.tsbuildSpawnSpec(). This code path has no awareness of permissionMode — it only knows about mode, shell, cwd, and resumeSessionId. The config setting is correctly saved to ~/.freshell/config.json and is read for the separate codingcli.create path, but that path is not used by the pane picker UI.

Expected: The --permission-mode flag should be passed to the Claude CLI process based on the saved config setting.

2. Provider icons invisible on dark themes

Steps to reproduce:

  1. Use a dark theme
  2. Open the new tab pane picker
  3. Claude and Codex buttons show no visible icon

Root cause: Provider icons are rendered as <img> tags referencing SVG files. The Claude SVG has hardcoded fill: #010101 (black), and the Codex SVG uses fill="currentColor" which doesn't inherit through <img> tags. Both are invisible on dark backgrounds.

Expected: Icons should adapt to the current theme. The existing ProviderIcon component (used in Sidebar and PaneIcon) already handles this correctly with inline SVGs using currentColor, but PanePicker wasn't using it.

Environment

  • Freshell v0.4.1
  • macOS (also affects other platforms)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions