"Start issue work in a new tmux window with its own worktree. Use when the user has tmux running and wants issue startup to continue outside the current session. SKIP when not inside a tmux session ($TMUX unset) or when the user wants to work in the current session; use start-issue directly."
Resources
1Install
npx skillscat add gopherguides/gopher-ai/tmux-start Install via the SkillsCat registry.
Here's a thinking process: 1. **Analyze User Request:** - Task: Write a 2-3 sentence plain-text summary - Subject: The AI agent skill described (tmux-start) - Constraints: - Objective, factual tone - No marketing language, no superlatives, no calls to action - Natural prose, no bullet points, no headings, no markdown formatting - Do not wrap in quotes - At most 60 words - Output: ONLY the summary text 2. **Deconstruct the Skill (from the provided text):** - What it does: Starts issue work in a new tmux window with its own worktree. Uses `$ARGUMENTS` as issue number.
Start Issue in tmux Window
Plugin Resource Resolution
<PLUGIN_ROOT> is notation. Replace it with a concrete absolute plugin root before every resource read or command:
- Codex: Start from the directory containing the absolute selected
SKILL.mdpath, then ascend two directories (skills/<name>-> plugin root). - Claude Code: Bind it to the injected
${CLAUDE_PLUGIN_ROOT}value.
Before requesting decisions, read<PLUGIN_ROOT>/lib/driver-interaction.md and follow its
cross-platform capability-binding rules.
Read <PLUGIN_ROOT>/lib/decision-gates.md before resolving target or
secret-copy intent.
Bind the invocation arguments as SKILL_ARGS for $go-workflow:tmux-start by
reading <PLUGIN_ROOT>/lib/skill-arguments.md with this Claude Code compatibility payload:
$ARGUMENTS
Empty Arguments
If SKILL_ARGS is empty or not provided, explain:
This skill creates or reuses a worktree, opens a new tmux window, launches the
active assistant surface, and sends its qualified start-issue invocation
automatically.
Claude Code: /go-workflow:tmux-start <issue-number>.
Codex: $go-workflow:tmux-start <issue-number>.
Prerequisites: running inside a tmux session ($TMUX set); gh
authenticated; inside a git repo.
This is a missing-intent gate. Request: "What issue number should I start in
a tmux window?" If structured input is unavailable, ask in the final response
and stop before creating a worktree or tmux window.
Clear Worktree State
/bin/bash "<PLUGIN_ROOT>/scripts/worktree-state.sh" clear 2>/dev/null || trueIssue Number
Use SKILL_ARGS as the issue number. The script validates that it is numeric
and that the issue exists.
Environment Files
Check whether the source repo has environment files before creating the
worktree:
SOURCE_DIR="$(pwd)"
/bin/bash "<PLUGIN_ROOT>/scripts/worktree-create.sh" env-files --source-dir "$SOURCE_DIR"If the output starts with ENV_FILES_FOUND=true, follow the shared
missing-intent gate. Request explicit consent: "Found environment files
that may contain secrets. Copy them to the new worktree?" Stop before worktree
or tmux creation when structured input is unavailable.
Start tmux Workflow
Bind SURFACE from the active assistant before invoking the script. Claude
Code binds claude; Codex binds codex. Do not infer the surface from
installed executables or environment variables.
SURFACE="<claude-or-codex>"If copying environment files was explicitly authorized:
/bin/bash "<PLUGIN_ROOT>/scripts/tmux-start.sh" "$SKILL_ARGS" --surface "$SURFACE" --copy-envOtherwise:
/bin/bash "<PLUGIN_ROOT>/scripts/tmux-start.sh" "$SKILL_ARGS" --surface "$SURFACE" --no-copy-envThe script validates prerequisites, creates or reuses the standard issue
worktree, registers worktree state, opens or switches to the issue tmux window,
launches the bound assistant, waits for a Claude or Codex prompt or stable
launch marker, and sends /go-workflow:start-issue <issue-number> for Claude
or $go-workflow:start-issue <issue-number> for Codex. Direct script callers
that omit --surface retain the Claude default.
Set GOPHER_AI_TMUX_ASSISTANT_CMD or pass --assistant-cmd to override the
launch command for either surface. The neutral override takes precedence overGOPHER_AI_TMUX_CLAUDE_CMD and --claude-cmd, which remain supported for
Claude compatibility. Defaults are claude --dangerously-skip-permissions
and codex --dangerously-bypass-approvals-and-sandbox.