> 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.
curl "https://skillshub.wtf/michaelboeding/skills/sidequest?format=md"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
-
Gathers context (unless
--no-context):- Current working directory
- Current git branch
- Brief summary of what's being worked on
- Key files recently modified/read
-
Opens new terminal tab/window:
- macOS Terminal.app or iTerm2 supported
- Automatically detects which terminal is in use
-
Starts Claude with context:
cd "<current_directory>" && claude -p "<context_prompt>" -
Returns control to original session (user continues main task)
Flags
| Flag | Description |
|---|---|
--no-context | Start fresh without context from parent session |
--iterm | Force use of iTerm (auto-detected by default) |
--terminal | Force 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-contextflag (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":
- Summarize the current conversation (what task is being worked on, key decisions made)
- Get current git branch:
git branch --show-current - Identify key files from recent tool calls
- 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 (
claudecommand 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 stashif 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.