--- name: project description: "Use when the user says 'save project', 'handoff', or when context is running low and state must be preserved." version: 1.0.0 --- # 💾 Project: Saving Project State... *Save and restore project state between CC sessions for seamless handoffs.* ## Activation When this skill activates, output: `💾 Project: Saving project state...` Then execute the protocol below. ## Protocol ### Saving (handoff): 1. **Capture current state:** - What was accomplished this session - What's currently in progress (uncommitted changes, partial work) - Open questions or decisions pending - Next steps in priority order - Key file paths that were modified 2. **Run git status** to capture uncommitted state 3. **Save project context to SQLite:** Write the payload to a file, then pipe it in with `-` as the argument. A payload on stdin is never seen by the shell's parser, so a redirection operator inside your prose cannot be read as one. ```bash cat context.json | python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" set-context - ``` `context.json` contains: ```json {"project":"","status":"active","current_branch":"","last_session_date":"","known_issues":"","backlog":""} ``` 4. **Also save markdown handoff** to `memory/projects/{project}-{date}.md` 5. **Present the ready-to-paste prompt** for the next CC session ### Loading (restore): 1. **Load project context from SQLite:** ```bash python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" get-context ``` 2. **Load recent sessions:** ```bash python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" get-sessions --limit 3 ``` 3. **Load plan if exists:** ```bash python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" get-plan ``` 4. **Fallback:** Check `memory/projects/` for markdown handoffs 5. **Present combined state** so CC can continue immediately ## Inputs - Project name - Current session context (what was done, what's pending) ## Outputs - Project context saved to SQLite database - Markdown handoff in memory/projects/ (backup) - Ready-to-paste prompt for next CC session ## Example Usage **User:** "context is running low: save project" ``` 💾 Project: Saving project state... Saved: memory/projects/adminstack-2026-02-18.md --- PASTE INTO NEXT CC SESSION --- Working directory: /path/to/your-project Read $MEMSTACK_PATH/MEMSTACK.md Resume AdminStack. Last session completed: - Built CC Monitor page with auto-refresh - Fixed API key validation Next steps: 1. Build cc-reporter.js script 2. Add WebSocket updates --- END HANDOFF --- ``` ## Level History - **Lv.1**: Base: Session state capture and handoff generation. (Origin: MemStack v1.0, Feb 2026) - **Lv.2**: Enhanced: Added YAML frontmatter, activation message, template integration. (Origin: MemStack v2.0 MemoryCore merge, Feb 2026) - **Lv.3**: Advanced: SQLite-backed project context, combined restore from DB + sessions + plan. (Origin: MemStack v2.1 Accomplish-inspired upgrade, Feb 2026)