ProjectClash / Clash-Client
git clone https://github.com/ProjectClash/Clash-Client.git
Native Clash client for iOS, iPadOS, macOS, and tvOS. Same profiles. Same rules. Clash, the way you remember it.
—
stars, 24h
—
stars, 7 days
+164
stars, 30 days · #1,500
164
★ total
17
forks · 52 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageSwift
LicenseGPL-3.0
Created2026-09-27 (23d ago)
Last push1d ago
Watchers2
OwnerOrganization
Links
README excerpt
# Clash Client for Apple Platforms English · 简体中文 A native, rule-based proxy client for iPhone, iPad, Mac and Apple TV, powered by the Clash kernel. Use the App Store link to install the official app. The instructions below are for building from source. ## About this repository This repository contains the Apple applications, their extensions, shared libraries and resources needed to build them. The Clash kernel and Adapter components are maintained in separate repositories; their source revisions are pinned in `Dependencies.lock.json`. | Directory | Contents | | --- | --- | | `apple/ClashClient` | Platform applications, extensions and XcodeGen project specification | | `apple/ClashClientKit` | Shared configuration and profile models | | `apple/ClashClientUI` | Shared interface components | | `apple/ClashMacClient` | macOS components | | `cli` | Terminal helper bundled with the Mac app, including its embedded usage guide | ## Versions and dependencies Client source is currently published by commit, without a separate release tag. App Store versions are managed separately for each platform; the kernel's `1.19.32` is not the Client app version. Pin a Client revision to reproduce a build, and keep its dependency lock unchanged. The latest accepted product builds corresponding to this source are: | Platform | Version | Build | | --- | --- | --- | | iOS / iPadOS | 1.0.13 | 130 | | macOS | 1.0.15 | 97 | | tvOS | 1.0.16 | 47 | These identify the product builds; availability on the App Store and TestFlight may differ. For a source build, set the app version and build number in Xcode for the platform you are building. | Dependency | Pinned source or tool version | | --- | --- | | Clash Kernel | `31c2931a1`, the source of SDK `v1.19.32-clash.3` | | Clash Adapter | `821b6e40f` | | Swift Certificates / Crypto / ASN.1 | **1.9.0 / 3.15.1 / 1.7.3**, pinned in the XcodeGen project | | gomobile / gobind | `github.com/sagernet/gomobile` **v0.1.13** | `Dependencies.lock.json` is the source of truth for these pins. The bootstrap uses the pinned public source; it does not select the latest release automatically. The iOS and macOS projects wrap the static Core in a shared framework, with the required header-copy build step included in project generation. Available features depend on the pinned Kernel and Adapter revisions; the iOS/tvOS SDK does not include EasyTier. ## Build from source ### Requirements - macOS with Xcode 27.0 or later and the iOS, macOS and tvOS SDKs. - XcodeGen and Git available on your command path. - Go with automatic toolchain selection enabled, or the Go 1.26.9 toolchain selected by the pinned kernel's binding module. - Python 3 with PyYAML. - Deployment targets: iOS/iPadOS 15+, macOS 13+ and tvOS 17+, as declared in `project.yml`. Use the full Xcode installation as your active developer directory. If needed, set `DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer` for a standard installation. ### Prepare the project [code] The first boo