GB-Power-Market-JJ claude-relay
Relay operator for Claude Code via tmux across multiple projects. Use when the user wants to start/continue a Claude Code terminal session, send prompts, read output, or manage background Claude sessions by project name/path.
install
source · Clone the upstream repo
git clone https://github.com/GeorgeDoors888/GB-Power-Market-JJ
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/GeorgeDoors888/GB-Power-Market-JJ "$T" && mkdir -p ~/.claude/skills && cp -r "$T/openclaw-skills/skills/artwalker/claude-relay" ~/.claude/skills/georgedoors888-gb-power-market-jj-claude-relay && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/GeorgeDoors888/GB-Power-Market-JJ "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/openclaw-skills/skills/artwalker/claude-relay" ~/.openclaw/skills/georgedoors888-gb-power-market-jj-claude-relay && rm -rf "$T"
manifest:
openclaw-skills/skills/artwalker/claude-relay/SKILL.mdsource content
Claude Relay
Operate Claude Code as a persistent terminal copilot through tmux.
Script
All actions go through
scripts/relay.sh. Run with no args for usage help.
scripts/relay.sh <action> [project] [args...]
Actions:
start, send, tail, stop, status, session
Workflow
- Start session:
scripts/relay.sh start <project> - Send instruction:
scripts/relay.sh send <project> "<text>" - Read output:
scripts/relay.sh tail <project> [lines] - Repeat send/tail as needed.
- Stop when done:
scripts/relay.sh stop <project>
Project resolution
The script resolves
<project> in order:
- Absolute path (if directory exists)
- Alias from
(projects.map
)name=/abs/path
exact match$CLAUDE_RELAY_ROOT/<name>- Find under
(maxdepth=2) by folder name$CLAUDE_RELAY_ROOT - If omitted, re-use last project
Multiple matches → script exits with candidates; ask user to clarify.
Session naming
Deterministic:
cc_<basename_sanitized>. One project = one tmux session.
Error handling
- tmux not installed: script exits with code 2 and "missing dependency" message.
- Claude binary not found: same exit code 2. Verify
env or default path.CLAUDE_BIN - Session not running (send/tail on stopped session): exits code 6. Start first.
- Project not found: exits code 4. Check
or project path.projects.map - Claude process hung:
still works — check output. If stuck,tail
andstop
fresh.start
Environment variables
| Variable | Default | Description |
|---|---|---|
| | Root directory for project discovery |
| | Path to project alias map file |
| (from PATH) | Path to Claude Code CLI binary |
| | Seconds to wait after send before tailing output |
Setup
- Install this skill
- Create a
file in the skill directory (seeprojects.map
)projects.map.example - Ensure
andtmux
are installed and in your PATHclaude
Notes
- Transport-focused skill (relay/orchestration), not deep code reasoning.