- M0: libghostty SSH 终端(渲染/输入/连接)+ 白屏修复(OutputGate) + 会话状态机/自动重连 - M1: tsnet 用户态组网 + SSH-over-tsnet(fd 桥),shell 级真机验证;R5(Go+gvisor+C+++Swift 同进程) retire - M1.5: tmux -CC 原生 tab(MVP) - 结构: packages/(TXCore·TXTransport), apps/TerminalX, vendor/(libghostty-spm/libssh2/mbedtls/tsnet-bridge), artifacts/ - 文档: CLAUDE.md + docs/HANDOFF.md(新会话入口) - 环境: 认证代理→依赖 vendor 本地化;Go 在 ~/.local/go;仅模拟器/未签名 - 待续: M2 mosh, tmux 多 pane, M4 安全(host key/SE) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
55 lines
2.5 KiB
Modula-2
55 lines
2.5 KiB
Modula-2
module terminalx/tsnetbridge
|
|
|
|
go 1.26.5
|
|
|
|
require (
|
|
golang.org/x/sys v0.47.0
|
|
tailscale.com v1.102.0
|
|
)
|
|
|
|
require (
|
|
filippo.io/edwards25519 v1.2.0 // indirect
|
|
github.com/akutz/memconn v0.1.0 // indirect
|
|
github.com/alexbrainman/sspi v0.0.0-20231016080023-1a75b4708caa // indirect
|
|
github.com/coder/websocket v1.8.14 // indirect
|
|
github.com/creachadair/msync v0.8.1 // indirect
|
|
github.com/dblohm7/wingoes v0.0.0-20240119213807-a09d6be7affa // indirect
|
|
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
|
|
github.com/gaissmai/bart v0.26.1 // indirect
|
|
github.com/go-json-experiment/json v0.0.0-20260214004413-d219187c3433 // indirect
|
|
github.com/godbus/dbus/v5 v5.2.2 // indirect
|
|
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
|
|
github.com/google/btree v1.1.3 // indirect
|
|
github.com/google/go-cmp v0.7.0 // indirect
|
|
github.com/hdevalence/ed25519consensus v0.2.0 // indirect
|
|
github.com/huin/goupnp v1.3.0 // indirect
|
|
github.com/jsimonetti/rtnetlink v1.4.1 // indirect
|
|
github.com/klauspost/compress v1.19.1 // indirect
|
|
github.com/mdlayher/netlink v1.7.3-0.20250113171957-fbb4dce95f42 // indirect
|
|
github.com/mdlayher/socket v0.5.0 // indirect
|
|
github.com/mitchellh/go-ps v1.0.0 // indirect
|
|
github.com/pires/go-proxyproto v0.8.1 // indirect
|
|
github.com/safchain/ethtool v0.3.0 // indirect
|
|
github.com/tailscale/certstore v0.1.1-0.20260409135935-3638fb84b77d // indirect
|
|
github.com/tailscale/go-winio v0.0.0-20231025203758-c4f33415bf55 // indirect
|
|
github.com/tailscale/hujson v0.0.0-20260302212456-ecc657c15afd // indirect
|
|
github.com/tailscale/peercred v0.0.0-20250107143737-35a0c7bd7edc // indirect
|
|
github.com/tailscale/web-client-prebuilt v0.0.0-20250124233751-d4cd19a26976 // indirect
|
|
github.com/tailscale/wireguard-go v0.0.0-20260715223240-2e01ba5b00f0 // indirect
|
|
github.com/x448/float16 v0.8.4 // indirect
|
|
go4.org/mem v0.0.0-20240501181205-ae6ca9944745 // indirect
|
|
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba // indirect
|
|
golang.org/x/crypto v0.54.0 // indirect
|
|
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f // indirect
|
|
golang.org/x/mobile v0.0.0-20260709172247-6129f5bee9d5 // indirect
|
|
golang.org/x/net v0.56.0 // indirect
|
|
golang.org/x/oauth2 v0.36.0 // indirect
|
|
golang.org/x/sync v0.22.0 // indirect
|
|
golang.org/x/term v0.45.0 // indirect
|
|
golang.org/x/text v0.40.0 // indirect
|
|
golang.org/x/time v0.15.0 // indirect
|
|
golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2 // indirect
|
|
golang.zx2c4.com/wireguard/windows v0.5.3 // indirect
|
|
gvisor.dev/gvisor v0.0.0-20260224225140-573d5e7127a8 // indirect
|
|
)
|