← 返回 Skills 市场
oobagi

Awesome Remote Control

作者 Jaden Watson · GitHub ↗ · v1.0.8 · MIT-0
cross-platform ⚠ suspicious
155
总下载
0
收藏
0
当前安装
6
版本数
在 OpenClaw 中安装
/install awesome-remote-control
功能描述
Start a Claude Code remote control session in tmux with bypass permissions. Use when asked to start a remote session, start a Claude Code session, spin up Cl...
使用说明 (SKILL.md)

Claude Code Remote Control

Starts a persistent Claude Code session in tmux with --dangerously-skip-permissions --remote-control. Auto-exits after 30 minutes of inactivity via CLAUDE_CODE_EXIT_AFTER_STOP_DELAY (Claude's native idle timer). Multiple concurrent sessions supported — each gets a unique animal name.

Starting a Session

Single session:

bash skills/claude-remote-control/scripts/start_session.sh \x3Cdir>

Multiple sessions in parallel (faster):

bash skills/claude-remote-control/scripts/start_sessions.sh \x3Cdir> \x3Ccount>
# e.g. start_sessions.sh /path/to/project 3

Each session gets a friendly name like 🦊 Fox | my-project — used in tmux and the registry.

Important: After launching a session, always report the session URL (https://claude.ai/code/session_...) back to the user in your reply. The URL is printed in the script output — surface it so the user can open the remote control page immediately.

Stopping a Session

bash skills/claude-remote-control/scripts/stop_session.sh \x3Csession-label|tmux-name>
# e.g. stop_session.sh "🦊 Fox | my-project"
#      stop_session.sh cc-fox-my-project

The SessionEnd hook fires automatically, handling registry update.

Listing Sessions

bash skills/claude-remote-control/scripts/list_sessions.sh

Registry stored at ~/.local/share/claude-rc/sessions.json.

Attaching to a Session

tmux attach -t cc-fox-my-project   # use tmux name shown on start

Resuming a Session by UUID

When a session dies (killed or idle timeout), the registry entry is marked dead and the local UUID is captured at that moment. UUIDs persist for 30 days before being pruned.

Look up the UUID:

cat ~/.local/share/claude-rc/sessions.json

Resume using the start script with --resume \x3Cuuid>:

bash skills/claude-remote-control/scripts/start_session.sh \x3Cdir> --resume \x3Cuuid>
# e.g. start_session.sh /path/to/project --resume abc123-def456

Or manually in a new tmux session:

tmux new-session -d -s "cc-fox-my-project" -c "/full/path/to/my-project"
tmux send-keys -t "cc-fox-my-project" 'claude -r "\x3Cuuid>" --dangerously-skip-permissions --remote-control --name "🦊 Fox | my-project"' Enter

This restores full conversation history. A new remote control URL is issued on reconnect.

How Idle Timeout Works

  1. CLAUDE_CODE_EXIT_AFTER_STOP_DELAY=1800000 (30m) is set as an env var when launching Claude in tmux.
  2. Claude's internal timer starts when it finishes responding and is idle at the prompt.
  3. After 30m idle, Claude auto-exits — triggering the SessionEnd hook.
  4. on_session_end.sh fires: marks the registry dead with UUID capture.

No background watcher process — everything is driven by Claude Code's native hooks.

Sending Tasks to Running Sessions

bash skills/claude-remote-control/scripts/send_task.sh \x3Csession-label|tmux-name> "\x3Cmessage>"
# e.g. send_task.sh "🦊 Fox | my-project" "Do an analysis of the codebase"
#      send_task.sh cc-fox-my-project "Fix the issues you identified"

The script:

  1. Resolves the tmux session name from a label or direct tmux name
  2. Verifies the session is alive
  3. Sends via tmux send-keys -l (literal mode — safe for special characters) + Enter

Tip: When sending follow-up tasks to a session that already has context (e.g., it just finished an analysis), do NOT re-paste the full spec or issue list. The agent already has that in its conversation. Just reference it — e.g., "fix the issues you identified". Re-sending bloats context and wastes tokens.

Notes

  • After launching, always report the session URL (https://claude.ai/code/session_...) to the user — this is the remote control link they need
  • --remote-control is undocumented but valid — activates remote control on startup
  • The session_0... URL is a cloud-side remote control ID — it cannot be used with claude -r. Only the local UUID from the registry works for resuming.
  • UUID is captured lazily when the session dies, not during startup — no background polling
  • Dead entries auto-prune after 30 days (runs at each startup)
  • The project dir formula: ~/.claude/projects/$(echo $WORKDIR | sed 's|/|-|g') (leading - is kept)
  • No background watcher — idle timeout and registry cleanup are handled entirely by Claude Code hooks
  • Workspace trust is pre-seeded in ~/.claude.json (under projects[\x3Cpath>].hasTrustDialogAccepted) so headless sessions skip the "do you trust this folder?" dialog
安全使用建议
This skill appears to do what it says: spawn and manage headless Claude Code sessions inside tmux and keep a local registry for resumption. Before installing: (1) understand it intentionally bypasses workspace trust (--dangerously-skip-permissions) and writes to ~/.claude.json to mark projects trusted — only install if you trust the Claude binary and the skill source; (2) treat the printed remote-control URLs and captured UUIDs as sensitive (anyone with the URL/UUID may be able to control sessions); (3) verify you installed the skill from a trusted repository (the skill bundle includes all scripts, so review them yourself if unsure); (4) if you do not want automatic workspace-trust modification, inspect/modify registry.py's trust-workspace behavior or remove that step before use. If you want extra assurance, run the scripts in a controlled account or sandbox first.
功能分析
Type: OpenClaw Skill Name: awesome-remote-control Version: 1.0.8 The skill automates the deployment of headless Claude Code sessions using high-risk flags (`--dangerously-skip-permissions` and `--remote-control`) which allow remote command execution without user confirmation. It includes a Python registry (`registry.py`) that programmatically modifies the user's `~/.claude.json` to bypass 'workspace trust' dialogs and scans `~/.claude/projects/` for session logs to extract UUIDs. While these behaviors are documented and aligned with the stated purpose of providing remote control, the intentional bypass of security prompts and the creation of an unauthenticated remote shell environment represent significant security risks.
能力评估
Purpose & Capability
Name/description match the actual behavior: scripts create tmux sessions, run the 'claude' CLI with --remote-control and --dangerously-skip-permissions, register sessions, capture local UUIDs for resume, and manage a local registry. Required binaries (tmux, python3, claude) are appropriate for this functionality.
Instruction Scope
SKILL.md and the scripts confine actions to launching Claude in tmux, interacting with tmux panes, and reading/writing local Claude-related files (~/.claude.json, ~/.claude/projects/*.jsonl, ~/.local/share/claude-rc/sessions.json). They also instruct the agent to 'always report the session URL' to the user. The only scope creep is explicit: the skill pre-seeds workspace trust and uses a permissions-bypass flag; this is consistent with the goal of headless sessions but is a privileged action you should expect.
Install Mechanism
No download/install spec is included (instruction-only / shipped scripts). There are local scripts and a Python helper; nothing is fetched from remote URLs at runtime. This is low install risk given the code is provided with the skill bundle.
Credentials
The skill requests no secrets or unrelated environment variables. It does modify local Claude configuration files and reads project .jsonl files under ~/.claude/projects to capture UUIDs—actions that are consistent with resume functionality and registry maintenance.
Persistence & Privilege
The skill does persist state to ~/.local/share/claude-rc/sessions.json and writes to ~/.claude.json to mark a project as trusted. always:false and normal autonomous invocation apply. The configuration edits are within Claude's domain and are explained in the README, but they do elevate Claude session trust and bypass prompts (via --dangerously-skip-permissions), which is a meaningful privilege.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install awesome-remote-control
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /awesome-remote-control 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.8
- Skill renamed from `claude-remote-control` to `awesome-remote-control` - Added `_meta.json` file for improved metadata management - No changes to remote control session features or usage; all functionality remains the same
v1.0.7
- Improved animal and session naming logic for tmux sessions and labels. - Updated documentation to clarify session resuming with corrected tmux session/example names. - Enhanced the registry script for more robust session management. - Minor code cleanups in task sending and session start scripts.
v1.0.5
awesome-remote-control v1.0.5 - Removed all notification hook functionality and script dependencies (`notify.sh`, `on_stop.sh`, `install_hooks.sh`). - Simplified documentation: notification/ping features and options are no longer referenced. - Script and metadata changes remove support for live notifications on idle or session end. - Now only requires `tmux`, `python3`, and `claude` (removed `openclaw` dependency). - Session management (start, stop, resume, send task) continues to work as before, minus notifications.
v1.0.3
awesome-remote-control 1.0.3 introduces new session management scripts and updates notification and task dispatch handling. - Added scripts for task dispatch (`send_task.sh`), session stop (`stop_session.sh`), and a Python registry utility (`registry.py`). - Updated session lifecycle: new `stop_session.sh` for cleanly stopping sessions and triggering notifications. - Notification hooks improved: now fires both on idle (task complete) and session end, using `notify.sh` and `on_session_end.sh`. - Task sending updated: all tasks to running sessions must use `send_task.sh`, which auto-tags and safely delivers messages to ensure proper callback behavior. - Enhanced resume flow: sessions now resumed via `start_session.sh --resume <uuid>`. - Documentation refined for clarity, emphasizing reporting the session URL and proper usage of scripts.
v1.0.1
No functional or documentation changes in this release. - Version bump to 1.0.1 with no updates detected.
v1.0.0
Initial release with [openclaw] tag-based callback notifications.
元数据
Slug awesome-remote-control
版本 1.0.8
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 6
常见问题

Awesome Remote Control 是什么?

Start a Claude Code remote control session in tmux with bypass permissions. Use when asked to start a remote session, start a Claude Code session, spin up Cl... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 155 次。

如何安装 Awesome Remote Control?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install awesome-remote-control」即可一键安装,无需额外配置。

Awesome Remote Control 是免费的吗?

是的,Awesome Remote Control 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Awesome Remote Control 支持哪些平台?

Awesome Remote Control 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Awesome Remote Control?

由 Jaden Watson(@oobagi)开发并维护,当前版本 v1.0.8。

💬 留言讨论