From meta
Captures session goal and file pointers to produce a clean prompt for a fresh Claude chat. Use when context degrades or you need a handoff instead of /compact.
How this skill is triggered — by the user, by Claude, or both
Slash command
/meta:refresh lite | full | ultralite | full | ultraThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Long sessions rot: the window fills with stale back-and-forth and outputs get worse. `/compact` summarizes the mess in place and keeps going in the *same* polluted window. Refresh does the opposite. It captures the goal of your next session, points to the right files, and hands you a clean prompt to paste into a fresh chat. Rebuild, not summarize.
Long sessions rot: the window fills with stale back-and-forth and outputs get worse. /compact summarizes the mess in place and keeps going in the same polluted window. Refresh does the opposite. It captures the goal of your next session, points to the right files, and hands you a clean prompt to paste into a fresh chat. Rebuild, not summarize.
full when none is given./Users/.../Projects/...) → survives. Reference the path.media_id, a URL) → survives. Reference the id/URL instead of copying.outputs/, a /tmp path, or data that lives only in this chat) → does not survive. A pointer here is worthless next session./Users/<you>/... path is useless to them. For each referenced file:
ben-voice.md").Resources/.../reference-anchor.png" / "it's going to a teammate, so I embedded the full ben-voice.md and dropped the local paths")./tmp path, and never let the reader fall back to searching past conversations. That retrieval is fuzzy and returns fragments, which is exactly what this skill exists to prevent.CLAUDE.md / AGENTS.md, or any always-loaded context). The new session gets these for free, so listing them just wastes context. (Skip this drop in travels mode, the reader's environment won't auto-load your files.)/tmp. If you can't tell which path is persistent, ask once. Decide the shape:
refresh-<goal-slug>.md in the project root. Use when the handoff is just pointers plus inline text and every asset it references is already reachable by the reader. Nothing to carry → one file.refresh-<goal-slug>/ (the .md plus the assets inside it): use when you had to physically carry assets, sandbox-only, chat-only, or (in travels mode) local-only files the reader doesn't have. Reference them by their relative in-folder paths. More than one file to carry → a folder; in travels mode this folder is what the user sends/zips to the reader.Emit exactly this, filled in. Omit sections that don't apply to the level.
# Session refresh — <goal>
Continuing work in <project / working directory>. Goal of this session: <goal>
## Where things stand (full + ultra)
<what's done, key decisions>
## Next steps
1. ...
## Files to open (read these, don't re-derive)
- <path> — <why it matters>
## Carried-over data (only if it lives nowhere else)
<finalized data that exists only in this chat, verbatim — so the next session has it>
## Avoid repeating (ultra only)
- <dead-end / rejected approach>
## Skills to run (ultra only)
- /<skill>
After printing, tell the user in one line what to do with it: "paste this into a fresh chat to continue" (stays here), or "send this to your teammate, they paste it into a fresh chat" plus what to attach (travels).
3plugins reuse this skill
First indexed Jun 26, 2026
npx claudepluginhub naveedharri/benai-skills --plugin metaCaptures session goal and file pointers to produce a clean prompt for a fresh Claude chat. Use when context degrades or you need a handoff instead of /compact.
Writes a handoff diary entry and restarts the session with a clean context window, preserving state. Useful when context window is heavy or before task routing.
Compacts a conversation into a handoff document for another agent to continue the work without rederiving context. Useful when ending a session or starting fresh.