Add cross-platform packaging, icons, and Claude Code config discovery
- Auto-discovers Claude Code (~/.claude/settings.json) alongside Claude Desktop - Generated icons/app.icns (macOS) and icons/app.ico (Windows) from rounded PNGs - bcc.spec: PyInstaller spec for all platforms (.app on macOS, onefile on Windows/Linux) - .github/workflows/release.yml: builds and publishes GitHub Release on version tags - scripts/build_icons.py: regenerates icon files from source PNGs - requirements-dev.txt: adds pyinstaller and pillow for building - CLAUDE.md: initial repo guidance for Claude Code Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+11
-4
@@ -78,11 +78,12 @@ def app_support_base() -> Path:
|
||||
|
||||
def discover_profiles() -> list[Profile]:
|
||||
"""
|
||||
Find every `Claude*` data directory in the platform's app-support base.
|
||||
Find every `Claude*` data directory in the platform's app-support base
|
||||
(Claude Desktop installs), then also check for a Claude Code global config.
|
||||
|
||||
This catches the standard `Claude` folder plus any sibling like
|
||||
`Claude-Work`, `Claude-Personal`, etc. A directory is listed even if the
|
||||
config file doesn't exist yet (it will be created on first save).
|
||||
Claude Desktop: scans the platform app-support folder for any `Claude*`
|
||||
directory (catches `Claude`, `Claude-Work`, etc.).
|
||||
Claude Code: always at ~/.claude/settings.json on every platform.
|
||||
"""
|
||||
base = app_support_base()
|
||||
out: list[Profile] = []
|
||||
@@ -93,6 +94,12 @@ def discover_profiles() -> list[Profile]:
|
||||
seen.add(d.name)
|
||||
cfg = d / CONFIG_FILENAME
|
||||
out.append(Profile(label=d.name, path=cfg, config_exists=cfg.is_file()))
|
||||
|
||||
# Claude Code global settings (~/.claude/settings.json) — same mcpServers format,
|
||||
# cross-platform (the ~/.claude/ directory is always in the same place).
|
||||
cc_cfg = Path.home() / ".claude" / "settings.json"
|
||||
out.append(Profile(label="Claude Code", path=cc_cfg, config_exists=cc_cfg.is_file()))
|
||||
|
||||
return out
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user