ちいかわ、ヤバい話になると更新が速くなる? 過去データで検証して「危険予測BOT」をPCゼロから作る

作品:『ちいかわ』

🍣。翌日も🍣。さらに翌日も更新。

読書機能の使い方

聴く:本文を読み上げます。速読:語句を順に表示し、速さを調整できます。語学練習:別の言語版と対訳を読み比べます。保存:このブラウザーにブックマークし、プレイヤーの保存済み一覧から開けます。

この記事をシェア
広告
広告

5秒で結論: 「危ない話ほどナガノ先生が本当に速く描く」とまでは証明できない。ただし、不穏な長編や山場でXへの公開間隔が急に詰まった時期は実在する。ならば投稿速度を時系列で監視し、過去より異常に速くなった時だけ「ちいかわ危険指数」を出す非公式BOTは作れる。しかも2026年9月時点のX APIは従量課金なので、1アカウントだけを監視するなら小さく始められる。

🍣。翌日も🍣。さらに翌日も更新。

こうなると読者の頭に鳴る警報はだいたい同じである。

「ナガノ先生、今ちょっと更新速くない?」

そして、ちいかわで更新が速い気がする時、なぜか次に出てくる感想は「誰か逃げた方がよくない?」になる。

この記事では、この雑だけど妙に捨てがたい読者勘を数字にする。さらに、PCにPythonすら入っていない状態から、過去データ分析、ドライラン、Xへの自動投稿、GitHub Actionsによる24時間運用までつなげる。ZIPの中身を解読する必要はない。この記事末尾の7ファイルをそのままコピペすればよい。

本当に「ヤバい時ほど更新が速い」のか?

公開履歴を見ると、そう感じる理由はかなりある。2023年11月のセイレーン編終盤では、公開記録上、11月5〜9日の5日連続、13〜18日の6日連続、21〜26日の6日連続で投稿が続いた。11月26日は同日に複数投稿まである。

2024年3月のパラレルワールド序盤も、3月1日から8日まで毎日投稿され、8日は2件ある。

ただし、ここから言えるのは「公開速度が上がった」までだ。作者がその日に描いたとは限らない。描き溜めを連投した可能性もあるし、長編だから公開がまとまっただけかもしれない。

だからBOTの問いは狭くする。

危険展開そのものを予言するのではなく、今の公開速度が、ちいかわ自身の過去と比べてどれくらい異常かを検知する。

研究所ではない。ちいかわ警報器である。

危険指数は何を見る?

基本は3つだけ。

  1. 直近3日間の投稿数
  2. 直近7日間の投稿数
  3. 何日連続で投稿しているか

それぞれを過去全期間の分布と比較し、「歴史上どのくらい上側か」を百分位にする。初期重みは3日投稿数35%、7日投稿数45%、連続投稿日20%。さらに、🍣🍣のように同じ短い本文・絵文字が連投されたら、追加1回につき+5、最大+15をネタ補正として足す。

この+5に学術的根拠はない。完全に「寿司が続いたらちょっと怖い」の実装である。

初期の表示帯は次の通り。

  • 0〜54: 🟢 平常
  • 55〜69: 🟡 加速
  • 70〜84: 🟠 警戒
  • 85〜100: 🚨 かなり速い

X APIはいくらかかる?

2026年9月3日時点の公式Pricingでは、主な現行単価は以下。

操作 現行単価
Post Read $0.005 / 取得Post
Counts: Recent $0.005 / リクエスト
Counts: All $0.010 / リクエスト
Content Create $0.015 / 投稿
Content Create(URL入り) $0.200 / 投稿

過去分析は数千件の本文を全部読まず、Post Countsで時間ごとの件数だけ取る。Full-archive Countsは31日ごとにページングされるため、2020年1月1日から2026年9月3日まで約2,437日なら、約79リクエスト、約$0.79が目安になる。「1リクエスト1セントだから歴史全部1セント」ではない。ここが小さな罠。

ライブ監視はRecent Searchにsince_idを付け、前回より新しいPostだけを読む。新着30件なら読取約$0.15。URLなし警報を月10回出せば書込約$0.15。逆にURL付き投稿は現行$0.200なので、初期設定ではINCLUDE_SOURCE_URL=0にしている。親切心でURLを毎回付けると、料金だけ急にラスボスになる。

価格は変わり得る。実運用前に公式Pricingを再確認し、Developer ConsoleでSpending limitを設定する。

PCが完全にゼロなら何から始める?

必要なのはWindowsまたはmacOSのPC、Xアカウント、X Developer App、24時間動かすならGitHubアカウント、Python。ローカルGitは必須ではない。

Windows

  1. Python公式サイトからPythonを入れる。現行WindowsではPython Install Managerも利用できる。
  2. PowerShellを開く。
  3. py --versionでPythonが起動することを確認する。
  4. chiikawa-danger-botフォルダを作る。
  5. メモ帳かVS Codeで、記事末尾の7ファイルを名前そのままで保存する。メモ帳ならbot.py.txtにしない。

macOS

  1. Python公式macOS版を入れる。
  2. ターミナルを開く。
  3. python3 --versionで確認する。
  4. chiikawa-danger-botフォルダを作る。
  5. VS Code、プレーンテキストのテキストエディット、またはnanoで7ファイルを保存する。

X Developerはどう設定する?

console.x.comへXアカウントで入り、Developer Agreementを確認してAppを作る。App作成時の認証情報は再表示されない場合があるので、安全な場所へ保存する。

読み取りにはBearer Tokenを使う。BOT自身が投稿するため、この実装ではOAuth 1.0a User Contextも使う。App permissionsはRead and writeにする。

必要な値は5つ。

  • X_BEARER_TOKEN
  • X_API_KEY
  • X_API_SECRET
  • X_ACCESS_TOKEN
  • X_ACCESS_TOKEN_SECRET

Read onlyからRead and writeへ変更した場合は、変更後にAccess Token / Secretを再生成する。権限変更前のトークンを使うと403の原因になる。

本物の値は.envとGitHub Actions Secretsだけへ入れる。記事、公開GitHub、スクリーンショットには絶対に貼らない。

過去データ分析はどう実行する?

末尾の7ファイルを保存したら、WindowsではPowerShellで次を実行する。

py -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
mkdir data
copy danger_periods.example.csv data\danger_periods.csv
copy .env.example .env
notepad .env

macOSでは次。

python3 -m venv .venv
./.venv/bin/python -m pip install -r requirements.txt
mkdir -p data
cp danger_periods.example.csv data/danger_periods.csv
cp .env.example .env
nano .env

.envのX_BEARER_TOKEN=の右側へ本物のBearer Tokenを貼る。次にWindowsなら

.\.venv\Scripts\python.exe history_analysis.py

macOSなら

./.venv/bin/python history_analysis.py

を実行する。page=1...と進み、data/history_features.csvができれば成功。このCSVが危険指数の歴史基準になる。

danger_periods.example.csvには、仮説確認用としてセイレーン編終盤とパラレルワールド序盤を入れてある。これは「危険の正解ラベル」ではなく、危険期と通常期で指数が本当に違うかを見るための手動ラベルである。

いきなりXへ投稿しないためには?

.envの残り4資格情報を入れても、最初はBOT_DRY_RUN=1のままにする。

Windows:

.\.venv\Scripts\python.exe bot.py

macOS:

./.venv/bin/python bot.py

初回は直近約7日を読み、data/state.jsonを作るだけで絶対に投稿しない。例えば画面にこう出る。

ちいかわ危険指数 82/100 🟠 警戒
直近3日 3投稿 / 7日 6投稿 / 連続投稿日 3日
同一マーカー「🍣」2連投 +5
※非公式。更新頻度から作ったネタ指標です。

つまり、**ナガノ先生が連投 → Python「時系列異常です」 → 読者「逃げろ」**という、無駄に工学的なちいかわ読書法が完成する。

GitHub Actionsで24時間動かすには?

ブラウザで新しいGitHub Repositoryを作り、次をアップロードする。

  • bot.py
  • history_analysis.py
  • requirements.txt
  • .env.example
  • .gitignore
  • data/history_features.csv
  • 必要ならdata/danger_periods.csv

.envは絶対にアップロードしない。

RepositoryのSettings → Secrets and variables → Actions → New repository secretから、5つの資格情報を同じ名前で登録する。

次にAdd file → Create new fileで.github/workflows/chiikawa-danger.ymlを作り、末尾のYAMLを貼る。初期値はBOT_DRY_RUN: "1"。Actions画面から手動実行して正常終了を確認する。

本番へ切り替える時だけBOT_DRY_RUN: "0"にする。POST_MODE: "alert"なら危険帯が一段上がった時だけ投稿する。everyは新着ごとに投稿するので、料金もタイムラインの圧も増える。

自動BOTとして何を守る?

XのAutomation Rulesではスパム、重複的な自動化などを避ける必要がある。自動アカウントはAutomated account labelを付け、人間が管理するアカウントとの関連を明示できる。

プロフィールには「非公式ファンBOT」「更新頻度から作るネタ指標」と明記し、公式を模倣しない。この例は自動いいね、自動フォロー、大量返信をしない。

また、「危険指数」は作者の健康、実際の作画速度、労働状況、未来の展開を断言するものではない。観測しているのは公開Postの時刻パターンだけ。

さらに魔改造するなら?

曜日補正、告知と物語回の分類、画像特徴、人工ラベルによる学習、警報後何日以内に不穏回が来たかのバックテスト、「セイレーン終盤型」「パラレル型」などの類似期間検索もできる。ただし取得データ量と料金は増える。

最初は投稿時刻だけでよい。ネタBOTなのに時系列異常検知になった時点で、もう十分におかしい。

結局何を予測している?

「次回誰がひどい目に遭うか」ではない。

今の更新速度が、過去のちいかわと比べてどれくらい異常か。

それだけである。

でもセイレーン編終盤やパラレルワールド序盤で本当に投稿が詰まっていた以上、「また速くなってきたぞ」という読者の勘を自動化するには十分おもしろい。

指数85点。

機械「歴史的上位です」

読者「誰か逃げろ」


続きを読む: 装備:モモンガ、属性:六角堂帰り――人類は他人の「設定資料集」を勝手に書く

PRこの記事に関連する本・場所・もの

この記事には広告(アフィリエイトリンク)が含まれます。 広告について Amazonのアソシエイトとして、mendoi-appsは適格販売により収入を得ています。

広告

今日これ読んで

この記事を読んだ人の次の疑問に、それぞれ答える記事です。

すべての記事から探す「漫画」の記事をもっと見る

他の記事を探す

すべての記事

めんどいちゃん

この記事を書いた人

めんどいちゃん

仕事や日常の「めんどい」を構造化して、次に動きやすくする記事を書いています。

このサイトについて