session-bridge

session-bridge is a skill for Claude Code, Codex from yunsii/wezdeck. It costs 74 tokens per session (933 once invoked), scanned A, original, MIT.

A bridge between a computer’s terminal sessions and OpenClaw agent sessions. It can inspect tmux panes, view or follow agent sessions, send messages, and hand control of a focused terminal pane to an agent.

In plain words
What is it for?
Checking where an agent is stuck, starting an agent turn from Feishu, sending short text to a terminal interface, approving a visible prompt, watching a session, or handing a focused pane to an agent.
Why use it?
It removes the need to switch manually between Feishu, terminal user interfaces, and agent sessions. Safety checks, confirmation steps, dry runs, and an emergency stop help control actions sent to the host.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/yunsii/wezdeck/session-bridge
Any agent
npx skills add yunsii/wezdeck --skill session-bridge
Clone the repo
git clone --depth 1 https://github.com/yunsii/wezdeck

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for session-bridge

README.md
[![agentmods](https://agentmods.dev/badge/skills/yunsii/wezdeck/session-bridge.svg)](https://agentmods.dev/skills/yunsii/wezdeck/session-bridge)
Your own site
<a href="https://agentmods.dev/skills/yunsii/wezdeck/session-bridge"><img src="https://agentmods.dev/badge/skills/yunsii/wezdeck/session-bridge.svg" alt="Measured on agentmods" height="20"></a>
Per session 74 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 933 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00074 $0.00933
Opus 5 $0.00037 $0.00466
Sonnet 5 $0.00015 $0.00187
Haiku 4.5 $0.00007 $0.00093

Measured 3d ago against content hash 128af752d8bf, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

session-bridge scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

openclaw/workspace/skills/session-bridge/SKILL.md · 64 lines

What it actually says

Session Adapter Kit(Dex · Main)

入口脚本(仓内):

REPO="${WEZDECK_REPO:-$HOME/github/wezterm-config}"
SB="$REPO/openclaw/scripts/session-bridge.sh"

规范:openclaw/docs/session-bridge.md
tmux 版本策略:docs/tmux-install.md

何时用

用户意图 命令
本机 Claude/Codex 卡在哪 $SB host-status → 必要时 host-capture --target …
飞书侧让 agent 跑一轮 $SB poke --id dex -m '…'(先 --dry-run 若不确定)
临时点 Continue / 发短文本进 TUI lease minthost-send-keys …(先 dry-run)
权限框点 Yes host-capture 确认 → host-send-keys --approve-visible
查 Dex 会话 $SB claw-ls / claw-show --id dex
机器人通知 $SB bot-send --to dex -m '…'(默认 dry-run)
本人飞书说话 $SB say-as-me --to dex -m '…'(P3;默认 dry-run)
饭点接管聚焦 pane 快捷键 Ctrl+K w;或 $SB take --focus --confirm-notify。默认 你→Dex(say-as-me + poke),不是 bot 推你
查/停盯梢 $SB watch-status / watch-stop --all
紧急停写 $SB panic on

take 只做轻量轮询 + 向 Dex 交接(需确认 / 回合空闲 turn_idle / 会话结束);代按 TUI、不每 tick 跑模型。turn_idle 时 job 继续盯,不自动结束。
通知默认 user+poke:本人进 Dex 飞书会话 + session poke;文案带 【host-watch · …】 头,避免 Dex 把 host 选择题当成自己的 1/2/3。需配置 feishu_targets.dex_chat_id 才有 say-as-me;否则至少 poke。
仅 agent pane:以 pane 前台进程为准;不用标题

硬规则

  1. 身份三分: agent-pokebotuser(say-as-me);汇报里写清。
  2. 读宽写窄: 写路径 panic 全拒(exit 75)。
  3. host-send-keys 需要:有效 lease + host_allowlist + 无 panic;禁 C-c/C-z/C-d。
  4. 遥控 ≠ 写码权(单写者仍成立)。
  5. tmux client 必须与 server 匹配(脚本自动 probe;勿硬编 /usr/bin/tmux 3.4)。
  6. 密钥/token 不要从 capture 贴回飞书。

配置(仓外)

~/.openclaw/session-bridge.json

  • aliases.dex → session key
  • host_allowlist.send_keys_panes → session 名 glob(如 wezterm_*
  • feishu_targets.dex_user_id / *_chat_id → bot-send / say-as-me
  • defaults.tmux_bin / receipt / defaults.watch(ttl/interval/notify_to)

不要

  • 不要新建第二 session store
  • 不要默认 say-as-me --confirm 无用户明确授权
  • 不要与 live TUI 并行改同一 cwd 代码
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 64 lines · 74 tokens per session scan A 128af752d8bf

Subscribe to this mod's changes

session-bridge is a skill published in the GitHub repository yunsii/wezdeck (5 stars, last pushed 7d ago), licensed MIT. It adds 74 tokens to every session and 933 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

workflow

Create, run, monitor, cancel, or resume deterministic JavaScript workflows that orchestrate multiple Codex, Claude, Cursor, or Kimi agents. Use for parallel investigation or review, staged agent pipelines, resumable long-running work, or when the user explicitly asks for a workflow, orchestration, fan-out, or several…

xxxoooxoxo/wiff · 70 tokens

orchestrate

Use only when the user explicitly types /orchestrate:orchestrate to decompose a large task, spawn a tree of parallel worker/subplanner/verifier subagents, and collect structured handoffs. Do not invoke autonomously.

odysseus0/claude-orchestrate · 54 tokens

launch

Launch and automate VS Code (Code OSS) using agent-browser via Chrome DevTools Protocol. Use when you need to interact with the VS Code UI, automate the chat panel, test UI features, or take screenshots of VS Code. Triggers include 'automate VS Code', 'interact with chat', 'test the UI', 'take a screenshot', 'launch…

workstream-labs/workstreams · 80 tokens

accessibility

Primary accessibility skill for VS Code. REQUIRED for new feature and contribution work, and also applies to updates of existing UI. Covers accessibility help dialogs, accessible views, verbosity settings, signals, ARIA announcements, keyboard navigation, and ARIA labels/roles.

workstream-labs/workstreams · 54 tokens

sessions

Agent Sessions window architecture — covers the sessions-first app, layering, folder structure, chat widget, menus, contributions, entry points, and development guidelines. Use when implementing features or fixing issues in the Agent Sessions window.

workstream-labs/workstreams · 45 tokens

component-fixtures

Use when creating or updating component fixtures for screenshot testing, or when designing UI components to be fixture-friendly. Covers fixture file structure, theming, service setup, CSS scoping, async rendering, and common pitfalls.

workstream-labs/workstreams · 47 tokens