Communityコーディング&開発github.com

byteTuto/website

bytetuto.com を AI エージェントや LLM が読めるようにする — 各ページの Markdown (.md) 版、/llms.txt、Accept text/markdown によるコンテンツネゴシエーション、セマンティック HTML、robots.txt。site/ 内のページ作成・変更・削除時、および .md、llms.txt、エージェント、ChatGPT/Claude/Perplexity、AI クローラーに関する話題で使用します。

website とは?

このスキルは、bytetuto.com の全コンテンツを LLM や AI エージェント (ChatGPT、Claude、Perplexity など) にとって直接利用可能な形式で提供するための包括的なガイドラインと設定を定義します。主要な戦略は、すべての HTML ページと同一内容の Markdown ファイル (.md) をペアとして作成し、`/llms.txt` ファイルでサイト全体の目次を提供し、HTTP の Accept ヘッダーネゴシエーションを通じてエージェントが .md 版を直接リクエストできるようにすることです。.md ファイルはフロントマター (title、description、url、lang、updated) を持ち、絶対リンクを使用し、HTML と同一の階層構造を維持します。また、セマンティック HTML (単一の `<main>`、適切な見出し、アクセシブルなフォーム、JSON-LD 構造化データ) により、従来のブラウジングによるエージェントにも対応し、robots.txt では AI クローラーを明示的に許可して、サイトコンテンツが AI の知識ベースや回答に含まれることを促進します。`python3 scripts/check_seo_agents.py` スクリプトですべてのルールへの準拠を検証できます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/byteTuto/website/tree/HEAD/.claude/skills/site-agent-friendly

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

プレビュー

スキル README より

代替テキスト

ドキュメント

エージェントフレンドリーなサイト

原則: すべての HTML ページには内容が同一の Markdown 版が存在し、エージェントはそれを見つけることができます。 python3 scripts/check_seo_agents.py で以下すべてを検証します。

1. 各ページの .md 版

HTML ページファイルMarkdown の URL
site/index.html → /site/index.md/index.md
site/tutos/git-rebase/index.html → /tutos/git-rebase/site/tutos/git-rebase/index.md/tutos/git-rebase/index.md

例外: 404.html (ペアなし)

ページを作成または変更するときは、同じコミットで両方のファイルを変更します。.md は要約ではなく、ページの有用なコンテンツ (テキスト、手順、コード、リンク) を装飾なしで全て含みます。

.md の形式:

---
title: Git rebase インタラクティブ 3分でマスター
description: git rebase -i でコミットをきれいに書き換え、壊さない方法。
url: https://bytetuto.com/tutos/git-rebase/
lang: ja
updated: 2026-10-16
---

# Git rebase インタラクティブ 3分でマスター

> 1-2文で直接回答: このページで学べること。

## 手順
1. …

```bash
git rebase -i HEAD~3
```

## 関連項目
- [コミットを取り消す](https://bytetuto.com/tutos/annuler-commit/index.md)

動画: https://www.youtube.com/watch?v=…

ルール:

  • フロントマターは YAML 形式で title、description、url (= HTML の canonical)、lang、updated (ページと同じ値) を含む。
  • # タイトル は <h1> と一対一。##/### の階層は HTML と同一。
  • リンクは 絶対パス (https://bytetuto.com/…) で、対象に .md がある場合は .md へのリンク。
  • コードは言語指定付きの ``` ブロック。生の HTML、装飾絵文字、テキストなし画像 (![代替テキスト](url) は可) は禁止。
  • HTML 側: <head> 内に <link rel="alternate" type="text/markdown" href="…/index.md"> を追加。

2. /llms.txt — エージェント向け目次

site/llms.txt、llmstxt.org 形式: # byteTuto、サイトを要約する引用 >、次に ## セクションと .md へのリンクリスト:

## チュートリアル
- [Git rebase インタラクティブ](https://bytetuto.com/tutos/git-rebase/index.md): コミットをきれいに書き換える。

ページ作成・削除のたびに行を追加・削除する。セカンダリな内容は ## Optional セクションへ。 チュートリアルが約10個を超えたら、site/llms-full.txt (全 .md を連結したもの) も生成する。

3. サーバー設定 (nginx/ で既に設定済み)

  • .md は text/markdown; charset=utf-8 で提供し、X-Robots-Tag: noindex を付ける (Google に重複コンテンツと判定されないように — HTML 版のみがインデックスされる)。
  • コンテンツネゴシエーション: Accept: text/markdown ヘッダーを持つリクエストが / や /tutos/x/ に対して行われた場合、直接 .md を返す (HTML には Vary: Accept ヘッダーを付与)。
  • テスト:
    curl -s http://localhost:8088/index.md | head
    curl -s -H 'Accept: text/markdown' http://localhost:8088/ | head
    curl -sI http://localhost:8088/index.md | grep -i content-type   # text/markdown
    

4. エージェントがブラウジング可能な HTML

  • コンテンツは初期 HTML に含まれていること (JS でのみレンダリングされない)。
  • セマンティックタグ、単一の <main>、階層化された見出し、<ol>/<ul> リスト、<pre><code class="language-…"> でのコード。
  • ボタンは <button>、リンクは <a href>。各コントロールにはアクセシブルな名前 (表示テキストまたは aria-label) があること。
  • フォーム (ニュースレター): 各フィールドに <label for>、明示的な name と autocomplete、結果メッセージは DOM 内に配置。
  • 必須の操作の背後にコンテンツを隠さない (非表示タブ: コンテンツは DOM 内に維持)。
  • 最新の JSON-LD 構造化データ (詳細は site-seo を参照): これらもエージェントが利用する。

5. AI クローラー (robots.txt)

プロジェクトの選択: AI クローラーを許可する (ChatGPT、Claude、Perplexity、Google AI での可視性を確保)。明示的な決定なしに、GPTBot、ClaudeBot、PerplexityBot、Google-Extended などに対する Disallow を追加しない。ファイル末尾に Sitemap: を維持する。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

関連スキル