信号cli
安装
单行程序(macOS/Linux)
curl -sSL https://raw.githubusercontent.com/foxl-ai/signal-cli/main/install.sh | bash私人回购?用途: GITHUB_TOKEN=ghp_xxx curl -sSL ... | bashmacOS(DMG)
下载 .dmg 从 发布,打开它,然后跑 install.sh 里面。
Linux(Debian/Ubuntu)
# Download .deb from releases
sudo dpkg -i signal-cli_*.debLinux(Fedora/RHEL)
# Download .rpm from releases
sudo rpm -i signal-cli-*.rpm视窗
下载 .zip 从 发布、提取并运行 install.ps1 在PowerShell中。
来源
# Prerequisites: rust, cmake, protobuf
cargo install --git https://github.com/foxl-ai/signal-cli.git登录(连接到您的Signal帐户)
有 两种方式 进行身份验证:
选项1:链接作为辅助设备(推荐)
这将CLI作为辅助设备链接到现有的Signal移动应用程序,就像Signal Desktop一样。
signal-cli link-device -n "my-cli"这将:
- 显示a 二维码 在您的终端
- 打开 手机信号 >设置>链接设备>链接新设备
- 扫描二维码 用你的手机
- 完成!您的CLI现在已链接
选项2:注册新帐户
直接注册新电话号码(需要验证码和短信/语音验证):
# 1. Get a captcha token from: https://signalcaptchas.org/registration/generate.html
# 2. Register
signal-cli register \
--phone-number +14154380765 \
--captcha "signalcaptcha://signal-recaptcha-v2.xxxxx"
# 3. Enter the SMS verification code when prompted用法
发送消息
# By phone number (auto-resolves UUID via CDSI)
signal-cli send -n +14154380765 -m "Hello from Rust!"
# By UUID
signal-cli send -u xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -m "Hello!"
# With attachment
signal-cli send -n +14154380765 -m "Check this out" --attach photo.jpg接收消息
# Stream messages (stay connected)
signal-cli receive
# Receive and exit when queue is empty
signal-cli receive -q列出联系人和组
signal-cli list-contacts
signal-cli list-groups
# JSON output
signal-cli -o json list-contacts将电话号码解析为UUID
signal-cli resolve -n +14154380765更多命令
signal-cli whoami # Show account info
signal-cli list-devices # List linked devices
signal-cli sync-contacts # Sync contacts from phone
signal-cli stats # Protocol statistics
signal-cli --help # Full helpMCP服务器(用于AI集成)
这 signal-mcp 二进制文件通过stdin/stdout提供MCP(模型上下文协议)服务器。
在克劳德桌面/克劳德代码中配置
添加到MCP配置中:
{
"mcpServers": {
"signal": {
"command": "signal-mcp",
"env": {
"SIGNAL_CLI_DB": "/path/to/signal.db3"
}
}
}
}可用的MCP工具
| 工具 | 说明 |
|---|---|
send_message | 通过UUID发送消息 |
send_message_by_phone | 通过电话号码发送信息 |
list_contacts | 列出所有联系人 |
list_groups | 列出所有组 |
receive_messages | 接收待处理的邮件(包括发件人姓名、类型、附件) |
list_messages | 查询联系人或组的存储消息历史记录 |
whoami | 获取帐户信息 |
resolve_phone | 将电话解析为UUID |
link_device | 链接作为辅助设备(返回二维码+配置URL) |
从源代码构建
# Prerequisites
brew install protobuf cmake # macOS
# or
sudo apt install protobuf-compiler cmake libssl-dev # Linux
# Build
cargo build --release
# Binaries at:
# target/release/signal-cli
# target/release/signal-mcp与跨平台支持
| 平台 | 架构 | 状态 |
|---|---|---|
| macOS | aarch64(苹果硅) | 支持(DMG+tar.gz) |
| macOS | x86_64(英特尔) | 支持(DMG+tar.gz) |
| Linux | x86_64 | 支持(.deb+.rpm+tar.gz) |
| Windows | x86_64 | 从源代码构建(sqlcipher问题) |
