# tabby-cloud-link

> Share live Tabby terminal sessions to a RayRemote cloud viewer (PTY stays local, remote control over WebRTC)

Latest version **0.2.0** (published 2026-09-23) · MIT license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install tabby-cloud-link
pnpm add tabby-cloud-link
yarn add tabby-cloud-link
bun add tabby-cloud-link
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 0.2.0 |
| Published | 2026-09-23 |
| First published | 2026-09-23 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 57.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Ray |
| Maintainers | raymor |
| Keywords | tabby-plugin, remote, remote-control, terminal-sharing, rayremote |

## Links

- npm: https://www.npmjs.com/package/tabby-cloud-link
- Repository: https://github.com/RayMorTwinkle/tabby-cloud-terminal
- Homepage: https://github.com/RayMorTwinkle/tabby-cloud-terminal#readme
- Issues: https://github.com/RayMorTwinkle/tabby-cloud-terminal/issues
- npm.io page: https://npm.io/package/tabby-cloud-link

## Alternatives

- [localforage](https://npm.io/package/localforage.md) — 6.2M weekly downloads
- [localforage-observable](https://npm.io/package/localforage-observable.md) — 30.8K weekly downloads
- [@y/y](https://npm.io/package/@y/y.md) — 30.1K weekly downloads
- [@metaobjectsdev/render](https://npm.io/package/@metaobjectsdev/render.md) — 3.5K weekly downloads
- [@ledgerhq/coin-algorand](https://npm.io/package/@ledgerhq/coin-algorand.md) — 1.1K weekly downloads

## Recent versions

- 0.2.0 (latest) — 2026-09-23

## README

# tabby-cloud-link

把 Tabby 里**正在运行的终端会话**借给 RayRemote 云端——远端 viewer 直接接管同一个 PTY（不是新开 shell）。本地 Tabby 保持运行即会话存活；Tabby 退出 = 云会话断开（设计取舍，不做独立 daemon）。

## 工作方式

- 右键任意终端 tab → **「发送到云端」**：该 tab 本地画面盖上「正在被云端控制」遮罩 + 本地输入门闸，字节流镜像给云端。
- 云端在 RayRemote 终端屏的「后台」列表看到 `共享 · <标题>`，点**接续**接管。
- 所有权：`接管`/`收回控制权` 双向切换；owner=local 时云端只读，owner=cloud 时本地只读。
- 取消共享/断网/重启 agent 都会自动把控制权还给本地——永远不会把本地终端锁死。

## 安装（macOS）

```bash
# 1. 构建（在插件源码目录）
npm install && npm run build        # 产物 dist/index.js

# 2. 拷进 Tabby 用户插件目录
mkdir -p "$HOME/Library/Application Support/tabby/plugins/node_modules"
rsync -a --delete --exclude node_modules --exclude src \
  ./ "$HOME/Library/Application Support/tabby/plugins/node_modules/tabby-cloud-link/"

# 3. 完全退出并重开 Tabby（Cmd+Q；插件无热重载）
```

要求：RayRemote agent ≥`app-5fdda33` 在本机运行且 `-terminal` 开启（默认开）。agent 启动时写 `~/Library/Application Support/RayRemote/share-listen.json`（端口+token，0600），插件据此发现本机端点。

## 卸载/停用

```bash
rm -rf "$HOME/Library/Application Support/tabby/plugins/node_modules/tabby-cloud-link"
```

已共享的会话随 Tabby 退出自动断开；云端 pane 显示「会话已终止」。

## 更新

重新 build → 同路径 rsync → 重开 Tabby。不重启 Tabby 则跑旧代码。

## 开发调试

```bash
TCL_RELAY=ws://127.0.0.1:8890/ws?role=provider  # 绕过发现，直连测试 relay
TCL_AUTO=1                                       # 每个新终端自动共享
```

协议与细节见 `../HANDOFF.md`（§13/§14 实测结论）与 `RayRemote/docs/protocol.md` 末节。

---
_Source: https://npm.io/package/tabby-cloud-link · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
