{"id":48722337,"url":"https://github.com/henrymu/claude-libre","last_synced_at":"2026-04-14T23:01:09.607Z","repository":{"id":350279721,"uuid":"1205094658","full_name":"HenryMu/claude-libre","owner":"HenryMu","description":"Free \u0026 open-source desktop GUI for Claude Code CLI | No subscription required | Multi-session, chat history, built-in terminal;免费开源的 Claude Code CLI 桌面客户端 | 无需订阅 ","archived":false,"fork":false,"pushed_at":"2026-04-13T06:48:15.000Z","size":6001,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-13T22:37:27.686Z","etag":null,"topics":["claude","claude-code","claude-code-gui","claude-libre","desktop-app","developer-tools","gui"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HenryMu.png","metadata":{"files":{"readme":"README.en.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-08T16:20:18.000Z","updated_at":"2026-04-13T06:55:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"f511b480-968e-46be-9188-979454bc1191","html_url":"https://github.com/HenryMu/claude-libre","commit_stats":null,"previous_names":["henrymu/claude-code-desktop","henrymu/claude-libre"],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/HenryMu/claude-libre","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenryMu%2Fclaude-libre","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenryMu%2Fclaude-libre/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenryMu%2Fclaude-libre/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenryMu%2Fclaude-libre/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HenryMu","download_url":"https://codeload.github.com/HenryMu/claude-libre/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenryMu%2Fclaude-libre/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31818840,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"ssl_error","status_checked_at":"2026-04-14T18:05:01.765Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["claude","claude-code","claude-code-gui","claude-libre","desktop-app","developer-tools","gui"],"created_at":"2026-04-11T20:00:30.287Z","updated_at":"2026-04-14T23:01:09.586Z","avatar_url":"https://github.com/HenryMu.png","language":"TypeScript","readme":"# Claude Libre\n\n[中文](./README.md) | **[English](./README.en.md)** | [日本語](./README.ja.md) | [한국어](./README.ko.md)\n\n\u003e **Community Open Source Project** — This is a free, open-source desktop GUI for the [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI.\n\u003e It is **NOT** the official [Claude Desktop](https://claude.ai/download) app by Anthropic (which requires a paid subscription).\n\u003e This project is MIT-licensed and is not affiliated with, endorsed by, or connected to Anthropic.\n\n![Electron](https://img.shields.io/badge/Electron-34-black?logo=electron) ![React](https://img.shields.io/badge/React-19-blue?logo=react) ![TypeScript](https://img.shields.io/badge/TypeScript-5.7-blue?logo=typescript) ![License](https://img.shields.io/badge/License-MIT-green)\n\n![Screenshot 1](./images/01.png)\n![Screenshot 2](./images/02.png)\n![Screenshot 3](./images/03.png)\n![Screenshot 4](./images/04.png)\n\n## Features\n\n- **Project \u0026 Session Browser** — Automatically discovers Claude Code projects and sessions from `~/.claude/projects/`\n- **Instant New Sessions** — Pick a workspace, choose a model, type your first prompt, and create a new session directly from the conversation page\n- **Real-time Sync** — Watches `.jsonl` session files for changes, auto-updates as conversations progress\n- **Conversation View** — Formatted message display with collapsible thinking blocks and tool call cards\n- **Code Tab** — Browse project files and inspect Claude Code `Write` / `Edit` changes with a Monaco-powered viewer and diff editor\n- **Terminal Integration** — Full `xterm.js` terminal for direct CLI interaction with Claude Code\n- **Image Upload** — Attach images to messages, with preview thumbnails\n- **@file Mention** — Type `@` to autocomplete project file paths\n- **Model \u0026 Effort Controls** — Switch models, set thinking effort, and use slash-command autocomplete from the input toolbar\n- **Cancel Button** — Interrupt current operation with one click\n- **Smart Permission Handling** — Interactive Allow/Always/Deny controls plus automatic confirmation for Claude Code trusted-workspace prompts\n- **Themes** — Dark mode, polished light mode, and a system-following default with a quick theme switcher\n- **Profiles \u0026 Settings** — Manage Claude config and reusable profiles from the built-in settings panel\n- **Multilingual UI** — English, Simplified Chinese, Traditional Chinese, Japanese, Korean, Hindi, and Portuguese\n- **Cross-platform** — Works on Windows, macOS, and Linux\n\n## Why This Project?\n\nClaude Code is an incredibly powerful CLI tool — but not everyone lives in the terminal.\n\nAs developers, we wanted a more visual way to manage multiple sessions, browse conversation history, and keep an overview of our projects. Switching between terminal tabs and scrolling through long outputs gets old fast.\n\nSo we built Claude Libre — a free, open-source GUI that wraps the Claude Code CLI you already know and love. No subscription needed beyond your Claude Code CLI access. Just install, connect, and go.\n\n**The goal is simple:** make Claude Code more accessible and productive for everyone, while keeping it 100% free and open source.\n\n## How Is This Different from Claude Desktop?\n\n| | Claude Desktop (Official by Anthropic) | Claude Libre (This Project) |\n|---|---|---|\n| **Type** | Official Anthropic product | Third-party community project |\n| **Cost** | Requires Claude Pro / Max subscription | **Free \u0026 Open Source** (MIT License) |\n| **Interface** | Chat-focused GUI | Terminal + Conversation hybrid GUI |\n| **Backend** | Anthropic API directly | Claude Code CLI |\n| **Open Source** | Closed source | **Fully open source** |\n| **Target Users** | General users | Developers using Claude Code CLI |\n\nBoth are great tools — they just serve different needs. If you want a polished chat experience with Claude, use the official Claude Desktop. If you're a developer who lives in Claude Code CLI and wants a visual manager for your sessions, give this a try.\n\n## Getting Started\n\n### Prerequisites\n\n- [Node.js](https://nodejs.org/) \u003e= 18\n- [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) installed and configured\n\n### Install\n\n```bash\ngit clone https://github.com/HenryMu/claude-libre.git\ncd claude-libre\nnpm install\n```\n\n### Development\n\n```bash\nnpm run dev\n```\n\n### Build\n\n```bash\nnpm run build\n```\n\n### macOS: Bypass Gatekeeper\n\nSince this app is not signed with an Apple Developer certificate, macOS will show a security warning. To open it:\n\n1. Right-click the app → select **Open**\n2. Click **Open** again in the dialog\n\nOr run this in Terminal:\n\n```bash\nxattr -cr /Applications/Claude\\ Libre.app\n```\n\n## Architecture\n\n```\nsrc/\n├── shared/types.ts              # Shared TypeScript types (IPC, JSONL, Session)\n├── main/\n│   ├── index.ts                 # Electron main process entry (window, tray, menu)\n│   ├── ipc-handlers.ts          # IPC channel registration (session, config, file, image)\n│   ├── session-watcher.ts       # File watcher + incremental JSONL parser\n│   ├── claude-manager.ts        # node-pty process lifecycle + message submit manager\n│   ├── config-manager.ts        # Claude config read/write + profile persistence\n│   └── path-utils.ts            # Cross-platform path sanitize/unsanitize\n├── preload/\n│   └── index.ts                 # contextBridge API (secure bridge)\n└── renderer/\n    ├── index.html\n    └── src/\n        ├── App.tsx              # Root layout (tab state, code view context)\n        ├── components/\n        │   ├── Sidebar.tsx      # Project tree + session list + context menu\n        │   ├── MainContent.tsx  # Conversation + Terminal + Code tabs + image upload\n        │   ├── ThemeSwitch.tsx  # Light/dark/system theme switcher\n        │   ├── LangSwitch.tsx   # Language switcher\n        │   └── SettingsModal.tsx # Config editor + profile manager (unified panel)\n        ├── hooks/\n        │   ├── useSessionWatcher.ts  # Session data IPC listener\n        │   └── useClaudeManager.ts   # PTY process management\n        ├── i18n/\n        │   ├── index.ts          # i18next initialization\n        │   └── locales/          # 7 language translation files\n        └── styles/\n            └── global.css       # Dark/light themes and app styling\n```\n\n## Tech Stack\n\n| Component | Technology |\n|-----------|-----------|\n| Desktop Framework | [Electron](https://www.electronjs.org/) 34 |\n| Build Tool | [electron-vite](https://electron-vite.org/) |\n| Frontend | [React](https://react.dev/) 19 + [TypeScript](https://www.typescriptlang.org/) |\n| Terminal | [xterm.js](https://xtermjs.org/) + [node-pty](https://github.com/microsoft/node-pty) |\n| Code Viewer | [Monaco Editor](https://microsoft.github.io/monaco-editor/) |\n| File Watching | [chokidar](https://github.com/paulmillr/chokidar) |\n| Styling | CSS variables with dark, light, and system-aware themes |\n\n## License\n\n[MIT](./LICENSE)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenrymu%2Fclaude-libre","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenrymu%2Fclaude-libre","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenrymu%2Fclaude-libre/lists"}