blog

blog is a skill for Claude Code, Codex from mifunedev/openharness. It costs 159 tokens per session (1,044 once invoked), scanned A, original, Apache-2.0.

A workflow that turns source material, such as notes, transcripts, or demo screenshots, into a publishable blog post.

In plain words
What is it for?
Use it to create a blog post from a Loom demo or similar source, including narrative and fact checks, source-faithful images, site validation, and optional reviewable social promotion drafts.
Why use it?
Raw material may need fact checking, image matching, site-style checks, and editing before it is ready to publish. This workflow organizes those reviews.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/mifunedev/openharness/blog
Any agent
npx skills add mifunedev/openharness --skill blog
Clone the repo
git clone --depth 1 https://github.com/mifunedev/openharness

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for blog

README.md
[![agentmods](https://agentmods.dev/badge/skills/mifunedev/openharness/blog.svg)](https://agentmods.dev/skills/mifunedev/openharness/blog)
Your own site
<a href="https://agentmods.dev/skills/mifunedev/openharness/blog"><img src="https://agentmods.dev/badge/skills/mifunedev/openharness/blog.svg" alt="Measured on agentmods" height="20"></a>
Per session 159 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,044 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00159 $0.01044
Opus 5 $0.00079 $0.00522
Sonnet 5 $0.00032 $0.00209
Haiku 4.5 $0.00016 $0.00104

Measured yesterday against content hash 315aab67d1f0, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

blog scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.oh/skills/blog/SKILL.md · 74 lines

How it starts

The opening of the file, as written. The whole thing — 74 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Blog

Create a publishable blog post from $ARGUMENTS. This is a task skill: it may write files, localize assets, spawn delegates, and run target-site validation. Do not use it for casual copy edits.

Arguments received: $ARGUMENTS

Dispatch

  1. If $ARGUMENTS is empty, ask for a one-line scenario and stop.
  2. Parse any explicit flags:
    • --source <path|url> — raw notes, transcript, Loom URL, or source folder.
    • --target <repo|path> — blog repo or site root. Treat /worktrees ... as repo-relative .worktrees/..., never filesystem root.
    • --slug <slug> — target post slug, lowercase kebab-case.
    • --promo linkedin,x,channels — also generate a reviewable promotion artifact for social posts and channel blasts; never publish.
    • --dry-run — perform audits and propose filename/outline only; write nothing.
  3. Route to the first playbook, references/loom-to-blog.md, when the scenario mentions Loom, video, demo, transcript, screenshots, demo.md, or a source under .claude/specs/.
  4. If no playbook fits, say the only implemented reference is loom-to-blog and ask whether to adapt it.

Required first read

For Loom/demo work, read and follow:

  • ${CLAUDE_SKILL_DIR}/references/loom-to-blog.md

That reference is authoritative for the workflow details. This SKILL.md only defines dispatch, boundaries, and shared completion rules.

Shared rules

  • Brief before drafting. For non-trivial source material, read /delegate (.oh/skills/delegate/SKILL.md) and obtain a tight implementation briefing and bounded delegate plan before spawning workers or writing the post. Every worker briefing carries the five fields /delegate step 2 requires.
  • Audit all media before publishing. Every source image/video screenshot must be accounted for as keep/drop/reference-only/missing. For Loom/demo.md sources, use source-faithful image handling: either embed the exact source image URLs or save local copies downloaded from those exact URLs when PR/site rendering would otherwise break. Do not publish unredacted screenshots that expose tokens, OAuth callback URLs, private accounts, hostnames, sensitive usage panels, or unrelated personal UI.
  • Target conventions win. Read the target repo's local AGENTS.md/CLAUDE.md if present, then inspect existing posts and build scripts before writing.
  • No raw transcript dump. A blog post needs a hook, narrative structure, concise steps, useful captions, and verified links. Timestamps can inform the outline; they are not the post.
  • Verify before done. Run the target site's lightweight checks (typecheck, build, or documented equivalents) unless --dry-run was passed. Report exact blockers.
  • Respect existing work. Check git status --short in the target repo before editing. Do not overwrite unrelated dirty files.

Read the full file on GitHub · 74 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +2 tokens per session 315aab67d1f0
  2. 5d ago First seen · 74 lines · 157 tokens per session scan A 9466ee9aaf4b

Subscribe to this mod's changes

blog is a skill published in the GitHub repository mifunedev/openharness (36 stars, last pushed today), licensed Apache-2.0. It adds 159 tokens to every session and 1,044 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

data-visualization

Use for creating publication-quality charts and multi-panel analysis summaries. Triggers when tasks involve visualizing data, plotting results, creating charts, or producing visual reports from analysis output.

langchain-ai/deepagents · 40 tokens

cuml-machine-learning

Use for GPU-accelerated machine learning on tabular data using NVIDIA cuML. Triggers when tasks involve classification, regression, clustering, dimensionality reduction, or model training on datasets.

langchain-ai/deepagents · 43 tokens

blog-post

Writes and structures long-form blog posts, creates tutorial outlines, and optimizes content for SEO with cover image generation. Use when the user asks to write a blog post, article, how-to guide, tutorial, technical writeup, thought leadership piece, or long-form content.

langchain-ai/deepagents · 58 tokens

social-media

Drafts engaging social media posts, writes hooks, suggests hashtags, creates thread structures, and generates companion images. Use when the user asks to write a LinkedIn post, tweet, Twitter/X thread, social media caption, social post, or repurpose content for social platforms.

langchain-ai/deepagents · 58 tokens

schema-exploration

Lists tables, describes columns and data types, identifies foreign key relationships, and maps entity relationships in a database. Use when the user asks about database schema, table structure, column types, what tables exist, ERD, foreign keys, or how entities relate.

langchain-ai/deepagents · 57 tokens

remember

Review the current conversation and capture valuable knowledge — best practices, coding conventions, architecture decisions, workflows, and user feedback — into persistent memory (AGENTS.md) or reusable skills. Use when the user says: (1) remember this, (2) save what we learned, (3) update memory, (4) capture…

langchain-ai/deepagents · 71 tokens