note.com ブログ記事執筆スキル
いつこのスキルを使うか
以下のいずれかに該当する場合に使用する:
- •「noteに公開して」「noteに書いて」「ブログ記事にして」と指示された
- •「有料記事にして」「有料部分を作って」と指示された
- •作業の顛末や技術的な知見を記事としてまとめるよう指示された
記事タイプのデフォルト
明示的に「無料記事」と指定されない限り、有料記事として執筆する。
- •「noteに書いて」→ 有料記事
- •「無料記事でnoteに書いて」→ 無料記事
- •「有料記事で」→ 有料記事
ノート作成の基本方針
通常のノート(note公開指示がない場合)
適切なタイミングで05_Resources/Claude/にノートを自由に書く。固有名詞、具体的なID、内部URL等を含めてよい。自分用の記録なのでプライバシー制限はない。
note公開用の記事(明確にnote用と指示された場合)
2つのバージョンを同時に作成する:
- •
公開版:
note公開用_YYYY-MM-DD_<タイトル>.md- •YAML frontmatter でステータス管理(後述)
- •固有名詞(プロジェクト名、顧客名、内部URL、サーバー名等)を一般化
- •認証情報、APIキーを含めない
- •技術的な固有名詞(Azure AD、Graph API等)はそのまま使用OK
- •
詳細版:
YYYY-MM-DD_<タイトル>.md- •プロジェクト名、具体的なID、内部URL、コミットハッシュ等をすべて含む
- •自分用の完全な記録
両方ともscheduler/obsidian/05_Resources/Claude/に保存する。
YAML frontmatter によるステータス管理
note公開用ノートは、先頭にYAML frontmatterを置いてステータスを管理する。これにより先頭数行を読むだけで状態がわかる。
--- status: pending # pending / draft / published note_draft_url: # 下書き投稿後に記入 note_draft_date: # 下書き投稿日 note_published_url: # 公開後に記入(任意) --- note公開用 # タイトル
statusの値:
| status | 意味 |
|---|---|
pending | 記事作成済み、noteに未投稿 |
draft | noteに下書き投稿済み |
published | noteで公開済み |
初期設定(初回のみ)
noteのAPIを使うには、ブラウザからセッションCookieを取得して ~/.note_cookies.json に保存する必要がある。
セッションCookieの有効期限は約3ヶ月なので、一度設定すれば長期間使える。
Cookie取得手順
- •ブラウザで https://note.com にログイン
- •DevTools を開く(F12 または 右クリック→検証)
- •Application タブ → Cookies →
https://note.com - •
_note_session_v5の値をコピー(32文字の英数字) - •
~/.note_cookies.jsonに保存:
{
"_note_session_v5": "ここにコピーした値"
}
認証確認
python ~/.claude/skills/note-blog/scripts/note-api.py check-auth
成功すると「✅ 認証OK(セッション有効)」と表示される。
トラブルシューティング
| 症状 | 対処 |
|---|---|
| 認証エラー | Cookieを再取得して ~/.note_cookies.json を更新 |
| セッション期限切れ | note.comに再ログインしてCookieを再取得 |
記事執筆の手順
ステップ1: 情報収集(最重要)
記事のクオリティは情報収集の深さで決まる。以下のソースを必ず参照する:
- •
デイリーノート(
scheduler/obsidian/01_Daily Notes/)- •該当日とその前後のデイリーノートを読む
- •「Claude作業ログ」セクションに作業の時系列が記録されている
- •感情・苦労・試行錯誤のリアルな記録がここにある
- •
プロジェクトノート(
scheduler/obsidian/02_Projects/)- •該当プロジェクトのフォルダ内ノートを確認
- •
エリアノート(
scheduler/obsidian/04_Areas/)- •関連するエリアノートを検索
- •
ナレッジノート(
scheduler/obsidian/05_Resources/Claude/)- •既存の関連ノートがあれば参照(重複しないように注意)
- •
gitログ
- •
git log --oneline -20で関連コミットの時系列を把握 - •必要に応じて
git showで具体的な変更内容を確認
- •
- •
トラブルシュート履歴
- •プロジェクトに
TroubleshootHistory.md等があれば参照
- •プロジェクトに
情報収集を省略しない。 記事の具体性と説得力は、一次情報の量で決まる。
ステップ2: 構成設計
有料記事の場合
note.comの有料記事は「途中まで無料、途中から有料」という構造。この境界の設計が最も重要。
無料部分に含めるもの:
- •読者を引き込む導入(問題の提示、状況描写)
- •「自分にも起きうる」と思わせる共感ポイント
- •問題の深刻さを伝える描写
- •有料部分への「引き」(答えを示唆するが明かさない)
無料部分に含めないもの:
- •結論や解決策
- •原因の特定
- •具体的なコマンドやコード(解決に直結するもの)
- •教訓のまとめ
有料部分に含めるもの:
- •原因の特定と解決策
- •詳細な技術解説
- •再現手順・検証コマンド
- •教訓と再発防止策
- •読者が実務で使える具体的な情報
境界のポイント:
- •無料部分の最後は「続きが気になる」状態で終わる
- •問いかけや伏線を残す
- •「ここから先は有料です」の直前が最も引きの強い文にする
有料境界の書き方(必須):
有料部分の直前に、以下のメンバーシップ案内を必ず入れる:
--- > 💰 **ここから先は有料です** ── もしよければ、月額300円のメンバーシップで応援いただけると嬉しいです。200件以上の有料記事がすべて読み放題になるので、単体購入よりも断然お得です。 ---
ポイント:
- •引用ブロック+絵文字で目を引く
- •単体購入より月額メンバーシップがお得であることを明記(単体で買う人が意外といるため)
- •記事数「200件以上」は増えたら適宜更新
無料記事の場合
- •冒頭で結論を述べてもよい
- •技術的な正確さと実用性を重視
ステップ3: 執筆スタイル
AI共同執筆の表記(必須):
記事の一番上(タイトル直後)に、以下の表記を必ず入れる:
> 🤖✍️ **この記事はAIとの共同執筆です** ── AIエージェント(Claude Code)が胡田との実際の共同作業の経験をもとに下書きを自動生成し、胡田が内容を確認・修正したうえで公開しています。
配置のポイント:
- •タイトルの直後、本文の前に置く(最初に目に入る位置)
- •引用ブロック(
>)を使って本文と視覚的に区別する - •アイコン(🤖✍️)で目を引く
文体:
- •一人称は「私」
- •ですます調とである調の混在OK(noteの記事では一般的)
- •技術用語は初出時に簡潔に説明
- •コードブロックは適切に使用
note.comのMarkdown制限事項:
以下のMarkdown記法はnote.comで正しく表示されないため、使用を避けること:
| 記法 | 制限内容 | 代替案 |
|---|---|---|
*斜体* | 斜体は表示されない | 使用しない、または「」で囲む |
***太字斜体*** | 太字のみ表示(斜体は無視) | **太字**を使う |
`インラインコード` | 表示されない | 「」で囲むか、コードブロックを使う |
使用可能な記法:
- •見出し(
#,##,###) - •箇条書き(
-または*) - •番号付きリスト(
1. 2. 3.) - •ネストしたリスト(インデント2スペースで階層化)
- •太字(
**text**) - •コードブロック(
```) - •引用(
>) - •リンク(
[text](url)) - •水平線(
---)
引用+絵文字で視覚的に区別するテクニック:
note.comは装飾機能が限られているため、引用ブロック(>)と絵文字を組み合わせて特別な内容を視覚的に区別する。本来の引用の使い方とは異なるが、読みやすさのための妥協として採用する。
| 用途 | 絵文字 | 例 |
|---|---|---|
| AI共同執筆表記 | 🤖✍️ | > 🤖✍️ **この記事はAIとの共同執筆です** ── ... |
| 注意事項 | ⚠️ | > ⚠️ **注意** ── この操作は元に戻せません。 |
| ヒント・コツ | 💡 | > 💡 **ヒント** ── ショートカットキーを使うと便利です。 |
| 重要ポイント | 📌 | > 📌 **ポイント** ── ここが最も重要な部分です。 |
| 補足説明 | 📝 | > 📝 **補足** ── 詳細は公式ドキュメントを参照。 |
| 成功・完了 | ✅ | > ✅ **完了** ── 設定が正常に保存されました。 |
| エラー・失敗 | ❌ | > ❌ **エラー** ── 認証に失敗しました。 |
書き方のルール:
- •絵文字 + 太字のラベル + 「──」 + 内容 を1行で書く
- •引用ブロックは本文と視覚的に区別されるため、注目を集めやすい
事実と考察の明確な分離(重要):
記事内で「実際に確認した事実」と「筆者の感想・考察」を明確に区別する。
- •事実:実際に動作確認した結果、エラーメッセージ、コマンド出力、ログの内容など
- •「〜を実行すると、〜というエラーが出た」
- •「〜の設定を変更したところ、正常に動作した」
- •考察:推測、仮説、感想、教訓など
- •「おそらく〜が原因だと思われる」
- •「この経験から学んだのは〜」
- •「個人的には〜と感じた」
混同を避ける書き方の例:
## 調査結果(事実) 実際にログを確認したところ、以下のエラーが記録されていた:
ERROR: Connection timeout after 30s
## 考察 このエラーから推測すると、ネットワーク設定に問題がある可能性が高い。 ただし、これは仮説であり、さらなる検証が必要だ。
ストーリーテリング:
- •時系列に沿って書く(読者が追体験できるように)
- •試行錯誤のプロセスを省略しない(苦労が共感を生む)
- •感情を抑制しつつも、焦りや驚きを文体で表現する
- •短い文で緊張感を出す(「動きません。」「何も起きない。」)
技術的な正確さ:
- •コマンドやコードは実際に動くものを記載
- •エラーメッセージは正確に引用
- •推測と事実を明確に区別する(上記「事実と考察の分離」参照)
ステップ4: 保存
保存先: scheduler/obsidian/05_Resources/Claude/
ファイル名:
- •
公開版:
note公開用_YYYY-MM-DD_<タイトル>.md - •
詳細版:
YYYY-MM-DD_<タイトル>.md - •
Obsidianの[[WikiLink]]を適切に付与する
- •
末尾に「## 関連リンク」セクションを付ける
- •
scratchpadや/tmpには保存しない(成果物はObsidianに保存する)
ステップ5: noteに下書き投稿(自動)
記事をObsidianに保存したら、noteに下書きとして自動投稿する。
python ~/.claude/skills/note-blog/scripts/note-api.py post-draft \ --title "<記事タイトル>" \ --file "scheduler/obsidian/05_Resources/Claude/note公開用_YYYY-MM-DD_<タイトル>.md"
アイキャッチ画像がある場合:
python ~/.claude/skills/note-blog/scripts/note-api.py post-draft \ --title "<記事タイトル>" \ --file "scheduler/obsidian/05_Resources/Claude/note公開用_YYYY-MM-DD_<タイトル>.md" \ --image "/path/to/thumbnail.png"
成功すると:
- •下書きURLが表示される(例:
https://note.com/notes/xxxxx/edit) - •ユーザーはそのURLを開いて、最終確認・公開ができる
下書きURLをObsidianノートのfrontmatterに記録する(必須):
下書き投稿が成功したら、元のObsidianノートのYAML frontmatterを更新する:
--- status: draft note_draft_url: https://note.com/notes/xxxxx/edit note_draft_date: 2026-02-05 ---
これにより、先頭数行を読むだけで「下書き済み」「URLはここ」がわかる。
エラー時の対処:
- •認証エラー → Cookieを再取得して
~/.note_cookies.jsonを更新 - •接続エラー → しばらく待って再試行
ステップ6: Todoistに確認タスクを追加
下書き投稿が成功したら、Todoistに「確認して公開」タスクを追加する。
bash ~/.claude/skills/todoist/scripts/todoist.sh task-create \ --content "noteの下書きを確認して公開: <タイトル>" \ --due "today" \ --priority 2
ポイント:
- •下書き投稿済みなので「確認して公開」という文言にする
- •期限は当日(
today)に設定 - •優先度はP3(priority 2)
このステップを省略しない。 下書きのまま放置されないようにする。
よくある間違い
| 間違い | 正しい対応 |
|---|---|
| 冒頭で結論を書く(有料記事なのに) | 結論は有料部分に置く。無料部分は引きで終わる |
| 情報収集を省略して書く | デイリーノート・プロジェクトノート・gitログを必ず参照 |
| scratchpadに保存する | 05_Resources/Claude/に保存する |
| 公開版しか作らない | note用と指示されたら公開版+詳細版の2つを作る |
| 通常ノートで固有名詞を一般化してしまう | 通常ノートは自分用。制限なくそのまま書く |
| 技術詳細だけ書いてストーリーがない | 時系列の試行錯誤を描写し、読者が追体験できるようにする |
| noteに下書き投稿しない | 記事を書いたら必ず note-api.py post-draft で下書き投稿する |
| frontmatterを更新しない | 下書き投稿後、YAML frontmatterの status: draft と note_draft_url を更新 |
| Todoistにタスクを追加しない | 下書き投稿したら必ず確認タスクをTodoistに追加する |
| AI共同執筆の表記を入れない | 導入の直後に「📝 この記事について」の表記を必ず入れる |
| 事実と考察を混同して書く | 「実際に確認した事実」と「推測・感想」を明確に分けて記述する |
記事テンプレート(有料記事・公開版)
--- status: pending note_draft_url: note_draft_date: --- note公開用 # タイトル(引きのある、具体的なタイトル) > 🤖✍️ **この記事はAIとの共同執筆です** ── AIエージェント(Claude Code)が胡田との実際の共同作業の経験をもとに下書きを自動生成し、胡田が内容を確認・修正したうえで公開しています。 --- ## 導入(無料部分) [状況描写 - 読者を引き込む] --- ## 背景説明(無料部分) [技術的な前提を簡潔に] --- ## 問題発生と試行錯誤(無料部分) [何を試して、何がダメだったか] --- ## 核心への示唆(無料部分 - ここが引き) [答えに近づくが、明かさない] [問いかけや伏線を残す] --- > 💰 **ここから先は有料です** ── もしよければ、月額300円のメンバーシップで応援いただけると嬉しいです。200件以上の有料記事がすべて読み放題になるので、単体購入よりも断然お得です。 --- ## 原因と解決(有料部分) [詳細な原因分析と解決策] ## 深掘り分析(有料部分) [なぜ発見が遅れたか等の構造分析] ## 教訓(有料部分) [実務で使える具体的な教訓] ## 再発防止策(有料部分) [仕組み化した対策] ## おわりに [簡潔なまとめと読者へのメッセージ] --- ## 関連リンク - [[関連ノート1]] - [[関連ノート2]]