AgentStack
SKILL verified MIT Self-run

Chat Snapshot

skill-daiyanhasin-chat-snapshot-skill-chat-snapshot-skill · by daiyanHasin

>

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-daiyanhasin-chat-snapshot-skill-chat-snapshot-skill

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Chat Snapshot? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Chat Snapshot Skill

Saves and restores full conversation context as a compact, portable JSON file. Works across Claude, ChatGPT, Gemini, or any LLM.


Command: /export

When the user types /export (or /snapshot, /save, /compress):

Step 1 — Warn about cost

Say briefly: "Compressing now — this uses some tokens to read the full chat. Save early and often next time!"

Step 2 — Analyze the full conversation

Read the ENTIRE conversation from the very first message to now. Do not skip anything.

Step 3 — Generate a filename

Derive a short, meaningful filename from the conversation topic. Use the first 4–6 words of the goal, lowercase, hyphenated. Examples:

  • "python-finance-tracker-cli"
  • "claude-skill-chat-snapshot"
  • "react-dashboard-dark-mode"

Never use "chat-snapshot" as the filename. Always reflect the actual topic.

Step 4 — Build the JSON snapshot

Output ONLY this exact JSON structure, filled in accurately. Be ruthless about compression — every field must be concise. No filler, no repetition.

{
  "snapshot_version": "1.0",
  "suggested_filename": ".json",
  "exported_at": "",
  "llm_source": "Claude",
  "goal": "",
  "context": "",
  "progress": [
    "",
    ""
  ],
  "artifacts": [
    {
      "name": "",
      "language": "",
      "description": "",
      "status": "complete | partial | broken"
    }
  ],
  "open_issues": [
    "",
    ""
  ],
  "next_steps": [
    "",
    ""
  ],
  "key_facts": {
    "": "",
    "": ""
  },
  "full_summary": "",
  "resume_prompt": ""
}

Resume prompt format

The resume_prompt must be fully self-contained — it should work when pasted into ANY LLM even if the skill is not installed. Use this format, under 200 words:

I'm going to give you my conversation context from a previous chat. Please read it carefully and resume helping me from where we left off. Do not ask me to re-explain anything below.

PROJECT: 
STACK: 
DONE: 
ARTIFACTS: 
OPEN ISSUES: 
NEXT ACTION: 

Please confirm you've read this and tell me what we'll work on first.

Do NOT include any explanation inside the JSON. Output only valid JSON.

Step 5 — Instruct the user to save it

After outputting the JSON, say:

> ✅ Snapshot ready. > Save the JSON above as **`** (shown in the suggestedfilename field). > > **To resume in Claude:** Start a new chat, upload the file, and say "resume from this snapshot." > **To resume in ChatGPT / Gemini / any LLM:** Copy the resumeprompt` field and paste it as your first message. No upload needed.


Resuming from a snapshot (Claude only)

When the user uploads a .json file and it looks like a chat snapshot (has fields like goal, progress, next_steps), OR when they say "resume", "restore", "continue from this", "here is my snapshot":

Step 1 — Parse the snapshot

Read the uploaded or pasted JSON.

Step 2 — Restore context silently

Do NOT ask the user to explain anything. Treat the snapshot as full working memory immediately.

Step 3 — Confirm restoration

Reply with:

> 🔁 Context restored. > Goal: ` > **Done:** > **Open issues:** > **Up next:** ` > > Ready — what do you want to work on?


Incremental Export

If the user has a previous snapshot and wants to update it:

  • Ask: "Do you have a previous snapshot? Upload it and I'll only summarize what changed."
  • If yes: read the old JSON, identify only what is new or changed since then, merge and output the full updated JSON.
  • This saves tokens — no need to re-summarize unchanged content.

Tips printed after every /export

Always append this after the snapshot:

> 💡 Pro tips: > - Export every 20–30 messages — don't wait until quota is almost gone > - In ChatGPT/Gemini: just paste the resume_prompt field — no upload, no skill needed > - In Claude: upload the JSON file and say "resume from this snapshot" > - For updates, keep your last snapshot handy to do an incremental export


Reference files

  • references/sample-snapshot.json — example of a complete snapshot output
  • references/resume-prompt-template.md — guide for writing good resume prompts

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.