克劳德临场感
在现代Linux上运行Claude代码,同时通过TCP在传统Unix系统(NeXTSTEP、HP-UX、IRIX、Solaris、AIX)上运行。
⚠️ 安全警告: 此工具专为无法支持现代安全的老式系统而设计。有 无加密 -所有流量(包括终端I/O和文件内容)均以纯文本形式通过TCP发送。请勿在不受信任的网络上使用。仅在隔离/专用网络上运行。 使用风险自负。
🤖 AI生成的代码: 这个代码库主要是由Claude(Anthropic的AI)编写的,还没有经过人类的彻底审查。它可能包含错误、安全漏洞或其他问题。在任何重要环境中使用之前,请自己检查代码。
+-----------------------+ TCP +-----------------------+
| Legacy Unix Box || Linux Host |
| (NeXTSTEP, etc) | Port 5000 | |
| | | +---------------+ |
| +---------------+ | | | Claude Code | |
| | Client | | Terminal I/O | | (claude) | |
| | (C binary) |
Options:
-s Simple mode: Convert Unicode to ASCII for old terminals
(recommended for NeXTSTEP, older HP-UX, etc.)
-r Resume previous conversation (continues where you left off)
-l Enable debug logging to /tmp/telepresence.log所有选项示例:
./claude-telepresence -s -r -l 192.168.1.100 5000运作原理
- 终端I/O:客户端通过TCP连接,并将您的击键转发给在Linux上运行的Claude Code。Claude的终端输出流回到您的传统终端。
- 文件操作:当Claude需要读/写文件时,它使用MCP工具向客户端发送请求。客户端在传统系统上本地执行实际的文件操作。
- shell命令:当Claude运行shell命令时,中继通过MCP将它们发送到客户端。客户端在本地执行命令并流式返回输出。
- Web访问:由于传统系统无法执行现代HTTPS
download_url该工具获取Linux主机上的文件并将其传输到旧系统。
- 主机↔ 远程传输:文件可以直接在Linux主机和旧系统之间传输,使用
upload_to_host和download_from_host工具。
特性
- TCP上的完整克劳德代码TUI
- 本机文件操作(读、写、编辑、搜索、查找)
- 远程系统上的Shell命令执行
- 旧终端的Unicode到ASCII转换(
-s旗帜) - 动画旋转器(
-\|/),箭头,ASCII中的复选标记 - 通过Linux主机进行Web下载(绕过传统的SSL/TLS限制)
- Linux主机和远程系统之间的直接文件传输
MCP工具
继电器为Claude提供以下工具(自动使用):
| 工具 | 说明 |
|---|---|
read_file | 读取带有行号的文件 |
write_file | 写入整个文件 |
edit_file | 手术绳索更换 |
list_directory | 列出目录内容 |
find_files | 按名称模式查找文件 |
search_files | 搜索文件内容 |
execute_command | 运行shell命令 |
download_url | 通过Linux下载URL,保存到远程的/tmp |
upload_to_host | 将文件从远程复制到Linux主机 |
download_from_host | 将文件从Linux主机复制到远程 |
list_host_directory | 列出Linux主机上的文件 |
get_cwd | 获取当前目录 |
file_info | 获取文件元数据 |
file_exists | 检查路径是否存在 |
make_directory | 创建目录 |
remove_file | 删除文件 |
move_file | 移动/重命名文件 |
故障排除
客户端无法编译:
- 检查你有一个C编译器:
which cc或which gcc - 在Solaris上,确保链接套接字库:
-lsocket -lnsl - 在HP-UX上,捆绑的K&R编译器运行良好
无法连接:
- 验证继电器是否在Linux上运行
- 检查防火墙是否允许端口5000
- 测试: `telnet
5000`
乱码输出:
- 使用
-s简单/ASCII模式标志 - 确保您的终端设置为VT100或兼容
程序抱怨未知的终端类型:
- 在运行基于诅咒的程序之前设置TERM:
export TERM=vt100 - 在HP-UX上,您还可以尝试:
export TERM=hp
已知限制
命令超时: 长时间运行的命令可能会在完成之前超时。中继和客户端具有当前不可配置的内置超时。对于非常长的操作,可以考虑将它们分解为更小的步骤,或者在后台运行它们,并将输出重定向到文件。 *未来版本中将提供可配置的超时。*
文件传输大小限制: 这 download_url 工具和文件操作使用固定大小的缓冲区(目前约7-10MB)。非常大的文件下载或传输可能会失败或被截断。对于大文件,考虑使用传统的传输方法(FTP、NFS等)而不是远程呈现文件操作。 *在未来的版本中改进了缓冲区处理。*
download_url安全: 这 download_url 该工具在不进行URL验证的情况下从中继主机获取URL。不要在可以访问敏感内部网络或云元数据端点的主机上运行中继(169.254.169.254)。该工具也没有下载大小限制,并将响应完全加载到内存中。 *URL验证和大小限制将在未来的版本中发布。*
文档
看 建筑.md 获取详细的技术文档。
许可证
麻省理工学院
