with one click
Resume work from previous session with full context restoration
npx skills add https://github.com/0-CODE/viepilot --skill vp-resumeCopy and paste this command into Claude Code to install the skill
Resume work from previous session with full context restoration
npx skills add https://github.com/0-CODE/viepilot --skill vp-resumeCopy and paste this command into Claude Code to install the skill
LLM-driven QA agent team generator — research codebase, generate context-aware QA scanning agents
Autonomous execution loop with control points and recovery
Brainstorm session to collect ideas and decisions for the project
Convert brainstorm sessions into executable artifacts
Import and triage tickets from Excel/M365 Online, Google Sheets, or CSV/TSV files — classify as BUG/ENH, accept/decline via AskUserQuestion, write back to source, generate TRIAGE report
Audit state, docs drift, and stack best-practice compliance — works on any project
| name | vp-resume |
| description | Resume work from previous session with full context restoration |
| version | 0.1.1 |
Output this banner as the first thing on every invocation — before questions, work, or any other output:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
VIEPILOT ► VP-RESUME v0.1.1 (fw 2.19.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
## Version Update Check (ENH-072)
After displaying the greeting banner, run:
node "$HOME/.claude/viepilot/bin/vp-tools.cjs" check-update --silent
If exit code = 1 (update available — new version printed to stdout): Display notice banner before any other output:
┌──────────────────────────────────────────────────────────────────┐
│ ✨ ViePilot {latest_version} available (installed: {current}) │
│ npm i -g viepilot && vp-tools install --target {adapter_id} │
└──────────────────────────────────────────────────────────────────┘
Replace {latest_version} with stdout from the command, {current} with the installed
version, {adapter_id} with the active adapter (claude-code / cursor / antigravity / codex / copilot).
If exit code = 0 or command unavailable: silent, continue.
Suppression rules:
--no-update-check flag on skill invocation → skip this step entirelyconfig.json → update.check: false → skip this step entirelyupdate_check_done session guard)
</version_check>
<persona_context>At skill start, run:
node "$HOME/.claude/viepilot/bin/vp-tools.cjs" persona auto-switch
node "$HOME/.claude/viepilot/bin/vp-tools.cjs" persona context
Inject the output as ## User Persona context before any task execution.
Silent if command unavailable or errors.
</persona_context>
Prompt user conversationally with options.
Use Claude Code tools: Bash (shell), Read (file), Edit + Write (file write/patch),
Grep (search), Glob (file patterns), LS, WebSearch, WebFetch,
Agent (spawn subagent — multi-level nesting supported)
Interactive: AskUserQuestion (deferred — preload via ToolSearch before first call)
Use Cursor tools: run_terminal_cmd (shell), read_file (read), edit_file (write/edit),
grep_search (search), web_search, codebase_search, list_dir, file_search
Interactive: text list fallback (AskQuestion available in Plan Mode only; Agent Mode = text)
Subagent: /multitask (user command, single-level only — not a callable tool)
MCP limit: 40 tools
Use Antigravity tools: shell (cmd), file_read, file_write, MCP plugins
Interactive: text fallback (TUI-based; no formal AskUserQuestion)
Skill path: .agents/skills/<skill>/SKILL.md (project) or ~/.gemini/antigravity/skills/ (global)
Note: Gemini CLI deprecated June 18, 2026 — use Antigravity CLI.
Use Codex tools: container.exec (sandboxed shell), apply_patch (file write), web_search
Interactive: text fallback (TUI Tab/Enter injection)
Config: ~/.codex/config.toml
Use Copilot tools: runCommands (shell), read/readfile (read), edit/editFiles (write),
code_search, find_references
Interactive: askQuestions (main agent only — NOT available in subagents; VS Code issue #293745)
Skill path: .github/agents/<name>.agent.md
<scope_policy>
vp-* skills in ViePilot workflows.non vp-*) are out of framework scope unless user explicitly opts in.vp-* skill.
</scope_policy><implementation_routing_guard>
/vp-auto when a task plan exists. See workflows/request.md.
</implementation_routing_guard>Reads:
.viepilot/HANDOFF.json.viepilot/TRACKER.md.viepilot/phases/{phase}/.continue-here.mdAfter: Context restored, ready to continue or route to appropriate action.
<execution_context> @$HOME/{envToolDir}/workflows/resume-work.md </execution_context>
Execute workflow from `@$HOME/{envToolDir}/workflows/resume-work.md`ls .viepilot/TRACKER.md
If not exists → Error: "No ViePilot project found. Run /vp-crystallize first."
Try HANDOFF.json first (preferred):
cat .viepilot/HANDOFF.json
Parse: phase, task, status, next_action, context_notes
Fallback to TRACKER.md:
cat .viepilot/TRACKER.md
Extract current state from Progress Overview section.
Load .continue-here.md if exists:
cat .viepilot/phases/{phase}/.continue-here.md
git status --porcelain
If changes exist, warn user and ask how to proceed.
Following AI-GUIDE.md strategy:
minimal_load:
- AI-GUIDE.md
- TRACKER.md
- PHASE-STATE.md (current phase)
task_load:
- tasks/{current_task}.md
- context_required files from task
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
VIEPILOT ► RESUME
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Project: {project_name}
Last Activity: {timestamp}
Current State:
├── Phase: {phase_number} - {phase_name}
├── Task: {task_number}/{total} - {task_name}
├── Status: {status}
└── Progress: [████████░░] {percent}%
Context Notes:
{context_notes from HANDOFF.json}
Next Action:
{next_action from HANDOFF.json}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Prompt user:
How would you like to proceed?
1. Continue from task {task} (recommended)
2. Restart current task
3. Skip to next task
4. View task details
5. Run /vp-status for full overview
6. Start /vp-auto for autonomous mode
Based on user choice:
Skill(skill="vp-status")Skill(skill="vp-auto", args="--from {phase}")# Update TRACKER.md with session info
# Clear HANDOFF.json (now active)
<success_criteria>