NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #3204 by repository stars
Last release 5 days ago
02 Oct 2026
Release timing varies
gaps range from 2 weeks to 10 months
Nearly every release is documented
notes for 4 of 4 stable releases
Nothing withdrawn
no release was ever pulled
1 years old
9 releases · first in 2025
One column per month.
Nothing published for this version
Nothing published for this version
v0.3.0 是一次大版本重构, 引入了 Simplex 单工信道传输框架、SR-ARQ 可靠传输协议、yamux 多路复用等核心能力, 同时对协议栈、CLI 接口、编译体系进行了全面现代化改造。
v0.3.0 是一次大版本重构, 引入了 Simplex 单工信道传输框架、SR-ARQ 可靠传输协议、yamux 多路复用等核心能力, 同时对协议栈、CLI 接口、编译体系进行了全面现代化改造。
Simplex 单工信道传输框架
新增 x/simplex 包, 实现基于轮询的单工信道抽象层, 支持在各种云 API / 协议上建立全双工隧道:
simplex+dns://), 通过 DNS TXT/CNAME 记录传输数据, 支持自定义 DNS 服务器simplex+oss://), 通过阿里云 OSS 对象存储传输数据, HMAC-SHA1 签名, 支持 file/mirror 模式simplex+http://), 通过 HTTP 轮询传输数据, 自定义 UA/Host/Content-TypeSimplex 信道用法
# DNS 信道
rem -s "simplex+dns://0.0.0.0:5353/tunnel.example.com"
rem -c "simplex+dns://8.8.8.8:53/tunnel.example.com" -l socks5://127.0.0.1:1080
# OSS 信道
rem -s "simplex+oss:///rem?endpoint=oss-cn-hangzhou.aliyuncs.com&bucket=mybucket&ak=...&sk=..."
rem -c "simplex+oss:///rem?endpoint=...&bucket=...&ak=...&sk=..." -l socks5://127.0.0.1:1080
# HTTP 信道
rem -s "simplex+http://0.0.0.0:8080/tunnel?interval=100&max=131072"
rem -c "simplex+http://server:8080/tunnel?interval=100" -l socks5://127.0.0.1:1080Simplex 信道 URL 通用参数:
| 参数 | 说明 | 默认值 |
|---|---|---|
interval |
轮询间隔 (ms) | 3000 |
max |
最大包体大小 | 信道默认 |
wrapper |
数据包装器 (raw/snappy 等) | - |
proxy |
出站代理 URL | - |
Relay 多跳路由
-c -s), 任意节点同时监听下游和连接上游, 自动成为中继&via=agentID 的上游 URL-d 参数跨多跳路由到指定 Agent# Console
rem -s tcp://0.0.0.0:34996
# Relay: 连上游 + 监听下游
rem -c tcp://console:34996 -s tcp://0.0.0.0:35000 -a relay-a
# Leaf: 连 Relay, 流量从 Console 出去
rem -c tcp://relay-a:35000 -l socks5://127.0.0.1:1080
# 跨多跳路由到指定节点
rem -c tcp://gateway:34996 -d "backend" -l socks5://127.0.0.1:1080Agent 拓扑发现
/api/topology 端点, 为可视化管理和智能路由打基础多连接管理 (ConnHub)
fallback — 主连接优先, 故障切换到备用连接 (默认)random — 随机选择连接round-robin / rr — 轮询选择--lb 参数或 URL ?lb= 指定算法# 多连接 fallback 模式
rem -c tcp://primary:34996 -c tcp://backup:34996 --lb fallback
# round-robin 轮询
rem -c tcp://srv1:34996 -c tcp://srv2:34996 -c ws://srv3:8080/tunnel --lb round-robin上下行分离信道 (Duplex)
up-/down- URL 前缀语法, 将上行和下行流量拆分到不同信道"up:pair-0" / "down:pair-0") 完成方向配对mergeHalfConn 合并两个半双工连接为全双工Multi-Serve 双向 Serve
-l/-r 支持重复指定, 单连接上同时开启多个 serve# 本端同时开 SOCKS5 + 端口转发
rem -c tcp://server:34996 -l socks5://127.0.0.1:1080 -l forward://127.0.0.1:3306?dest=db:3306
# 两端同时开 SOCKS5, 互为出口
rem -c tcp://server:34996 -l socks5://127.0.0.1:1080 -r socks5://0.0.0.0:2080新增传输层
h2:// / h2s://), 独立 HTTP/2 tunnel, h2c 明文和 TLS 双模式streamhttp:// / streamhttps://), SSE 下行 + HTTP POST 上行, 反向代理重放缓冲, H1 兼容dns://), base64 编码嵌入域名, KCP 可靠传输memory://), 进程内 net.Pipe, 用于 C 库集成100.64.x.y)代理链级联
-x 出站代理链, 支持 SOCKS5/HTTP/SS 混合级联, 按顺序串联-f Console 连接代理链, 为 tunnel 连接指定代理本地 → -f 代理链 → Console → Tunnel → -x 代理链 → 目标rem -c tcp://server:34996 -x socks5://proxy1:1080 -x http://proxy2:8080
rem -c tcp://server:34996 -f socks5://bastion:1080
rem -c tcp://server:34996 -x ss://aes-256-gcm:password@proxy:8388CLI 接口变更
-l (本端 serve) / -r (对端 serve) 替代旧的 -m proxy / -m reverse--list 参数, 列出所有已注册的 tunnel/serve/wrapper 组件--retry / --retry-interval / --retry-max-interval 重连参数--lb 负载均衡算法选择-m/--mode 兼容旧版参数 (legacy, ignored)URL Query 通用参数:
| 参数 | 说明 | 示例 |
|---|---|---|
tls |
启用 TLS | tcp://host:port?tls |
tlsintls |
嵌套 TLS | tcp://host:port?tls&tlsintls |
wrapper |
指定 wrapper | tcp://host:port?wrapper=snappy |
retry |
最大重试次数 (0=无限) | tcp://host:port?retry=5 |
retry-interval |
重试间隔 (秒) | tcp://host:port?retry-interval=10 |
retry-max-interval |
最大退避间隔 (秒) | tcp://host:port?retry-max-interval=300 |
lb |
负载均衡算法 | tcp://host:port?lb=round-robin |
其他新功能
x/cryptor), 两层模型 (Block+Stream), 支持: aes, sm4, twofish, tripledes, cast5, blowfish, tea, xtea, xorx/encoders): base32, base58, base64, hex, gzip, imagesSafeGoWithRestart), goroutine panic 后自动重启-buildmode c-shared/c-archive), 支持 Python/C/Rust 等语言调用-s/-c/-l/-r/-q 可编译到二进制, 免配置部署protocol/message/wire.go), 移除 protobuf/proto 依赖, 降低体积x/yamux, 深度集成到 agent 层x/utils 抽取 x/xtls 包, 统一管理 TLS 证书配置"local"/"remote"/"" 替代旧的 "proxy"/"reverse", 语义更清晰sync.Cond 替代 1ms 自旋等待sync.Pool 复用 bufio.Reader| 变更 | 旧用法 | 新用法 |
|---|---|---|
| Serve 参数 | -m proxy / -m reverse |
-l (本端) / -r (对端) |
| 消息协议 | protobuf | 手写 wire protocol (不兼容旧版本) |
| 依赖 | protobuf, go-flags, yaml | 标准库 flag, 零额外依赖 |
| yamux | hashicorp/yamux (间接) | x/yamux (内置, API 微调) |
Full Changelog: https://github.com/chainreactors/rem-community/commits/v0.3.0
[improve] 初始化时记录更多信息, 优化name生成, 以备后用
Full Changelog: v0.2.3...v0.2.4
[fix] 部分场景下使用因为stdin 导致的卡死, 如webshell、C2反射加载等
Full Changelog: v0.2.2...v0.2.3
rem作为内部工具已经进行了较为长时间的更新与维护, 所以版本号直接从v0.2.2 开始。
rem作为内部工具已经进行了较为长时间的更新与维护, 所以版本号直接从v0.2.2 开始。
rem-community 在功能上与rem完全一致, 只有一些关于OPSEC的特性rem会更加先进一些。
rem介绍请见: https://chainreactors.github.io/wiki/blog/2025/04/13/rem-introduce/
quickstart: https://chainreactors.github.io/wiki/rem/usage/
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →