Skip to content
Development
Skill

/export-session-as-markdown

Use when the user wants to export a Claude Code session transcript as a readable Markdown file — converts the current session (or a specified transcript path) into GitHub-flavored Markdown with metadata header, collapsible tool results, and thinking blocks

From plugin
ed3d-plugins
24942 skills14 agents6 commands1 MCP
Install
$ npx -y skills add ed3dai/ed3d-plugins --skill export-session-as-markdown --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/export-session-as-markdown

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when the user wants to export a Claude Code session transcript as a readable Markdown file — converts the current session (or a specified transcript path) into GitHub-flavored Markdown with metadata header, collapsible tool results, and thinking blocks

SKILL.md

export-session-as-markdown.SKILL.md
name: export-session-as-markdown
description: Use when the user wants to export a Claude Code session transcript as a readable Markdown file — converts the current session (or a specified transcript path) into GitHub-flavored Markdown with metadata header, collapsible tool results, and thinking blocks

Export Session as Markdown

Export a Claude Code session transcript to a human-readable GitHub-flavored Markdown file.

Prerequisites

  • The `ed3d-session-reflection` plugin must be installed (provides the `reduce-transcript.py` script).
  • The current session's transcript path must be available (injected by the SessionStart hook). If it is not available, ask the user for the transcript path.

Invocation

The user may invoke this as:

  • `/export-session-as-markdown` — export the current session
  • `/export-session-as-markdown /path/to/transcript.jsonl` — export a specific transcript
  • `/export-session-as-markdown /path/to/transcript.jsonl /path/to/output.md` — export to a specific output path

Steps

1. Determine the transcript path

If an argument was provided, use it as the transcript path. Otherwise, use the current session's transcript path from the SessionStart hook injection.

If you cannot determine the transcript path, tell the user:

I don't know the current session's transcript path.
Either provide a path: /export-session-as-markdown /path/to/session.jsonl
Or ensure the ed3d-session-reflection SessionStart hook is active.

2. Determine the output path

If a second argument was provided, use it as the output path. Otherwise, default to the current working directory with a descriptive filename:

session-transcript-YYYY-MM-DD.md

If a file with that name already exists, append a counter: `session-transcript-YYYY-MM-DD-2.md`.

3. Export the transcript

Run the script with the `--markdown` flag:

python3 "${CLAUDE_PLUGIN_ROOT}/scripts/reduce-transcript.py" "<transcript_path>" "<output_path>" --markdown

4. Report the result

Tell the user where the file was written and its size. Example:

Exported session transcript to ./session-transcript-2026-03-20.md (346 KB)
Read more
Ships withed3d-plugins

Ed's repo of Claude Code plugins, centered around a research-plan-implement workflow. Only a tiny bit cursed. If you're lucky.

Get the whole plugin

Other skills on ed3d-plugins.