Agent skill

Session To Post

by athola in athola/claude-night-market

Converts a Claude Code session into a blog post, case study, or Reddit post.

MITAuto-check passedWriting & Content

Install Session To Post

skills CLI
$ npx skills add athola/claude-night-market --skill session-to-post -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install athola/claude-night-market session-to-post --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/scribe/skills/session-to-post .claude/skills/session-to-post && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
session-to-post
GitHub stars
342
Token cost
~2.5k tokens
SKILL.md length
1,043 words
Files
4
Skills in repo
159
Repo updated
First seen
Licence
MIT

At a glance

Converts a Claude Code session into a blog post, case study, or Reddit post.

  • Works in 5 steps: Extract Session Context → Identify the Story → Draft the Post → …
  • Publishing dev blog content
  • SKILL.md covers When To Use, When NOT To Use, Integration Points and Methodology, plus 2 more sections
  • Calls make, git and cargo

What it does

Session To Post is an agent skill from athola/claude-night-market. Converts a Claude Code session into a blog post, case study, or Reddit post. Use when publishing dev blog content or community posts from real sessions.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files (for example `modules/narrative-structure.md`, `modules/reddit-format.md` and `modules/session-extraction.md`).

It sits in Writing & Content, covering Blog and article writing. It works with Reddit. The repository describes itself as: 23 Claude Code plugins: TDD enforcement hooks, git/PR workflows, spec-driven development, code review, project lifecycle, fix-from-error, maintenance automation, context… The licence is MIT.

When your agent uses it

  • Publishing dev blog content
  • Community posts from real sessions

Example prompts

  • “Use the session-to-post skill to convert a Claude Code session into a blog post, case study, or Reddit post”
  • “/session-to-post”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Extract Session Context
  2. Identify the Story
  3. Draft the Post
  4. Quality Gate
  5. Output

What it can do on your machine

Read from SKILL.md and the folder at commit 9f3eb00. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • make
    • git
    • cargo

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Session To Post loads about 2.5k tokens when it runs. Until then it costs about 42 tokens; SKILL.md has 1,043 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~42
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from athola/claude-night-market at commit 9f3eb00, republished under its MIT licence (© athola). 1,043 words, ~2,477 tokens.

Download SKILL.mdSave it as .claude/skills/session-to-post/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
session-to-post
description
Converts a Claude Code session into a blog post, case study, or Reddit post. Use when publishing dev blog content or community posts from real sessions.
globs
**/*.md
alwaysApply
false
category
artifact-generation
tags
blog, marketing, session-capture, case-study, storytelling, developer-experience, reddit
complexity
medium
model_hint
standard
estimated_tokens
3100
progressive_loading
true
modules
modules/session-extraction.md, modules/narrative-structure.md, modules/reddit-format.md
dependencies
scribe:slop-detector

Session to Post

Capture what happened in a Claude Code session and turn it into a blog post, case study, or social media thread that others can learn from.

The skill extracts the real story from git history, file changes, and conversation context, then shapes it into a narrative that shows process, not just results.

When To Use

  • After completing a meaningful chunk of work you want to share
  • Creating dev blog content from real sessions
  • Building case studies for tools, libraries, or techniques
  • Producing marketing content that demonstrates capability
  • Documenting a process for teammates who weren't in the session
  • Sharing a session story with a Reddit community (r/programming, r/rust, r/Python, r/ClaudeAI, etc.)

When NOT To Use

  • Writing API reference documentation (use scribe:doc-generator)
  • Creating step-by-step tutorials (use scribe:tech-tutorial)
  • Cleaning up existing prose (use scribe:slop-detector)
  • Internal project documentation (use sanctum:doc-updates)

Integration Points

This skill connects to several others in the ecosystem. Use them when the post needs more than prose.

NeedSkillWhat it adds
Terminal demo GIFscry:vhs-recordingRecord a build/test run as an animated GIF
Browser demo GIFscry:browser-recordingCapture a web UI walkthrough via Playwright
Composite mediascry:media-compositionStitch terminal and browser GIFs side-by-side
Proof of claimsimbue:proof-of-workVerify every number in the post with evidence
Code quality narrativepensive:code-refinementDescribe what was cleaned up and why
Review narrativeimbue:structured-reviewCapture review findings as post content
Change summaryimbue:catchupSummarize what changed for the post's "The Work" section
Diff analysisimbue:diff-analysisRisk-scored change breakdown for technical audiences
Recording Integration (scry)

When the post describes something visual (a running app, a test suite, a build pipeline) capture it instead of describing it.

Terminal recordings (build output, test runs, CLI demos):

Invoke Skill(scry:vhs-recording) with a tape that runs:
  make test        → shows 180 tests passing
  make play        → shows the build + server startup

Browser recordings (web apps, rendered output):

Invoke Skill(scry:browser-recording) with a Playwright spec that:
  navigates to the app
  interacts with it
  captures the result

Composition (side-by-side before/after, terminal and browser):

Invoke Skill(scry:media-composition) to stitch recordings into
a single visual that tells the story.

Place generated GIFs in docs/posts/assets/ and reference them from the markdown with relative paths.

Proof-of-Work Integration (imbue)

Every claim in the post should be verifiable. Before finalizing:

Invoke Skill(imbue:proof-of-work) to:
  - Tag each claim with [E1], [E2], etc.
  - Run verification commands
  - Report PASS / FAIL / BLOCKED

This prevents publishing posts with stale numbers or broken examples.

Methodology

Step 1: Extract Session Context

Load the session-extraction module for the full checklist.

Gather raw material from what actually happened:

  1. Git history: commits since the session started:
    bash
    git log --oneline --since="<session_start>" --stat
  2. File inventory: what was created and changed:
    bash
    git diff --stat <start_commit>..HEAD
  3. Test results: concrete evidence of what works:
    bash
    cargo test  # or the project's test command
  4. Metrics: scope and scale:
    bash
    find . -name "*.rs" -not -path "*/target/*" | xargs wc -l
  5. Conversation context: the user's goals, constraints, and decisions made during the session
Step 2: Identify the Story

Every session post answers three questions:

  1. What were we trying to do?: the goal, not the task list
  2. What did we actually do?: the real path, including pivots
  3. What came out of it?: concrete, measurable results

Look for:

  • The hook: what makes this interesting? A hard problem, a surprising approach, an impressive result
  • Turning points: where did the plan change? What broke? What worked unexpectedly?
  • The number: one metric that captures the outcome (lines written, tests passing, performance gain, time saved)
Step 3: Draft the Post

Choose format first:

FormatModuleWhen
Blog postnarrative-structureDev blog, company blog, personal site
Case studynarrative-structureMarketing, tool demonstrations
Social threadnarrative-structureTwitter/X, Bluesky, LinkedIn
Reddit postreddit-formatCommunity engagement, r/programming etc.

For Reddit: load modules/reddit-format.md instead of the blog template below. The structure, tone, and quality gate differ.

Load the narrative-structure module for blog/case-study templates.

Blog post structure (adapt to content):

markdown
# Title: [Verb] + [What] + [With What]

## Opening (2-3 sentences)
What we set out to do and why. No throat-clearing.

## Starting Point
Where things stood before. Concrete: file counts, code state,
what worked and what didn't.

## The Work
Key phases. Focus on decisions and pivots, not keystrokes.
- Phase 1: [what and why]
- Phase 2: [what and why]
Include GIFs from scry recordings where visual.

## How We Tested It
What verification looked like. Show the test run, the proof-of-work
evidence. Include terminal recording GIF of tests passing.

## Results
Hard numbers. Before/after. What works now.
Screenshots or browser recording GIF if visual.

## What's Next
Honest remaining work. No false completeness.

Tone:

  • Write like explaining to a colleague over coffee
  • Specifics over adjectives ("180 tests" not "comprehensive suite")
  • Show the mess: readers connect with pivots and debugging
  • Credit the tools and techniques that made it work
  • Under 1500 words unless the content demands more
Show full SKILL.md (449 more words)Show less
Step 4: Quality Gate

For blog posts and case studies:

  1. Slop check: Skill(scribe:slop-detector) on the draft
  2. Proof-of-work: Skill(imbue:proof-of-work) on all claims
  3. Recording check: does any section need a GIF?
  4. Title test: would you click this? Does it promise something specific?
  5. Opening test: does paragraph one say what the post is about?

For Reddit posts (additional gates):

  1. TL;DR present: is it after --- at the end?
  2. Lede not buried: is the most interesting thing in the first two sentences?
  3. Subreddit fit: does the content match the target subreddit's norms? Check the subreddit's top posts of the month.
  4. First comment drafted: are the repo link and any reference material ready to post as a follow-up comment?
  5. Header count: if the post is under 600 words, are headers absent (or replaced with bold inline labels)?
Step 5: Output

Write the post to the requested location (default: docs/posts/).

Report:

  • Format used (blog post / case study / Reddit post)
  • Word count
  • Slop score (blog/case-study only)
  • Verifiable claims count
  • Recordings generated (if any)
  • For Reddit: target subreddit and first-comment content

Example

A session that ported a Quake 2 engine from C to Rust:

Title: Rewriting a Quake 2 Engine in Rust with Claude Code

Opening: We took a 150,000-line C game engine and started rewriting it in Rust targeting WebAssembly. In one session we went from an empty workspace to a prototype loading real game data in the browser.

Starting point: A Yamagi Quake II fork compiled with Emscripten. Goal: idiomatic Rust with wasm-bindgen, glow for WebGL2, and matchbox for P2P multiplayer.

The work: Seven parallel agents built subsystems (collision, movement, filesystem, networking, renderer, server, client) while the main session coordinated integration. A Makefile with prerequisite checks automated the full build-to-browser pipeline including game data download.

How we tested: 180 unit tests across 13 crates. BSP loading verified against real Quake 2 demo pak0.pak. Browser diagnostics logged every init step. [Terminal GIF: make test output]

Results: 10,950 lines of Rust, 180 tests, real game data loading and flat-shaded BSP rendering in the browser with WASD movement and mouse look.

What's next: Textured rendering, collision debugging, sound, menus, multiplayer.

Every claim is checkable: line counts from wc -l, test counts from cargo test, file counts from filesystem log output.

Exit Criteria

  • Format selected (blog post, case study, or Reddit post)
  • Session brief compiled from git history and conversation context
  • Draft written to docs/posts/ (or specified path)
  • For blog/case-study: slop score reported, all claims tagged with evidence references
  • For Reddit: TL;DR present, lede in first two sentences, target subreddit identified, first comment drafted
  • Word count and verifiable claim count reported
  • Incomplete or unverifiable claims are flagged, not silently dropped

© athola, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files in plugins/scribe/skills/session-to-post of athola/claude-night-market.

  • SKILL.md
  • modules/narrative-structure.md
  • modules/reddit-format.md
  • modules/session-extraction.md

Open the folder on GitHubat commit 9f3eb00

Compare with similar skills

Session To Post next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Session To Post compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Session To Post this skillathola/claude-night-market342—~2.5kAutomated safety check: PassMIT
Blog RepurposeAgriciDaniel/claude-blog2.3k—~3kAutomated safety check: PassMIT
Content Creator ProLeoYeAI/openclaw-master-skills2.2k—~7.2kAutomated safety check: PassMIT
Blog RepurposeInfrasity-Labs/dev-gtm-claude-skills139—~2.3kAutomated safety check: PassMIT
Khazix WeChat Article WriterKKKKhazix/khazix-skills21k2 repos~2.9kAutomated safety check: PassMIT
Figurevectorize-io/hindsight47k—~1.9kAutomated safety check: PassMIT

Similar skills

  • Blog Repurpose

    AgriciDaniel/claude-blog

    Repurpose blog posts for social media, email, video, podcast, and community channels.

    2.3k GitHub stars~3k tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Content Creator Pro

    LeoYeAI/openclaw-master-skills

    Autonomous content creation engine for agents. An agent skill from LeoYeAI/openclaw-master-skills.

    2.2k GitHub stars~7.2k tokensUpdated 2 mo ago
    Writing & ContentAuto-check passed
  • Blog Repurpose

    Infrasity-Labs/dev-gtm-claude-skills

    Repurpose blog posts for social media, email, YouTube, Reddit, and LinkedIn.

    139 GitHub stars~2.3k tokensUpdated 3 mo ago
    Writing & ContentAuto-check passed
  • Khazix WeChat Article Writer

    KKKKhazix/khazix-skills

    Writes long-form WeChat official account articles in the personal style of the Khazix account, from briefs, links, PDFs or rough notes, with a topic quality check.

    21k GitHub starsUsed in 2 repos~2.9k tokens
    Writing & ContentAuto-check passed
  • Figure

    vectorize-io/hindsight

    Draw an animated figure (boxes, arrows, moving data) as one self-contained SVG for a GitHub README, PR, issue or blog post.

    47k GitHub stars~1.9k tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Sepia

    Nanako0129/sepia

    Make AI-generated writing read as human-written, in fiction and in professional prose.

    3k GitHub stars~3.6k tokensUpdated 2 days ago
    Writing & ContentAuto-check passed

More from athola/claude-night-market

All 159 skills in this repo
  • Night Market Diagnostics Toolkit

    athola/claude-night-market

    Run and interpret repo diagnostic scripts (ratchets, validators, token stats).

    342 GitHub stars~3.4k tokensUpdated 2 days ago
    Auto-check passed
  • Skills Eval

    athola/claude-night-market

    Evaluate Claude skill quality through auditing. An agent skill from athola/claude-night-market.

    342 GitHub stars~1.6k tokensUpdated 2 days ago
    Auto-check passed
  • Agent Teams

    athola/claude-night-market

    Coordinates Claude agent teams via filesystem protocol. An agent skill from athola/claude-night-market.

    342 GitHub stars~2.5k tokensUpdated 2 days ago
    Auto-check passed
  • Delegation Core

    athola/claude-night-market

    Delegates execution to eight CLIs (Gemini, Qwen, MiniMax, GLM, Muse, Codex, OpenCode, Glimmer).

    342 GitHub stars~2.5k tokensUpdated 2 days ago
    Auto-check passed
  • Elegant Code

    athola/claude-night-market

    Guide minimal code via a decision ladder with full safety, edge, and negative-case coverage.

    342 GitHub stars~2.1k tokensUpdated 2 days ago
    Auto-check passed
  • Skill Library Mission

    athola/claude-night-market

    Build a project skill library in .claude/skills/ via discovery, parallel authoring, and review.

    342 GitHub stars~1.6k tokensUpdated 2 days ago
    Auto-check passed

Works with

Questions about Session To Post

What does Session To Post do?

Converts a Claude Code session into a blog post, case study, or Reddit post. Session To Post is an agent skill from athola/claude-night-market. Converts a Claude Code session into a blog post, case study, or Reddit post.

When should I use Session To Post?

Session To Post fits situations like: publishing dev blog content; community posts from real sessions.

How do I install Session To Post in Claude Code?

Run `npx skills add athola/claude-night-market --skill session-to-post -a claude-code`. Or copy the skill folder (plugins/scribe/skills/session-to-post in athola/claude-night-market) into .claude/skills/session-to-post in your project. Claude Code loads it when a task matches its description.

How do I install Session To Post in Codex?

Run `npx skills add athola/claude-night-market --skill session-to-post -a codex`. Or copy the skill folder (plugins/scribe/skills/session-to-post in athola/claude-night-market) into .agents/skills/session-to-post in your project. Codex loads it when a task matches its description.

Can I use Session To Post in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add athola/claude-night-market --skill session-to-post -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/session-to-post, .gemini/skills/session-to-post, .github/skills/session-to-post and .opencode/skills/session-to-post in your project.

What does Session To Post need to run?

Going by SKILL.md and its folder, Session To Post needs the command-line tools its instructions call (make, git and cargo).

Does Session To Post access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Session To Post safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Session To Post use?

Session To Post is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Session To Post use?

About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Session To Post?

Skills that share tags, products or a category with Session To Post: Blog Repurpose (AgriciDaniel/claude-blog, 2.3k stars), Content Creator Pro (LeoYeAI/openclaw-master-skills, 2.2k stars), Blog Repurpose (Infrasity-Labs/dev-gtm-claude-skills, 139 stars) and Khazix WeChat Article Writer (KKKKhazix/khazix-skills, 21k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Session To Post?

athola (a GitHub user) maintains it in athola/claude-night-market, which has 342 GitHub stars. The repository holds 159 skills in this directory. The repository was last updated on October 6, 2026.

Source: athola/claude-night-market on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.