Repository navigation
Home
libm edited this page Oct 14, 2026
·
17 revisions
安装与旧版升级请参阅项目 README。本页说明当前版本的常用命令。
Usage:
clashctl COMMAND [OPTIONS]
Commands:
on 启用当前终端代理,自动启动内核
off 关闭当前终端代理,保留内核运行
start 仅启动内核
stop 仅停止内核
status 内核状态
ui 面板地址
sub 订阅管理
node 节点切换
tun TUN 模式
mixin Mixin 配置
secret Web 密钥
log 查看日志
upgrade 升级内核
update 更新 clashctl
version 脚本和内核版本
Global Options:
-h, --help 显示帮助信息
-v, --version 显示版本信息
clashon 等简写仍可使用,以下示例统一采用 clashctl。
| 命令 | 内核 | 当前终端代理 |
|---|---|---|
clashctl on |
未运行时自动启动 | 开启 |
clashctl off |
保持原状 | 关闭 |
clashctl start |
启动 | 保持原状 |
clashctl stop |
停止 | 保持原状 |
# 启用当前终端代理
clashctl on
# 关闭当前终端代理,内核继续运行
clashctl off
# 查看内核状态和日志
clashctl status
clashctl log如需同时关闭当前终端代理并停止内核,依次执行:
clashctl off
clashctl stop代理环境变量只影响当前终端及其后续启动的子进程。其他终端需要各自执行 clashctl on;浏览器等应用需要单独配置代理,或按需使用 TUN。停止内核会影响所有使用此内核的客户端。
# 查看面板地址;首次使用时按需下载面板资源,并尝试启动内核
clashctl ui
# 查看 Web 访问密钥
clashctl secret
# 修改密钥,重新应用配置并重启内核
clashctl secret "<新密钥>"- 内核需要有效配置才能运行。面板地址和端口以
clashctl ui的实际输出为准,端口冲突时可能调整。 - 默认使用 zashboard 作为控制台前端,可用于切换节点、查看日志等。
- 远程访问时检查控制器的绑定地址、系统防火墙和云服务器安全组。可通过 SSH 端口转发访问;直接开放公网时,应设置访问密钥并限制访问来源。
# 查看 Mixin 配置
clashctl mixin
# 编辑 Mixin,保存后重新应用配置并重启内核
clashctl mixin -e
# 查看当前订阅配置
clashctl mixin -c
# 查看内核使用的运行配置
clashctl mixin -r- Mixin 配置会与当前订阅进行深度合并,且具有更高优先级。
- 规则支持前置、后置;节点和策略组支持前置、后置及按名称覆盖;策略组还支持节点注入。详见 Mixin 示例。
- 用户配置位于
$CLASHCTL_HOME/data/:mixin.yaml为 Mixin,config.yaml为当前订阅配置,runtime.yaml为合并后的运行配置。
# 查看脚本和内核版本
clashctl version
# 更新 clashctl 脚本和资源,保留用户配置及内核
clashctl update
# 通过内核 API 升级内核
clashctl upgrade
# 查看详细升级日志
clashctl upgrade -v-
clashctl update使用安装目录.env中的CLASHCTL_UPDATE_BRANCH和GH_PROXY配置。 - 若旧版没有
update命令,请按项目 README 的安装命令升级,安装器会识别旧版安装并执行迁移。 - 内核升级由内核自身完成,支持
--release(稳定版)和--alpha(测试版)。内核需要能够访问升级下载地址,必要时通过 Mixin 调整 GitHub 的代理规则。
clashctl sub [命令] [选项]
Commands:
add [URL] 添加并校验订阅,默认不启用
ls 列出订阅(别名 list)
use [名称] 切换并启用订阅
del [名称] 删除订阅(别名 delete)
update [名称] 更新订阅,省略名称时更新当前订阅
rename [旧名称] [新名称] 重命名订阅
log 查看订阅操作日志
# 添加订阅并立即启用
clashctl sub add --name "主订阅" --use "<订阅链接>"
# 查看订阅名称
clashctl sub ls
# 更新当前订阅
clashctl sub update
# 更新全部订阅
clashctl sub update --all- 订阅操作使用名称,以
clashctl sub ls的输出为准。add --use或use会应用配置,当前终端代理仍需执行clashctl on开启。 - 默认先直接校验订阅,失败时尝试转换;
add和update支持--raw(不转换)与--convert(强制转换),两者互斥,且仅对本次操作生效。 - 支持本地订阅,例如
clashctl sub add --use "file:///home/user/config.yaml"。请替换为实际配置文件的绝对路径;远程订阅链接也建议用引号包裹。 - 更新当前订阅后会重新应用配置。订阅文件和操作日志位于
$CLASHCTL_HOME/data/。 - 当前版本不提供
--auto选项。如需定时更新,可自行通过 cron 或 systemd timer 调用订阅更新命令;非交互任务需使用 Bash,显式设置CLASHCTL_HOME,再加载$CLASHCTL_HOME/scripts/cmd/clashctl.sh。 - 使用
clashctl sub -h或clashctl sub add -h查看完整选项。
# 查看 TUN 状态
clashctl tun
# 开启或关闭 TUN
clashctl tun on
clashctl tun off- TUN 通过虚拟网卡接管流量,具体范围取决于路由规则、系统权限和网络配置;容器流量是否被接管也取决于这些条件。
- 默认 Mixin 不覆盖订阅的 DNS 配置。仅在开启 TUN 且订阅与 Mixin 合并后没有 DNS 配置时,运行配置会补入最小 DNS 配置。
- 使用自定义 DNS 时,应检查节点域名的解析配置,相关选项参阅 Mihomo DNS 文档。
- 工作原理与配置参阅 Mihomo TUN 文档,常见环境问题参阅 Issue #100。
# 清理当前终端的代理环境变量
clashctl off
# 执行安装目录中的卸载脚本
bash "$CLASHCTL_HOME/uninstall.sh"卸载会删除安装目录、订阅和用户配置,请提前备份需要保留的内容。恢复资料 .clashctl-backups/ 会保留,确认无需回退后可手动清理。