night-park
Parks the current Claude Code session before going to sleep. Analyzes the conversation, writes a handoff document to docs/handoffs/ in the current project, mirrors the same summary to engram tagged with the session ID, and prints the exact `claude --resume <id>` command for tomorrow. Zero interaction — runs end-to-end on a single invocation. Trigger: /night-park, night park, park session, me voy a dormir, guardar sesion.
What this skill does
# night-park
> One-shot "park this session" command for end-of-day handoff across multiple
> parallel Claude Code sessions. Reads the current `CLAUDE_CODE_SESSION_ID`,
> drafts a substantive summary from the conversation, persists it to disk and
> to engram, and emits the resume command.
**Triggers**: `/night-park`, night park, park session, me voy a dormir, guardar sesion, parking nocturno, handoff session
---
## Purpose
Working very late across 3+ Claude Code sessions in parallel makes it
impossible to remember tomorrow which session was attacking which problem.
This skill drops a tagged breadcrumb per session: a real summary you can read
in 30 seconds and resume the EXACT session by ID with one command.
The handoff lives in two places:
- **`docs/handoffs/session-<id>-<slug>.md`** — readable by you, by your IDE,
and by any future Claude session opened in that project. Local to the
project; not meant to be committed (gitignored).
- **Engram** with `topic_key: handoff/<slug>` and the `session_id` embedded —
searchable from any future session in any project via `mem_search handoff`.
---
## Process
The skill runs end-to-end with NO user interaction. No drafts to confirm, no
slug to pass, no questions. The user invoked this because they want to stop
thinking — respect that.
### Step 1 — Read the session ID
Read the environment variable `CLAUDE_CODE_SESSION_ID`. Use the full UUID
(do NOT truncate). If the variable is empty, abort with a one-line message:
`night-park: CLAUDE_CODE_SESSION_ID not available in this environment — cannot park.`
```bash
echo "$CLAUDE_CODE_SESSION_ID"
```
### Step 2 — Derive a slug from the conversation
Analyze the conversation history and produce a 3-5 word kebab-case slug that
captures the PROBLEM being worked on (not a generic verb). Examples of good
slugs:
- `pro-plus-duplicate-customer`
- `n-plus-one-user-list`
- `auth-middleware-token-leak`
- `night-park-skill-creation`
Bad slugs (do NOT use):
- `session-work`, `debug-stuff`, `today`, `wip`, `task` — useless tomorrow.
The slug MUST be ≤ 60 chars, lowercase, alphanumerics + hyphens only.
### Step 3 — Draft the summary from the conversation
Read the conversation context and fill these sections substantively. These
are NOT placeholders — they are the entire point of the document.
| Section | What goes here | Length |
|---------|----------------|--------|
| `## Qué estábamos haciendo` | The OBJECTIVE of the session — what problem we were attacking, why it mattered, the user's original ask. | 2-4 lines |
| `## Dónde quedamos` | Concrete current state — what was done, what decisions were made, what is half-finished, what is blocked. | 2-4 lines |
| `## Próximo paso` | 1-3 bulleted, actionable items — the FIRST thing to do tomorrow when reopening. Each bullet must be doable, not abstract. | 1-3 bullets |
| `## Archivos tocados / relevantes` | Files modified or central to the discussion, with a one-line reason each. | bullet list |
| `## Contexto técnico clave` | Only if there is a non-obvious gotcha, a key decision, a command to remember, or an external link. **Omit the entire section if there is nothing substantive.** | optional |
Write in the same language the user has been using in the session
(Colombian-style Spanish or English). Default to the dominant language of the
session.
### Step 4 — Pick a title
The first line of the document is `# <Title>`. The title is one human-readable
sentence that names the problem — NOT the slug. Examples:
- `# Pro Plus: duplicate customer on signup flow`
- `# N+1 query in /api/users list endpoint`
- `# Creating night-park skill for end-of-day session parking`
### Step 5 — Write `docs/handoffs/session-<id>-<slug>.md`
Path is relative to the CURRENT working directory (the project root). Create
`docs/handoffs/` if missing. Use this exact structure:
```markdown
# <Title>
**Session ID**: <full-uuid>
**Resume con**: `claude --resume <full-uuid>`
**Fecha**: <YYYY-MM-DD HH:MM>
**Proyecto**: <basename of CWD>
## Qué estábamos haciendo
<2-4 lines>
## Dónde quedamos
<2-4 lines>
## Próximo paso
- <actionable item 1>
- <actionable item 2>
## Archivos tocados / relevantes
- `path/to/file.ts` — <why it matters>
## Contexto técnico clave
<omit this section entirely if nothing substantive>
```
Use the current local date/time for the `Fecha` field. Use the basename of
CWD for `Proyecto`.
### Step 6 — Update `.gitignore`
Check the project's `.gitignore` (in CWD). If `docs/handoffs/` is NOT already
ignored, append it:
```
# Local session handoffs from /night-park — not tracked
docs/handoffs/
```
If there is no `.gitignore` at all, create one with just that block. Do NOT
add anything else. Do NOT touch a `.gitignore` outside CWD.
### Step 7 — Save to engram
Call `mem_save` with:
- `title`: same as the document title
- `type`: `discovery`
- `scope`: `personal`
- `project`: basename of CWD
- `topic_key`: `handoff/<slug>`
- `session_id`: the full UUID from Step 1
- `content`: a structured block following the global engram format:
```
**What**: <one-line summary of what the session was doing>
**Why**: <user's motivation / original ask>
**Where**: <files affected, comma-separated>
**Learned**: <gotchas or key decisions, if any — else omit this field>
**Session ID**: <full-uuid>
**Resume**: `claude --resume <full-uuid>`
**Handoff doc**: docs/handoffs/session-<id>-<slug>.md
**Next step**: <first item from the Próximo paso list>
```
### Step 8 — Print the resume command
After all writes succeed, print exactly ONE line to the user — no extra
commentary, no follow-up question:
```
🛏️ Parked. Tomorrow: claude --resume <full-uuid>
```
(The bed emoji is the ONLY emoji allowed in this skill's output. It is a
deliberate signal that the session is closed.)
If any step in 5-7 failed, print the error AND still print the resume line if
the session ID is known — the user must be able to reopen tomorrow even if
the handoff doc didn't write.
---
## Rules
1. **Zero interaction.** Never ask the user anything. Never show a draft for
confirmation. The user invoked this because they want to stop thinking.
2. **Read `CLAUDE_CODE_SESSION_ID` directly.** Do not ask the user for it.
Do not truncate it. Use the full UUID everywhere it appears.
3. **Substantive sections, not placeholders.** `## Qué estábamos haciendo`,
`## Dónde quedamos`, and `## Próximo paso` must be filled from the actual
conversation. If you cannot fill them, you did not read the conversation
— re-read before writing.
4. **Slug must name the PROBLEM**, not the activity. `debug-stuff` and `wip`
are banned.
5. **`docs/handoffs/` belongs in `.gitignore`.** These are personal
late-night notes, not project documentation. Append to `.gitignore` if
missing. Do not touch `.gitignore` outside CWD.
6. **Engram save mirrors the document.** Same title, same problem, with the
session_id embedded so future `mem_search handoff` returns this entry.
7. **Match the session's language.** If the conversation was in Spanish,
write the handoff in Spanish. If English, English. Section headers stay
in Spanish as defined above — they are the skill's contract.
8. **Output is ONE line at the end.** The resume command. Nothing else. The
user is going to sleep.
9. **No commit, no push, no git operations beyond `.gitignore`.** Per the
global rule "never commit without explicit user request for THAT
action".
10. **No engram session_summary call.** This skill is a parking breadcrumb,
not a session close. The user may keep working tomorrow in the same
session via `--resume`. Calling `mem_session_summary` would create a
false "session ended" record.
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.