Omit skill content from session exports
Skill bodies bloat exports and leak internal instructions.
Both Markdown and HTML formatters now emit a short placeholder.
Assisted-by: Claude Opus 4.6 via Claude Code
diff --git a/ai/claude/skills/dump-session/scripts/dump-session-html.sh b/ai/claude/skills/dump-session/scripts/dump-session-html.sh
index 8c9e8e70..8aed1df1 100755
--- a/ai/claude/skills/dump-session/scripts/dump-session-html.sh
+++ b/ai/claude/skills/dump-session/scripts/dump-session-html.sh
@@ -67,7 +67,7 @@ MESSAGES_HTML=$(echo "$JSON" | jq -r '.messages[] | @base64' | while read -r enc
<div class="message message-skill">
<details class="skill-content">
<summary>Skill loaded: ${skill_name}</summary>
- <div class="skill-body">${content_html}</div>
+ <div class="skill-body"><p><em>Skill content omitted</em></p></div>
</details>
</div>
MSGEOF
diff --git a/ai/claude/skills/dump-session/scripts/dump-session.sh b/ai/claude/skills/dump-session/scripts/dump-session.sh
index 8fb17d61..1da71e90 100755
--- a/ai/claude/skills/dump-session/scripts/dump-session.sh
+++ b/ai/claude/skills/dump-session/scripts/dump-session.sh
@@ -26,7 +26,7 @@ OUTPUT="${2:-/dev/stdout}"
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"
+ "<details><summary>Skill loaded: \($skill_name)</summary>\n\n[Skill content omitted]\n\n</details>\n"
elif .role == "user" then
"### User <sub>\(.timestamp)</sub>\n\n\(.content)\n"
elif .role == "assistant" then