Skip to content

fb0sh/chml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chml

一个用于 Chmlfrp 的命令行工具,让你可以轻松管理隧道、域名和节点。

功能特性

  • 🚀 快速创建和管理隧道(TCP/UDP)
  • 📋 列出隧道、域名和节点信息
  • 🔗 一键连接隧道
  • ⚙️ 获取隧道配置文件
  • 🎯 快捷命令:快速创建常见类型的隧道
  • 📊 节点延迟测试与智能选择
  • 🧹 快速隧道:自动清理临时隧道

安装

使用 Cargo 安装

确保你已经安装了 Rust,然后运行:

cargo install chml

从源码安装

git clone https://github.com/fb0sh/chml.git
cd chml
cargo install --path .

配置

在使用之前,需要设置环境变量:

export CHML_API_BASE_URL="http://cf-v2.uapis.cn"
export CHML_API_TOKEN="your_token_here"

你可以将这些环境变量添加到你的 shell 配置文件中(如 ~/.zshrc~/.bashrc)。

使用方法

查看帮助

chml --help

列出资源

列出所有隧道和域名(默认):

chml ls

仅列出隧道:

chml ls -t

仅列出域名:

chml ls -d

仅列出节点(需要先运行 chml ping):

chml ls -n

列出所有配置文件:

chml ls -c

快速创建隧道

创建 TCP 隧道(自动连接,Ctrl+C 后自动删除):

chml tcp 4444

创建 UDP 隧道(自动连接,Ctrl+C 后自动删除):

chml udp 4444

节点延迟测试

测试所有节点延迟并缓存(需要 sudo 权限):

chml ping

此命令会测量所有节点的 RTT(往返时间)并缓存结果,用于智能选择延迟最低的节点。

添加隧道

添加一个 TCP 隧道:

chml add tunnel --type tcp --lport 4444 --name my-tunnel

指定节点和远程端口:

chml add tunnel --type tcp --lport 4444 --node "节点名称" --rport 88888

指定本地主机:

chml add tunnel --type tcp --lport 4444 --lhost 127.0.0.1

仅选择国内节点:

chml add tunnel --type tcp --lport 4444 --china

连接隧道

通过隧道名称连接:

chml connect -t my-tunnel

通过隧道 ID 连接:

chml connect -i 12345

获取隧道配置

获取指定隧道的配置:

chml get -t my-tunnel

删除隧道

通过隧道名称删除:

chml rm -t my-tunnel

通过隧道 ID 删除:

chml rm --tunnel-id 12345

静默模式

所有命令都支持 -q/--quiet 选项,用于减少输出信息:

chml -q ls
chml -q connect -t my-tunnel

命令速查表

命令 说明
chml ls 列出隧道和域名
chml ls -t 仅列出隧道
chml ls -d 仅列出域名
chml ls -n 仅列出节点
chml ls -c 列出配置文件
chml tcp <port> 快速创建 TCP 隧道
chml udp <port> 快速创建 UDP 隧道
chml add tunnel 添加隧道
chml connect -t <name> 连接隧道
chml get -t <name> 获取隧道配置
chml rm -t <name> 删除隧道
chml ping 测试节点延迟

工作目录

chml 会在你的系统目录下创建工作目录:

  • macOS/Linux: ~/.chml/
  • Windows: %USERPROFILE%\.chml\

目录结构:

~/.chml/
├── bin/          # frpc 二进制文件
├── conf/         # frpc 配置文件
└── data/         # 节点缓存数据

开发

# 克隆仓库
git clone https://github.com/fb0sh/chml.git
cd chml

# 运行
cargo run -- --help

# 构建
cargo build --release

许可证

MIT License

相关链接

贡献

欢迎提交 Issue 和 Pull Request!

About

A cli client for Chmlfrp | 一个用于 Chmlfrp 的命令行工具,让你可以轻松管理隧道、域名和节点。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages