Vibelive

io.github.pooriaarab由 GitHub 帳號 pooriaarab 發布v0.2.2更新於 Oct 24, 2026

Multiplayer for agentic coding terminals: live cursors, presence, chat.

發布方自己的服務:AI Benchmark Index

已驗證STDIO僅桌面開發者工具溝通與協作

概覽

AI 產生的概覽

讓助理啟動共享終端機工作階段,包裝編碼代理指令並回傳 WebSocket 加入網址,供區域網路協作者接入。

可以做什麼
Vibelive 提供兩個 MCP 工具:host_session 啟動包裝某道指令的 host 與 relay,並回傳 ws:// 加入網址;session_status 列出作用中工作階段的 id、網址、參與者與目前 driver。輸出透過本機 WebSocket 分送,帶有線上狀態、聊天與單一寫入權杖,因此同一時間只有一位參與者能寫入被包裝的行程。host 是有序輸出記錄的唯一作者,較晚加入者會收到快照加尾端內容。
適用情境
適合開發者在不共享畫面的情況下,圍繞 Claude Code、Codex、Gemini 等終端機編碼代理進行結對協作:一人驅動,其他人觀看、聊天並申請控制權。它面向本機或區域網路工作階段,不適用於常駐 tmux 工作階段或大型加密中繼。
執行需求
以 stdio 方式作為本機行程執行,從 npm 安裝 vibelive,用 npx 或全域安裝啟動。需要 Node 18 或更新版本。未宣告帳號、API 金鑰、環境變數或標頭。主機需在區域網路上透過明文 WebSocket 連接埠可達,連接埠可用 --port 指定。
安裝前請注意
工作階段透過主機上的明文、未加密 WebSocket 共享,端對端加密的中繼分送尚未提供,因此任何能存取加入網址的人都可能讀取工作階段內容。driver 可以傳送輸入給被包裝的代理,交出寫入權杖等於讓另一位參與者控制該行程。工作階段共享受同意帳本約束,且可撤銷。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Vibelive,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

vibelive

[npm version] [Downloads/month] [License: MIT]

Package · Setup · API · Compare

vibelive is an open-source terminal collaboration tool for developers who share agentic coding sessions. It wraps a process, shares output over local/LAN WebSockets, and lets one driver send input at a time. It ships as a CLI, Node.js library, and agent server in the Vibe Suite.

Install

bash
npm install -g vibelive

Requires Node.js 18 or later. Includes TypeScript declarations and three direct runtime dependencies.

Share your first process

In one terminal, start a process that echoes each input line:

bash
vibelive host --port 4474 --name ada -- node -e "process.stdin.on('data', b => process.stdout.write(b))"

In another terminal, join it:

bash
vibelive join ws://localhost:4474 --name bee

Type hello in the host terminal. Both terminals print hello; the joiner also shows presence and control state. No credentials or environment variables are required. vibelive does not load .env files; wrapped agents inherit the host environment. For LAN peers, use the host's printed LAN address. Transport is plain WebSocket with no built-in authentication or encryption.

In the joiner, type /drive. On the host, type /release to hand over control. The joiner can then send /type ping and see ping in both terminals. Use /quit on the host to end the session.

How it works

text
Host terminal -> wrapped child process -> ordered output log                       ^                         |                       |                         v                 one driver <- host WebSocket relay -> participants                                  |                    |                              control queue        chat + presence

The host owns process output and control state. Late joiners receive retained output followed by live updates. The relay binds to 0.0.0.0 by default, so reachable LAN clients can connect.

Why it exists

Pairing on a coding agent needs a clear answer to who can type next. vibelive adds a cooperative driver queue and chat around a wrapped command. Tools such as tmux and tmate serve broader terminal workflows; vibelive focuses on process sharing with agent-accessible session management.

Compare

Checked 2026-10-14 against tmux and tmate.

Propertyvibelivetmuxtmate
ScopeShared process with driver arbitrationTerminal multiplexerTerminal sharing
Transport herePlain local/LAN WebSocketLocal sessions; remote access arranged separatelySSH-based sharing
InterfaceCLI, Node.js library, agent toolsTerminal commandsTerminal commands
Process handlingChild-process pipesTerminal sessionstmux-derived terminal sessions

Coverage

Surface or integrationStatusScope
WebSocket / wsImplementedHost relay, client, output, chat, presence, control
Claude CodeGeneric command wrapperRequires separately installed claude; no dedicated adapter
OpenAI CodexGeneric command wrapperRequires separately installed CLI; no dedicated adapter
Google Gemini CLIGeneric command wrapperRequires separately installed CLI; no dedicated adapter
Pi / Grok workflowsGeneric command wrapperPipes-compatible commands; no dedicated adapter
KimiGeneric command wrapperRequires separately installed CLI; no dedicated adapter
MCPImplementedTwo stdio tools
Cursor updatesProtocol onlyLibrary send/receive; no rich CLI cursor renderer
Encrypted remote relayRoadmapNot shipped
Full terminal emulationRoadmapNo pseudoterminal support

There is no harness adapter registry: the host executes an arbitrary command through Node.js child-process pipes. Local tests cover host, relay, client, arbitration, protocol-facing behavior, and MCP. Specific agent CLIs are not certified here.

Common use cases

  1. Claude Code pairs: share process output and hand off the driver role on a trusted LAN.
  2. Codex reviewers: observe a wrapped command while the host controls input.
  3. Gemini CLI mentors: keep discussion in chat and send agent input through /type.
  4. Node.js teams: wrap a line-based script to test collaboration without AI credentials.
  5. Agent builders: start sessions through the Model Context Protocol (MCP) and inspect participants and driver state.

Features

  • Single driver: first-in, first-out control queue; non-driver input is rejected.
  • Output replay: sequence-numbered retained history plus live output.
  • Chat: separate participant messages and process input.
  • Presence: participant names and the current driver.
  • Consent: relay output sharing checks vibe-core's share:session scope.
  • Lifecycle: host exit closes sessions; MCP disconnect cleans up its hosted processes.

Runtime surfaces

text
vibelive host [--port N] [--name name] -- command [args...]vibelive join ws://host:port [--name name]vibelive mcpvibelive --help / -hvibelive --version / -v

All wrapped-command flags go after --. --port 0 selects an available port. The join parser also accepts --port, but does not use it; the URL controls the destination. Join names default to USER, then USERNAME, then anon.

Interactive commandHostJoiner
/driveRequest controlRequest control
/releaseRelease controlRelease control
/quitEnd sessionLeave session
/type textTreated as process input if driverSend process input if driver
/helpTreated as process input if driverPrint slash-command help
Other textProcess input if driverChat

vibelive mcp starts stdio MCP with exactly two tools:

ToolInputResult
host_sessionCommand array; optional name and portSession ID and WebSocket join URL
session_statusOptional URL filterActive sessions, participants, and driver

Library example

Install locally with npm install vibelive, then save this as demo.mjs and run node demo.mjs:

js
import { createHost, createRelay, joinSession } from 'vibelive';const host = createHost({ command: ['node', '-e', "setInterval(() => console.log('hello'), 200)"] });const relay = await createRelay({ host: '127.0.0.1', port: 0, hostHandle: host });const client = joinSession({ url: relay.url, name: 'ada' });client.onOutput(text => process.stdout.write(text));await client.id;await new Promise(resolve => setTimeout(resolve, 600));client.close();host.kill();await relay.close();

The script prints hello and closes its process and relay.

Delivery and behavior limits

The shipped transport is local/LAN, plain WebSocket. There is no built-in participant authentication, TLS, or end-to-end encryption. Use it only where session access and network exposure match your intended participants. Output can include anything the wrapped command prints. The host uses pipes, not a pseudoterminal (PTY). Resize is a no-op; raw-mode and full-screen agent interfaces may not work. Output history defaults to 5,000 chunks in memory. Older entries are evicted; sessions do not persist after host exit. Cursor messages exist in the protocol, but the CLI renders presence rather than animated cursors. The package provides no managed relay, remote fan-out scale guarantee, or durable chat service.

Integration guides

  • Claude Code process sharing: vibelive host -- claude; install and authenticate Claude Code separately.
  • Other coding agents: pass the installed command after --; check that it can operate through pipes.
  • LAN participation: use the printed ws://<LAN-address>:<port> URL with vibelive join.
  • MCP host configuration:
json
{"mcpServers":{"vibelive":{"command":"vibelive","args":["mcp"]}}}

Status

Package version 0.2.3 is pre-1.0; interfaces can change. The CLI's source version still reports 0.2.2. Planned work includes PTY wrapping, richer cursors, and an encrypted self-hosted remote relay. Public case studies are not yet published. No public documentation site is configured; setup guidance is self-contained here. Use GitHub issues for support; repository access may be required. For contributions, run npm ci, npm run typecheck, npm run build, and npm test.

FAQ

Which integrations are verified?

vibelive tests its local process and WebSocket behavior. Named coding agents use a generic wrapper rather than dedicated, credential-verified adapters.

Does vibelive provide a managed relay?

vibelive runs its relay on the host machine. The package does not provide a managed remote relay service.

How is vibelive different from tmux?

vibelive shares one wrapped process with a driver queue and chat. tmux manages terminal sessions, windows, and panes.

How is vibelive different from tmate?

vibelive uses a local/LAN WebSocket and explicit driver arbitration. tmate provides SSH-based terminal sharing.

Is vibelive end-to-end encrypted?

vibelive ships plain WebSocket transport. An encrypted remote relay is roadmap work.

Can two people type into the agent at once?

vibelive allows one driver to send input. Other participants can chat and queue for control.

Does vibelive work with full-screen terminal apps?

vibelive uses child-process pipes without PTY semantics. Raw-mode, resize, and full-screen terminal behavior are limited.

Do late joiners see earlier output?

vibelive sends retained output history before live updates. The default rolling buffer keeps up to 5,000 chunks.

License

MIT.

來源:README.md,提交 ba692f8

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Aibenchmarkindex 整合