Help us improve
Share bugs, ideas, or general feedback.
From hugo
This skill should be used when the user asks to "preview blog", "start hugo server", "preview post", "see blog locally", "blog preview", "hugo preview", "run dev server", or wants to preview the blog locally with Hugo.
npx claudepluginhub rhuss/cc-hugo --plugin hugoHow this skill is triggered — by the user, by Claude, or both
Slash command
/hugo:previewThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Start the Hugo development server for local preview of the blog, including draft posts.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Compacts the current conversation into a handoff document for another agent to continue the work, with suggested skills and redacted sensitive info.
Share bugs, ideas, or general feedback.
Start the Hugo development server for local preview of the blog, including draft posts.
Verify Hugo is installed: hugo version
Before starting, check if Hugo is already running:
pgrep -f "hugo server" && echo "Hugo already running" || echo "No Hugo server found"
If already running, skip to step 4 and report the URL.
Use the Bash tool with run_in_background: true to start Hugo:
hugo server -D --navigateToChanged
IMPORTANT: Do NOT pipe the output through head, tail, or any other command. Piping causes Hugo to receive SIGPIPE and terminate after a few seconds. Always run the command directly with run_in_background: true.
Flags:
-D: Include draft posts (essential for previewing work-in-progress)--navigateToChanged: Auto-navigate browser to changed contentWait a couple of seconds, then verify the server is responding:
sleep 2 && curl -s -o /dev/null -w "%{http_code}" http://localhost:1313/
The server typically starts at http://localhost:1313/. Report the URL.
If a specific post slug was provided as argument, determine the correct direct URL by checking the Hugo permalink configuration in config/_default/hugo.yaml (look for the permalinks section). For example:
permalinks: posts: /:slug/ means the URL is http://localhost:1313/<slug>/permalinks: posts: /posts/:slug/ means the URL is http://localhost:1313/posts/<slug>/If no permalink config is found, fall back to http://localhost:1313/<slug>/.
The server runs in the background, watches for file changes, and auto-reloads.
To stop: kill the Hugo process with pkill -f "hugo server".