| name | blog-publish-packager |
| description | Turns a finished article into a repo-ready MDX publish package. Use when the task is 'generate frontmatter', 'publish this blog', 'make an MDX file', 'prepare blog post for repo', or when output from $viral-blog-writer and $blog-illustration-director needs to become a file under app/blog/posts. |
Blog Publish Packager
Overview
Use this skill when the article is already written and the next step is packaging it for this repository.
It converts a draft into a publish-ready MDX file with repo-specific frontmatter, slug, summary, tags, FAQ and HowTo arrays, image handling, internal-link opportunities, and a concrete file path under app/blog/posts/.
Best Input
Best case:
- final article draft
- title options
- meta description or summary
- visual plan from
$blog-illustration-director
- source list
Acceptable fallback:
- article only
- article plus a rough topic brief
Read references/repo-blog-format.md before packaging so the output matches the repo's current MDX conventions.
Workflow
-
Determine the publishing angle:
- news explainer
- comparison
- practical guide
- opinionated analysis
-
Create the publish metadata:
- SEO-safe title
- concise summary
- category
- canonical tags
- optional image field
-
Build the filename and slug:
- use a dated filename for time-sensitive news or trend posts
- keep keywords readable
- avoid duplicate or noisy terms
-
Package the body for MDX:
- preserve the article's section structure
- keep links intact
- insert figure blocks only when they are useful
- format FAQ and HowTo arrays on one line JSON style to match the repo pattern
-
Add publish notes:
- suggested internal links
- image dependencies
- whether the post is safe to publish immediately or needs factual review
Repo Rules
- Default destination:
app/blog/posts/[filename].mdx
- Frontmatter should stay compatible with the repo's current parser:
title
publishedAt
updatedAt
summary
- optional
image
- optional
category
- optional
tags
- optional
faq
- optional
howto
- Prefer categories already used by the repo, not new one-off categories.
- Keep tag naming canonical and human-readable.
- Use English by default for Western-facing posts unless the user asks otherwise.
Output Contract
Return the package in this order:
## PUBLISH_PACKAGE
- file path
- slug
- category
- tags
## FRONTMATTER
```yaml
...
MDX_BODY
...
INTERNAL_LINKS
PUBLISH_NOTES
- image handling
- factual review notes
- anything still missing
If the user wants files created, write the MDX file instead of only returning the package.
## Quality Bar
- The output should drop into this repo without reformatting.
- The summary should work as both archive copy and meta description.
- The file name should be stable, searchable, and not look autogenerated.
- Do not invent FAQ or HowTo entries that the article cannot support.
- If visual assets are not ready, use a safe fallback like the dynamic `/og` route instead of faking local files.