From deep-kiss
Use when the user invokes /aftercare to capture lessons from a just-fixed mistake or to retrospectively review a session for skill/memory candidates. Dispatches two stages of subagents — Stage 1 judges candidates against 4 criteria (recurrence/generalizability/proceduralization/trigger-clarity), Stage 2 drafts the artifact (skill bundle or memory-file entry). User-explicit invocation only; do NOT trigger automatically. Do NOT use for in-progress debugging — only after a mistake is fixed.
How this skill is triggered — by the user, by Claude, or both
Slash command
/deep-kiss:aftercareThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Series flow: **flirt**(explore) → **deep-kiss**(confirm) → implement → **aftercare**(restorative care).
Series flow: flirt(explore) → deep-kiss(confirm) → implement → aftercare(restorative care).
After fixing a mistake, or at a session retrospective moment, the user invokes /aftercare. The main context acts only as a thin orchestrator — judgment and drafting are delegated to subagents to keep the main context clean.
/aftercareskill: write a new skill file (SKILL.md + scripts/, references/ if needed)memory-file: a short addition to AGENTS.md or CLAUDE.md at the project rootdrop: not worth capturing — do nothingExecute in order. Each step is short; the main context handles only dispatch and user interaction.
skills/aftercare/stage1-judge-prompt.md as the prompt and the above context as input.candidates:
- topic: <one line>
bucket: skill | memory-file | drop
rationale: <one line>
drop: One-line notice: "Not recording — reason: ." Move to next candidate.
memory-file:
AGENTS.md and CLAUDE.md exist at the project root → note as project_state.skills/aftercare/stage2-memory-drafter-prompt.md as the prompt. Input: candidate + project_state.artifact_type: memory-file
target_file: AGENTS.md
operation: append
section_heading: "## ..." # omit unless operation=insert-section
content: |
...
notes: ...
target_file, operation, and a content preview, then ask for approval.target_file doesn't exist at the project root, create an empty file (one-line notice), then append or insert into the specified section. Rejected with feedback → re-dispatch (2 attempts total). If the limit is exceeded, show the last raw output and ask the user to handle it manually.skill:
"Where would you like to install this skill? (1) project —
./.claude/skills/<name>/+./.codex/skills/<name>/(2) user —~/.claude/skills/<name>/+~/.codex/skills/<name>/"
skills/aftercare/stage2-skill-drafter-prompt.md as the prompt. Input: candidate + rejection feedback if this is a re-dispatch.artifact_type: skill
skill_name: <kebab-case>
files:
- path: SKILL.md
content: |
...
- path: scripts/...
content: |
...
notes: ...
notes, then ask for approval..codex/ doesn't exist, mkdir it and give a one-line notice. On filename conflict, ask the user: overwrite / rename / skip.When a single /aftercare invocation is fully processed, print a one-line summary: "Result: skill ×A (path: ...), memory ×B (file: ...), drop ×C."
| Situation | Handling |
|---|---|
| Stage 1 output parse failure | Re-dispatch once (with structure-correction instruction). If it still fails, show raw output and ask the user to decide. |
| Stage 2 output parse failure or user rejection | Up to 2 total retries (attach feedback/error to input). If exceeded: raw output + ask user to handle manually. |
| Rejection with no feedback | Ask "What should be changed?" once; if no response, skip that candidate. |
| Filename conflict (skill) | User chooses: overwrite / rename / skip. |
.codex/ directory absent | mkdir + one-line notice. |
~/.claude/MEMORY.md or the auto-memory system.AGENTS.md or CLAUDE.md at the project root are valid memory-file targets.Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub tgoddessana/deep-kiss --plugin deep-kiss