はじめに
Googleのエンジニア向け対話型AI「Gemini CLI」を活用して、Qiitaの執筆から自動投稿までを完結させる環境を構築しました。
単なる自動化だけでなく、Gemini CLIの**「Skill(拡張機能)」**を作成することで、AIと対話しながらQiita CLI専用のフォーマットで記事を生成できる仕組みにしています。
この記事自体も、構築した環境の上でGemini CLIによって生成されました。
構成図
- ローカル: Qiita CLI (@qiita/qiita-cli) で記事を管理
-
Gemini CLI: 専用の
qiita-writerSkillで対話的に記事作成 -
GitHub:
mainブランチへの push をトリガーに自動デプロイ -
GitHub Actions:
qiita-cli/actions/publishを使用して Qiita へ同期
構築手順
1. プロジェクトの初期化
まず、記事を管理するためのディレクトリを作成し、必要なツールをインストールします。
# ディレクトリ作成と移動
mkdir -p ~/dev/projects/qiita-articles
cd ~/dev/projects/qiita-articles
# Gitとnpmの初期化
git init
npm init -y
# Qiita CLIのインストールと初期設定
npm install --save-dev @qiita/qiita-cli
npx qiita init
これにより、.github/workflows/publish.yml や qiita.config.json が自動生成されます。
2. GitHub Actions の設定
自動生成された .github/workflows/publish.yml を確認します。もし存在しない場合は以下の内容で作成します。
name: Publish articles
on:
push:
branches:
- main # 自分のメインブランチ名に合わせる
workflow_dispatch:
permissions:
contents: write
jobs:
publish_articles:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: increments/qiita-cli/actions/publish@v1
with:
qiita-token: ${{ secrets.QIITA_TOKEN }}
root: "."
3. Gemini CLI 専用 Skill の作成
Gemini CLIに「Qiitaの記事をどう書くか」を教え込むための Skill を作成します。これにより、npx qiita new を手動で叩く代わりに、Geminiと会話して記事を生成できるようになります。
~/.gemini/skills/qiita-writer/SKILL.md(またはプロジェクト内)に以下の定義を作成します。
---
name: qiita-writer
description: Qiita CLI形式の記事を対話形式で作成します。
---
# ワークフロー
1. タイトル、タグ、公開設定をユーザーにヒアリング。
2. `public/` ディレクトリ内に、Qiita CLIが認識できるYAMLヘッダー(フロントマター)付きのMarkdownファイルを生成する。
このSkillを gemini skills install で導入することで、次回から「新しいQiita記事を書いて」と指示するだけで、適切なフォーマットのファイルが生成されます。
4. 手動で行う必要がある設定(重要)
自動化できない以下のステップを完了させる必要があります。
-
Qiitaアクセストークンの発行
-
Qiitaの個人設定 > アクセストークン から
New Tokenを作成します。 - スコープとして
read_qiitaとwrite_qiitaの2箇所にチェックを入れてください。-
read_qiita: 既存の記事一覧や設定を取得するために必要です。 -
write_qiita: 新しい記事を投稿したり、既存の記事を更新(デプロイ)するために必須です。
-
-
Qiitaの個人設定 > アクセストークン から
-
GitHub Secrets への登録
- GitHubリポジトリの
Settings > Secrets and variables > Actionsを開きます。 -
New repository secretをクリックし、名前をQIITA_TOKEN、値に発行したトークンを貼り付けます。 - これにより、GitHub Actions が安全に Qiita へアクセスし、自動投稿を実行できるようになります。
- GitHubリポジトリの
実際の運用フロー
-
執筆:
gemini "〇〇についての記事を書いて"と指示。 -
確認:
public/に生成された Markdown をプレビュー (npx qiita preview)。 -
投稿:
git add .->git commit->git push origin main。 - 完了: 数分後、GitHub Actions が走り、Qiitaに記事が公開(または更新)されます。
おわりに
Gemini CLI は、単なるチャットツールではなく、**「自分の開発ワークフローに最適化されたエージェント」**へと育てることができます。
今回作成した Skill を応用すれば、技術ブログの執筆だけでなく、日報の作成やドキュメント整備なども自動化できるはずです。