Collapse skill content in Markdown session exports
Full skill text dominated the transcript, burying the conversation.

Assisted-by: Claude Opus 4.6 via Claude Code
change kwrzqrynonomprqynwlkymotlnlzmovz
commit e8ac1c9533a86d0bf9af2dda6fc4f288f015ddce
author Alpha Chen <alpha@kejadlen.dev>
date
parent wzqlwynz
diff --git a/ai/claude/skills/dump-session/scripts/dump-session.sh b/ai/claude/skills/dump-session/scripts/dump-session.sh
index 2af63518..8fb17d61 100755
--- a/ai/claude/skills/dump-session/scripts/dump-session.sh
+++ b/ai/claude/skills/dump-session/scripts/dump-session.sh
@@ -23,7 +23,11 @@ OUTPUT="${2:-/dev/stdout}"
 "$SCRIPT_DIR/parse-session.sh" "$1" | jq -r '
   # Format conversation
   (.messages | map(
-    if .role == "user" then
+    if .role == "user" and .kind == "skill" then
+      (.content | split("\n") | map(select(startswith("# ")))[0] // "Skill Content" |
+        ltrimstr("# ")) as $skill_name |
+      "<details><summary>Skill loaded: \($skill_name)</summary>\n\n\(.content)\n\n</details>\n"
+    elif .role == "user" then
       "### User <sub>\(.timestamp)</sub>\n\n\(.content)\n"
     elif .role == "assistant" then
       ([.tools[] |