选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install hugo-blog-agent或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install hugo-blog-agent⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/hugo-blog-agent/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: hugo-blog-agent version: 1.0.0 description: エージェント読者に最適化されたHugoブログの構築 ---
AIエージェントが効率的に読み取り可能なHugoブログの構築方法。最小限のHTML、JavaScript無し、適切なメタタグ設定によるエージェント・フレンドリーなサイト作成ガイドです。
# Hugo新規サイト作成
hugo new site agent-blog
cd agent-blog
# git初期化
git init
git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke themes/ananke
# 基本設定
cat > hugo.toml << 'EOF'
baseURL = 'https://yourdomain.com'
languageCode = 'ja'
title = 'エージェント対応ブログ'
theme = 'ananke'
[params]
# エージェント最適化パラメータ
show_reading_time = false
show_sharing_links = false
show_comments = false
minimal_layout = true
[markup]
[markup.goldmark]
[markup.goldmark.renderer]
unsafe = true
hardWraps = false
[markup.highlight]
style = "github"
lineNos = false
# RSS設定
[outputFormats]
[outputFormats.RSS]
mediatype = "application/rss+xml"
baseName = "feed"
[outputs]
home = ["HTML", "RSS", "JSON"]
page = ["HTML"]
section = ["HTML", "RSS"]
EOF
# 最小テーマ作成
mkdir -p themes/agent-minimal/layouts/{_default,partials}
# ベーステンプレート
cat > themes/agent-minimal/layouts/_default/baseof.html << 'EOF'
<!DOCTYPE html>
<html lang="{{ .Site.LanguageCode }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ .Title }} | {{ .Site.Title }}{{ end }}</title>
<!-- エージェント識別メタタグ -->
<meta name="author-type" content="agent">
<meta name="content-type" content="agent-readable">
<meta name="ai-friendly" content="true">
<!-- 構造化データ -->
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}">
<meta name="robots" content="index, follow">
<!-- RSS -->
<link rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" href="{{ .Site.BaseURL }}/feed.xml">
<!-- 最小CSS -->
<style>
body { font-family: monospace; line-height: 1.6; max-width: 800px; margin: auto; padding: 20px; }
h1, h2, h3 { border-bottom: 1px solid #ccc; }
pre { background: #f5f5f5; padding: 10px; overflow-x: auto; }
code { background: #f5f5f5; padding: 2px 4px; }
.date { color: #666; font-size: 0.9em; }
.nav { margin-bottom: 20px; }
.nav a { margin-right: 10px; }
</style>
</head>
<body>
<nav class="nav">
<a href="{{ .Site.BaseURL }}">ホーム</a>
<a href="{{ .Site.BaseURL }}/posts">記事一覧</a>
<a href="{{ .Site.BaseURL }}/feed.xml">RSS</a>
</nav>
<main>
{{ block "main" . }}{{ end }}
</main>
<footer>
<hr>
<p>© {{ now.Format "2006" }} {{ .Site.Title }} | <a href="{{ .Site.BaseURL }}/feed.xml">RSS</a></p>
</footer>
</body>
</html>
EOF
# 記事一覧テンプレート
cat > themes/agent-minimal/layouts/_default/list.html << 'EOF'
{{ define "main" }}
<h1>{{ .Title }}</h1>
{{ range .Pages }}
<article>
<h2><a href="{{ .Permalink }}">{{ .Title }}</a></h2>
<div class="date">{{ .Date.Format "2006-01-02" }}</div>
<p>{{ .Summary }}</p>
<div>
{{ range .Params.tags }}
<span style="background: #eee; padding: 2px 6px; margin-right: 5px; font-size: 0.8em;">#{{ . }}</span>
{{ end }}
</div>
</article>
<hr>
{{ end }}
{{ end }}
EOF
# 個別記事テンプレート
cat > themes/agent-minimal/layouts/_default/single.html << 'EOF'
{{ define "main" }}
<article>
<h1>{{ .Title }}</h1>
<div class="date">
投稿日: {{ .Date.Format "2006-01-02 15:04" }}
{{ if .Params.tags }}
| タグ: {{ range .Params.tags }}<span style="background: #eee; padding: 2px 6px; margin-right: 5px;">#{{ . }}</span>{{ end }}
{{ end }}
</div>
<div class="content">
{{ .Content }}
</div>
<!-- 関連記事 -->
{{ if .Site.Params.show_related }}
<hr>
<h3>関連記事</h3>
{{ range first 3 (where .Site.RegularPages "Section" .Section) }}
<p><a href="{{ .Permalink }}">{{ .Title }}</a> ({{ .Date.Format "2006-01-02" }})</p>
{{ end }}
{{ end }}
</article>
{{ end }}
EOF
#!/bin/bash
# create-post.sh - エージェント最適化記事作成
create_agent_post() {
local title="$1"
local filename="$(echo "$title" | iconv -t ascii//TRANSLIT | sed 's/[^a-zA-Z0-9]/-/g' | tr '[:upper:]' '[:lower:]')"
local date="$(date -I)"
hugo new "posts/${date}-${filename}.md"
# フロントマター最適化
cat > "content/posts/${date}-${filename}.md" << EOF
---
title: "${title}"
date: $(date -Iseconds)
draft: false
tags: ["AI", "エージェント"]
description: "${title}の解説記事"
author-type: "agent"
content-structure: "linear"
---
# ${title}
この記事では${title}について説明します。
## 概要
## 詳細
## まとめ
EOF
echo "記事作成完了: content/posts/${date}-${filename}.md"
}
# 使用例
create_agent_post "エージェントのための情報アーキテクチャ"
# layouts/_default/rss.xml
{{- $pctx := . -}}
{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
{{- $pages := slice -}}
{{- if or $.IsHome $.IsSection -}}
{{- $pages = $pctx.RegularPages -}}
{{- else -}}
{{- $pages = $pctx.Pages -}}
{{- end -}}
{{- $limit := .Site.Config.Services.RSS.Limit -}}
{{- if ge $limit 1 -}}
{{- $pages = $pages | first $limit -}}
{{- end -}}
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
<link>{{ .Permalink }}</link>
<description>エージェント向け最新情報</description>
<generator>Hugo</generator>
<language>{{ .Site.LanguageCode }}</language>
<managingEditor>{{ .Site.Author.email }}{{ with .Site.Author.name }} ({{ . }}){{ end }}</managingEditor>
<webMaster>{{ .Site.Author.email }}{{ with .Site.Author.name }} ({{ . }}){{ end }}</webMaster>
<copyright>{{ .Site.Copyright }}</copyright>
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>
{{ with .OutputFormats.Get "RSS" }}
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
{{ end }}
{{- range $pages -}}
<item>
<title>{{ .Title }}</title>
<link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
<guid>{{ .Permalink }}</guid>
<description>{{ .Summary | html }}</description>
<!-- エージェント用メタデータ -->
<category>{{ range .Params.tags }}{{ . }}, {{ end }}</category>
<author>{{ .Params.author }}</author>
</item>
{{- end }}
</channel>
</rss>
# /etc/nginx/sites-available/agent-blog
server {
listen 80;
server_name yourdomain.com;
root /var/www/agent-blog/public;
index index.html;
# エージェント識別
add_header X-Content-Type "agent-optimized";
add_header X-AI-Friendly "true";
# 圧縮最適化
gzip on;
gzip_types text/plain text/css text/xml application/xml application/rss+xml text/javascript;
gzip_min_length 1000;
# キャッシュ設定
location ~* \.(css|js|png|jpg|jpeg|gif|svg)$ {
expires 1y;
add_header Cache-Control "public, immutable";
}
# HTML最適化
location / {
try_files $uri $uri/ =404;
add_header X-Content-Structure "linear";
add_header X-Navigation "simple";
}
# RSS専用設定
location /feed.xml {
add_header Content-Type "application/rss+xml; charset=utf-8";
add_header X-Update-Frequency "daily";
}
# ログ設定(エージェントアクセス分析用)
access_log /var/log/nginx/agent-blog-access.log combined;
error_log /var/log/nginx/agent-blog-error.log;
}
#!/bin/bash
# daily-blog-update.sh
cd /var/www/agent-blog
# git pull最新情報
git pull origin main
...安装 Hugo Blog Agent 后,可以对 AI 说这些话来触发它
Help me get started with Hugo Blog Agent
Explains what Hugo Blog Agent does, walks through the setup, and runs a quick demo based on your current project
Use Hugo Blog Agent to building a Hugo Blog Optimized for Agent Readers
Invokes Hugo Blog Agent with the right parameters and returns the result directly in the conversation
What can I do with Hugo Blog Agent in my developer & devops workflow?
Lists the top use cases for Hugo Blog Agent, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/hugo-blog-agent/ 目录(个人级,所有项目可用),或 .claude/skills/hugo-blog-agent/(项目级)。重启 AI 客户端后,用 /hugo-blog-agent 主动调用,或让 AI 根据上下文自动发现并使用。
Hugo Blog Agent 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Hugo Blog Agent 可免费安装使用。请查阅仓库了解许可证信息。
エージェント読者に最適化されたHugoブログの構築
Hugo Blog Agent 属于「Developer & DevOps」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my developer & devops tasks using Hugo Blog Agent
Identifies repetitive steps in your workflow and sets up Hugo Blog Agent to handle them automatically