> sidequest

Spawn a new Claude Code session in a separate terminal to work on a different task, optionally with context from the current session. Use when you need to work on something else without losing your current progress.

fetch
$curl "https://skillshub.wtf/michaelboeding/skills/sidequest?format=md"
SKILL.mdsidequest

Sidequest: Spawn Parallel Claude Sessions

Launch a new Claude Code session in a separate terminal to work on a different task while keeping your current session active.

Usage

/sidequest "Add a settings page with dark mode toggle"
/sidequest "Set up the database schema" --no-context
/sidequest  # Interactive prompt for task description

What It Does

  1. Gathers context (unless --no-context):

    • Current working directory
    • Current git branch
    • Brief summary of what's being worked on
    • Key files recently modified/read
  2. Opens new terminal tab/window:

    • macOS Terminal.app or iTerm2 supported
    • Automatically detects which terminal is in use
  3. Starts Claude with context:

    cd "<current_directory>" && claude -p "<context_prompt>"
    
  4. Returns control to original session (user continues main task)

Flags

FlagDescription
--no-contextStart fresh without context from parent session
--itermForce use of iTerm (auto-detected by default)
--terminalForce use of Terminal.app (auto-detected by default)

Implementation

When user invokes /sidequest, execute the following:

Step 1: Parse Arguments

Check if the user provided:

  • A task description (required, or prompt for it)
  • --no-context flag (skip context entirely)

If no task description provided, ask the user what they want to work on.

Step 2: Ask About Context (unless --no-context)

IMPORTANT: If --no-context was NOT specified, use the AskUserQuestion tool to ask:

Use AskUserQuestion with:
- question: "Include a summary of this chat in the sidequest?"
- header: "Context"
- options:
  1. "Yes, include summary" - "Pass context about current work to help the new session understand what you're doing"
  2. "No, start fresh" - "Start the sidequest with no context from this session"

Step 3: Gather Context (if user chose to include summary)

If user selected "Yes, include summary":

  1. Summarize the current conversation (what task is being worked on, key decisions made)
  2. Get current git branch: git branch --show-current
  3. Identify key files from recent tool calls
  4. Note any relevant todos or blockers

If user selected "No, start fresh":

  • Skip context gathering, proceed with just the task description

Step 4: Build Context Prompt

Format the prompt for the new session:

With context:

SIDEQUEST from main task.

Main task context:
- Working directory: /path/to/project
- Git branch: feature/user-auth
- Was working on: <summary of current task>
- Key files: <recent files>
- Progress: <key progress and decisions made>

Your sidequest task: <user's task description>

This is separate from the main task. Focus only on this sidequest.

Without context:

SIDEQUEST MODE

Your task: <user's task description>

This is an independent task. Focus only on completing this sidequest.

Step 5: Detect Terminal and Launch

# Detect terminal
if [[ -z "$TERMINAL_APP" ]]; then
  if [[ "$TERM_PROGRAM" == "iTerm.app" ]]; then
    TERMINAL_APP="iTerm"
  else
    TERMINAL_APP="Terminal"
  fi
fi

# Escape the prompt for shell
ESCAPED_PROMPT=$(echo "$CONTEXT_PROMPT" | sed 's/"/\\"/g')

# Launch based on terminal
if [[ "$TERMINAL_APP" == "iTerm" ]]; then
  osascript -e "tell application \"iTerm\"
    tell current window
      create tab with default profile
      tell current session
        write text \"cd '$PWD' && claude -p \\\"$ESCAPED_PROMPT\\\"\"
      end tell
    end tell
  end tell"
else
  osascript -e "tell application \"Terminal\"
    activate
    do script \"cd '$PWD' && claude -p \\\"$ESCAPED_PROMPT\\\"\"
  end tell"
fi

Step 6: Confirm to User

After launching, inform the user:

Sidequest started in new terminal!
Task: <task description>
Continue your main quest here.

Example Workflow

Main terminal (building user authentication):

You: Working on the login API endpoint...
You: /sidequest "Add a settings page with dark mode toggle"

Claude: [AskUserQuestion]
        Include a summary of this chat in the sidequest?

        > Yes, include summary
          No, start fresh

You: (selects "Yes, include summary")

Claude: Sidequest started in new terminal!
        Task: Add a settings page with dark mode toggle
        Context: Included summary of current auth work
        Continue your main quest here.

You: (continues auth work)

New terminal (opens automatically):

Claude: SIDEQUEST MODE
        Task: Add a settings page with dark mode toggle

        Context from main session:
        - Working on: Building user authentication with JWT
        - Branch: feature/user-auth
        - Key files: auth.ts, login.tsx, middleware.ts
        - Progress: Login endpoint complete, working on token refresh

        Let me look at the existing pages structure...

Example without context:

You: /sidequest "Set up CI/CD pipeline" --no-context
Claude: Sidequest started in new terminal!
        Task: Set up CI/CD pipeline
        (No context passed - starting fresh)

Script Location

The sidequest shell script is located at:

${CLAUDE_PLUGIN_ROOT}/skills/sidequest/scripts/sidequest.sh

Execution

To run a sidequest:

bash "${CLAUDE_PLUGIN_ROOT}/skills/sidequest/scripts/sidequest.sh" \
  --task "Your task description" \
  --context "Summary of current work" \
  --branch "$(git branch --show-current 2>/dev/null || echo 'N/A')" \
  --files "auth.ts,login.tsx"

Or without context:

bash "${CLAUDE_PLUGIN_ROOT}/skills/sidequest/scripts/sidequest.sh" \
  --task "Your task description" \
  --no-context

Requirements

  • macOS (uses osascript for terminal control)
  • Terminal.app or iTerm2
  • Claude Code CLI installed (claude command available)

Notes

  • The sidequest runs independently - changes in one session don't affect the other
  • Both sessions share the same working directory and git state
  • Be careful with conflicting file edits between sessions
  • Use git stash if you need to switch context between sessions

> related_skills --same-repo

> xlsx

Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas

> voice-generation

Use this skill for AI text-to-speech generation. Triggers include: "generate voice", "create audio", "text to speech", "TTS", "read this aloud", "generate narration", "create voiceover", "synthesize speech", "podcast audio", "dialogue audio", "multi-speaker", "audiobook" Supports Google Gemini TTS, ElevenLabs, and OpenAI TTS.

> video-producer-agent

Use this skill to create complete videos with voiceover and music. Triggers: "create video", "product video", "explainer video", "promo video", "demo video", "training video", "ad video", "commercial", "marketing video", "video with voiceover", "video with music", "brand video", "testimonial video" Orchestrates: script, voiceover, background music, video clips/images, and final assembly.

> video-generation

Use this skill for AI video generation. Triggers include: "generate video", "create video", "make video", "animate", "text to video", "video from image", "video of", "animate image", "bring to life", "make it move", "add motion", "video with audio", "video with dialogue" Supports text-to-video, image-to-video, video with dialogue/audio using Google Veo 3.1 (default) or OpenAI Sora.

┌ stats

installs/wk0
░░░░░░░░░░
github stars10
██░░░░░░░░
first seenMar 18, 2026
└────────────

┌ repo

michaelboeding/skills
by michaelboeding
└────────────

┌ tags

└────────────