From hugo
This skill should be used when the user asks to "migrate jekyll", "convert jekyll to hugo", "import old blog", "migrate from jekyll", "migrate blog posts", "convert old posts", or wants to migrate existing Jekyll blog posts to Hugo format.
How this skill is triggered — by the user, by Claude, or both
Slash command
/hugo:migrateThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Migrate existing Jekyll blog posts to Hugo format.
Migrate existing Jekyll blog posts to Hugo format.
The old blog source path is read from .claude/blog.local.md (jekyll_source field). If not configured, prompt the user for the path (Jekyll Now, GitHub Pages):
_posts/ with YYYY-M-DD-slug.md formatimages/Scan the configured Jekyll source directory _posts/ for .md files. Skip subdirectories unless user requests them explicitly. Present a summary:
Found 30 posts (2014-2021)
- 27 published posts
- 3 unpublished/draft posts
Subdirectories: home-drafts (3 files), misc (1 file)
Ask: "Migrate all published posts? Include drafts?"
For each selected post:
Filename: Convert YYYY-M-DD-slug.md to YYYY-MM-DD-slug.md (zero-pad month/day)
Frontmatter: Convert Jekyll to Hugo format:
| Jekyll | Hugo | Notes |
|---|---|---|
layout: post | Remove | Hugo uses section-based layouts |
title | title | Keep as-is |
published: false | draft: true | Invert logic |
| (missing date) | date: YYYY-MM-DD | Extract from filename |
| (no description) | description: "" | Flag for manual addition |
| (no tags) | tags: [] | Flag for manual addition |
| (no license) | license: "CC BY 4.0" | Add |
Content:
<!-- more --> (Hugo uses <!--more--> without spaces)../images/foo.jpg to /images/foo.jpg or page bundle{% highlight %}) to Hugo shortcodes or fenced code blockscp -r <source>/images/ static/images/
Migrated: 27 posts
Issues:
- 5 posts missing descriptions (SEO)
- 3 posts have no tags
- 2 posts reference images not found in images/
If the blog plugin is installed, offer to create brainstorm documents for unfinished drafts found during migration. These represent ideas that fit the blog plugin's brainstorm pipeline.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub rhuss/cc-hugo --plugin hugo