- KNOWLEDGE_GRAPH.md: 架构/实体关系/数据流/WebSocket 协议/设计不变量/构建测试/环境踩坑/路线图 - CLAUDE.md + AGENTS.md: claude 与 Codex 会话自动加载的对接入口 - 记录关键运维约束: 服务端不可在沙盒等受限环境运行(否则 claude 等 TUI 子进程无法写状态)
1.2 KiB
1.2 KiB
Rtty 项目指引(Claude Code 会话自动加载)
Rtty 是一个仿 dinotty 的分布式虚拟终端系统,只保留终端同步能力:Rust 服务端 (Axum + portable-pty + alacritty_terminal 真相源)通过 WebSocket 同步到 Flutter 桌面端(原始 ANSI 渲染)与移动端(语义快照)。
对接前必读:
- KNOWLEDGE_GRAPH.md —— 知识图谱:架构、协议、数据流、不变量、踩坑记录
- PROJECT_SUMMARY.md —— 项目总览与目录导航
关键约束:
- 服务端 alacritty 引擎是唯一真相源;Raw/快照/重绘帧都在引擎锁内广播(严格有序)
- 协议见 KNOWLEDGE_GRAPH.md §5;移动端颜色分段
segments是扩展字段 - 会话空闲 60s 回收;
RTTY_TOKEN可选鉴权;桌面端输入走二进制帧
运行:cargo run(监听 ws://0.0.0.0:8080);桌面端 cd desktop && flutter run -d windows;
移动端 cd mobile && flutter build apk --debug。
⚠️ 最重要的一条:服务端不能在文件写入受限的环境(沙盒)里运行,否则子进程 (如 claude)无法写入用户状态文件,表现为 TUI 应用确认后卡死/退出。