Auto-save research progress using sage_autosave_check MCP tool. INVOKE WHEN: user asks to research, compare, analyze, or investigate topics; after completing web searches; when synthesizing conclusions ("therefore", "in summary"). INVOKE FOR: checkpoint, save this, remember this, save my research. DO NOT INVOKE: for simple Q&A, code editing, or file operations unrelated to research.
Creates semantic checkpoints that preserve research state across context windows.
/plugin marketplace add b17z/sage/plugin install b17z-sage@b17z/sageThis skill inherits all available tools. When active, it can use any tool Claude has access to.
You have the ability to create semantic checkpoints that preserve research state across context windows. Use this proactively when you detect state transitions.
Checkpoint when you detect:
| Signal | Example Phrases |
|---|---|
| Conclusion reached | "So the answer is...", "This means...", "Therefore..." |
| Hypothesis validated | "This confirms...", "This rules out..." |
| Branch point | "We could either X or Y", "Two approaches..." |
| Constraint discovered | "Wait, that changes things...", "I didn't realize..." |
| Topic transition | Shift in focus, new entity/concept |
| User validation | "That makes sense", "Let's go with that", "Agreed" |
| Explicit request | "checkpoint", "save this", "remember this" |
When checkpointing, create a structured block:
id: [timestamp]_[short-description]
trigger: [manual | synthesis | branch_point | constraint | transition]
core_question: |
What decision or action is this research driving toward?
thesis: |
Current synthesized position (1-2 sentences)
confidence: [0.0-1.0]
open_questions:
- What's still unknown?
- What needs more research?
sources:
- id: [identifier]
type: [person | document | api | observation]
take: [Decision-relevant summary, 1-2 sentences]
relation: [supports | contradicts | nuances]
tensions:
- between: [source1, source2]
nature: What they disagree on
resolution: [unresolved | resolved | moot]
unique_contributions:
- type: [discovery | experiment | synthesis | internal_knowledge]
content: What WE found that isn't in external sources
action:
goal: What's being done with this research
type: [decision | output | learning | exploration]
Save checkpoints to ~/.sage/checkpoints/ (global Sage directory).
Filename format: YYYY-MM-DDTHH-MM-SS_short-description.yaml
When continuing from a checkpoint, inject it as context:
# Research Context (Restored from Checkpoint)
## Core Question
[core_question]
## Current Thesis (confidence: X%)
[thesis]
## Open Questions
[open_questions as bullets]
## Key Sources
[sources with relation indicators: [+] supports, [-] contradicts, [~] nuances]
## Tensions
[unresolved disagreements]
## Unique Discoveries
[unique_contributions]
Think of checkpointing like a game's autosave system. Call sage_autosave_check at these moments:
| Trigger Event | When | Game Analogy |
|---|---|---|
research_start | User asks research question | Entering boss room |
web_search_complete | After processing web search results | Picked up item |
synthesis | You say "So...", "Therefore...", "In summary..." | Quest complete |
topic_shift | User pivots to new topic | Switching levels |
user_validated | User confirms your finding ("yes", "agreed", "that's right") | Checkpoint reached |
constraint_discovered | New info changes approach | Plot twist |
branch_point | Multiple viable paths identified | Fork in road |
Call pattern:
sage_autosave_check(
trigger_event="synthesis",
core_question="What we're researching",
current_thesis="Where we are now",
confidence=0.75
)
The tool decides whether to save. If it saves, briefly confirm: "📍 Autosaved: [thesis]"
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.