# Generate Gists

> stakiran の GitHub Gists を取得し docs/ に静的サイト用 Markdown を生成する

- Skill: `stakiran/generate-gists` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add stakiran/generate-gists`
- Raw SKILL.md: https://api.skillmd.com/api/skills/stakiran/generate-gists/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: stakiran (https://skillmd.com/u/stakiran)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/stakiran/generate-gists

---


# Generate Gists Site

GitHub ユーザー "stakiran" の Gists を取得し、`docs/` ディレクトリに静的サイト用の Markdown ファイルを生成する。

スクリプトはすべて `.claude/skills/generate-gists/scripts/` にある。

## 手順

### 1. 取得対象の Gist ID 一覧を取得

```
python .claude/skills/generate-gists/scripts/list_gist_ids.py --diff
```

- `--diff` をつけると、既に `docs/` にあるものを除外して差分のみ出力する
- `--diff` なしで全 ID を出力する

### 2. Gist の内容を取得して docs/ に保存

```
python .claude/skills/generate-gists/scripts/fetch_gist.py <gist_id> [<gist_id> ...]
```

手順1で得た ID を渡して実行する。複数 ID を一度に指定できる。

### 3. index_entries.json の生成・更新

```
python .claude/skills/generate-gists/scripts/generate_index.py --init
```

`index_entries.json` に全 gist のエントリが作られる。`emoji` と `description` が空のエントリが未入力分。

### 4. index_entries.json の emoji と description を埋める

`index_entries.json` を読み、空の `emoji` と `description` があるエントリを抽出する。
対象がなければこのステップをスキップする。

対象の各 gist について `docs/{gist_id}.md` を読み、内容をもとに emoji と description を判断する。
- `emoji`: 内容を最もよく表す絵文字を1つ
- `description`: 内容を日本語で簡潔に表現（既存の description があればベースにする）

全件の判断が終わったら `index_entries.json` を Edit で更新する。

### 5. index.md の生成

```
python .claude/skills/generate-gists/scripts/generate_index.py
```

`index_entries.json` の内容をもとに `docs/index.md` を生成する。

### 6. 完了報告

新規取得した gist の件数、スキップした(既存の) gist の件数、および `docs/` 内の総ファイル数を報告する。

